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>
50 lines
1.2 KiB
JavaScript
50 lines
1.2 KiB
JavaScript
'use strict';
|
|
|
|
const path = require('path');
|
|
|
|
const createStylelint = require('./createStylelint');
|
|
const getConfigForFile = require('./getConfigForFile');
|
|
|
|
/**
|
|
* Resolves the effective configuration for a given file. Resolves to `undefined`
|
|
* if no config is found.
|
|
* @param {string} filePath - The path to the file to get the config for.
|
|
* @param {Pick<
|
|
* import('stylelint').LinterOptions,
|
|
* | 'cwd'
|
|
* | 'config'
|
|
* | 'configBasedir'
|
|
* | 'configFile'
|
|
* >} options - The options to use when creating the Stylelint instance.
|
|
* @returns {Promise<import('stylelint').Config | undefined>}
|
|
*/
|
|
module.exports = async function resolveConfig(
|
|
filePath,
|
|
{ cwd = process.cwd(), config, configBasedir, configFile } = {},
|
|
) {
|
|
if (!filePath) {
|
|
return undefined;
|
|
}
|
|
|
|
const stylelint = createStylelint({
|
|
config,
|
|
configFile,
|
|
configBasedir,
|
|
cwd,
|
|
});
|
|
|
|
const absoluteFilePath = !path.isAbsolute(filePath)
|
|
? path.join(cwd, filePath)
|
|
: path.normalize(filePath);
|
|
|
|
const configSearchPath = stylelint._options.configFile || absoluteFilePath;
|
|
|
|
const resolved = await getConfigForFile(stylelint, configSearchPath, absoluteFilePath);
|
|
|
|
if (!resolved) {
|
|
return undefined;
|
|
}
|
|
|
|
return resolved.config;
|
|
};
|