import tailwindcss from "@tailwindcss/vite"; import { tanstackRouter } from "@tanstack/router-plugin/vite"; import react from "@vitejs/plugin-react"; import { resolve } from "path"; import { defineConfig } from "vite"; import dts from "vite-plugin-dts"; import { dependencies } from "./package.json"; // https://vite.dev/config/ export default defineConfig({ plugins: [ tanstackRouter({ target: "react", autoCodeSplitting: true }), react(), tailwindcss(), dts({ include: ["lib"], tsconfigPath: "./tsconfig.lib.json", outDir: "dist/types" }) ], resolve: { alias: { "@": resolve(__dirname, "src"), "$": resolve(__dirname, "lib"), "#root": resolve(__dirname) } }, build: { lib: { entry: { button: resolve(__dirname, "lib/component/button.ts"), input: resolve(__dirname, "lib/component/input.ts"), loading: resolve(__dirname, "lib/component/loading.ts"), message: resolve(__dirname, "lib/component/message.ts"), modal: resolve(__dirname, "lib/component/modal.ts"), nav: resolve(__dirname, "lib/component/nav.ts"), tab: resolve(__dirname, "lib/component/tab.ts"), theme: resolve(__dirname, "lib/component/theme.ts"), toaster: resolve(__dirname, "lib/component/toaster.ts") }, formats: [ "es" ], name: "Mattrixwv Component Library" }, rollupOptions: { external: [ Object.keys(dependencies).join("|") ] } } });