import path from 'node:path' import { fileURLToPath } from 'node:url' import HtmlWebpackPlugin from 'html-webpack-plugin' const root = path.dirname(fileURLToPath(import.meta.url)) export default { entry: './src/main.tsx', output: { path: path.join(root, 'dist'), filename: 'assets/app.[contenthash].js', assetModuleFilename: 'assets/[name].[contenthash][ext]', clean: true, }, resolve: { extensions: ['.tsx', '.ts', '.js'], alias: { react: path.resolve(root, '../../node_modules/react'), 'react-dom': path.resolve(root, '../../node_modules/react-dom'), }, }, module: { rules: [ { test: /\.tsx?$/, exclude: /node_modules/, use: 'ts-loader', }, { test: /\.module\.css$/, use: [ 'style-loader', { loader: 'css-loader', options: { modules: { namedExport: false, }, }, }, ], }, { test: /\.css$/, exclude: /\.module\.css$/, use: ['style-loader', 'css-loader'], }, ], }, plugins: [ new HtmlWebpackPlugin({ templateContent: 'React Webpack sprite fixture
', }), ], }