import { defineConfig } from "vite"; import dts from "vite-plugin-dts"; import { resolve } from "node:path"; import { fileURLToPath } from "node:url"; const __dirname = fileURLToPath(new URL(".", import.meta.url)); export default defineConfig({ build: { lib: { entry: { index: resolve(__dirname, "src/index.ts"), "hooks/list/index": resolve(__dirname, "src/hooks/list/index.ts"), "hooks/utils/index": resolve(__dirname, "src/hooks/utils/index.ts"), "vue-helper/index": resolve(__dirname, "src/vue-helper/index.ts"), }, formats: ["es", "cjs"], fileName: (format, entryName) => `${entryName}.${format === "es" ? "mjs" : "cjs"}`, }, rollupOptions: { external: ["vue", "lodash"], output: { chunkFileNames: "chunks/[name]-[hash].js", assetFileNames: "assets/[name]-[hash][extname]", }, }, sourcemap: true, }, resolve: { alias: { "@": resolve(__dirname, "src"), }, }, plugins: [ dts({ include: ["src"], outDir: "dist", }), ], });