d3ro-voice/electron.vite.config.ts
Yun Chan 5ccbf85a65 ESM 패키지 번들링 + electron-rebuild + import 수정
- electron-vite: nanoid/electron-store를 externalize 제외 (ESM 전용 번들 포함)
- electron-rebuild: better-sqlite3/uiohook-napi Electron용 리빌드
- bootstrap: 동적 require → 정적 import으로 수정
2026-04-05 02:41:48 +09:00

57 lines
1.3 KiB
TypeScript

import { resolve } from 'path'
import { defineConfig, externalizeDepsPlugin } from 'electron-vite'
import react from '@vitejs/plugin-react'
export default defineConfig({
main: {
plugins: [externalizeDepsPlugin({ exclude: ['nanoid', 'electron-store'] })],
resolve: {
alias: {
'@shared': resolve('src/shared')
}
}
},
preload: {
plugins: [externalizeDepsPlugin()],
build: {
rollupOptions: {
input: {
index: resolve(__dirname, 'src/preload/index.ts'),
popup: resolve(__dirname, 'src/preload/popup.ts')
}
}
},
resolve: {
alias: {
'@shared': resolve('src/shared')
}
}
},
renderer: {
build: {
rollupOptions: {
input: {
index: resolve(__dirname, 'src/renderer/index.html'),
'popups/recording-tip': resolve(
__dirname,
'src/renderer/popups/recording-tip/index.html'
),
'popups/result-popup': resolve(
__dirname,
'src/renderer/popups/result-popup/index.html'
),
'popups/history-popup': resolve(
__dirname,
'src/renderer/popups/history-popup/index.html'
)
}
}
},
resolve: {
alias: {
'@shared': resolve('src/shared')
}
},
plugins: [react()]
}
})