From fe3e55f022b6adf05c1cba3867ab1e3b7414a812 Mon Sep 17 00:00:00 2001 From: Oj Date: Sun, 4 Apr 2021 13:47:36 +0100 Subject: [PATCH] [PCCompat > Webpack] Initial impl. --- moduleWrappers/powercord/webpack.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/moduleWrappers/powercord/webpack.js b/moduleWrappers/powercord/webpack.js index e69de29..b93294d 100644 --- a/moduleWrappers/powercord/webpack.js +++ b/moduleWrappers/powercord/webpack.js @@ -0,0 +1,28 @@ +const makeFinalFilter = (filter) => { + if (Array.isArray(filter)) { + const subs = filter; + filter = (mod) => subs.every((s) => mod[s] || (mod.__proto__ && mod.__proto__[s])); + } + + return filter; +}; + +module.exports = { + getModule: (filter, _retry, _forever) => { // Ignoring retry and forever arguments for basic implementation + filter = makeFinalFilter(filter); + + return goosemodScope.webpackModules.find(filter); + }, + + getAllModules: (filter) => { + filter = makeFinalFilter(filter); + + return goosemodScope.webpackModules.findAll(filter); + }, + + getModuleByDisplayName: (displayName) => { + return goosemodScope.webpackModules.findByDisplayName(displayName); + }, + + ...goosemodScope.webpackModules.common // Export common modules (eg: React) +}; \ No newline at end of file