e6b4f343e0
Clean config/copy items (Phase 7): - L170: build.sourcemap 'hidden' on main/preload/renderer — emit .map for offline crash symbolication (of the CC8 logger's raw stacks) without exposing them. - L34: add `test:integration` npm script (AEROFETCH_REAL_DOWNLOAD=1) for the opt-in real-download suite; stays out of `npm test` (needs network + live yt-dlp). - L87: HistoryEntry carries the original `options`; redownload replays them so a re-download reproduces the same post-processing instead of the current defaults. - L96: folder "Browse" buttons -> "Browse…" (they open the OS picker). - L97: PO-token placeholder "(none)" -> "Optional -- paste a token" (consistent). - Ticked already-resolved: L99 (M28 aria-label), L113 (UX2 tooltip=aria-label), L95 (usage follows verb/modifier rule), L172 (skipLibCheck accepted). typecheck + 268 tests + eslint + prettier green (touched files LF/clean). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
48 lines
1.2 KiB
TypeScript
48 lines
1.2 KiB
TypeScript
import { resolve } from 'path'
|
|
import { defineConfig, externalizeDepsPlugin } from 'electron-vite'
|
|
import react from '@vitejs/plugin-react'
|
|
|
|
export default defineConfig({
|
|
main: {
|
|
plugins: [externalizeDepsPlugin()],
|
|
resolve: {
|
|
alias: {
|
|
'@shared': resolve('src/shared')
|
|
}
|
|
},
|
|
// Hidden source maps: emit .map files so a field crash stack (the logger writes
|
|
// raw stacks, CC8) can be symbolicated offline, without referencing/exposing them
|
|
// in the shipped bundle (L170).
|
|
build: { sourcemap: 'hidden' }
|
|
},
|
|
preload: {
|
|
plugins: [externalizeDepsPlugin()],
|
|
resolve: {
|
|
alias: {
|
|
'@shared': resolve('src/shared')
|
|
}
|
|
},
|
|
// Emit CommonJS (.cjs): sandboxed preload scripts must be CJS, and enabling
|
|
// the sandbox (webPreferences.sandbox) is part of the security hardening.
|
|
build: {
|
|
sourcemap: 'hidden',
|
|
rollupOptions: {
|
|
output: {
|
|
format: 'cjs',
|
|
entryFileNames: 'index.cjs'
|
|
}
|
|
}
|
|
}
|
|
},
|
|
renderer: {
|
|
resolve: {
|
|
alias: {
|
|
'@renderer': resolve('src/renderer/src'),
|
|
'@shared': resolve('src/shared')
|
|
}
|
|
},
|
|
plugins: [react()],
|
|
build: { sourcemap: 'hidden' }
|
|
}
|
|
})
|