MCPcopy
hub / github.com/di-sukharev/opencommit / beginRefresh

Function beginRefresh

out/cli.cjs:76977–76999  ·  view source on GitHub ↗
(getAccessToken, retryIntervalInMs, refreshTimeout)

Source from the content-addressed store, hash-verified

76975var DEFAULT_CYCLER_OPTIONS = {
76976 forcedRefreshWindowInMs: 1e3,
76977 // Force waiting for a refresh 1s before the token expires
76978 retryIntervalInMs: 3e3,
76979 // Allow refresh attempts every 3s
76980 refreshWindowInMs: 1e3 * 60 * 2
76981 // Start refreshing 2m before expiry
76982};
76983async function beginRefresh(getAccessToken, retryIntervalInMs, refreshTimeout) {
76984 async function tryGetAccessToken() {
76985 if (Date.now() < refreshTimeout) {
76986 try {
76987 return await getAccessToken();
76988 } catch (_a5) {
76989 return null;
76990 }
76991 } else {
76992 const finalToken = await getAccessToken();
76993 if (finalToken === null) {
76994 throw new Error("Failed to refresh access token.");
76995 }
76996 return finalToken;
76997 }
76998 }
76999 let token = await tryGetAccessToken();
77000 while (token === null) {
77001 await delay2(retryIntervalInMs);
77002 token = await tryGetAccessToken();

Callers 1

refreshFunction · 0.85

Calls 2

tryGetAccessTokenFunction · 0.85
delay2Function · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…