Validate override criteria and extra criteria. When loading existing configs, silently remove invalid overrides.

This commit is contained in:
Dragory 2021-05-23 18:10:23 +03:00
parent 8ab6538744
commit 52e4b5b519
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
4 changed files with 62 additions and 5 deletions

View file

@ -37,7 +37,7 @@ export async function validateGuildConfig(config: any): Promise<string | null> {
const plugin = pluginNameToPlugin.get(pluginName)!;
try {
const mergedOptions = configUtils.mergeConfig(plugin.defaultOptions || {}, pluginOptions);
await plugin.configPreprocessor?.((mergedOptions as unknown) as PluginOptions<any>);
await plugin.configPreprocessor?.((mergedOptions as unknown) as PluginOptions<any>, true);
} catch (err) {
if (err instanceof ConfigValidationError || err instanceof StrictValidationError) {
return `${pluginName}: ${err.message}`;