Skip to content

Commit 0f7e102

Browse files
committed
fix: update switchOrganization and onOrganizationSwitch to return TokenResponse
1 parent 6e3e3d7 commit 0f7e102

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

packages/react/src/contexts/Asgardeo/AsgardeoProvider.tsx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import {
3131
Platform,
3232
extractUserClaimsFromIdToken,
3333
EmbeddedSignInFlowResponseV2,
34+
TokenResponse,
3435
} from '@asgardeo/browser';
3536
import {FC, RefObject, PropsWithChildren, ReactElement, useEffect, useMemo, useRef, useState, useCallback} from 'react';
3637
import AsgardeoContext from './AsgardeoContext';
@@ -459,15 +460,17 @@ const AsgardeoProvider: FC<PropsWithChildren<AsgardeoProviderProps>> = ({
459460
}
460461
};
461462

462-
const switchOrganization = async (organization: Organization): Promise<void> => {
463+
const switchOrganization = async (organization: Organization): Promise<TokenResponse | Response> => {
463464
try {
464465
setIsUpdatingSession(true);
465466
setIsLoadingSync(true);
466-
await asgardeo.switchOrganization(organization);
467+
const response: TokenResponse | Response = await asgardeo.switchOrganization(organization);
467468

468469
if (await asgardeo.isSignedIn()) {
469470
await updateSession();
470471
}
472+
473+
return response;
471474
} catch (error) {
472475
throw new AsgardeoRuntimeError(
473476
`Failed to switch organization: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,
@@ -519,7 +522,7 @@ const AsgardeoProvider: FC<PropsWithChildren<AsgardeoProviderProps>> = ({
519522
exchangeToken: asgardeo.exchangeToken.bind(asgardeo),
520523
syncSession,
521524
platform: config?.platform,
522-
switchOrganization
525+
switchOrganization,
523526
}),
524527
[
525528
applicationId,
@@ -538,7 +541,7 @@ const AsgardeoProvider: FC<PropsWithChildren<AsgardeoProviderProps>> = ({
538541
asgardeo,
539542
signInOptions,
540543
syncSession,
541-
switchOrganization
544+
switchOrganization,
542545
],
543546
);
544547

packages/react/src/contexts/Organization/OrganizationProvider.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import {
2121
Organization,
2222
AllOrganizationsApiResponse,
2323
CreateOrganizationPayload,
24+
TokenResponse,
2425
} from '@asgardeo/browser';
2526
import {FC, PropsWithChildren, ReactElement, useCallback, useMemo, useState} from 'react';
2627
import OrganizationContext, {OrganizationContextProps} from './OrganizationContext';
@@ -56,7 +57,7 @@ export interface OrganizationProviderProps {
5657
/**
5758
* Callback function called when switching organizations
5859
*/
59-
onOrganizationSwitch?: (organization: Organization) => Promise<void>;
60+
onOrganizationSwitch?: (organization: Organization) => Promise<TokenResponse | Response>;
6061
/**
6162
* Refetch the my organizations list.
6263
* @returns

0 commit comments

Comments
 (0)