(response: Response)
| 1052 | // don't care about. Strip the field before delegation, after extracting the |
| 1053 | // optional display label when the token endpoint returned OIDC account claims. |
| 1054 | const stripIdToken = async (response: Response): Promise<StrippedTokenResponse> => { |
| 1055 | const body = await safeJsonFromResponse(response); |
| 1056 | if (!body || typeof body !== "object" || !("id_token" in (body as Record<string, unknown>))) { |
| 1057 | return { response }; |
| 1058 | } |
| 1059 | const { id_token: idToken, ...rest } = body as Record<string, unknown>; |
| 1060 | const label = typeof idToken === "string" ? idTokenIdentityLabel(idToken) : undefined; |
| 1061 | return { |
| 1062 | response: new Response(JSON.stringify(rest), { |
| 1063 | status: response.status, |
| 1064 | statusText: response.statusText, |
| 1065 | headers: response.headers, |
| 1066 | }), |
| 1067 | ...(label ? { idTokenIdentityLabel: label } : {}), |
| 1068 | }; |
| 1069 | }; |
| 1070 | |
| 1071 | const processTokenEndpointResponse = async ( |
| 1072 | as: oauth.AuthorizationServer, |
no test coverage detected