From c5a53e73868ab630582452acbf3ef1c91e3990b2 Mon Sep 17 00:00:00 2001 From: Rami Yushuvaev Date: Wed, 15 Apr 2026 10:46:32 +0300 Subject: [PATCH 1/2] Fix: Enhance React integration - add 'react-dom/client' and 'react/jsx-runtime' as externals in webpack config and script dependencies --- config/webpack-js.ts | 2 ++ src/php/Admin/Menus/Admin_Menu.php | 1 + src/php/Admin/Menus/Import_Menu.php | 1 + 3 files changed, 4 insertions(+) diff --git a/config/webpack-js.ts b/config/webpack-js.ts index c13fd47a2..e89847991 100644 --- a/config/webpack-js.ts +++ b/config/webpack-js.ts @@ -43,6 +43,8 @@ export const jsWebpackConfig: Configuration = { externals: { 'react': 'React', 'react-dom': 'ReactDOM', + 'react-dom/client': 'ReactDOM', + 'react/jsx-runtime': 'ReactJSXRuntime', 'jquery': 'jQuery', 'tinymce': 'tinymce', 'codemirror': ['wp', 'CodeMirror'], diff --git a/src/php/Admin/Menus/Admin_Menu.php b/src/php/Admin/Menus/Admin_Menu.php index 4d6ae4c1b..aeb757e2e 100644 --- a/src/php/Admin/Menus/Admin_Menu.php +++ b/src/php/Admin/Menus/Admin_Menu.php @@ -52,6 +52,7 @@ abstract class Admin_Menu { public static array $script_deps = [ 'react', 'react-dom', + 'react-jsx-runtime', 'wp-url', 'wp-i18n', 'wp-date', diff --git a/src/php/Admin/Menus/Import_Menu.php b/src/php/Admin/Menus/Import_Menu.php index df6cf975d..17144da9d 100644 --- a/src/php/Admin/Menus/Import_Menu.php +++ b/src/php/Admin/Menus/Import_Menu.php @@ -67,6 +67,7 @@ public function enqueue_assets() { [ 'react', 'react-dom', + 'react-jsx-runtime', 'wp-i18n', 'wp-components', ], From c6dfddf03b110d1bf97c55e79149e872924efb67 Mon Sep 17 00:00:00 2001 From: Shea Bunge Date: Wed, 15 Apr 2026 18:11:12 +1000 Subject: [PATCH 2/2] Include @wordpress/date in dependencies to ensure it is externalised correctly. --- package-lock.json | 23 ++++++++++++----------- package.json | 1 + 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index aa957af91..07aa5227e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "dependencies": { "@codemirror/fold": "^0.19.4", "@wordpress/components": "^29.3.0", + "@wordpress/date": "^5.43.0", "@wordpress/dom-ready": "^4.17.0", "@wordpress/element": "^6.28.0", "@wordpress/i18n": "^5.17.0", @@ -4064,12 +4065,12 @@ } }, "node_modules/@wordpress/date": { - "version": "5.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.40.0.tgz", - "integrity": "sha512-hlla3+3IVucwhFdOKFGnbeTf4XF0g6ZOdLvzDyTsXQqMT3/ozZ43e6uGwZdG7jrIbdIRicwwKONQsb8E4V6Cyw==", + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.43.0.tgz", + "integrity": "sha512-8DiFlE7YzP7F/P59Hr6h5fWJxJlvt6eZgU1C7huM9XhANh8Y3dZfepsySL6K7h1yE66SQDSq07cEefFQgJW31g==", "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/deprecated": "^4.40.0", + "@wordpress/deprecated": "^4.43.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, @@ -4079,12 +4080,12 @@ } }, "node_modules/@wordpress/deprecated": { - "version": "4.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.40.0.tgz", - "integrity": "sha512-/PAHeyxIlx/0J1jAfUS/v5x23ssMBXHtWNY3q/P8+GqmDkGTC/7SfkK9FFnT9aQecM1nK8vMgrgizicJBEzDdQ==", + "version": "4.43.0", + "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.43.0.tgz", + "integrity": "sha512-Pxn+nUmCVAaKBiZun2tEVweVdevMvWFWyCRqIqsAKdWCLsD8Uk6o27EwXc1u8BlO65VmK8D2zF9uWKGKfdZbCw==", "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/hooks": "^4.40.0" + "@wordpress/hooks": "^4.43.0" }, "engines": { "node": ">=18.12.0", @@ -4228,9 +4229,9 @@ } }, "node_modules/@wordpress/hooks": { - "version": "4.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.40.0.tgz", - "integrity": "sha512-Lz89uHQaMKM2TAdwafCPJr6px5qodZt/wdLmRrGkrItvtbikLdf9l29BrjpSMmRbJY6jiYtOTVF4sg5rwJv2Pw==", + "version": "4.43.0", + "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.43.0.tgz", + "integrity": "sha512-BY7GPjEwhOlgkavVak40E3RtA8Z9ehydqTZckRoesMRjXYfxKSzr1C1FT4wAPS5uXM1pNlWivfofMaJjVNQu5w==", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", diff --git a/package.json b/package.json index be49c92c1..e722c3681 100644 --- a/package.json +++ b/package.json @@ -53,6 +53,7 @@ "dependencies": { "@codemirror/fold": "^0.19.4", "@wordpress/components": "^29.3.0", + "@wordpress/date": "^5.43.0", "@wordpress/dom-ready": "^4.17.0", "@wordpress/element": "^6.28.0", "@wordpress/i18n": "^5.17.0",