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>
49 lines
1.0 KiB
JavaScript
49 lines
1.0 KiB
JavaScript
/**
|
|
* Internal dependencies
|
|
*/
|
|
import { logged } from './utils';
|
|
function isDev() {
|
|
return typeof SCRIPT_DEBUG !== 'undefined' && SCRIPT_DEBUG === true;
|
|
}
|
|
|
|
/**
|
|
* Shows a warning with `message` if environment is not `production`.
|
|
*
|
|
* @param {string} message Message to show in the warning.
|
|
*
|
|
* @example
|
|
* ```js
|
|
* import warning from '@wordpress/warning';
|
|
*
|
|
* function MyComponent( props ) {
|
|
* if ( ! props.title ) {
|
|
* warning( '`props.title` was not passed' );
|
|
* }
|
|
* ...
|
|
* }
|
|
* ```
|
|
*/
|
|
export default function warning(message) {
|
|
if (!isDev()) {
|
|
return;
|
|
}
|
|
|
|
// Skip if already logged.
|
|
if (logged.has(message)) {
|
|
return;
|
|
}
|
|
|
|
// eslint-disable-next-line no-console
|
|
console.warn(message);
|
|
|
|
// Throwing an error and catching it immediately to improve debugging
|
|
// A consumer can use 'pause on caught exceptions'
|
|
// https://github.com/facebook/react/issues/4216
|
|
try {
|
|
throw Error(message);
|
|
} catch (x) {
|
|
// Do nothing.
|
|
}
|
|
logged.add(message);
|
|
}
|
|
//# sourceMappingURL=index.js.map
|