mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-05-18 07:35:02 +00:00
Update to Knub 19.1.1 and update plugins accordingly
This commit is contained in:
parent
18e321f5bb
commit
50f5792bc5
24 changed files with 349 additions and 410 deletions
|
@ -1,12 +1,9 @@
|
|||
import { IBasePluginConfig, IBasePluginPermissions, IPluginOptions, Plugin } from "knub";
|
||||
import { IBasePluginConfig, IPluginOptions, Plugin } from "knub";
|
||||
import { PluginRuntimeError } from "../PluginRuntimeError";
|
||||
import Ajv, { ErrorObject } from "ajv";
|
||||
import { isSnowflake, isUnicodeEmoji } from "../utils";
|
||||
|
||||
export class ZeppelinPlugin<
|
||||
TConfig extends {} = IBasePluginConfig,
|
||||
TPermissions extends {} = IBasePluginPermissions
|
||||
> extends Plugin<TConfig, TPermissions> {
|
||||
export class ZeppelinPlugin<TConfig extends {} = IBasePluginConfig> extends Plugin<TConfig> {
|
||||
protected configSchema: any;
|
||||
protected permissionsSchema: any;
|
||||
|
||||
|
@ -45,26 +42,6 @@ export class ZeppelinPlugin<
|
|||
}
|
||||
}
|
||||
|
||||
// Validate permission values
|
||||
if (this.permissionsSchema) {
|
||||
const ajv = new Ajv();
|
||||
const validate = ajv.compile(this.permissionsSchema);
|
||||
|
||||
if (options.permissions) {
|
||||
const isValid = validate(options.permissions);
|
||||
if (!isValid) return validate.errors;
|
||||
}
|
||||
|
||||
if (options.overrides) {
|
||||
for (const override of options.overrides) {
|
||||
if (override.permissions) {
|
||||
const isValid = validate(override.permissions);
|
||||
if (!isValid) return validate.errors;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// No errors, return null
|
||||
return null;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue