import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; import { viteStaticCopy } from "vite-plugin-static-copy"; import { fileURLToPath } from "node:url"; import { dirname, resolve } from "node:path"; const __dirname = dirname(fileURLToPath(import.meta.url)); export default defineConfig({ plugins: [ react(), viteStaticCopy({ targets: [ { src: resolve(__dirname, "node_modules/pdfjs-dist/cmaps") + "/[!.]*", dest: "cmaps", }, { src: resolve(__dirname, "node_modules/pdfjs-dist/standard_fonts") + "/[!.]*", dest: "standard_fonts", }, ], }), ], resolve: { alias: { "@shared": resolve(__dirname, "../citation-engine/src/shared"), "@engine": resolve(__dirname, "../citation-engine/src/engine"), // Anchor is consumed as the standalone `@citation-evidence/evidence-anchor` // package (resolved via node_modules). `@source` still points at the // umbrella source façade because it owns the local `viewer-url` policy // that is not part of the extracted `evidence-source` package. "@source": resolve(__dirname, "../citation-evidence/src/source"), "@work": resolve(__dirname, "src/work"), }, }, server: { fs: { allow: [ resolve(__dirname), resolve(__dirname, "../citation-engine"), resolve(__dirname, "../citation-evidence"), ], }, }, optimizeDeps: { exclude: ["pdfjs-dist"], }, });