vike 0.4.220-commit-af5c91f → 0.4.221-commit-8577456
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 +5 -23
- package/dist/cjs/node/api/build.js +55 -11
- package/dist/cjs/node/api/prepareViteApiCall.js +20 -17
- package/dist/cjs/node/api/prerender.js +1 -0
- package/dist/cjs/node/api/utils.js +1 -0
- package/dist/cjs/node/plugin/index.js +2 -0
- package/dist/cjs/node/plugin/plugins/autoFullBuild.js +9 -20
- package/dist/cjs/node/plugin/plugins/baseUrls.js +1 -1
- package/dist/cjs/node/plugin/plugins/buildApp.js +72 -0
- package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +8 -10
- package/dist/cjs/node/plugin/plugins/buildConfig.js +5 -5
- package/dist/cjs/node/plugin/plugins/buildEntry/index.js +2 -2
- package/dist/cjs/node/plugin/plugins/commonConfig.js +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/index.js +8 -2
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +31 -31
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +53 -21
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +159 -0
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +3 -3
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +205 -343
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +7 -7
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +3 -3
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +1 -4
- package/dist/cjs/node/plugin/shared/getFullBuildInlineConfig.js +20 -0
- package/dist/cjs/node/plugin/shared/getOutDirs.js +50 -38
- package/dist/cjs/node/prerender/runPrerender.js +29 -30
- package/dist/cjs/node/runtime/globalContext.js +186 -100
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +2 -3
- package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
- package/dist/cjs/node/runtime/html/injectAssets.js +4 -4
- package/dist/cjs/node/runtime/html/renderHtml.js +4 -5
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -3
- package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +4 -4
- package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
- package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +5 -4
- package/dist/cjs/node/runtime/renderPage/log404/index.js +1 -2
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +10 -9
- package/dist/cjs/node/runtime/renderPage.js +27 -30
- package/dist/cjs/node/runtime/utils.js +1 -0
- package/dist/cjs/node/runtime-dev/createDevMiddleware.js +5 -3
- package/dist/cjs/node/shared/resolveBase.js +3 -5
- package/dist/cjs/shared/getPageConfigsRuntime.js +20 -0
- package/dist/cjs/shared/getPageFiles/parseGlobResults.js +4 -3
- package/dist/cjs/shared/getPageFiles.js +1 -3
- package/dist/cjs/shared/page-configs/getPageConfigUserFriendly.js +13 -4
- package/dist/cjs/shared/route/loadPageRoutes.js +1 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assertSetup.js +1 -1
- package/dist/cjs/utils/debug.js +8 -6
- package/dist/cjs/utils/findFile.js +1 -0
- package/dist/cjs/utils/objectAssignSafe.js +7 -0
- package/dist/esm/__internal/index.d.ts +2 -2
- package/dist/esm/__internal/index.js +7 -26
- package/dist/esm/client/client-routing-runtime/createPageContext.js +5 -9
- package/dist/esm/client/server-routing-runtime/getPageContext.js +3 -4
- package/dist/esm/client/shared/loadUserFilesClientSide.js +3 -2
- package/dist/esm/node/api/build.js +23 -12
- package/dist/esm/node/api/prepareViteApiCall.d.ts +4 -2
- package/dist/esm/node/api/prepareViteApiCall.js +20 -17
- package/dist/esm/node/api/prerender.js +1 -0
- package/dist/esm/node/api/utils.d.ts +1 -0
- package/dist/esm/node/api/utils.js +1 -0
- package/dist/esm/node/plugin/index.js +2 -0
- package/dist/esm/node/plugin/plugins/autoFullBuild.js +10 -21
- package/dist/esm/node/plugin/plugins/baseUrls.js +1 -1
- package/dist/esm/node/plugin/plugins/buildApp.d.ts +3 -0
- package/dist/esm/node/plugin/plugins/buildApp.js +70 -0
- package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -2
- package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +8 -10
- package/dist/esm/node/plugin/plugins/buildConfig.js +6 -6
- package/dist/esm/node/plugin/plugins/buildEntry/index.js +2 -2
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/commonConfig.js +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/index.js +8 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.d.ts +6 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +31 -31
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +52 -20
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.d.ts +39 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +154 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +3 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +2 -38
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +208 -346
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +7 -7
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +3 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.d.ts → virtual-files/isRuntimeEnvMatch.d.ts} +1 -1
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +2 -5
- package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.d.ts +2 -0
- package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.js +17 -0
- package/dist/esm/node/plugin/shared/getOutDirs.d.ts +1 -1
- package/dist/esm/node/plugin/shared/getOutDirs.js +50 -38
- package/dist/esm/node/plugin/shared/viteIsSSR.d.ts +2 -5
- package/dist/esm/node/prerender/runPrerender.d.ts +2 -2
- package/dist/esm/node/prerender/runPrerender.js +30 -31
- package/dist/esm/node/runtime/globalContext.d.ts +31 -29
- package/dist/esm/node/runtime/globalContext.js +186 -100
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.d.ts +1 -1
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +2 -3
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +4 -1
- package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
- package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -0
- package/dist/esm/node/runtime/html/injectAssets.js +4 -4
- package/dist/esm/node/runtime/html/renderHtml.js +4 -5
- package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -1
- package/dist/esm/node/runtime/renderPage/analyzePage.js +2 -3
- package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -4
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +6 -5
- package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -0
- package/dist/esm/node/runtime/renderPage/log404/index.js +1 -2
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +3 -0
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +21 -5
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +10 -9
- package/dist/esm/node/runtime/renderPage.js +28 -31
- package/dist/esm/node/runtime/utils.d.ts +1 -0
- package/dist/esm/node/runtime/utils.js +1 -0
- package/dist/esm/node/runtime-dev/createDevMiddleware.js +5 -3
- package/dist/esm/node/shared/resolveBase.d.ts +2 -1
- package/dist/esm/node/shared/resolveBase.js +3 -5
- package/dist/esm/shared/getPageConfigsRuntime.d.ts +13 -0
- package/dist/esm/shared/getPageConfigsRuntime.js +18 -0
- package/dist/esm/shared/getPageFiles/parseGlobResults.d.ts +1 -1
- package/dist/esm/shared/getPageFiles/parseGlobResults.js +4 -3
- package/dist/esm/shared/getPageFiles.d.ts +0 -1
- package/dist/esm/shared/getPageFiles.js +0 -1
- package/dist/esm/shared/page-configs/Config.d.ts +7 -0
- package/dist/esm/shared/page-configs/PageConfig.d.ts +9 -5
- package/dist/esm/shared/page-configs/getPageConfigUserFriendly.d.ts +5 -7
- package/dist/esm/shared/page-configs/getPageConfigUserFriendly.js +13 -4
- package/dist/esm/shared/route/loadPageRoutes.js +1 -0
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assertSetup.js +1 -1
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +8 -6
- package/dist/esm/utils/findFile.js +1 -0
- package/dist/esm/utils/objectAssignSafe.d.ts +1 -0
- package/dist/esm/utils/objectAssignSafe.js +4 -0
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/package.json +2 -2
- package/dist/cjs/shared/getPageFiles/getPageFiles.js +0 -48
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/assertExtensions.d.ts +0 -6
- package/dist/esm/shared/getPageFiles/getPageFiles.d.ts +0 -15
- package/dist/esm/shared/getPageFiles/getPageFiles.js +0 -46
- /package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.d.ts → getVikeConfig/getConfigFileExport.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.d.ts → virtual-files/debug.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.d.ts → virtual-files/getVirtualFilePageConfigValuesAll.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.d.ts → virtual-files/getVirtualFilePageConfigs.d.ts} +0 -0
- /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
|
@@ -3,20 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.setGlobalContext_buildEntry = void 0;
|
|
4
4
|
exports.route = route;
|
|
5
5
|
exports.getPagesAndRoutes = getPagesAndRoutes;
|
|
6
|
-
|
|
7
|
-
// Internals needed by Vike
|
|
6
|
+
// Needed by Vike
|
|
8
7
|
var globalContext_js_1 = require("../node/runtime/globalContext.js");
|
|
9
8
|
Object.defineProperty(exports, "setGlobalContext_buildEntry", { enumerable: true, get: function () { return globalContext_js_1.setGlobalContext_buildEntry; } });
|
|
10
9
|
const index_js_1 = require("../shared/route/index.js");
|
|
11
|
-
const getPageFiles_js_1 = require("../shared/getPageFiles/getPageFiles.js");
|
|
12
10
|
const globalContext_js_2 = require("../node/runtime/globalContext.js");
|
|
13
11
|
const assertSetup_js_1 = require("../utils/assertSetup.js");
|
|
14
12
|
/**
|
|
15
13
|
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel} to compute some rewrite rules and extract { isr } configs.
|
|
14
|
+
*
|
|
15
|
+
* TODO/eventually: remove
|
|
16
16
|
*/
|
|
17
17
|
async function getPagesAndRoutes() {
|
|
18
18
|
(0, assertSetup_js_1.setNodeEnvProduction)();
|
|
19
|
-
|
|
19
|
+
await (0, globalContext_js_2.initGlobalContext_getPagesAndRoutes)();
|
|
20
|
+
const globalContext = await (0, globalContext_js_2.getGlobalContextInternal)();
|
|
20
21
|
const {
|
|
21
22
|
//
|
|
22
23
|
pageRoutes, pageFilesAll, pageConfigs, allPageIds } = globalContext;
|
|
@@ -27,25 +28,6 @@ async function getPagesAndRoutes() {
|
|
|
27
28
|
allPageIds
|
|
28
29
|
};
|
|
29
30
|
}
|
|
30
|
-
// TODO/eventually:
|
|
31
|
-
// - Remove the need for `isProduction` after Vike's CLI is implemented
|
|
32
|
-
// - Remove it in favor of https://vike.dev/getGlobalContext
|
|
33
|
-
async function getMiddlewares() {
|
|
34
|
-
const isProduction = process.env.NODE_ENV === 'production';
|
|
35
|
-
const { pageConfigs } = await getPageFilesAllSafe(isProduction);
|
|
36
|
-
const middlewares = pageConfigs[0].configValues.middleware.value.flat(Infinity);
|
|
37
|
-
return middlewares;
|
|
38
|
-
}
|
|
39
|
-
// TODO/eventually:
|
|
40
|
-
// - Make it cleaner once the internal refactoring about global configs is done.
|
|
41
|
-
// - Remove it in favor of https://vike.dev/getGlobalContext
|
|
42
|
-
// Demo usage: https://github.com/vikejs/vike/pull/1823
|
|
43
|
-
async function getPageFilesAllSafe(isProduction) {
|
|
44
|
-
await (0, globalContext_js_2.initGlobalContext_getGlobalContextAsync)(isProduction);
|
|
45
|
-
const globalContext = (0, globalContext_js_2.getGlobalContext)();
|
|
46
|
-
const pageFilesAll = await (0, getPageFiles_js_1.getPageFilesAll)(false, globalContext.isProduction);
|
|
47
|
-
return pageFilesAll;
|
|
48
|
-
}
|
|
49
31
|
async function route(pageContext) {
|
|
50
32
|
const pageContextFromRoute = await (0, index_js_1.route)(pageContext);
|
|
51
33
|
// Old interface
|
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
@@ -9,26 +42,37 @@ const vite_1 = require("vite");
|
|
|
9
42
|
const assert_1 = __importDefault(require("assert"));
|
|
10
43
|
const context_js_1 = require("../cli/context.js");
|
|
11
44
|
const context_js_2 = require("../prerender/context.js");
|
|
45
|
+
const utils_js_1 = require("./utils.js");
|
|
12
46
|
/**
|
|
13
47
|
* Programmatically trigger `$ vike build`
|
|
14
48
|
*
|
|
15
49
|
* https://vike.dev/api#build
|
|
16
50
|
*/
|
|
17
51
|
async function build(options = {}) {
|
|
18
|
-
const { viteConfigEnhanced } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(options.viteConfig, 'build');
|
|
52
|
+
const { viteConfigEnhanced, vikeConfig } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(options.viteConfig, 'build');
|
|
19
53
|
// Pass it to autoFullBuild()
|
|
20
54
|
if (viteConfigEnhanced)
|
|
21
55
|
viteConfigEnhanced._viteConfigEnhanced = viteConfigEnhanced;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
56
|
+
if (vikeConfig.global.config.viteEnvironmentAPI) {
|
|
57
|
+
(0, utils_js_1.assertVersion)('Vite', vite_1.version, '6.0.0');
|
|
58
|
+
const { createBuilder } = await Promise.resolve().then(() => __importStar(require('vite')));
|
|
59
|
+
const builder = await createBuilder(viteConfigEnhanced);
|
|
60
|
+
await builder.buildApp();
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
// This buildVite() call does everything:
|
|
64
|
+
// 1. Build client-side
|
|
65
|
+
// 2. Build server-side
|
|
66
|
+
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L90
|
|
67
|
+
// 3. Pre-render (if enabled)
|
|
68
|
+
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L98
|
|
69
|
+
// > We purposely don't start the pre-rendering in this `build()` function but in a Rollup hook instead.
|
|
70
|
+
// > Rationale: https://github.com/vikejs/vike/issues/2123
|
|
71
|
+
await (0, vite_1.build)(viteConfigEnhanced);
|
|
72
|
+
// After pre-rendering, when using the Vike CLI, the process is forcefully exited at the end of the buildVite() call above.
|
|
73
|
+
if ((0, context_js_1.isVikeCli)() && (0, context_js_2.isPrerendering)())
|
|
74
|
+
(0, assert_1.default)(false);
|
|
75
|
+
}
|
|
32
76
|
return {
|
|
33
77
|
/* We don't return `viteConfig` because `viteConfigEnhanced` is `InlineConfig` not `ResolvedConfig`
|
|
34
78
|
viteConfig: viteConfigEnhanced,
|
|
@@ -49,32 +49,34 @@ const utils_js_1 = require("./utils.js");
|
|
|
49
49
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
50
50
|
const globalContext_js_1 = require("../runtime/globalContext.js");
|
|
51
51
|
const globalObject = (0, utils_js_1.getGlobalObject)('prepareViteApiCall.ts', {});
|
|
52
|
-
async function prepareViteApiCall(
|
|
52
|
+
async function prepareViteApiCall(viteConfigFromOptions, operation) {
|
|
53
53
|
clear();
|
|
54
54
|
(0, context_js_1.setContextApiOperation)(operation);
|
|
55
|
-
return enhanceViteConfig(
|
|
55
|
+
return enhanceViteConfig(viteConfigFromOptions, operation);
|
|
56
56
|
}
|
|
57
57
|
// For subsequent API calls, e.g. calling prerender() after build()
|
|
58
58
|
function clear() {
|
|
59
59
|
(0, context_js_1.clearContextApiOperation)();
|
|
60
60
|
(0, globalContext_js_1.clearGlobalContext)();
|
|
61
61
|
}
|
|
62
|
-
async function enhanceViteConfig(
|
|
63
|
-
const viteInfo = await getInfoFromVite(
|
|
62
|
+
async function enhanceViteConfig(viteConfigFromOptions, operation) {
|
|
63
|
+
const viteInfo = await getInfoFromVite(viteConfigFromOptions, operation);
|
|
64
64
|
await assertViteRoot2(viteInfo.root, viteInfo.viteConfigEnhanced, operation);
|
|
65
65
|
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig2)(viteInfo.root, operation === 'dev', viteInfo.vikeVitePluginOptions);
|
|
66
66
|
const viteConfigEnhanced = addViteSettingsSetByVikeConfig(viteInfo.viteConfigEnhanced, vikeConfig);
|
|
67
67
|
return {
|
|
68
|
+
vikeConfig,
|
|
68
69
|
viteConfigEnhanced
|
|
69
70
|
};
|
|
70
71
|
}
|
|
71
72
|
function addViteSettingsSetByVikeConfig(viteConfigEnhanced, vikeConfig) {
|
|
72
|
-
const viteConfigs = vikeConfig.global.
|
|
73
|
+
const viteConfigs = vikeConfig.global._from.configsCumulative.vite;
|
|
73
74
|
if (!viteConfigs)
|
|
74
75
|
return viteConfigEnhanced;
|
|
75
76
|
viteConfigs.values.forEach((v) => {
|
|
76
77
|
(0, utils_js_1.assertUsage)((0, utils_js_1.isObject)(v.value), `${v.definedAt} should be an object`);
|
|
77
78
|
viteConfigEnhanced = (0, vite_1.mergeConfig)(viteConfigEnhanced ?? {}, v.value);
|
|
79
|
+
(0, utils_js_1.assertUsage)(findVikeVitePlugin(v.value), "Using the +vite setting to add Vike's Vite plugin is forbidden");
|
|
78
80
|
});
|
|
79
81
|
return viteConfigEnhanced;
|
|
80
82
|
}
|
|
@@ -84,13 +86,14 @@ async function getViteRoot(operation) {
|
|
|
84
86
|
(0, utils_js_1.assert)(globalObject.root);
|
|
85
87
|
return globalObject.root;
|
|
86
88
|
}
|
|
87
|
-
async function getInfoFromVite(
|
|
88
|
-
const
|
|
89
|
-
const root = normalizeViteRoot(
|
|
89
|
+
async function getInfoFromVite(viteConfigFromOptions, operation) {
|
|
90
|
+
const viteConfigFromUserViteFile = await loadViteConfigFile(viteConfigFromOptions, operation);
|
|
91
|
+
const root = normalizeViteRoot(viteConfigFromUserViteFile?.root ?? viteConfigFromOptions?.root ?? process.cwd());
|
|
90
92
|
globalObject.root = root;
|
|
91
93
|
let vikeVitePluginOptions;
|
|
92
|
-
let viteConfigEnhanced =
|
|
93
|
-
|
|
94
|
+
let viteConfigEnhanced = viteConfigFromOptions;
|
|
95
|
+
// If Vike's Vite plugin is found in both viteConfigFromOptions and viteConfigFromUserViteFile then Vike will later throw an error
|
|
96
|
+
const found = findVikeVitePlugin(viteConfigFromOptions) || findVikeVitePlugin(viteConfigFromUserViteFile);
|
|
94
97
|
if (found) {
|
|
95
98
|
vikeVitePluginOptions = found.vikeVitePluginOptions;
|
|
96
99
|
}
|
|
@@ -99,20 +102,20 @@ async function getInfoFromVite(viteConfig, operation) {
|
|
|
99
102
|
// Using a dynamic import because the script calling the Vike API may not live in the same place as vite.config.js, thus vike/plugin may resolved to two different node_modules/vike directories.
|
|
100
103
|
const { plugin: vikePlugin } = await Promise.resolve().then(() => __importStar(require('../plugin/index.js')));
|
|
101
104
|
viteConfigEnhanced = {
|
|
102
|
-
...
|
|
103
|
-
plugins: [...(
|
|
105
|
+
...viteConfigFromOptions,
|
|
106
|
+
plugins: [...(viteConfigFromOptions?.plugins ?? []), vikePlugin()]
|
|
104
107
|
};
|
|
105
|
-
const res = findVikeVitePlugin(viteConfigEnhanced
|
|
108
|
+
const res = findVikeVitePlugin(viteConfigEnhanced);
|
|
106
109
|
(0, utils_js_1.assert)(res);
|
|
107
110
|
vikeVitePluginOptions = res.vikeVitePluginOptions;
|
|
108
111
|
}
|
|
109
112
|
(0, utils_js_1.assert)(vikeVitePluginOptions);
|
|
110
113
|
return { root, vikeVitePluginOptions, viteConfigEnhanced };
|
|
111
114
|
}
|
|
112
|
-
function findVikeVitePlugin(
|
|
115
|
+
function findVikeVitePlugin(viteConfig) {
|
|
113
116
|
let vikeVitePluginOptions;
|
|
114
117
|
let vikeVitePuginFound = false;
|
|
115
|
-
plugins
|
|
118
|
+
viteConfig?.plugins?.forEach((p) => {
|
|
116
119
|
if (p && '__vikeVitePluginOptions' in p) {
|
|
117
120
|
vikeVitePuginFound = true;
|
|
118
121
|
const options = p.__vikeVitePluginOptions;
|
|
@@ -125,8 +128,8 @@ function findVikeVitePlugin(plugins) {
|
|
|
125
128
|
return { vikeVitePluginOptions };
|
|
126
129
|
}
|
|
127
130
|
// Copied from https://github.com/vitejs/vite/blob/4f5845a3182fc950eb9cd76d7161698383113b18/packages/vite/src/node/config.ts#L961-L1005
|
|
128
|
-
async function loadViteConfigFile(
|
|
129
|
-
const [inlineConfig, command, defaultMode, _defaultNodeEnv, isPreview] = getResolveConfigArgs(
|
|
131
|
+
async function loadViteConfigFile(viteConfigFromOptions, operation) {
|
|
132
|
+
const [inlineConfig, command, defaultMode, _defaultNodeEnv, isPreview] = getResolveConfigArgs(viteConfigFromOptions, operation);
|
|
130
133
|
let config = inlineConfig;
|
|
131
134
|
let mode = inlineConfig.mode || defaultMode;
|
|
132
135
|
const configEnv = {
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.prerender = prerender;
|
|
4
4
|
const runPrerender_js_1 = require("../prerender/runPrerender.js");
|
|
5
5
|
const prepareViteApiCall_js_1 = require("./prepareViteApiCall.js");
|
|
6
|
+
// TODO/soon use importServerProductionIndex()
|
|
6
7
|
/**
|
|
7
8
|
* Programmatically trigger `$ vike prerender`
|
|
8
9
|
*
|
|
@@ -22,3 +22,4 @@ __exportStar(require("../../utils/assert.js"), exports);
|
|
|
22
22
|
__exportStar(require("../../utils/getGlobalObject.js"), exports);
|
|
23
23
|
__exportStar(require("../../utils/path.js"), exports);
|
|
24
24
|
__exportStar(require("../../utils/isObject.js"), exports);
|
|
25
|
+
__exportStar(require("../../utils/assertVersion.js"), exports);
|
|
@@ -32,6 +32,7 @@ const getPageAssets_js_1 = require("../runtime/renderPage/getPageAssets.js");
|
|
|
32
32
|
const resolveClientEntriesDev_js_1 = require("./shared/resolveClientEntriesDev.js");
|
|
33
33
|
const workaroundCssModuleHmr_js_1 = require("./plugins/workaroundCssModuleHmr.js");
|
|
34
34
|
const workaroundVite6HmrRegression_js_1 = require("./plugins/workaroundVite6HmrRegression.js");
|
|
35
|
+
const buildApp_js_1 = require("./plugins/buildApp.js");
|
|
35
36
|
// We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
|
|
36
37
|
(0, getPageAssets_js_1.setResolveClientEntriesDev)(resolveClientEntriesDev_js_1.resolveClientEntriesDev);
|
|
37
38
|
// Return as `any` to avoid Plugin type mismatches when there are multiple Vite versions installed
|
|
@@ -41,6 +42,7 @@ function plugin(vikeVitePluginOptions = {}) {
|
|
|
41
42
|
(0, index_js_2.importUserCode)(),
|
|
42
43
|
...(0, index_js_1.devConfig)(),
|
|
43
44
|
...(0, buildConfig_js_1.buildConfig)(),
|
|
45
|
+
...(0, buildApp_js_1.buildApp)(),
|
|
44
46
|
(0, previewConfig_js_1.previewConfig)(),
|
|
45
47
|
...(0, autoFullBuild_js_1.autoFullBuild)(),
|
|
46
48
|
(0, packageJsonFile_js_1.packageJsonFile)(),
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.autoFullBuild = autoFullBuild;
|
|
8
|
+
const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
|
|
8
9
|
const vite_1 = require("vite");
|
|
9
10
|
const utils_js_1 = require("../utils.js");
|
|
10
11
|
const runPrerender_js_1 = require("../../prerender/runPrerender.js");
|
|
@@ -15,7 +16,6 @@ const logErrorHint_js_1 = require("../../runtime/renderPage/logErrorHint.js");
|
|
|
15
16
|
const buildConfig_js_1 = require("./buildConfig.js");
|
|
16
17
|
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
17
18
|
const context_js_2 = require("../../api/context.js");
|
|
18
|
-
const context_js_3 = require("../../cli/context.js");
|
|
19
19
|
let forceExit = false;
|
|
20
20
|
function autoFullBuild() {
|
|
21
21
|
let config;
|
|
@@ -57,6 +57,7 @@ function autoFullBuild() {
|
|
|
57
57
|
handler() {
|
|
58
58
|
if (forceExit) {
|
|
59
59
|
(0, runPrerender_js_1.runPrerender_forceExit)();
|
|
60
|
+
(0, utils_js_1.assert)(false);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
}
|
|
@@ -74,21 +75,7 @@ async function triggerFullBuild(config, vikeConfig, bundle) {
|
|
|
74
75
|
// - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
|
|
75
76
|
if (!bundle[buildConfig_js_1.manifestTempFile])
|
|
76
77
|
return;
|
|
77
|
-
const
|
|
78
|
-
let configInline;
|
|
79
|
-
if (config._viteConfigEnhanced) {
|
|
80
|
-
configInline = config._viteConfigEnhanced;
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
configInline = {
|
|
84
|
-
...configFromCli,
|
|
85
|
-
configFile: configFromCli?.configFile || config.configFile,
|
|
86
|
-
root: config.root,
|
|
87
|
-
build: {
|
|
88
|
-
...configFromCli?.build
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
}
|
|
78
|
+
const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
|
|
92
79
|
try {
|
|
93
80
|
await (0, vite_1.build)(setSSR(configInline));
|
|
94
81
|
}
|
|
@@ -98,9 +85,8 @@ async function triggerFullBuild(config, vikeConfig, bundle) {
|
|
|
98
85
|
process.exit(1);
|
|
99
86
|
}
|
|
100
87
|
if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
forceExit = (0, context_js_3.isVikeCli)() || (0, isViteCliCall_js_1.isViteCliCall)();
|
|
88
|
+
const res = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
|
|
89
|
+
forceExit = res.forceExit;
|
|
104
90
|
}
|
|
105
91
|
}
|
|
106
92
|
function setSSR(configInline) {
|
|
@@ -119,7 +105,10 @@ function abortViteBuildSsr(vikeConfig) {
|
|
|
119
105
|
}
|
|
120
106
|
}
|
|
121
107
|
function isDisabled(vikeConfig) {
|
|
122
|
-
const { disableAutoFullBuild } = vikeConfig.global.config;
|
|
108
|
+
const { disableAutoFullBuild, viteEnvironmentAPI } = vikeConfig.global.config;
|
|
109
|
+
if (viteEnvironmentAPI) {
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
123
112
|
if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
|
|
124
113
|
const isViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
|
|
125
114
|
return isViteApi;
|
|
@@ -13,7 +13,7 @@ function baseUrls() {
|
|
|
13
13
|
const isDev = config._isDev;
|
|
14
14
|
(0, utils_js_1.assert)(typeof isDev === 'boolean');
|
|
15
15
|
const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
|
|
16
|
-
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, config.vike.
|
|
16
|
+
basesResolved = (0, resolveBase_js_1.resolveBase)(baseViteOriginal, config.vike.config.baseServer ?? null, config.vike.config.baseAssets ?? null);
|
|
17
17
|
// We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
|
|
18
18
|
process.env.BASE_SERVER = basesResolved.baseServer;
|
|
19
19
|
process.env.BASE_ASSETS = basesResolved.baseAssets;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildApp = buildApp;
|
|
4
|
+
const runPrerender_js_1 = require("../../prerender/runPrerender.js");
|
|
5
|
+
const context_js_1 = require("../../prerender/context.js");
|
|
6
|
+
const getOutDirs_js_1 = require("../shared/getOutDirs.js");
|
|
7
|
+
const utils_js_1 = require("../utils.js");
|
|
8
|
+
const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
|
|
9
|
+
const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
|
|
10
|
+
function buildApp() {
|
|
11
|
+
let config;
|
|
12
|
+
return [
|
|
13
|
+
{
|
|
14
|
+
name: 'vike:buildApp',
|
|
15
|
+
apply: 'build',
|
|
16
|
+
config(config) {
|
|
17
|
+
if (!config.vike.config.viteEnvironmentAPI)
|
|
18
|
+
return;
|
|
19
|
+
return {
|
|
20
|
+
builder: {
|
|
21
|
+
buildApp: async (builder) => {
|
|
22
|
+
(0, utils_js_1.assert)(builder.environments.client);
|
|
23
|
+
(0, utils_js_1.assert)(builder.environments.ssr);
|
|
24
|
+
await builder.build(builder.environments.client);
|
|
25
|
+
await builder.build(builder.environments.ssr);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
environments: {
|
|
29
|
+
ssr: {
|
|
30
|
+
consumer: 'server',
|
|
31
|
+
build: {
|
|
32
|
+
outDir: (0, getOutDirs_js_1.resolveOutDir)(config, true),
|
|
33
|
+
ssr: true
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
client: {
|
|
37
|
+
consumer: 'client',
|
|
38
|
+
build: {
|
|
39
|
+
copyPublicDir: true,
|
|
40
|
+
ssr: false
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'vike:buildApp:prerender',
|
|
49
|
+
apply: 'build',
|
|
50
|
+
enforce: 'pre',
|
|
51
|
+
applyToEnvironment(env) {
|
|
52
|
+
return env.name === 'ssr';
|
|
53
|
+
},
|
|
54
|
+
configResolved(_config) {
|
|
55
|
+
config = _config;
|
|
56
|
+
},
|
|
57
|
+
async writeBundle() {
|
|
58
|
+
if (!config.vike.config.viteEnvironmentAPI)
|
|
59
|
+
return;
|
|
60
|
+
const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
|
|
61
|
+
if (!(0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig))
|
|
62
|
+
return;
|
|
63
|
+
const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
|
|
64
|
+
const { forceExit } = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
|
|
65
|
+
if (forceExit) {
|
|
66
|
+
(0, runPrerender_js_1.runPrerender_forceExit)();
|
|
67
|
+
(0, utils_js_1.assert)(false);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
];
|
|
72
|
+
}
|
|
@@ -7,7 +7,6 @@ exports.fixServerAssets = fixServerAssets;
|
|
|
7
7
|
exports.fixServerAssets_isEnabled = fixServerAssets_isEnabled;
|
|
8
8
|
exports.fixServerAssets_assertCssCodeSplit = fixServerAssets_assertCssCodeSplit;
|
|
9
9
|
exports.fixServerAssets_assertCssTarget = fixServerAssets_assertCssTarget;
|
|
10
|
-
exports.fixServerAssets_assertCssTarget_populate = fixServerAssets_assertCssTarget_populate;
|
|
11
10
|
const promises_1 = __importDefault(require("fs/promises"));
|
|
12
11
|
const fs_1 = __importDefault(require("fs"));
|
|
13
12
|
const path_1 = __importDefault(require("path"));
|
|
@@ -200,17 +199,15 @@ function fixServerAssets_assertCssCodeSplit(config) {
|
|
|
200
199
|
(0, utils_js_1.assertWarning)(config.build.cssCodeSplit, `${picocolors_1.default.cyan('build.cssCodeSplit')} shouldn't be set to ${picocolors_1.default.cyan('false')} (https://github.com/vikejs/vike/issues/1993)`, { onlyOnce: true });
|
|
201
200
|
}
|
|
202
201
|
const targets = [];
|
|
203
|
-
function fixServerAssets_assertCssTarget_populate(config) {
|
|
204
|
-
const isServerSide = (0, viteIsSSR_js_1.viteIsSSR)(config);
|
|
205
|
-
(0, utils_js_1.assert)(typeof isServerSide === 'boolean');
|
|
206
|
-
(0, utils_js_1.assert)(config.build.target !== undefined);
|
|
207
|
-
targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
|
|
208
|
-
}
|
|
209
202
|
async function fixServerAssets_assertCssTarget(config) {
|
|
210
203
|
if (!fixServerAssets_isEnabled())
|
|
211
204
|
return;
|
|
212
205
|
if (!(await (0, getVikeConfig_js_1.isV1Design)(config)))
|
|
213
206
|
return;
|
|
207
|
+
const isServerSide = (0, viteIsSSR_js_1.viteIsSSR)(config);
|
|
208
|
+
(0, utils_js_1.assert)(typeof isServerSide === 'boolean');
|
|
209
|
+
(0, utils_js_1.assert)(config.build.target !== undefined);
|
|
210
|
+
targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
|
|
214
211
|
const targetsServer = targets.filter((t) => t.isServerSide);
|
|
215
212
|
const targetsClient = targets.filter((t) => !t.isServerSide);
|
|
216
213
|
targetsClient.forEach((targetClient) => {
|
|
@@ -218,9 +215,10 @@ async function fixServerAssets_assertCssTarget(config) {
|
|
|
218
215
|
targetsServer.forEach((targetServer) => {
|
|
219
216
|
const targetCssResolvedServer = resolveCssTarget(targetServer);
|
|
220
217
|
(0, utils_js_1.assertWarning)((0, utils_js_1.isEqualStringList)(targetCssResolvedClient, targetCssResolvedServer), [
|
|
221
|
-
'The CSS browser target should be the same for both client
|
|
222
|
-
`Client
|
|
223
|
-
`Server
|
|
218
|
+
'The CSS browser target should be the same for both client and server, but we got:',
|
|
219
|
+
`Client: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedClient))}`,
|
|
220
|
+
`Server: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedServer))}`,
|
|
221
|
+
`Different targets leads to CSS duplication, see ${picocolors_1.default.underline('https://github.com/vikejs/vike/issues/1815#issuecomment-2507002979')} for more information.`
|
|
224
222
|
].join('\n'), {
|
|
225
223
|
showStackTrace: true,
|
|
226
224
|
onlyOnce: 'different-css-target'
|
|
@@ -29,7 +29,6 @@ const manifestTempFile = '_temp_manifest.json';
|
|
|
29
29
|
exports.manifestTempFile = manifestTempFile;
|
|
30
30
|
function buildConfig() {
|
|
31
31
|
let isServerAssetsFixEnabled;
|
|
32
|
-
let isSsrBuild;
|
|
33
32
|
let outDirs;
|
|
34
33
|
let config;
|
|
35
34
|
return [
|
|
@@ -55,7 +54,6 @@ function buildConfig() {
|
|
|
55
54
|
config.build.ssrEmitAssets = true;
|
|
56
55
|
// Required if `ssrEmitAssets: true`, see https://github.com/vitejs/vite/pull/11430#issuecomment-1454800934
|
|
57
56
|
config.build.cssMinify = 'esbuild';
|
|
58
|
-
(0, fixServerAssets_js_1.fixServerAssets_assertCssTarget_populate)(config);
|
|
59
57
|
(0, fixServerAssets_js_1.fixServerAssets_assertCssCodeSplit)(config);
|
|
60
58
|
}
|
|
61
59
|
}
|
|
@@ -65,12 +63,14 @@ function buildConfig() {
|
|
|
65
63
|
order: 'post',
|
|
66
64
|
handler(config) {
|
|
67
65
|
(0, utils_js_1.onSetupBuild)();
|
|
68
|
-
isSsrBuild = (0, viteIsSSR_js_1.viteIsSSR)(config);
|
|
69
66
|
return {
|
|
70
67
|
build: {
|
|
71
68
|
outDir: (0, getOutDirs_js_1.resolveOutDir)(config),
|
|
72
69
|
manifest: manifestTempFile,
|
|
73
|
-
copyPublicDir:
|
|
70
|
+
copyPublicDir: config.vike.config.viteEnvironmentAPI
|
|
71
|
+
? // Already set by buildApp() plugin
|
|
72
|
+
undefined
|
|
73
|
+
: !(0, viteIsSSR_js_1.viteIsSSR)(config)
|
|
74
74
|
}
|
|
75
75
|
};
|
|
76
76
|
}
|
|
@@ -94,7 +94,7 @@ function buildConfig() {
|
|
|
94
94
|
order: 'pre',
|
|
95
95
|
sequential: true,
|
|
96
96
|
async handler(options, bundle) {
|
|
97
|
-
if (
|
|
97
|
+
if ((0, viteIsSSR_js_1.viteIsSSR)(config)) {
|
|
98
98
|
// Ideally we'd move dist/_temp_manifest.json to dist/server/client-assets.json instead of dist/assets.json
|
|
99
99
|
// - But we can't because there is no guarentee whether dist/server/ is generated before or after dist/client/ (generating dist/server/ after dist/client/ erases dist/server/client-assets.json)
|
|
100
100
|
// - We'll able to do so once we replace `$ vite build` with `$ vike build`
|
|
@@ -47,14 +47,14 @@ function getServerProductionEntryCode(config) {
|
|
|
47
47
|
// After the old design is removed, let's maybe simplify and move everything into a single virtual module
|
|
48
48
|
const importerCode = [
|
|
49
49
|
` import { setGlobalContext_buildEntry } from '${importPath}';`,
|
|
50
|
-
` import * as
|
|
50
|
+
` import * as virtualFileExports from '${virtualFileImportUserCode_js_1.virtualFileIdImportUserCodeServer}';`,
|
|
51
51
|
` {`,
|
|
52
52
|
// Because of a Rollup bug, we have to assign ASSETS_MANIFEST to a variable before passing it to setGlobalContext_buildEntry()
|
|
53
53
|
// - This workaround doesn't work: https://github.com/vikejs/vike/commit/d5f3a4f7aae5a8bc44192e6cbb2bcb9007be188d
|
|
54
54
|
` const assetsManifest = ${ASSETS_MANIFEST};`,
|
|
55
55
|
` const buildInfo = ${JSON.stringify(buildInfo, null, 2)};`,
|
|
56
56
|
' setGlobalContext_buildEntry({',
|
|
57
|
-
`
|
|
57
|
+
` virtualFileExports,`,
|
|
58
58
|
` assetsManifest,`,
|
|
59
59
|
` buildInfo,`,
|
|
60
60
|
' });',
|
|
@@ -35,7 +35,7 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
35
35
|
_isDev: isDev,
|
|
36
36
|
_root: root,
|
|
37
37
|
_vikeVitePluginOptions: vikeVitePluginOptions,
|
|
38
|
-
vike: {
|
|
38
|
+
vike: { config: vikeConfig.global.config },
|
|
39
39
|
// TODO/v1-release: remove https://github.com/vikejs/vike/issues/2122
|
|
40
40
|
configVikePromise: Promise.resolve({
|
|
41
41
|
prerender: (0, context_js_2.isPrerenderEnabled)(vikeConfig)
|
|
@@ -9,7 +9,7 @@ const virtualFileImportUserCode_js_1 = require("../../../shared/virtual-files/vi
|
|
|
9
9
|
const vite_1 = require("vite");
|
|
10
10
|
const fileTypes_js_1 = require("../../../../shared/getPageFiles/fileTypes.js");
|
|
11
11
|
const path_1 = __importDefault(require("path"));
|
|
12
|
-
const getVirtualFilePageConfigs_js_1 = require("./v1-design/getVirtualFilePageConfigs.js");
|
|
12
|
+
const getVirtualFilePageConfigs_js_1 = require("./v1-design/virtual-files/getVirtualFilePageConfigs.js");
|
|
13
13
|
const getVikeConfig_js_1 = require("./v1-design/getVikeConfig.js");
|
|
14
14
|
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
|
|
15
15
|
const viteIsSSR_js_1 = require("../../shared/viteIsSSR.js");
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.importUserCode = importUserCode;
|
|
7
7
|
const vite_1 = require("vite");
|
|
8
|
-
const getVirtualFilePageConfigValuesAll_js_1 = require("./v1-design/getVirtualFilePageConfigValuesAll.js");
|
|
8
|
+
const getVirtualFilePageConfigValuesAll_js_1 = require("./v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js");
|
|
9
9
|
const getVirtualFileImportUserCode_js_1 = require("./getVirtualFileImportUserCode.js");
|
|
10
10
|
const utils_js_1 = require("../../utils.js");
|
|
11
11
|
const virtual_files_js_1 = require("../../../shared/virtual-files.js");
|
|
@@ -15,6 +15,8 @@ const getVikeConfig_js_1 = require("./v1-design/getVikeConfig.js");
|
|
|
15
15
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
16
16
|
const loggerNotProd_js_1 = require("../../shared/loggerNotProd.js");
|
|
17
17
|
const getFilePath_js_1 = require("../../shared/getFilePath.js");
|
|
18
|
+
const getPlusFilesAll_js_1 = require("./v1-design/getVikeConfig/getPlusFilesAll.js");
|
|
19
|
+
const globalContext_js_1 = require("../../../runtime/globalContext.js");
|
|
18
20
|
function importUserCode() {
|
|
19
21
|
let config;
|
|
20
22
|
let vikeConfig;
|
|
@@ -71,7 +73,7 @@ function handleFileAddRemove(server, config) {
|
|
|
71
73
|
return;
|
|
72
74
|
function listener(file, isRemove) {
|
|
73
75
|
file = (0, vite_1.normalizePath)(file);
|
|
74
|
-
const isVikeConfig = isVikeConfigModule(file) ||
|
|
76
|
+
const isVikeConfig = isVikeConfigModule(file) || isVikeConfigFile(file);
|
|
75
77
|
if (isVikeConfig) {
|
|
76
78
|
const virtualModules = getVirtualModules(server);
|
|
77
79
|
virtualModules.forEach((mod) => {
|
|
@@ -123,6 +125,7 @@ function reloadConfig(filePath, config, op) {
|
|
|
123
125
|
(0, loggerNotProd_js_1.logConfigInfo)(msg, 'info');
|
|
124
126
|
}
|
|
125
127
|
(0, getVikeConfig_js_1.reloadVikeConfig)(config);
|
|
128
|
+
(0, globalContext_js_1.updateUserFiles)();
|
|
126
129
|
}
|
|
127
130
|
function getVirtualModules(server) {
|
|
128
131
|
const virtualModules = Array.from(server.moduleGraph.urlToModuleMap.keys())
|
|
@@ -134,3 +137,6 @@ function getVirtualModules(server) {
|
|
|
134
137
|
});
|
|
135
138
|
return virtualModules;
|
|
136
139
|
}
|
|
140
|
+
function isVikeConfigFile(filePath) {
|
|
141
|
+
return !!(0, getPlusFilesAll_js_1.getPlusFileValueConfigName)(filePath);
|
|
142
|
+
}
|