From b896880f0a1d08f1e46f69676bab95af6ec44b50 Mon Sep 17 00:00:00 2001 From: Maks Jopek Date: Mon, 24 May 2021 01:00:37 +0200 Subject: Initial commit --- webpack.config.ts | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 webpack.config.ts (limited to 'webpack.config.ts') diff --git a/webpack.config.ts b/webpack.config.ts new file mode 100644 index 0000000..9ba1cd7 --- /dev/null +++ b/webpack.config.ts @@ -0,0 +1,51 @@ +import path from "path"; +import HtmlWebpackPlugin from "html-webpack-plugin"; +import TsconfigPathsPlugin from "tsconfig-paths-webpack-plugin"; +import dotenv from "dotenv"; + +dotenv.config(); + +const absolutePath = (relativePath: string) => + path.resolve(__dirname, relativePath); + +module.exports = { + mode: process.env.MODE, + entry: "src/index.ts", + module: { + rules: [ + { + test: /\.ts$/, + include: [absolutePath("src")], + use: "ts-loader", + }, + { + test: /\.js$/, + enforce: "pre", + use: "source-map-loader", + }, + ], + }, + resolve: { + extensions: [".ts", "..."], + plugins: [new TsconfigPathsPlugin()], + }, + devtool: + process.env.MODE === "development" + ? "eval-cheap-module-source-map" + : undefined, + output: { + filename: "bundle.js", + path: absolutePath("dist"), + }, + plugins: [ + new HtmlWebpackPlugin({ + template: "src/index.html", + staticPath: "static", + }), + ], + devServer: { + contentBase: absolutePath("dist"), + compress: true, + port: 8000, + }, +}; -- cgit v1.3.1