import { resolve } from 'node:path';

import { defineConfig, loadAndConvertEnv } from '@vben/vite-config';

const { createProxy } = await loadAndConvertEnv();

function pathResolve(dir: string) {
  // eslint-disable-next-line n/prefer-global/process
  return resolve(process.cwd(), '.', dir);
}

export default defineConfig(async () => {
  return {
    application: {},
    vite: {
      server: {
        proxy: createProxy,
      },
      resolve: {
        alias: [
          // #/xxxx => src/xxxx
          {
            find: /@\//,
            replacement: `${pathResolve('src')}/`,
          },
        ],
      },
    },
  };
});
