If no expiry date then refresh the token (#7805)
This commit is contained in:
@@ -210,7 +210,13 @@ export default class Office365CalendarService implements Calendar {
|
||||
}
|
||||
|
||||
private o365Auth = (credential: CredentialPayload) => {
|
||||
const isExpired = (expiryDate: number) => expiryDate < Math.round(+new Date() / 1000);
|
||||
const isExpired = (expiryDate: number) => {
|
||||
if (!expiryDate) {
|
||||
return true;
|
||||
} else {
|
||||
return expiryDate < Math.round(+new Date() / 1000);
|
||||
}
|
||||
};
|
||||
const o365AuthCredentials = credential.key as O365AuthCredentials;
|
||||
|
||||
const refreshAccessToken = async (refreshToken: string) => {
|
||||
@@ -240,7 +246,7 @@ export default class Office365CalendarService implements Calendar {
|
||||
|
||||
return {
|
||||
getToken: () =>
|
||||
!isExpired(o365AuthCredentials.expiry_date)
|
||||
!isExpired(o365AuthCredentials.expires_in)
|
||||
? Promise.resolve(o365AuthCredentials.access_token)
|
||||
: refreshAccessToken(o365AuthCredentials.refresh_token),
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
export type O365AuthCredentials = {
|
||||
expiry_date: number;
|
||||
access_token: string;
|
||||
refresh_token: string;
|
||||
expires_in: number;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user