import vue from '@vitejs/plugin-vue'
import type { Plugin } from 'vite'

import createAutoImport from './auto-import'
import createSvgIcon from './svg-icon'
import createCompression from './compression'
import createSetupExtend from './setup-extend'

interface ViteEnv {
    [key: string]: any
}

export default function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean = false): Plugin[] {
    const vitePlugins: Plugin[] = [vue()]
    vitePlugins.push(createAutoImport())
	vitePlugins.push(createSetupExtend())
    vitePlugins.push(createSvgIcon(isBuild))
	isBuild && vitePlugins.push(...createCompression(viteEnv))
    return vitePlugins
}