diff --git a/packages/frontend/src/components/MkSystemWebhookEditor.impl.ts b/packages/frontend/src/components/MkSystemWebhookEditor.impl.ts index 76f54e8d37..69b8edd85a 100644 --- a/packages/frontend/src/components/MkSystemWebhookEditor.impl.ts +++ b/packages/frontend/src/components/MkSystemWebhookEditor.impl.ts @@ -24,22 +24,23 @@ export type MkSystemWebhookResult = { }; export async function showSystemWebhookEditorDialog(props: MkSystemWebhookEditorProps): Promise { - const { dispose, result } = await new Promise<{ dispose: () => void, result: MkSystemWebhookResult | null }>(async resolve => { - const { dispose: _dispose } = os.popup( + const { result } = await new Promise<{ result: MkSystemWebhookResult | null }>(async resolve => { + const { dispose } = os.popup( defineAsyncComponent(() => import('@/components/MkSystemWebhookEditor.vue')), props, { submitted: (ev: MkSystemWebhookResult) => { - resolve({ dispose: _dispose, result: ev }); + resolve({ result: ev }); + }, + canceled: () => { + resolve({ result: null }); }, closed: () => { - resolve({ dispose: _dispose, result: null }); + dispose(); }, }, ); }); - dispose(); - return result; } diff --git a/packages/frontend/src/components/MkSystemWebhookEditor.vue b/packages/frontend/src/components/MkSystemWebhookEditor.vue index 007d841f00..3e6a015018 100644 --- a/packages/frontend/src/components/MkSystemWebhookEditor.vue +++ b/packages/frontend/src/components/MkSystemWebhookEditor.vue @@ -5,6 +5,7 @@ SPDX-License-Identifier: AGPL-3.0-only