46 lines
1.0 KiB
TypeScript
46 lines
1.0 KiB
TypeScript
import { defineConfig, Plugin } from 'vite'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import dts from 'vite-plugin-dts'
|
|
import pkg from './package.json'
|
|
import { resolve } from 'path'
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
dts({
|
|
exclude: ['**/*.stories.ts', '**/*.test.ts', '**/*.spec.ts', '.storybook/**/*']
|
|
}),
|
|
vue({
|
|
script: {
|
|
defineModel: true
|
|
}
|
|
}) as Plugin
|
|
],
|
|
build: {
|
|
lib: {
|
|
entry: resolve(__dirname, 'src/lib.ts'),
|
|
name: 'SpeckleUiComponents',
|
|
fileName: 'lib',
|
|
formats: ['es', 'cjs']
|
|
},
|
|
sourcemap: true,
|
|
rollupOptions: {
|
|
external: [
|
|
...Object.keys(pkg.dependencies || {}).map((d) => new RegExp(`^${d}(\\/.*)?$`)),
|
|
...Object.keys(pkg.peerDependencies || {}).map(
|
|
(d) => new RegExp(`^${d}(\\/.*)?$`)
|
|
),
|
|
// Don't build stories
|
|
/\.stories\.ts$/i,
|
|
/\.storybook/i
|
|
]
|
|
}
|
|
},
|
|
|
|
resolve: {
|
|
alias: {
|
|
'~~/src': resolve(__dirname, './src')
|
|
}
|
|
}
|
|
})
|