- Delete vite.config.ts inline copy-offscreen plugin (lines 13-216): the 174-line plugin that emitFile'd both offscreen HTML and a stringified JS module wired to tabCapture-era chromeMediaSource + IndexedDB pipeline (audit P0 #1 root cause; D-08 deletion target) - Delete vite.config.ts misplaced publicDir/copyPublicDir (no public/ dir exists; audit P2 #17) and the manualChunks=undefined shape - Rewrite vite.config.ts to RESEARCH.md Example B form: crx() + a single rollupOptions.input.offscreen pointing at src/offscreen/index.html (the crxjs-managed entry Plan 03 created); 21 lines total - Delete orphan offscreen/index.ts (audit P2 #18 dead-code, D-08) - Delete orphan offscreen/index.html (replaced by src/offscreen/index.html per D-07; runtime URL semantics preserved through crxjs entry binding) - T-1-NEW-06-01 grep gate green (this.emitFile = 0) - T-1-NEW-06-02 grep gate green (offscreen/ directory absent) - tsc --noEmit clean; 9/9 vitest tests still green Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
22 lines
380 B
TypeScript
22 lines
380 B
TypeScript
import { defineConfig } from 'vite';
|
|
import { crx } from '@crxjs/vite-plugin';
|
|
import manifest from './manifest.json';
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
crx({
|
|
manifest,
|
|
contentScripts: {
|
|
injectCss: false,
|
|
},
|
|
}),
|
|
],
|
|
build: {
|
|
rollupOptions: {
|
|
input: {
|
|
offscreen: 'src/offscreen/index.html',
|
|
},
|
|
},
|
|
},
|
|
});
|