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>
30 lines
642 B
JavaScript
30 lines
642 B
JavaScript
module.exports = {
|
|
meta: {
|
|
type: 'problem',
|
|
schema: [],
|
|
},
|
|
create( context ) {
|
|
return {
|
|
"JSXOpeningElement[name.name='BaseControl']": ( node ) => {
|
|
const containsAttribute = ( attrName ) => {
|
|
return node.attributes.some( ( attribute ) => {
|
|
return (
|
|
attribute.name && attribute.name.name === attrName
|
|
);
|
|
} );
|
|
};
|
|
if (
|
|
containsAttribute( 'label' ) &&
|
|
! containsAttribute( 'id' )
|
|
) {
|
|
context.report( {
|
|
node,
|
|
message:
|
|
'When using BaseControl component if a label property is passed an id property should also be passed.',
|
|
} );
|
|
}
|
|
},
|
|
};
|
|
},
|
|
};
|