40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
import { tamaguiPlugin } from '@tamagui/vite-plugin'
|
|
import react from '@vitejs/plugin-react-swc'
|
|
import path from 'path'
|
|
import { defineConfig, loadEnv } from 'vite'
|
|
|
|
import type { PluginOption } from 'vite'
|
|
|
|
const tamaguiConfig = {
|
|
components: ['@status-im/components'],
|
|
config: './tamagui.config.ts',
|
|
// useReactNativeWebLite: true,
|
|
}
|
|
|
|
// @see: https://vitejs.dev/config
|
|
export default defineConfig(({ mode }) => {
|
|
const env = loadEnv(mode, process.cwd(), '')
|
|
|
|
return {
|
|
resolve: {
|
|
// mainFields: ['module', 'jsnext:main', 'jsnext'],
|
|
alias: {
|
|
'@status-im/components/hooks': path.resolve(
|
|
'../../packages/components/hooks'
|
|
),
|
|
'@status-im/components': path.resolve('../../packages/components/src'),
|
|
},
|
|
},
|
|
define: {
|
|
// @see https://github.com/tamagui/tamagui/blob/a0d5fa0d05e6988a7cfa2a5e7823f295b82bae10/packages/tamagui/src/setup.ts#LL20C1-L20C28
|
|
global: 'globalThis',
|
|
'process.env.TAMAGUI_TARGET': JSON.stringify(env.TAMAGUI_TARGET),
|
|
},
|
|
plugins: [
|
|
react(),
|
|
tamaguiPlugin(tamaguiConfig) as PluginOption,
|
|
// tamaguiExtractPlugin(tamaguiConfig)
|
|
],
|
|
}
|
|
})
|