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"), "calendar/index": resolve(__dirname, "src/calendar/index.ts"), "datetime-picker/index": resolve( __dirname, "src/datetime-picker/index.ts", ), "picker-single/index": resolve( __dirname, "src/picker-single/index.ts", ), "picker/index": resolve(__dirname, "src/picker/index.ts"), }, formats: ["es", "cjs"], fileName: (format, entryName) => `${entryName}.${format === "es" ? "mjs" : "cjs"}`, }, rollupOptions: { external: ["vue", "lodash-es"], output: { chunkFileNames: "chunks/[name]-[hash].js", assetFileNames: "assets/[name]-[hash][extname]", }, }, sourcemap: true, }, resolve: { alias: { "@": resolve(__dirname, "src"), }, }, plugins: [ dts({ include: ["src", "types"], outDir: "dist", }), ], });