iconoir/packages/iconoir-vue/vite.config.ts
2023-05-03 08:19:37 -04:00

36 lines
820 B
TypeScript

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import dts from 'vite-plugin-dts';
import path from 'path';
import fs from 'fs';
export default () => {
const filenames = fs.readdirSync(path.resolve(process.cwd(), 'src'));
const cwd = process.cwd();
return defineConfig({
build: {
outDir: 'dist',
minify: 'terser',
lib: {
entry: filenames.map((name) => path.resolve(cwd, `src/${name}`)),
fileName: (format, name) =>
format === 'cjs' ? `${name}.js` : `esm/${name}.mjs`,
formats: ['cjs', 'es'],
},
rollupOptions: {
external: ['vue-demi', 'vue'],
},
},
optimizeDeps: {
exclude: ['vue-demi'],
},
plugins: [
vue({
isProduction: true,
}),
dts(),
],
});
};