0
Fork 0
mirror of https://github.com/withastro/astro.git synced 2025-03-10 23:01:26 -05:00

feat: unify preview config, support proxy configuration from Astro and Vite

This commit is contained in:
Saiya 2024-06-20 00:36:31 +08:00
parent 246bd7a516
commit 07618400e3
2 changed files with 14 additions and 10 deletions

View file

@ -66,16 +66,19 @@ export default async function preview(inlineConfig: AstroInlineConfig): Promise<
if (typeof previewModule.default !== 'function') {
throw new Error(`[preview] ${settings.adapter.name} cannot preview your app.`);
}
const previewConfig = Object.assign({},
settings.config.vite.server,
settings.config.vite.preview,
settings.config.server,
)
const server = await previewModule.default({
...previewConfig,
outDir: settings.config.outDir,
client: settings.config.build.client,
serverEntrypoint: new URL(settings.config.build.serverEntry, settings.config.build.server),
host: getResolvedHostForHttpServer(settings.config.server.host),
port: settings.config.server.port,
host: getResolvedHostForHttpServer(previewConfig.host),
base: settings.config.base,
logger: new AstroIntegrationLogger(logger.options, settings.adapter.name),
headers: settings.config.server.headers,
});
return server;

View file

@ -23,6 +23,12 @@ export default async function createStaticPreviewServer(
const startServerTime = performance.now();
let previewServer: VitePreviewServer;
const previewConfig = Object.assign({},
settings.config.vite.server,
settings.config.vite.preview,
settings.config.server,
)
try {
previewServer = await preview({
configFile: false,
@ -31,12 +37,7 @@ export default async function createStaticPreviewServer(
build: {
outDir: fileURLToPath(settings.config.outDir),
},
preview: {
host: settings.config.server.host,
port: settings.config.server.port,
headers: settings.config.server.headers,
open: settings.config.server.open,
},
preview: previewConfig,
plugins: [vitePluginAstroPreview(settings)],
});
} catch (err) {