import type { Plugin } from 'vite'; import path from 'path'; import themePreprocessorPlugin from '@zougt/vite-plugin-theme-preprocessor'; export function configThemePlugin(): Plugin[] { const includeStyles = { '.ant-button-primary:hover, .ant-button-primary:focus': { color: '#FFFFFF', }, }; const plugin = [ themePreprocessorPlugin({ less: { // 是否启用任意主题色模式,这里不启用 arbitraryMode: false, multipleScopeVars: [ { scopeName: 'theme-default', path: path.resolve('src/styles/theme/theme-default.less'), includeStyles, }, { scopeName: 'theme-dark', path: path.resolve('src/styles/theme/theme-dark.less'), includeStyles, }, ], includeStyleWithColors: [ { // color也可以是array,如 ["#ffffff","#000"] color: '#ffffff', }, { color: ['transparent', 'none'], excludeSelectors: ['.ant-btn-link:hover, .ant-btn-link:focus, .ant-btn-link:active'], }, ], // 在生产模式是否抽取独立的主题css文件,extract为true以下属性有效 extract: false, }, }), ]; return plugin as unknown as Plugin[]; }