webpack.config.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const path = require("path");
  2. const MonacoWebpackPlugin = require("monaco-editor-webpack-plugin");
  3. const HtmlWebpackPlugin = require("html-webpack-plugin");
  4. module.exports = {
  5. mode: process.env.NODE_ENV,
  6. entry: "./index.js",
  7. output: {
  8. path: path.resolve(__dirname, "dist"),
  9. filename: "[name].bundle.js",
  10. },
  11. module: {
  12. rules: [
  13. {
  14. test: /\.css$/,
  15. use: [
  16. "style-loader",
  17. "css-loader",
  18. ],
  19. },
  20. {
  21. test: /\.(png|jpg|gif|svg|woff2?|ttf|eot|otf)$/,
  22. use: [
  23. {
  24. loader: "file-loader",
  25. },
  26. ],
  27. },
  28. ],
  29. },
  30. plugins: [
  31. new MonacoWebpackPlugin({
  32. languages: ["typescript", "javascript", "css"],
  33. }),
  34. new HtmlWebpackPlugin()
  35. ],
  36. devServer: {
  37. port: 4000,
  38. hot: process.env.NODE_ENV === 'development',
  39. open: true
  40. },
  41. devtool: process.argv.includes("--use-sourcemaps") ? "inline-source-map" : false,
  42. };