epistemic-technology_co-int.../vite.config.ts

44 lines
1.1 KiB
TypeScript

import { defineConfig } from "vite";
import solid from "vite-plugin-solid";
import { viteStaticCopy } from "vite-plugin-static-copy";
import path from "path";
const isWatchMode = process.argv.includes("--watch");
export default defineConfig({
plugins: [
solid(),
viteStaticCopy({
targets: [{ src: "manifest.json", dest: "." }],
}),
],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
},
},
build: {
watch: isWatchMode ? {} : undefined,
minify: !isWatchMode,
sourcemap: !isWatchMode,
outDir: "dist",
emptyOutDir: true,
cssCodeSplit: false,
lib: {
entry: path.resolve(__dirname, "src/CoIntelligencePlugin.tsx"),
formats: ["cjs"], // Obsidian loads CommonJS
fileName: () => "main.js",
},
rollupOptions: {
external: ["obsidian", "electron"], // don't bundle the host libs
output: {
exports: "named",
assetFileNames: () => "styles.css", // Always output CSS as styles.css
entryFileNames: "main.js", // Ensure the main entry file is named correctly
},
},
},
css: {
modules: false,
},
});