import {join, resolve} from 'node:path'; import react from '@vitejs/plugin-react'; import {defineConfig} from 'vite'; import dts from 'vite-plugin-dts'; // @ts-ignore import {peerDependencies,devDependencies} from './package.json'; export default defineConfig({ plugins: [ react(), dts({rollupTypes: true}), // Output .d.ts files ], build: { target: 'esnext', minify: false, lib: { entry: resolve(__dirname, join('src', 'index.ts')), fileName: 'index', formats: ['es', 'cjs'], }, rollupOptions: { // Exclude peer dependencies from the bundle to reduce bundle size rollupOptions: { external: [ ...Object.keys(peerDependencies), ...Object.keys(devDependencies), 'react/jsx-runtime', ], output: { dir: 'dist', entryFileNames: '[name].js', format: 'es', }, }, }, }, });