-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathelectron.vite.config.js
More file actions
99 lines (98 loc) · 2.46 KB
/
Copy pathelectron.vite.config.js
File metadata and controls
99 lines (98 loc) · 2.46 KB
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import { resolve } from "node:path";
import react from "@vitejs/plugin-react";
import { defineConfig, externalizeDepsPlugin } from "electron-vite";
import pluginExternal from "vite-plugin-external";
import sassDts from "vite-plugin-sass-dts";
export default defineConfig({
main: {
build: {
lib: {
entry: resolve(__dirname, "src/main/index.ts"),
formats: ["cjs"],
},
rollupOptions: {
output: {
exports: "named",
preserveModules: (process.env.VITE_PRESERVE_MODULES ?? "true") === "true",
preserveModulesRoot: "src/main",
},
},
sourcemap: true,
},
plugins: [
react({
babel: {
plugins: [
["@babel/plugin-proposal-decorators", { version: "2023-05" }],
],
},
}),
externalizeDepsPlugin({
include: ["@freelensapp/extensions", "mobx"],
}),
pluginExternal({
externals: {
"@freelensapp/extensions": "global.LensExtensions",
mobx: "global.Mobx",
},
}),
],
},
preload: {
build: {
lib: {
entry: resolve(__dirname, "src/renderer/index.tsx"),
formats: ["cjs"],
},
outDir: "out/renderer",
rollupOptions: {
output: {
exports: "named",
preserveModules: (process.env.VITE_PRESERVE_MODULES ?? "true") === "true",
preserveModulesRoot: "src/renderer",
},
},
sourcemap: true,
},
css: {
modules: {
localsConvention: "camelCaseOnly",
},
},
plugins: [
sassDts({
enabledMode: ["development", "production"],
}),
react({
babel: {
plugins: [
["@babel/plugin-proposal-decorators", { version: "2023-05" }],
],
},
}),
externalizeDepsPlugin({
include: [
"@freelensapp/extensions",
"electron",
"mobx",
"mobx-react",
"react",
"react-dom",
"react-router-dom",
],
exclude: [],
}),
pluginExternal({
externals: {
"@freelensapp/extensions": "global.LensExtensions",
mobx: "global.Mobx",
"mobx-react": "global.MobxReact",
react: "global.React",
"react-dom": "global.ReactDom",
"react-router-dom": "global.ReactRouterDom",
"react/jsx-runtime": "global.ReactJsxRuntime",
},
}),
],
},
});