ruoyi-plus-soybean/build/plugins/index.ts

33 lines
1001 B
TypeScript
Raw Normal View History

2022-04-27 19:01:54 +08:00
import type { PluginOption } from 'vite';
import vue from '@vitejs/plugin-vue';
import vueJsx from '@vitejs/plugin-vue-jsx';
import unocss from '@unocss/vite';
import progress from 'vite-plugin-progress';
2022-11-08 09:18:05 +08:00
import routerPage from '@soybeanjs/router-page';
import html from './html';
2022-04-27 19:01:54 +08:00
import unplugin from './unplugin';
2021-12-25 01:23:44 +08:00
import mock from './mock';
import visualizer from './visualizer';
2022-04-27 19:01:54 +08:00
import compress from './compress';
import pwa from './pwa';
/**
* vite插件
* @param viteEnv -
*/
export function setupVitePlugins(viteEnv: ImportMetaEnv): (PluginOption | PluginOption[])[] {
const plugins = [vue(), vueJsx(), html(viteEnv), ...unplugin(viteEnv), unocss(), mock, progress(), routerPage()];
2022-07-16 00:13:19 +08:00
if (viteEnv.VITE_VISUALIZER === 'Y') {
plugins.push(visualizer as PluginOption);
}
2022-07-16 00:13:19 +08:00
if (viteEnv.VITE_COMPRESS === 'Y') {
2022-04-27 19:01:54 +08:00
plugins.push(compress(viteEnv));
}
if (viteEnv.VITE_PWA === 'Y' || viteEnv.VITE_VERCEL === 'Y') {
plugins.push(pwa());
}
return plugins;
}