From 24a792404cac0dffff91853af33310fbb7a30297 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 20 Apr 2021 16:02:15 +0200 Subject: Support async onSettingsChange --- server/lib/plugins/plugin-manager.ts | 4 ++-- server/lib/plugins/register-helpers.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'server/lib') diff --git a/server/lib/plugins/plugin-manager.ts b/server/lib/plugins/plugin-manager.ts index 03ea48416..f3766ffa8 100644 --- a/server/lib/plugins/plugin-manager.ts +++ b/server/lib/plugins/plugin-manager.ts @@ -189,7 +189,7 @@ export class PluginManager implements ServerHook { return undefined } - onSettingsChanged (name: string, settings: any) { + async onSettingsChanged (name: string, settings: any) { const registered = this.getRegisteredPluginByShortName(name) if (!registered) { logger.error('Cannot find plugin %s to call on settings changed.', name) @@ -197,7 +197,7 @@ export class PluginManager implements ServerHook { for (const cb of registered.registerHelpers.getOnSettingsChangedCallbacks()) { try { - cb(settings) + await cb(settings) } catch (err) { logger.error('Cannot run on settings changed callback for %s.', registered.npmName, { err }) } diff --git a/server/lib/plugins/register-helpers.ts b/server/lib/plugins/register-helpers.ts index c018e54a8..aa69ca2a2 100644 --- a/server/lib/plugins/register-helpers.ts +++ b/server/lib/plugins/register-helpers.ts @@ -73,7 +73,7 @@ export class RegisterHelpers { private idAndPassAuths: RegisterServerAuthPassOptions[] = [] private externalAuths: RegisterServerAuthExternalOptions[] = [] - private readonly onSettingsChangeCallbacks: ((settings: any) => void)[] = [] + private readonly onSettingsChangeCallbacks: ((settings: any) => Promise)[] = [] private readonly router: express.Router @@ -277,7 +277,7 @@ export class RegisterHelpers { setSetting: (name: string, value: string) => PluginModel.setSetting(this.plugin.name, this.plugin.type, name, value), - onSettingsChange: (cb: (settings: any) => void) => this.onSettingsChangeCallbacks.push(cb) + onSettingsChange: (cb: (settings: any) => Promise) => this.onSettingsChangeCallbacks.push(cb) } } -- cgit v1.2.3