craco.config.js 802 B

12345678910111213141516171819202122232425262728
  1. const { addBeforeLoader, loaderByName } = require("@craco/craco");
  2. module.exports = {
  3. webpack: {
  4. configure: (webpackConfig) => {
  5. const wasmExtensionRegExp = /\.wasm$/;
  6. webpackConfig.resolve.extensions.push(".wasm");
  7. webpackConfig.module.rules.forEach((rule) => {
  8. (rule.oneOf || []).forEach((oneOf) => {
  9. if (oneOf.loader && oneOf.loader.indexOf("file-loader") >= 0) {
  10. oneOf.exclude.push(wasmExtensionRegExp);
  11. }
  12. });
  13. });
  14. const wasmLoader = {
  15. test: /\.wasm$/,
  16. include: /node_modules\/(bridge|token-bridge)/,
  17. loaders: ["wasm-loader"],
  18. };
  19. addBeforeLoader(webpackConfig, loaderByName("file-loader"), wasmLoader);
  20. return webpackConfig;
  21. },
  22. },
  23. };