From b7aca11e9689d07b269b30b3458dd961d6a927eb Mon Sep 17 00:00:00 2001 From: Mush Kapadia Date: Mon, 23 Feb 2026 14:34:06 -0500 Subject: [PATCH] Fix ReactDevToolsBackend module for AMD For apps that use AMD, we need to actually `require()` the ReactDevToolsBackend and load it from the AMD module cache. This adds a check for the case where the UMD definiton fell into the AMD branch and only `require()`s in that case. We can't just check if `require` is function because Metro does export a `require` function, but for the Metro case, we wouldn't fall into the AMD branch for UMD. --- packages/react-devtools-core/src/standalone.js | 1 + packages/react-devtools-core/webpack.backend.js | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/react-devtools-core/src/standalone.js b/packages/react-devtools-core/src/standalone.js index df89a728c308..ccf4fd60ba1f 100644 --- a/packages/react-devtools-core/src/standalone.js +++ b/packages/react-devtools-core/src/standalone.js @@ -361,6 +361,7 @@ function startServer( response.end( backendFile.toString() + '\n;' + + `var ReactDevToolsBackend = typeof ReactDevToolsBackend !== "undefined" ? ReactDevToolsBackend : require("ReactDevToolsBackend");\n` + `ReactDevToolsBackend.initialize(undefined, undefined, undefined, ${componentFiltersString});` + '\n' + `ReactDevToolsBackend.connectToDevTools({port: ${port}, host: '${host}', useHttps: ${ diff --git a/packages/react-devtools-core/webpack.backend.js b/packages/react-devtools-core/webpack.backend.js index 32d4fadcb588..67b714825c87 100644 --- a/packages/react-devtools-core/webpack.backend.js +++ b/packages/react-devtools-core/webpack.backend.js @@ -44,6 +44,7 @@ module.exports = { // This name is important; standalone references it in order to connect. library: 'ReactDevToolsBackend', libraryTarget: 'umd', + umdNamedDefine: true, }, resolve: { alias: {