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>
31 lines
897 B
JavaScript
31 lines
897 B
JavaScript
/**
|
|
* Gets the socket integration to use for Webpack messages.
|
|
* @param {'wds' | 'whm' | 'wps' | string} integrationType A valid socket integration type or a path to a module.
|
|
* @returns {string} Path to the resolved socket integration module.
|
|
*/
|
|
function getSocketIntegration(integrationType) {
|
|
let resolvedSocketIntegration;
|
|
switch (integrationType) {
|
|
case 'wds': {
|
|
resolvedSocketIntegration = require.resolve('../../sockets/WDSSocket');
|
|
break;
|
|
}
|
|
case 'whm': {
|
|
resolvedSocketIntegration = require.resolve('../../sockets/WHMEventSource');
|
|
break;
|
|
}
|
|
case 'wps': {
|
|
resolvedSocketIntegration = require.resolve('../../sockets/WPSSocket');
|
|
break;
|
|
}
|
|
default: {
|
|
resolvedSocketIntegration = require.resolve(integrationType);
|
|
break;
|
|
}
|
|
}
|
|
|
|
return resolvedSocketIntegration;
|
|
}
|
|
|
|
module.exports = getSocketIntegration;
|