diff --git a/compatibility/bazel_tools/create-daml-app/testDeps.json b/compatibility/bazel_tools/create-daml-app/testDeps.json index cd47be24a141..3544b1a4a86a 100644 --- a/compatibility/bazel_tools/create-daml-app/testDeps.json +++ b/compatibility/bazel_tools/create-daml-app/testDeps.json @@ -4,7 +4,7 @@ "@types/node": "^13.11.1", "@types/puppeteer": "^3.0.1", "@types/wait-on": "^4.0.0", - "puppeteer": "^4.0.1", + "puppeteer": "^10.0.0", "wait-on": "^4.0.2" } } diff --git a/templates/create-daml-app-test-resources/testDeps.json b/templates/create-daml-app-test-resources/testDeps.json index cd47be24a141..3544b1a4a86a 100644 --- a/templates/create-daml-app-test-resources/testDeps.json +++ b/templates/create-daml-app-test-resources/testDeps.json @@ -4,7 +4,7 @@ "@types/node": "^13.11.1", "@types/puppeteer": "^3.0.1", "@types/wait-on": "^4.0.0", - "puppeteer": "^4.0.1", + "puppeteer": "^10.0.0", "wait-on": "^4.0.2" } } diff --git a/templates/create-daml-app/ui/config-overrides.js b/templates/create-daml-app/ui/config-overrides.js new file mode 100644 index 000000000000..088d3242477f --- /dev/null +++ b/templates/create-daml-app/ui/config-overrides.js @@ -0,0 +1,22 @@ +/* config-overrides.js */ +const webpack = require('webpack'); +module.exports = function override(config, env) { + config.resolve.fallback = { + //url: require.resolve('url'), + //assert: require.resolve('assert'), + crypto: require.resolve('crypto-browserify'), + //http: require.resolve('stream-http'), + //https: require.resolve('https-browserify'), + //os: require.resolve('os-browserify/browser'), + //buffer: require.resolve('buffer'), + stream: require.resolve('stream-browserify'), + }; + config.plugins.push( + new webpack.ProvidePlugin({ + process: 'process/browser', + Buffer: ['buffer', 'Buffer'], + }), + ); + + return config; +} diff --git a/templates/create-daml-app/ui/package.json.template b/templates/create-daml-app/ui/package.json.template index 2d43246c0fdd..16f63d3c0746 100644 --- a/templates/create-daml-app/ui/package.json.template +++ b/templates/create-daml-app/ui/package.json.template @@ -8,17 +8,20 @@ "@daml/react": "__VERSION__", "@daml/types": "__VERSION__", "@daml/hub-react": "^1.0.0", + "crypto-browserify": "^3.12.0", "dotenv": "^8.2.0", "jwt-simple": "^0.5.6", "react": "^17.0.0", + "react-app-rewired": "^2.1.9", "react-dom": "^17.0.0", "semantic-ui-css": "^2.4.1", - "semantic-ui-react": "^2.0.0" + "semantic-ui-react": "^2.0.0", + "stream-browserify": "^3.0.0" }, "scripts": { - "start": "react-scripts start", - "build": "react-scripts build", - "test": "react-scripts test --testURL='http://localhost:7575'", + "start": "react-app-rewired start", + "build": "react-app-rewired build", + "test": "react-app-rewired test --testURL='http://localhost:7575'", "eject": "react-scripts eject", "lint": "eslint --ext .js,.jsx,.ts,.tsx src/" }, @@ -42,8 +45,9 @@ "@types/react": "^17.0.0", "@types/react-dom": "^17.0.0", "@types/dotenv": "^8.2.0", + "process": "0.11.10", "http-proxy-middleware": "^1.0.4", - "react-scripts": "^4.0.3", + "react-scripts": "^5.0.0", "typescript": "~3.8.3" } }