import type { RsbuildPlugins } from '@rsbuild/core' import { pluginBabel } from '@rsbuild/plugin-babel' import { pluginImageCompress } from '@rsbuild/plugin-image-compress' import { pluginSass } from '@rsbuild/plugin-sass' import { pluginTailwindcss } from '@rsbuild/plugin-tailwindcss' import { pluginVue } from '@rsbuild/plugin-vue' import { pluginVueJsx } from '@rsbuild/plugin-vue-jsx' import autoImport from './plugin_autoImport' import envType from './plugin_envType' import pluginIcons from './plugin_icons' import { pluginSvgSpriteLoader } from './plugin_svg' import autoComponent from './plugins_autoComponent' export function createRsbuildPlugins(isBuild: boolean): RsbuildPlugins { const plugins = [ pluginBabel({ include: /\.(?:jsx|tsx)$/, }), pluginVue(), pluginVueJsx(), pluginTailwindcss(), pluginSass(), // 按需加载组件,自动引入组件 autoComponent(), // 按需加载,自动引入api autoImport(), pluginIcons(), envType({ dts: 'types/env.d.ts' }), pluginImageCompress(), pluginSvgSpriteLoader({ path: 'src/assets/svg', }), ] return plugins }