import { fileURLToPath, URL } from 'node:url' import Uni from '@uni-helper/plugin-uni' import Components from '@uni-helper/vite-plugin-uni-components' import { uViewProResolver, ZPagingResolver } from '@uni-helper/vite-plugin-uni-components/resolvers' import UnoCSS from 'unocss/vite' import { UniRoot } from 'uview-pro/plugins' import { defineConfig } from 'vite' export default defineConfig({ resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)), }, }, plugins: [ // https://github.com/anyup/uview-pro UniRoot(), // https://uni-helper.js.org/vite-plugin-uni-components Components({ dts: true, resolvers: [ZPagingResolver(), uViewProResolver()], }), // https://uni-helper.js.org/plugin-uni Uni(), UnoCSS(), ], css: { preprocessorOptions: { scss: { additionalData: '@import "uview-pro/theme.scss";', }, }, }, optimizeDeps: { // wxmp-rsa: publishes ESM syntax but has no "module" field; explicit include avoids 504 Outdated Optimize Dep on first login page visit include: ['wxmp-rsa'], exclude: process.env.UNI_PLATFORM === 'h5' && process.env.NODE_ENV === 'development' ? ['uview-pro'] : [], }, })