Files
formipay/node_modules/@wordpress/components/build-module/radio-group/radio.js
dwindown e8fbfb14c1 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>
2026-04-18 17:02:14 +07:00

46 lines
1.0 KiB
JavaScript

import { createElement } from "react";
/**
* WordPress dependencies
*/
import { forwardRef, useContext } from '@wordpress/element';
/**
* External dependencies
*/
// eslint-disable-next-line no-restricted-imports
import * as Ariakit from '@ariakit/react';
/**
* Internal dependencies
*/
import Button from '../button';
import { RadioGroupContext } from './context';
function UnforwardedRadio({
value,
children,
...props
}, ref) {
const {
store,
disabled
} = useContext(RadioGroupContext);
const selectedValue = store?.useState('value');
const isChecked = selectedValue !== undefined && selectedValue === value;
return createElement(Ariakit.Radio, {
disabled: disabled,
store: store,
ref: ref,
value: value,
render: createElement(Button, {
variant: isChecked ? 'primary' : 'secondary',
...props
})
}, children || value);
}
/**
* @deprecated Use `RadioControl` or `ToggleGroupControl` instead.
*/
export const Radio = forwardRef(UnforwardedRadio);
export default Radio;
//# sourceMappingURL=radio.js.map