-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvite.config.ts
71 lines (62 loc) · 2.08 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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/* eslint-disable node/no-unpublished-import */
import {defineConfig} from 'vite';
import {VitePluginNode} from 'vite-plugin-node';
export default defineConfig({
// ...vite configures
server: {
// vite server configs, for details see [vite doc](https://vitejs.dev/config/#server-host)
port: 3000,
},
plugins: [
...VitePluginNode({
// Nodejs native Request adapter
// currently this plugin support 'express', 'nest', 'koa' and 'fastify' out of box,
// you can also pass a function if you are using other frameworks, see Custom Adapter section
adapter: 'express',
// tell the plugin where is your project entry
appPath: 'src/main.ts',
// Optional, default: 'viteNodeApp'
// the name of named export of you app from the appPath file
exportName: 'viteNodeApp',
// Optional, default: 'esbuild'
// The TypeScript compiler you want to use
// by default this plugin is using vite default ts compiler which is esbuild
// 'swc' compiler is supported to use as well for frameworks
// like Nestjs (esbuild dont support 'emitDecoratorMetadata' yet)
// you need to INSTALL `@swc/core` as dev dependency if you want to use swc
tsCompiler: 'esbuild',
// Optional, default: {
// jsc: {
// target: 'es2019',
// parser: {
// syntax: 'typescript',
// decorators: true
// },
// transform: {
// legacyDecorator: true,
// decoratorMetadata: true
// }
// }
// }
// swc configs, see [swc doc](https://swc.rs/docs/configuration/swcrc)
swcOptions: {},
}),
],
optimizeDeps: {
// Vite does not work well with optionnal dependencies,
// you can mark them as ignored for now
// eg: for nestjs, exlude these optional dependencies:
// exclude: [
// '@nestjs/microservices',
// '@nestjs/websockets',
// 'cache-manager',
// 'class-transformer',
// 'class-validator',
// 'fastify-swagger',
// ],
},
build: {
ssr: 'src/main.ts',
outDir: './dist'
},
});