Update 0BDFDB.plugin.js
This commit is contained in:
parent
1ad117f42c
commit
8f6f641bec
|
@ -1186,9 +1186,12 @@ module.exports = (_ => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
Internal.hasModuleStrings = function (module, strings, ignoreCase) {
|
Internal.checkModuleStrings = function (module, strings, config = {}) {
|
||||||
const toString = n => ignoreCase ? n.toString().toLowerCase() : n.toString();
|
const check = (s1, s2) => {
|
||||||
return [strings].flat(10).filter(n => typeof n == "string").map(ignoreCase ? (n => n.toLowerCase()) : (n => n)).every(string => typeof module == "function" && (toString(module).indexOf(string) > -1 || typeof module.__originalMethod == "function" && toString(module.__originalMethod).indexOf(string) > -1 || typeof module.__originalFunction == "function" && toString(module.__originalFunction).indexOf(string) > -1) || BDFDB.ObjectUtils.is(module) && typeof module.type == "function" && toString(module.type).indexOf(string) > -1);
|
s1 = config.ignoreCase ? s1.toString().toLowerCase() : s1.toString();
|
||||||
|
return config.hasNot ? s1.indexOf(s2) == -1 : s1.indexOf(s2) > -1;
|
||||||
|
};
|
||||||
|
return [strings].flat(10).filter(n => typeof n == "string").map(config.ignoreCase ? (n => n.toLowerCase()) : (n => n)).every(string => typeof module == "function" && (check(module, string) || typeof module.__originalMethod == "function" && check(module.__originalMethod, string) || typeof module.__originalFunction == "function" && check(module.__originalFunction, string)) || BDFDB.ObjectUtils.is(module) && typeof module.type == "function" && check(module.type, string));
|
||||||
};
|
};
|
||||||
|
|
||||||
Internal.getModuleString = function (module) {
|
Internal.getModuleString = function (module) {
|
||||||
|
@ -1294,7 +1297,7 @@ module.exports = (_ => {
|
||||||
strings.push(config);
|
strings.push(config);
|
||||||
config = {};
|
config = {};
|
||||||
}
|
}
|
||||||
return Internal.findModule("string", JSON.stringify(strings), m => Internal.hasModuleStrings(m, strings) && m, config);
|
return Internal.findModule("string", JSON.stringify(strings), m => Internal.checkModuleStrings(m, strings) && m, config);
|
||||||
};
|
};
|
||||||
BDFDB.ModuleUtils.findByPrototypes = function (...protoProps) {
|
BDFDB.ModuleUtils.findByPrototypes = function (...protoProps) {
|
||||||
protoProps = protoProps.flat(10);
|
protoProps = protoProps.flat(10);
|
||||||
|
@ -2574,18 +2577,14 @@ module.exports = (_ => {
|
||||||
if (LibraryModules[item]) return LibraryModules[item];
|
if (LibraryModules[item]) return LibraryModules[item];
|
||||||
if (!InternalData.LibraryModules[item]) return null;
|
if (!InternalData.LibraryModules[item]) return null;
|
||||||
let defaultExport = typeof InternalData.LibraryModules[item].exported != "boolean" ? true : InternalData.LibraryModules[item].exported;
|
let defaultExport = typeof InternalData.LibraryModules[item].exported != "boolean" ? true : InternalData.LibraryModules[item].exported;
|
||||||
if (InternalData.LibraryModules[item].props) {
|
if (InternalData.LibraryModules[item].props) LibraryModules[item] = BDFDB.ModuleUtils.findByProperties(InternalData.LibraryModules[item].props, {defaultExport});
|
||||||
if (InternalData.LibraryModules[item].nonProps) {
|
|
||||||
LibraryModules[item] = BDFDB.ModuleUtils.find(m => InternalData.LibraryModules[item].props.every(prop => {
|
|
||||||
const value = m[prop];
|
|
||||||
return value !== undefined && !(typeof value == "string" && !value);
|
|
||||||
}) && InternalData.LibraryModules[item].nonProps.every(prop => m[prop] === undefined) && m, {defaultExport});
|
|
||||||
if (!LibraryModules[item]) BDFDB.LogUtils.warn(`${JSON.stringify([InternalData.LibraryModules[item].props, InternalData.LibraryModules[item].nonProps].flat(10))} [props + nonProps] not found in WebModules`);
|
|
||||||
}
|
|
||||||
else LibraryModules[item] = BDFDB.ModuleUtils.findByProperties(InternalData.LibraryModules[item].props, {defaultExport});
|
|
||||||
}
|
|
||||||
else if (InternalData.LibraryModules[item].name) LibraryModules[item] = BDFDB.ModuleUtils.findByName(InternalData.LibraryModules[item].name, {defaultExport});
|
else if (InternalData.LibraryModules[item].name) LibraryModules[item] = BDFDB.ModuleUtils.findByName(InternalData.LibraryModules[item].name, {defaultExport});
|
||||||
else if (InternalData.LibraryModules[item].strings) LibraryModules[item] = BDFDB.ModuleUtils.findByString(InternalData.LibraryModules[item].strings, {defaultExport});
|
else if (InternalData.LibraryModules[item].strings) {
|
||||||
|
if (InternalData.LibraryModules[item].nonStrings) {
|
||||||
|
LibraryModules[item] = Internal.findModule("strings + nonStrings", JSON.stringify([InternalData.LibraryModules[item].strings, InternalData.LibraryModules[item].nonStrings].flat(10)), m => Internal.checkModuleStrings(m, InternalData.LibraryModules[item].strings) && Internal.checkModuleStrings(m, InternalData.LibraryModules[item].nonStrings, {hasNot: true}) && m, {defaultExport});
|
||||||
|
}
|
||||||
|
else LibraryModules[item] = BDFDB.ModuleUtils.findByString(InternalData.LibraryModules[item].strings, {defaultExport});
|
||||||
|
}
|
||||||
if (InternalData.LibraryModules[item].value) LibraryModules[item] = (LibraryModules[item] || {})[InternalData.LibraryModules[item].value];
|
if (InternalData.LibraryModules[item].value) LibraryModules[item] = (LibraryModules[item] || {})[InternalData.LibraryModules[item].value];
|
||||||
if (InternalData.LibraryModules[item].assign) LibraryModules[item] = Object.assign({}, LibraryModules[item]);
|
if (InternalData.LibraryModules[item].assign) LibraryModules[item] = Object.assign({}, LibraryModules[item]);
|
||||||
if (LibraryModules[item] && InternalData.LibraryModulesFunctionsMap && InternalData.LibraryModulesFunctionsMap[item]) {
|
if (LibraryModules[item] && InternalData.LibraryModulesFunctionsMap && InternalData.LibraryModulesFunctionsMap[item]) {
|
||||||
|
@ -4380,6 +4379,9 @@ module.exports = (_ => {
|
||||||
else window.open(url, "_blank");
|
else window.open(url, "_blank");
|
||||||
};
|
};
|
||||||
window.DiscordNative && window.DiscordNative.app && window.DiscordNative.app.getPath("appData").then(path => {BDFDB.DiscordUtils.getFolder.base = path;});
|
window.DiscordNative && window.DiscordNative.app && window.DiscordNative.app.getPath("appData").then(path => {BDFDB.DiscordUtils.getFolder.base = path;});
|
||||||
|
BDFDB.DiscordUtils.isPlaformEmbedded = function () {
|
||||||
|
return Internal.LibraryModules.PlatformUtils && (Object.entries(Internal.LibraryModules.PlatformUtils).find(n => typeof n[1] == "boolean") || [])[1] || false;
|
||||||
|
};
|
||||||
BDFDB.DiscordUtils.getFolder = function () {
|
BDFDB.DiscordUtils.getFolder = function () {
|
||||||
if (!BDFDB.DiscordUtils.getFolder.base) return "";
|
if (!BDFDB.DiscordUtils.getFolder.base) return "";
|
||||||
else if (BDFDB.DiscordUtils.getFolder.folder) return BDFDB.DiscordUtils.getFolder.folder;
|
else if (BDFDB.DiscordUtils.getFolder.folder) return BDFDB.DiscordUtils.getFolder.folder;
|
||||||
|
@ -8382,7 +8384,7 @@ module.exports = (_ => {
|
||||||
if (!PluginStores.chunkObserver[config.mappedType]) {
|
if (!PluginStores.chunkObserver[config.mappedType]) {
|
||||||
PluginStores.chunkObserver[config.mappedType] = {query: [], config};
|
PluginStores.chunkObserver[config.mappedType] = {query: [], config};
|
||||||
let filter;
|
let filter;
|
||||||
if (config.stringFind) filter = m => m && Internal.hasModuleStrings(m, config.stringFind) && m;
|
if (config.stringFind) filter = m => m && Internal.checkModuleStrings(m, config.stringFind) && m;
|
||||||
else if (config.propertyFind) filter = m => [config.propertyFind].flat(10).filter(n => n).every(prop => {
|
else if (config.propertyFind) filter = m => [config.propertyFind].flat(10).filter(n => n).every(prop => {
|
||||||
const value = m[prop];
|
const value = m[prop];
|
||||||
return value !== undefined && !(typeof value == "string" && !value);
|
return value !== undefined && !(typeof value == "string" && !value);
|
||||||
|
@ -8613,7 +8615,7 @@ module.exports = (_ => {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
const subType = InternalData.ModuleUtilsConfig.ContextMenuSubItemsMap[mappedType].items.find(item => InternalData.ModuleUtilsConfig.Finder[item] && InternalData.ModuleUtilsConfig.Finder[item].strings && Internal.hasModuleStrings(d, InternalData.ModuleUtilsConfig.Finder[item].strings));
|
const subType = InternalData.ModuleUtilsConfig.ContextMenuSubItemsMap[mappedType].items.find(item => InternalData.ModuleUtilsConfig.Finder[item] && InternalData.ModuleUtilsConfig.Finder[item].strings && Internal.checkModuleStrings(d, InternalData.ModuleUtilsConfig.Finder[item].strings));
|
||||||
if (subType) {
|
if (subType) {
|
||||||
m.__BDFDB_ContextMenu_Patch_Name = subType;
|
m.__BDFDB_ContextMenu_Patch_Name = subType;
|
||||||
return true;
|
return true;
|
||||||
|
@ -8812,7 +8814,7 @@ module.exports = (_ => {
|
||||||
console.log(window.t);
|
console.log(window.t);
|
||||||
};
|
};
|
||||||
BDFDB.DevUtils.findCodeAny = function (...strings) {
|
BDFDB.DevUtils.findCodeAny = function (...strings) {
|
||||||
window.t = {"$filter":(m => Internal.hasModuleStrings(m, strings, true))};
|
window.t = {"$filter":(m => Internal.checkModuleStrings(m, strings, {ignoreCase: true}))};
|
||||||
for (let i in BDFDB.DevUtils.req.c) if (BDFDB.DevUtils.req.c.hasOwnProperty(i)) {
|
for (let i in BDFDB.DevUtils.req.c) if (BDFDB.DevUtils.req.c.hasOwnProperty(i)) {
|
||||||
let m = BDFDB.DevUtils.req.c[i].exports;
|
let m = BDFDB.DevUtils.req.c[i].exports;
|
||||||
if (m && typeof m == "function" && window.t.$filter(m)) window.t["module_" + i] = {string: m.toString(), func: m};
|
if (m && typeof m == "function" && window.t.$filter(m)) window.t["module_" + i] = {string: m.toString(), func: m};
|
||||||
|
|
Loading…
Reference in New Issue