MCPcopy Create free account
hub / github.com/dailydotdev/apps / useRefreshToken

Function useRefreshToken

packages/shared/src/hooks/useRefreshToken.ts:6–25  ·  view source on GitHub ↗
(
  accessToken: AccessToken | undefined,
  refresh: () => Promise<unknown>,
)

Source from the content-addressed store, hash-verified

4import useDebounceFn from './useDebounceFn';
5
6export function useRefreshToken(
7 accessToken: AccessToken | undefined,
8 refresh: () => Promise<unknown>,
9): void {
10 const difference = differenceInMilliseconds(
11 accessToken?.expiresIn ? new Date(accessToken.expiresIn) : new Date(),
12 new Date(),
13 );
14 const differencePlusTwoMinutes = difference - 1000 * 60 * 2;
15 const saveDelay =
16 differencePlusTwoMinutes <= 200 ? 200 : differencePlusTwoMinutes;
17
18 const [callRefresh] = useDebounceFn(refresh, saveDelay, 1000 * 60);
19
20 useEffect(() => {
21 if (accessToken?.token) {
22 callRefresh();
23 }
24 }, [accessToken?.token, callRefresh]);
25}

Callers 2

BootDataProviderFunction · 0.90
AppFunction · 0.90

Calls 1

useDebounceFnFunction · 0.85

Tested by

no test coverage detected