import * as path from 'path' import vue from '@vitejs/plugin-vue' import typescript2 from 'rollup-plugin-typescript2'; import { defineConfig } from 'vite'; import dts from "vite-plugin-dts"; export default defineConfig({ plugins: [ vue(), dts({ insertTypesEntry: true, }), typescript2({ check: false, include: ["src/components/**/*.vue"], tsconfigOverride: { compilerOptions: { outDir: "dist", sourceMap: true, declaration: true, declarationMap: true, }, }, exclude: ["vite.config.ts"] }) ], build: { cssCodeSplit: true, lib: { // Could also be a dictionary or array of multiple entry points entry: "src/main.ts", name: 'blockRenderer', formats: ["es", "cjs", "umd"], fileName: format => `block-renderer.${format}.js` }, rollupOptions: { // make sure to externalize deps that should not be bundled // into your library input: { main: path.resolve(__dirname, "src/main.ts") }, external: ['vue'], output: { assetFileNames: (assetInfo) => { if (assetInfo.name === 'main.css') return 'block-renderer.css'; return assetInfo.name; }, exports: "named", globals: { vue: 'Vue', }, }, }, }, resolve: { alias: { '@': path.resolve(__dirname, 'src'), }, }, })