Files
formipay/node_modules/@wordpress/components/build/circular-option-picker/circular-option-picker-option.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

98 lines
2.8 KiB
JavaScript

"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Option = Option;
var _react = require("react");
var _classnames = _interopRequireDefault(require("classnames"));
var _compose = require("@wordpress/compose");
var _element = require("@wordpress/element");
var _icons = require("@wordpress/icons");
var _circularOptionPickerContext = require("./circular-option-picker-context");
var _button = _interopRequireDefault(require("../button"));
var _v = require("../composite/v2");
var _tooltip = _interopRequireDefault(require("../tooltip"));
/**
* External dependencies
*/
/**
* WordPress dependencies
*/
/**
* Internal dependencies
*/
function UnforwardedOptionAsButton(props, forwardedRef) {
const {
isPressed,
...additionalProps
} = props;
return (0, _react.createElement)(_button.default, {
...additionalProps,
"aria-pressed": isPressed,
ref: forwardedRef
});
}
const OptionAsButton = (0, _element.forwardRef)(UnforwardedOptionAsButton);
function UnforwardedOptionAsOption(props, forwardedRef) {
const {
id,
isSelected,
compositeStore,
...additionalProps
} = props;
const activeId = compositeStore.useState('activeId');
if (isSelected && !activeId) {
compositeStore.setActiveId(id);
}
return (0, _react.createElement)(_v.CompositeItem, {
render: (0, _react.createElement)(_button.default, {
...additionalProps,
role: "option",
"aria-selected": !!isSelected,
ref: forwardedRef
}),
store: compositeStore,
id: id
});
}
const OptionAsOption = (0, _element.forwardRef)(UnforwardedOptionAsOption);
function Option({
className,
isSelected,
selectedIconProps = {},
tooltipText,
...additionalProps
}) {
const {
baseId,
compositeStore
} = (0, _element.useContext)(_circularOptionPickerContext.CircularOptionPickerContext);
const id = (0, _compose.useInstanceId)(Option, baseId || 'components-circular-option-picker__option');
const commonProps = {
id,
className: 'components-circular-option-picker__option',
...additionalProps
};
const optionControl = compositeStore ? (0, _react.createElement)(OptionAsOption, {
...commonProps,
compositeStore: compositeStore,
isSelected: isSelected
}) : (0, _react.createElement)(OptionAsButton, {
...commonProps,
isPressed: isSelected
});
return (0, _react.createElement)("div", {
className: (0, _classnames.default)(className, 'components-circular-option-picker__option-wrapper')
}, tooltipText ? (0, _react.createElement)(_tooltip.default, {
text: tooltipText
}, optionControl) : optionControl, isSelected && (0, _react.createElement)(_icons.Icon, {
icon: _icons.check,
...selectedIconProps
}));
}
//# sourceMappingURL=circular-option-picker-option.js.map