const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const webpack = require('webpack'); const dotenv = require('dotenv'); const env = dotenv.config({ path: path.resolve(__dirname, '.env.local') }).parsed || {}; const API_BASE_URL = env.API_BASE_URL || process.env.API_BASE_URL || 'http://127.0.0.1:3000'; module.exports = { entry: './src/index.js', output: { filename: 'bundle.[contenthash].js', path: path.resolve(__dirname, 'dist'), clean: true, }, module: { rules: [ { test: /\.css$/i, use: ['style-loader', 'css-loader'], }, ], }, plugins: [ new HtmlWebpackPlugin({ template: path.resolve(__dirname, 'src/index.html'), favicon: false, }), new webpack.DefinePlugin({ 'process.env.API_BASE_URL': JSON.stringify(API_BASE_URL), }), ], devServer: { static: { directory: path.join(__dirname, 'public'), }, compress: true, port: 5173, historyApiFallback: true, open: true, proxy: [ { context: ['/api'], target: API_BASE_URL, changeOrigin: true, }, ], }, devtool: 'source-map', };