status-web/packages/components/vite.config.ts

50 lines
1.1 KiB
TypeScript
Raw Normal View History

2023-01-13 14:51:21 +00:00
import { tamaguiPlugin } from '@tamagui/vite-plugin'
2023-01-10 11:24:24 +00:00
import react from '@vitejs/plugin-react-swc'
import { defineConfig } from 'vite'
2023-03-13 21:52:43 +00:00
import { dependencies, peerDependencies } from './package.json'
2023-01-10 11:24:24 +00:00
const tamaguiConfig = {
components: [],
2023-01-13 14:51:21 +00:00
config: './src/tamagui.config.ts',
2023-01-10 11:24:24 +00:00
// useReactNativeWebLite: true,
}
2023-03-13 21:52:43 +00:00
const external = [
...Object.keys(dependencies || {}),
...Object.keys(peerDependencies || {}),
].map(name => new RegExp(`^${name}(/.*)?`))
export default defineConfig(({ mode }) => {
return {
define: {
TAMAGUI_TARGET: JSON.stringify('web'),
},
build: {
target: 'es2020',
lib: {
entry: './src/index.tsx',
fileName: 'index',
formats: ['es', 'cjs'],
},
sourcemap: true,
emptyOutDir: mode === 'production',
rollupOptions: {
external,
},
},
plugins: [
react({
// jsxRuntime: 'classic',
}),
tamaguiPlugin(tamaguiConfig),
// tamaguiExtractPlugin(tamaguiConfig)
],
test: {
environment: 'happy-dom',
},
}
2023-01-10 11:24:24 +00:00
})