From 799f2ce1ba22c2aaf47fdd17dd8f25f7e6759ff7 Mon Sep 17 00:00:00 2001 From: thiva-k Date: Fri, 28 Nov 2025 01:46:37 +0530 Subject: [PATCH 1/2] Update code exchange --- .../contexts/Asgardeo/AsgardeoProvider.tsx | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/packages/react/src/contexts/Asgardeo/AsgardeoProvider.tsx b/packages/react/src/contexts/Asgardeo/AsgardeoProvider.tsx index 1e887c58..040bf646 100644 --- a/packages/react/src/contexts/Asgardeo/AsgardeoProvider.tsx +++ b/packages/react/src/contexts/Asgardeo/AsgardeoProvider.tsx @@ -156,14 +156,28 @@ const AsgardeoProvider: FC> = ({ const isV2Platform = config.platform === Platform.AsgardeoV2; - if (hasAuthParamsResult && !isV2Platform) { + if (hasAuthParamsResult) { try { - await signIn( - {callOnlyOnRedirect: true}, - // authParams?.authorizationCode, - // authParams?.sessionState, - // authParams?.state, - ); + if (isV2Platform) { + // For V2 platform, check if this is an embedded flow or traditional OAuth + const urlParams = currentUrl.searchParams; + const code = urlParams.get('code'); + const flowIdFromUrl = urlParams.get('flowId'); + const storedFlowId = sessionStorage.getItem('asgardeo_flow_id'); + + // If there's a code and no flowId, exchange OAuth code for tokens + if (code && !flowIdFromUrl && !storedFlowId) { + await signIn(); + } + } else { + // If non-V2 platform, use traditional OAuth callback handling + await signIn( + {callOnlyOnRedirect: true}, + // authParams?.authorizationCode, + // authParams?.sessionState, + // authParams?.state, + ); + } // setError(null); } catch (error) { if (error && Object.prototype.hasOwnProperty.call(error, 'code')) { From 932126a2fdac16c6a4cdfe43d9f25d84297f3f70 Mon Sep 17 00:00:00 2001 From: thiva-k Date: Fri, 28 Nov 2025 01:57:57 +0530 Subject: [PATCH 2/2] Add changeset --- .changeset/tough-ads-grow.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/tough-ads-grow.md diff --git a/.changeset/tough-ads-grow.md b/.changeset/tough-ads-grow.md new file mode 100644 index 00000000..f33ac5d5 --- /dev/null +++ b/.changeset/tough-ads-grow.md @@ -0,0 +1,5 @@ +--- +'@asgardeo/react': patch +--- + +Handle code exchange for V2