vike
Version:
The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.
53 lines (52 loc) • 2.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.pluginBuildApp = pluginBuildApp;
const runPrerender_js_1 = require("../../../prerender/runPrerender.js");
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
const utils_js_1 = require("../../utils.js");
const commonConfig_js_1 = require("../commonConfig.js");
const pluginAutoFullBuild_js_1 = require("./pluginAutoFullBuild.js");
function pluginBuildApp() {
return [
{
name: 'vike:build:pluginBuildApp',
apply: 'build',
config(config) {
const vike = (0, commonConfig_js_1.getVikeConfigInternal)(config);
if (!vike.config.vite6BuilderApp)
return;
return {
builder: {
// Can be overriden by another plugin e.g vike-vercel https://github.com/vikejs/vike/pull/2184#issuecomment-2659425195
async buildApp(builder) {
(0, utils_js_1.assert)(builder.environments.client);
(0, utils_js_1.assert)(builder.environments.ssr);
await builder.build(builder.environments.client);
await builder.build(builder.environments.ssr);
if ((0, pluginAutoFullBuild_js_1.isPrerenderForceExit)()) {
(0, runPrerender_js_1.runPrerender_forceExit)();
(0, utils_js_1.assert)(false);
}
}
},
environments: {
ssr: {
consumer: 'server',
build: {
outDir: (0, getOutDirs_js_1.resolveOutDir)(config, true),
ssr: true
}
},
client: {
consumer: 'client',
build: {
copyPublicDir: true,
ssr: false
}
}
}
};
}
}
];
}