Update 0BDFDB.plugin.js
This commit is contained in:
parent
2d6b26cd39
commit
75afa05eee
|
@ -19,12 +19,7 @@ module.exports = (_ => {
|
||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"description": "Give other plugins utility functions"
|
"description": "Give other plugins utility functions"
|
||||||
},
|
},
|
||||||
"rawUrl": "https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js",
|
"rawUrl": "https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js"
|
||||||
"changeLog": {
|
|
||||||
"progress": {
|
|
||||||
"New Meta Headers": "Adjusted Update Check for new Plugin Meta Headers"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const DiscordObjects = {};
|
const DiscordObjects = {};
|
||||||
|
@ -1845,15 +1840,12 @@ module.exports = (_ => {
|
||||||
stringFind: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].strings,
|
stringFind: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].strings,
|
||||||
propertyFind: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].props,
|
propertyFind: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].props,
|
||||||
specialFilter: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].special && InternalBDFDB.createFilter(InternalData.ModuleUtilsConfig.Finder[unmappedType].special),
|
specialFilter: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].special && InternalBDFDB.createFilter(InternalData.ModuleUtilsConfig.Finder[unmappedType].special),
|
||||||
memoComponent: InternalData.ModuleUtilsConfig.MemoComponent.includes(unmappedType),
|
|
||||||
subRender: InternalData.ModuleUtilsConfig.SubRender.includes(unmappedType),
|
|
||||||
forceObserve: InternalData.ModuleUtilsConfig.ForceObserve.includes(unmappedType),
|
forceObserve: InternalData.ModuleUtilsConfig.ForceObserve.includes(unmappedType),
|
||||||
nonRender: BDFDB.ObjectUtils.toArray(pluginData.patchTypes).flat(10).filter(n => n && !InternalData.ModuleUtilsConfig.InstanceFunctions.includes(n)).length > 0,
|
|
||||||
exported: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].exported || false,
|
exported: InternalData.ModuleUtilsConfig.Finder[unmappedType] && InternalData.ModuleUtilsConfig.Finder[unmappedType].exported || false,
|
||||||
mapped: InternalData.ModuleUtilsConfig.PatchMap[type]
|
mapped: InternalData.ModuleUtilsConfig.PatchMap[type]
|
||||||
};
|
};
|
||||||
config.ignoreCheck = !!(config.codeFind || config.propertyFind || config.specialFilter || config.nonRender || config.memoComponent);
|
config.nonRender = config.specialFilter || BDFDB.ObjectUtils.toArray(pluginData.patchTypes).flat(10).filter(n => n && !InternalData.ModuleUtilsConfig.InstanceFunctions.includes(n)).length > 0;
|
||||||
config.nonPrototype = InternalData.ModuleUtilsConfig.NonPrototype.includes(unmappedType) || !!(config.codeFind || config.propertyFind || config.nonRender);
|
config.nonPrototype = !!(config.codeFind || config.propertyFind || config.nonRender);
|
||||||
|
|
||||||
let component = InternalData.ModuleUtilsConfig.LoadedInComponents[type] && BDFDB.ObjectUtils.get(InternalComponents, InternalData.ModuleUtilsConfig.LoadedInComponents[type]);
|
let component = InternalData.ModuleUtilsConfig.LoadedInComponents[type] && BDFDB.ObjectUtils.get(InternalComponents, InternalData.ModuleUtilsConfig.LoadedInComponents[type]);
|
||||||
if (component) InternalBDFDB.patchComponent(pluginData, config.nonRender ? (BDFDB.ModuleUtils.find(m => m == component, config.exported) || {}).exports : component, type, config);
|
if (component) InternalBDFDB.patchComponent(pluginData, config.nonRender ? (BDFDB.ModuleUtils.find(m => m == component, config.exported) || {}).exports : component, type, config);
|
||||||
|
@ -1870,7 +1862,7 @@ module.exports = (_ => {
|
||||||
let patchSpecial = (func, argument) => {
|
let patchSpecial = (func, argument) => {
|
||||||
let module = BDFDB.ModuleUtils[func](argument, config.exported);
|
let module = BDFDB.ModuleUtils[func](argument, config.exported);
|
||||||
let exports = module && !config.exported && module.exports || module;
|
let exports = module && !config.exported && module.exports || module;
|
||||||
exports && InternalBDFDB.patchComponent(pluginData, config.memoComponent ? exports.default : exports, mappedType, config);
|
exports && InternalBDFDB.patchComponent(pluginData, InternalBDFDB.isMemo(exports) ? exports.default : exports, mappedType, config);
|
||||||
};
|
};
|
||||||
if (config.classNames.length) InternalBDFDB.checkForInstance(pluginData, mappedType, config);
|
if (config.classNames.length) InternalBDFDB.checkForInstance(pluginData, mappedType, config);
|
||||||
else if (config.stringFind) patchSpecial("findByString", config.stringFind);
|
else if (config.stringFind) patchSpecial("findByString", config.stringFind);
|
||||||
|
@ -1885,11 +1877,11 @@ module.exports = (_ => {
|
||||||
if (pluginDataObjs.length && instance) {
|
if (pluginDataObjs.length && instance) {
|
||||||
let name = type.split(" _ _ ")[0];
|
let name = type.split(" _ _ ")[0];
|
||||||
instance = instance[BDFDB.ReactUtils.instanceKey] && instance[BDFDB.ReactUtils.instanceKey].type ? instance[BDFDB.ReactUtils.instanceKey].type : instance;
|
instance = instance[BDFDB.ReactUtils.instanceKey] && instance[BDFDB.ReactUtils.instanceKey].type ? instance[BDFDB.ReactUtils.instanceKey].type : instance;
|
||||||
instance = config.ignoreCheck || BDFDB.ReactUtils.isCorrectInstance(instance, name) || InternalData.ModuleUtilsConfig.LoadedInComponents[type] ? instance : (BDFDB.ReactUtils.findConstructor(instance, name) || BDFDB.ReactUtils.findConstructor(instance, name, {up: true}));
|
instance = config.nonPrototype || BDFDB.ReactUtils.isCorrectInstance(instance, name) || InternalData.ModuleUtilsConfig.LoadedInComponents[type] ? instance : (BDFDB.ReactUtils.findConstructor(instance, name) || BDFDB.ReactUtils.findConstructor(instance, name, {up: true}));
|
||||||
if (instance) {
|
if (instance) {
|
||||||
instance = instance[BDFDB.ReactUtils.instanceKey] && instance[BDFDB.ReactUtils.instanceKey].type ? instance[BDFDB.ReactUtils.instanceKey].type : instance;
|
instance = instance[BDFDB.ReactUtils.instanceKey] && instance[BDFDB.ReactUtils.instanceKey].type ? instance[BDFDB.ReactUtils.instanceKey].type : instance;
|
||||||
let toBePatched = config.nonPrototype ? instance : instance.prototype;
|
let toBePatched = config.nonPrototype || !instance.prototype ? instance : instance.prototype;
|
||||||
toBePatched = config.subRender && toBePatched ? toBePatched.type : toBePatched;
|
toBePatched = toBePatched && toBePatched.type && typeof toBePatched.type.render == "function" ? toBePatched.type : toBePatched;
|
||||||
for (let pluginData of pluginDataObjs) for (let patchType in pluginData.patchTypes) {
|
for (let pluginData of pluginDataObjs) for (let patchType in pluginData.patchTypes) {
|
||||||
let patchMethods = {};
|
let patchMethods = {};
|
||||||
patchMethods[patchType] = e => {
|
patchMethods[patchType] = e => {
|
||||||
|
@ -1900,7 +1892,7 @@ module.exports = (_ => {
|
||||||
patchtypes: [patchType]
|
patchtypes: [patchType]
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
BDFDB.PatchUtils.patch(pluginData.plugin, toBePatched, config.subRender ? "render" : pluginData.patchTypes[patchType], patchMethods);
|
BDFDB.PatchUtils.patch(pluginData.plugin, toBePatched, pluginData.patchTypes[patchType], patchMethods);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1911,6 +1903,9 @@ module.exports = (_ => {
|
||||||
return value && (!prop.value || [prop.value].flat(10).filter(n => typeof n == "string").some(n => value.toUpperCase().indexOf(n.toUpperCase()) == 0));
|
return value && (!prop.value || [prop.value].flat(10).filter(n => typeof n == "string").some(n => value.toUpperCase().indexOf(n.toUpperCase()) == 0));
|
||||||
}) && ins.return.type;
|
}) && ins.return.type;
|
||||||
};
|
};
|
||||||
|
InternalBDFDB.isMemo = function (exports) {
|
||||||
|
return exports && exports.default && typeof exports.default.$$typeof == "symbol" && (exports.default.$$typeof.toString() || "").indexOf("memo") > -1
|
||||||
|
};
|
||||||
InternalBDFDB.checkEle = function (pluginDataObjs, ele, type, config) {
|
InternalBDFDB.checkEle = function (pluginDataObjs, ele, type, config) {
|
||||||
pluginDataObjs = [pluginDataObjs].flat(10).filter(n => n);
|
pluginDataObjs = [pluginDataObjs].flat(10).filter(n => n);
|
||||||
let unmappedType = type.split(" _ _ ")[1] || type;
|
let unmappedType = type.split(" _ _ ")[1] || type;
|
||||||
|
@ -1920,7 +1915,7 @@ module.exports = (_ => {
|
||||||
if (component) {
|
if (component) {
|
||||||
if (config.nonRender) {
|
if (config.nonRender) {
|
||||||
let exports = (BDFDB.ModuleUtils.find(m => m == component, false) || {}).exports;
|
let exports = (BDFDB.ModuleUtils.find(m => m == component, false) || {}).exports;
|
||||||
InternalBDFDB.patchComponent(pluginDataObjs, exports && config.memoComponent ? exports.default : exports, type, config);
|
InternalBDFDB.patchComponent(pluginDataObjs, InternalBDFDB.isMemo(exports) ? exports.default : exports, type, config);
|
||||||
}
|
}
|
||||||
else InternalBDFDB.patchComponent(pluginDataObjs, component, type, config);
|
else InternalBDFDB.patchComponent(pluginDataObjs, component, type, config);
|
||||||
BDFDB.PatchUtils.forceAllUpdates(pluginDataObjs.map(n => n.plugin), type);
|
BDFDB.PatchUtils.forceAllUpdates(pluginDataObjs.map(n => n.plugin), type);
|
||||||
|
|
Loading…
Reference in New Issue