From b579396c9284add3bc7cfacbe529caf6a77e9dfa Mon Sep 17 00:00:00 2001 From: Darrel O'Pry Date: Sat, 28 Sep 2024 11:28:16 -0400 Subject: [PATCH] fix: return signout response from signoutCallback --- docs/oidc-client-ts.api.md | 2 +- src/UserManager.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/oidc-client-ts.api.md b/docs/oidc-client-ts.api.md index 29833fd28..a2ae559f6 100644 --- a/docs/oidc-client-ts.api.md +++ b/docs/oidc-client-ts.api.md @@ -967,7 +967,7 @@ export class UserManager { // (undocumented) protected _signout(args: CreateSignoutRequestArgs, handle: IWindow): Promise; // (undocumented) - signoutCallback(url?: string, keepOpen?: boolean): Promise; + signoutCallback(url?: string, keepOpen?: boolean): Promise; // (undocumented) protected _signoutEnd(url: string): Promise; signoutPopup(args?: SignoutPopupArgs): Promise; diff --git a/src/UserManager.ts b/src/UserManager.ts index bb53ec896..d61ef7e83 100644 --- a/src/UserManager.ts +++ b/src/UserManager.ts @@ -332,16 +332,15 @@ export class UserManager { } } - public async signoutCallback(url = window.location.href, keepOpen = false): Promise { + public async signoutCallback(url = window.location.href, keepOpen = false): Promise { const { state } = await this._client.readSignoutResponseState(url); if (!state) { - return; + return undefined; } switch (state.request_type) { case "so:r": - await this.signoutRedirectCallback(url); - break; + return await this.signoutRedirectCallback(url); case "so:p": await this.signoutPopupCallback(url, keepOpen); break; @@ -351,6 +350,7 @@ export class UserManager { default: throw new Error("invalid response_type in state"); } + return undefined; } /**