Files
formipay/node_modules/@wordpress/primitives/build-module/svg/index.native.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

53 lines
1.5 KiB
JavaScript

import { createElement } from "react";
/**
* External dependencies
*/
import { Svg } from 'react-native-svg';
import { Animated } from 'react-native';
/**
* WordPress dependencies
*/
import { forwardRef } from '@wordpress/element';
import { usePreferredColorScheme } from '@wordpress/compose';
/**
* Internal dependencies
*/
import styles from './style.scss';
export { Circle, G, Path, Polygon, Rect, Defs, RadialGradient, LinearGradient, Stop, Line, SvgXml } from 'react-native-svg';
const AnimatedSvg = Animated.createAnimatedComponent(forwardRef((props, ref) => createElement(Svg, {
ref: ref,
...props
})));
export const SVG = ({
className = '',
isPressed,
animated = false,
...props
}) => {
const colorScheme = usePreferredColorScheme();
const stylesFromClasses = className.split(' ').map(element => styles[element]).filter(Boolean);
const defaultStyle = isPressed ? styles[`is-pressed--${colorScheme}`] : styles['components-toolbar__control-' + colorScheme];
const propStyle = Array.isArray(props.style) ? props.style.reduce((acc, el) => {
return {
...acc,
...el
};
}, {}) : props.style;
const styleValues = Object.assign({}, defaultStyle, propStyle, ...stylesFromClasses);
const appliedProps = {
...props,
style: styleValues
};
const SvgWrapper = animated ? AnimatedSvg : Svg;
return createElement(SvgWrapper
// We want to re-render when style color is changed.
, {
key: appliedProps.style.color,
height: "100%",
width: "100%",
...appliedProps
});
};
//# sourceMappingURL=index.native.js.map