import { pathResolve, deepMerge } from '@3rapp/utils'; import { ConfigEnv, UserConfig } from 'vite'; import { createPlugins } from './plugins'; import { Configure } from './types'; export const createConfig = (params: ConfigEnv, configure?: Configure): UserConfig => { const isBuild = params.command === 'build'; return deepMerge( { resolve: { alias: { '@': pathResolve('../src'), }, }, css: { modules: { localsConvention: 'camelCaseOnly', }, }, server: { host: '0.0.0.0', port: 3001, proxy: { '/api': { target: 'http://localhost:8080/api', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ''), }, }, cors: true, }, plugins: createPlugins(isBuild), }, typeof configure === 'function' ? configure(params, isBuild) : {}, 'merge', ); };