micro/packages/web/vite.config.ts

36 lines
771 B
TypeScript

import { preact } from '@preact/preset-vite';
import { vavite } from 'vavite';
import ssr from 'vike/plugin';
import { defineConfig } from 'vite';
import codegen from 'vite-plugin-graphql-codegen';
export default defineConfig({
buildSteps: [
{
name: 'client',
},
{
name: 'server',
config: {
build: { ssr: true },
},
},
],
define: {
'process.env.NODE_ENV': '"production"',
},
ssr: {
noExternal: ['react-helmet-async', 'prism-react-renderer', 'qrcode.react', 'formik'],
},
plugins: [
codegen(),
preact(),
ssr({ disableAutoFullBuild: true }),
vavite({
handlerEntry: '/src/server/index.ts',
serveClientAssetsInDev: true,
clientAssetsDir: 'dist/client',
}),
],
});