From c1b0feb1fd86859a35e1a7ca11c2b4aa9f727b28 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Sun, 26 Nov 2023 19:56:31 +0100 Subject: [PATCH] fix: update the ESI refresh-token with the latest after authentication (#26) --- src/EsiProvider/EsiAccessToken.tsx | 8 ++++---- src/EsiProvider/EsiProvider.tsx | 8 ++++++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/EsiProvider/EsiAccessToken.tsx b/src/EsiProvider/EsiAccessToken.tsx index 49c1f8f..67b13df 100644 --- a/src/EsiProvider/EsiAccessToken.tsx +++ b/src/EsiProvider/EsiAccessToken.tsx @@ -1,4 +1,4 @@ -export async function getAccessToken(refreshToken: string): Promise { +export async function getAccessToken(refreshToken: string): Promise<{ accessToken?: string, refreshToken?: string }> { let response; try { response = await fetch('https://esi.eveship.fit/', { @@ -8,13 +8,13 @@ export async function getAccessToken(refreshToken: string): Promise { return esiPrivate.accessTokens[characterId]; } - const accessToken = await getAccessToken(esiPrivate.refreshTokens[characterId]); - if (accessToken === undefined) { + const { accessToken, refreshToken } = await getAccessToken(esiPrivate.refreshTokens[characterId]); + if (accessToken === undefined || refreshToken === undefined) { console.log('Failed to get access token'); return undefined; } @@ -117,6 +117,10 @@ export const EsiProvider = (props: EsiProps) => { setEsiPrivate((oldEsiPrivate: EsiPrivate) => { return { ...oldEsiPrivate, + refreshTokens: { + ...oldEsiPrivate.refreshTokens, + [characterId]: refreshToken, + }, accessToken: { ...oldEsiPrivate.accessTokens, [characterId]: accessToken,