monorepo/apps/admin/scripts/index.ts

39 lines
1.2 KiB
TypeScript

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<UserConfig, UserConfig>(
{
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',
);
};