diff options
author | Vendicated <vendicated@riseup.net> | 2022-08-29 20:27:47 +0200 |
---|---|---|
committer | Vendicated <vendicated@riseup.net> | 2022-08-29 20:27:47 +0200 |
commit | c39ff8f6481463a1700014ebd204f2b6189759a1 (patch) | |
tree | a5a4d1fe04a9d99029d480ec3f5a2ca2fb9c0b13 /src/plugins/index.ts | |
parent | 1709ab61ef2138d350b3d45a3eba0d94d5adf0a1 (diff) | |
download | Vencord-c39ff8f6481463a1700014ebd204f2b6189759a1.tar.gz Vencord-c39ff8f6481463a1700014ebd204f2b6189759a1.tar.bz2 Vencord-c39ff8f6481463a1700014ebd204f2b6189759a1.zip |
More progress
Diffstat (limited to 'src/plugins/index.ts')
-rw-r--r-- | src/plugins/index.ts | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/plugins/index.ts b/src/plugins/index.ts index 4e55edb..d5b419b 100644 --- a/src/plugins/index.ts +++ b/src/plugins/index.ts @@ -1,3 +1,27 @@ -import plugins from "plugins"; +import Plugins from "plugins"; +import Logger from "../utils/logger"; +import { Patch } from "../utils/types"; -console.log(plugins);
\ No newline at end of file +const logger = new Logger("PluginManager", "#a6d189"); + +export const plugins = Plugins; +export const patches = [] as Patch[]; + +for (const plugin of Plugins) if (plugin.patches) { + for (const patch of plugin.patches) { + patch.plugin = plugin.name; + if (!Array.isArray(patch.replacement)) patch.replacement = [patch.replacement]; + patches.push(patch); + } +} + +export function startAll() { + for (const plugin of plugins) if (plugin.start) { + try { + logger.info("Starting plugin", plugin.name); + plugin.start(); + } catch (err) { + logger.error("Failed to start plugin", plugin.name, err); + } + } +}
\ No newline at end of file |