60 lines
1.4 KiB
TypeScript
60 lines
1.4 KiB
TypeScript
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'),
|
|
},
|
|
},
|
|
}) |