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>
118 lines
3.8 KiB
JavaScript
118 lines
3.8 KiB
JavaScript
'use strict';
|
|
|
|
var util = require('util');
|
|
var core = require('@babel/core');
|
|
var core$1 = require('@svgr/core');
|
|
var path = require('path');
|
|
var svgo = require('@svgr/plugin-svgo');
|
|
var jsx = require('@svgr/plugin-jsx');
|
|
var presetReact = require('@babel/preset-react');
|
|
var presetEnv = require('@babel/preset-env');
|
|
var presetTS = require('@babel/preset-typescript');
|
|
var pluginTransformReactConstantElements = require('@babel/plugin-transform-react-constant-elements');
|
|
|
|
var __defProp = Object.defineProperty;
|
|
var __defProps = Object.defineProperties;
|
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
var __spreadValues = (a, b) => {
|
|
for (var prop in b || (b = {}))
|
|
if (__hasOwnProp.call(b, prop))
|
|
__defNormalProp(a, prop, b[prop]);
|
|
if (__getOwnPropSymbols)
|
|
for (var prop of __getOwnPropSymbols(b)) {
|
|
if (__propIsEnum.call(b, prop))
|
|
__defNormalProp(a, prop, b[prop]);
|
|
}
|
|
return a;
|
|
};
|
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
var __objRest = (source, exclude) => {
|
|
var target = {};
|
|
for (var prop in source)
|
|
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
target[prop] = source[prop];
|
|
if (source != null && __getOwnPropSymbols)
|
|
for (var prop of __getOwnPropSymbols(source)) {
|
|
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
target[prop] = source[prop];
|
|
}
|
|
return target;
|
|
};
|
|
const babelOptions = {
|
|
babelrc: false,
|
|
configFile: false,
|
|
presets: [
|
|
core.createConfigItem(presetReact, { type: "preset" }),
|
|
core.createConfigItem([presetEnv, { modules: false }], { type: "preset" })
|
|
],
|
|
plugins: [core.createConfigItem(pluginTransformReactConstantElements)]
|
|
};
|
|
const typeScriptBabelOptions = __spreadProps(__spreadValues({}, babelOptions), {
|
|
presets: [
|
|
...babelOptions.presets,
|
|
core.createConfigItem(
|
|
[presetTS, { allowNamespaces: true, allExtensions: true, isTSX: true }],
|
|
{ type: "preset" }
|
|
)
|
|
]
|
|
});
|
|
const tranformSvg = util.callbackify(
|
|
async (contents, options, state) => {
|
|
const _a = options, { babel = true } = _a, config = __objRest(_a, ["babel"]);
|
|
const jsCode = await core$1.transform(contents, config, state);
|
|
if (!babel)
|
|
return jsCode;
|
|
const result = await core.transformAsync(
|
|
jsCode,
|
|
options.typescript ? typeScriptBabelOptions : babelOptions
|
|
);
|
|
if (!(result == null ? void 0 : result.code)) {
|
|
throw new Error(`Error while transforming using Babel`);
|
|
}
|
|
return result.code;
|
|
}
|
|
);
|
|
function svgrLoader(contents) {
|
|
this.cacheable && this.cacheable();
|
|
const callback = this.async();
|
|
const options = this.getOptions();
|
|
const previousExport = (() => {
|
|
if (contents.startsWith("export "))
|
|
return contents;
|
|
const exportMatches = contents.match(/^module.exports\s*=\s*(.*)/);
|
|
return exportMatches ? `export default ${exportMatches[1]}` : null;
|
|
})();
|
|
const state = {
|
|
caller: {
|
|
name: "@svgr/webpack",
|
|
previousExport,
|
|
defaultPlugins: [svgo, jsx]
|
|
},
|
|
filePath: path.normalize(this.resourcePath)
|
|
};
|
|
if (!previousExport) {
|
|
tranformSvg(contents, options, state, callback);
|
|
} else {
|
|
this.fs.readFile(this.resourcePath, (err, result) => {
|
|
if (err) {
|
|
callback(err);
|
|
return;
|
|
}
|
|
tranformSvg(String(result), options, state, (err2, content) => {
|
|
if (err2) {
|
|
callback(err2);
|
|
return;
|
|
}
|
|
callback(null, content);
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
module.exports = svgrLoader;
|
|
//# sourceMappingURL=index.js.map
|