mirror of
https://github.com/Equicord/Equicord.git
synced 2025-06-18 02:47:03 -04:00
Add Plugin.start, make Settings actually start/stop plugins
This commit is contained in:
parent
bac8a648b6
commit
f60ccb766f
10 changed files with 146 additions and 58 deletions
|
@ -1,27 +1,33 @@
|
|||
export default class Logger {
|
||||
constructor(public name: string, public color: string) { }
|
||||
|
||||
private _log(level: "log" | "error" | "warn" | "info" | "debug", args: any[]) {
|
||||
console[level](`%c ${this.name} `, `background: ${this.color}; color: black; font-weight: bold`, ...args);
|
||||
private _log(level: "log" | "error" | "warn" | "info" | "debug", levelColor: string, args: any[]) {
|
||||
console[level](
|
||||
`%c Vencord %c %c ${this.name} `,
|
||||
`background: ${levelColor}; color: black; font-weight: bold; border-radius: 5px;`,
|
||||
"",
|
||||
`background: ${this.color}; color: black; font-weight: bold; border-radius: 5px;`
|
||||
, ...args
|
||||
);
|
||||
}
|
||||
|
||||
public log(...args: any[]) {
|
||||
this._log("log", args);
|
||||
this._log("log", "#a6d189", args);
|
||||
}
|
||||
|
||||
public info(...args: any[]) {
|
||||
this._log("info", args);
|
||||
this._log("info", "#a6d189", args);
|
||||
}
|
||||
|
||||
public error(...args: any[]) {
|
||||
this._log("error", args);
|
||||
this._log("error", "#e78284", args);
|
||||
}
|
||||
|
||||
public warn(...args: any[]) {
|
||||
this._log("warn", args);
|
||||
this._log("warn", "#e5c890", args);
|
||||
}
|
||||
|
||||
public debug(...args: any[]) {
|
||||
this._log("debug", args);
|
||||
this._log("debug", "#eebebe", args);
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
// exists to export default definePlugin({...})
|
||||
export default function definePlugin(p: PluginDef) {
|
||||
export default function definePlugin(p: PluginDef & Record<string, any>) {
|
||||
return p;
|
||||
}
|
||||
|
||||
|
@ -14,17 +14,18 @@ export interface Patch {
|
|||
replacement: PatchReplacement | PatchReplacement[];
|
||||
}
|
||||
|
||||
export interface Plugin {
|
||||
export interface Plugin extends PluginDef {
|
||||
patches?: Patch[];
|
||||
started: boolean;
|
||||
}
|
||||
|
||||
interface PluginDef {
|
||||
name: string;
|
||||
description: string;
|
||||
author: string;
|
||||
start?(): void;
|
||||
patches?: Patch[];
|
||||
stop?(): void;
|
||||
patches?: Omit<Patch, "plugin">[];
|
||||
dependencies?: string[],
|
||||
required?: boolean;
|
||||
}
|
||||
|
||||
// @ts-ignore lole
|
||||
interface PluginDef extends Plugin {
|
||||
patches?: Omit<Patch, "plugin">[];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue