-
Notifications
You must be signed in to change notification settings - Fork 3
/
vite.config.ts
67 lines (61 loc) · 1.96 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
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
// import AutoImport from 'unplugin-auto-import/vite';
// import Components from 'unplugin-vue-components/vite';
// import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
import path from 'path';
import nodePolyfills from 'rollup-plugin-polyfill-node';
import { crx } from '@crxjs/vite-plugin';
import manifest from './manifest';
import { viteCommonjs } from '@originjs/vite-plugin-commonjs';
import ChildProcess from 'child_process';
// const production = process.env.NODE_ENV === 'production';
const appVersion = process.env.npm_package_version;
const commitHash = ChildProcess.execSync('git rev-parse --short HEAD').toString();
console.log(`Building CrossSync version: v${appVersion} #${commitHash}`);
export default defineConfig({
build: {
rollupOptions: {
plugins: [nodePolyfills()],
},
commonjsOptions: {
transformMixedEsModules: true,
},
target: 'esnext',
},
resolve: {
alias: {
'@': path.resolve(__dirname, 'src'),
process: 'process/browser',
stream: 'stream-browserify',
zlib: 'browserify-zlib',
util: 'util',
},
},
plugins: [
vue(),
viteCommonjs(),
// Disabled for crx compatibility issues
//
// AutoImport({
// resolvers: [ElementPlusResolver()],
// }),
// Components({
// resolvers: [ElementPlusResolver()],
// }),
// !production &&
// nodePolyfills({
// include: ['node_modules/**/*.js', new RegExp('node_modules/.vite/.*js')],
// }),
crx({
manifest,
contentScripts: {
preambleCode: false,
},
}),
],
define: {
__APP_VERSION__: JSON.stringify(appVersion),
__COMMIT_HASH__: JSON.stringify(commitHash),
},
});