-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathvite.config.mts
39 lines (38 loc) · 1.21 KB
/
vite.config.mts
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
import { svelte } from '@sveltejs/vite-plugin-svelte'
import { defineConfig } from 'vitest/config'
const moduleNames = ['replace_date', 'send_active', 'worker']
const tsEntryModules = moduleNames.map((name) => `/scripts/${name}.ts`)
export default defineConfig(({ mode }) => ({
plugins: [svelte()],
root: 'src',
test: {
environment: 'happy-dom',
},
server: { open: '/popup/main.html' },
esbuild: {
pure: mode === 'production' ? ['console.log'] : [],
},
build: {
outDir: '../dist/chrome',
emptyOutDir: true,
target: ['chrome102', 'firefox128'],
minify: false,
cssMinify: true,
rollupOptions: {
input: tsEntryModules.concat(['/popup/main.html']),
output: {
entryFileNames: (assetInfo) => {
if (moduleNames.includes(assetInfo.name)) {
return 'scripts/[name].js'
} else {
return 'assets/[name]-[hash].js'
}
},
},
},
},
define: {
__EXT_VERSION__: JSON.stringify(process.env.LONG_VERSION),
__MODE__: JSON.stringify(process.env.MODE),
},
}))