fix: prevent asset conflicts between React and Grid.js versions

Add coexistence checks to all enqueue methods to prevent loading
both React and Grid.js assets simultaneously.

Changes:
- ReactAdmin.php: Only enqueue React assets when ?react=1
- Init.php: Skip Grid.js when React active on admin pages
- Form.php, Coupon.php, Access.php: Restore classic assets when ?react=0
- Customer.php, Product.php, License.php: Add coexistence checks

Now the toggle between Classic and React versions works correctly.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
dwindown
2026-04-18 17:02:14 +07:00
parent bd9cdac02e
commit e8fbfb14c1
74973 changed files with 6658406 additions and 71 deletions

50
node_modules/reakit/es/Portal/Portal.js generated vendored Normal file
View File

@@ -0,0 +1,50 @@
import { createContext, useContext, useState, createElement } from 'react';
import { useIsomorphicEffect } from 'reakit-utils/useIsomorphicEffect';
import { canUseDOM } from 'reakit-utils/canUseDOM';
import { createPortal } from 'react-dom';
function getBodyElement() {
return canUseDOM ? document.body : null;
}
var PortalContext = /*#__PURE__*/createContext(getBodyElement());
function Portal(_ref) {
var children = _ref.children;
// if it's a nested portal, context is the parent portal
// otherwise it's document.body
// https://github.com/reakit/reakit/issues/513
var context = useContext(PortalContext) || getBodyElement();
var _React$useState = useState(function () {
if (canUseDOM) {
var element = document.createElement("div");
element.className = Portal.__className;
return element;
} // ssr
return null;
}),
hostNode = _React$useState[0];
useIsomorphicEffect(function () {
if (!hostNode || !context) return undefined;
context.appendChild(hostNode);
return function () {
context.removeChild(hostNode);
};
}, [hostNode, context]);
if (hostNode) {
return /*#__PURE__*/createPortal( /*#__PURE__*/createElement(PortalContext.Provider, {
value: hostNode
}, children), hostNode);
} // ssr
return null;
}
Portal.__className = "__reakit-portal";
Portal.__selector = "." + Portal.__className;
export { Portal, PortalContext };

5
node_modules/reakit/es/Portal/index.js generated vendored Normal file
View File

@@ -0,0 +1,5 @@
import 'react';
import 'reakit-utils/useIsomorphicEffect';
import 'reakit-utils/canUseDOM';
import 'react-dom';
export { Portal, PortalContext } from './Portal.js';