import { resolve } from "path"; import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; import dts from "vite-plugin-dts"; import cssInjectedByJsPlugin from "vite-plugin-css-injected-by-js"; export default defineConfig({ plugins: [ react(), dts({ insertTypesEntry: true, exclude: [ "**/*.test.ts", "**/*.test.tsx", "src/testUtils/**" ], }), cssInjectedByJsPlugin(), ], build: { lib: { entry: resolve(__dirname, "src/react-image-zooom.tsx"), name: "react-image-zooom", formats: ["es", "cjs"], fileName: (format) => `react-image-zooom.${format === "es" ? "mjs" : "cjs"}`, }, rollupOptions: { external: [/^react($|\/)/, /^react-dom($|\/)/], output: { globals: { react: "React", "react-dom": "ReactDOM" }, }, }, }, });