mirror of https://github.com/sylv/micro.git
38 lines
841 B
TypeScript
38 lines
841 B
TypeScript
import { preact } from '@preact/preset-vite';
|
|
import { vavite } from 'vavite';
|
|
import ssr from 'vike/plugin';
|
|
import { defineConfig } from 'vite';
|
|
import eslint from 'vite-plugin-eslint';
|
|
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(),
|
|
eslint({ cache: true }),
|
|
preact(),
|
|
ssr({ disableAutoFullBuild: true }),
|
|
vavite({
|
|
handlerEntry: '/src/server/index.ts',
|
|
serveClientAssetsInDev: true,
|
|
clientAssetsDir: 'dist/client',
|
|
}),
|
|
],
|
|
});
|