-
Notifications
You must be signed in to change notification settings - Fork 7
/
vite.config.ts
41 lines (40 loc) · 1.07 KB
/
vite.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import { defineConfig } from 'vite';
import { VitePluginNode as vitePluginNode } from 'vite-plugin-node';
import yaml from '@rollup/plugin-yaml';
import copy from 'rollup-plugin-copy';
import { Server } from 'socket.io';
import env from './env';
export default defineConfig({
server: {
port: 3000,
},
build: {
target: 'esnext',
},
plugins: [
...vitePluginNode({
// https://github.com/axe-me/vite-plugin-node/blob/main/packages/vite-plugin-node/src/server/express.ts
// production's io-server is in server.ts
adapter({ app, server, req, res }) {
if (env.NODE_ENV !== 'production' && !app.get('io')) {
const io = new Server(server.httpServer);
app.set('io', io);
}
app(req, res);
},
appPath: './server.ts',
tsCompiler: 'esbuild',
}),
yaml(),
copy({
targets: [
{ src: 'build/client', dest: 'dist/assets' },
{ src: 'app/digital/template.html', dest: 'dist/.' },
],
hook: 'writeBundle',
}),
],
optimizeDeps: {
exclude: ['nib'],
},
});