diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2026-08-05 11:54:30 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2026-08-05 11:54:30 +0200 |
| commit | b1f2b39581c47f8b101d1222c8e0c3f7b2579047 (patch) | |
| tree | b957a44d193a085acd8a96facb52c7c79962f887 /webpack.config.js | |
| parent | 582df8885a3573a728394b473b826616f8969316 (diff) | |
| download | bycs-sol-b1f2b39581c47f8b101d1222c8e0c3f7b2579047.tar.gz bycs-sol-b1f2b39581c47f8b101d1222c8e0c3f7b2579047.zip | |
update project tooling
Diffstat (limited to 'webpack.config.js')
| -rw-r--r-- | webpack.config.js | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/webpack.config.js b/webpack.config.js index 081a2a1..968fd2e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,6 +1,8 @@ const webpack = require('webpack'); const path = require('path'); +const CircularDependencyPlugin = require('circular-dependency-plugin') + const isProduction = process.env.NODE_ENV === 'production'; const isMock = process.env.NODE_ENV === 'mock'; @@ -16,6 +18,19 @@ const config = { module: { rules: [ { + test: /\.(js|ts)$/, + exclude: /node_modules/, + use: { + loader: 'babel-loader', + options: { + presets: [ + "@babel/preset-env", + "@babel/preset-typescript" + ], + } + } + }, + { test: /\.png/, type: 'asset/inline', }, @@ -23,7 +38,7 @@ const config = { }, plugins: [ new webpack.NormalModuleReplacementPlugin( - /-ENV.js/, + /-ENV.(js|ts)/, (resource) => { resource.request = resource.request.replace( /-ENV/, @@ -34,7 +49,18 @@ const config = { resource.createData.request = resource.request; } } - ) + ), + new CircularDependencyPlugin({ + // exclude detection of files based on a RegExp + exclude: /node_modules/, + // add errors to webpack instead of warnings + failOnError: true, + // allow import cycles that include an asyncronous import, + // e.g. via import(/* webpackMode: "weak" */ './file.js') + allowAsyncCycles: false, + // set the current working directory for displaying module paths + cwd: process.cwd(), + }) ], }; |
