import {defineConfig, loadEnv} from 'vite';
import react from '@vitejs/plugin-react';
import path from 'path';

// https://vitejs.dev/config/
export default defineConfig(({mode}) => {
  const env = loadEnv(mode, process.cwd())

   // expose .env as process.env instead of import.meta since jest does not import meta yet
   const envWithProcessPrefix = Object.entries(env).reduce(
    (prev, [key, val]) => {
      return {
        ...prev,
        [ key]: `${val}`,
      }
    },
    {},
  )
  
  return {
    plugins: [react()],
    resolve: {
      alias: {
        '~': path.resolve(__dirname, './src'),
      },
    },
    server: {
      host: true,
    },
    define: {'process.env': {...envWithProcessPrefix}}
  }
});