aboutsummaryrefslogtreecommitdiffstats
path: root/packages/preload/vite.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/preload/vite.config.js')
-rw-r--r--packages/preload/vite.config.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/packages/preload/vite.config.js b/packages/preload/vite.config.js
new file mode 100644
index 0000000..8f11028
--- /dev/null
+++ b/packages/preload/vite.config.js
@@ -0,0 +1,50 @@
1// @ts-check
2
3import { builtinModules } from 'module';
4import { join } from 'path';
5
6// `resolveJsonModule` is disabled for this package, but vite will load the json nevertheless.
7// @ts-expect-error
8import { chrome } from '../../.electron-vendors.cache.json';
9
10/** @type string */
11const PACKAGE_ROOT = __dirname;
12
13/**
14 * @type {import('vite').UserConfig}
15 * @see https://vitejs.dev/config/
16 */
17const config = {
18 mode: process.env.MODE,
19 root: PACKAGE_ROOT,
20 envDir: process.cwd(),
21 resolve: {
22 alias: {
23 '/@/': join(PACKAGE_ROOT, 'src') + '/',
24 },
25 },
26 build: {
27 sourcemap: 'inline',
28 target: `chrome${chrome}`,
29 outDir: 'dist',
30 assetsDir: '.',
31 minify: process.env.MODE !== 'development',
32 lib: {
33 entry: 'src/index.ts',
34 formats: ['cjs'],
35 },
36 rollupOptions: {
37 external: [
38 'electron',
39 ...builtinModules,
40 ],
41 output: {
42 entryFileNames: '[name].cjs',
43 },
44 },
45 emptyOutDir: true,
46 brotliSize: false,
47 },
48};
49
50export default config;