summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/core/src/credentials/claude.ts11
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/core/src/credentials/claude.ts b/packages/core/src/credentials/claude.ts
index cc6daec..e4cc1f9 100644
--- a/packages/core/src/credentials/claude.ts
+++ b/packages/core/src/credentials/claude.ts
@@ -462,8 +462,15 @@ async function fetchClaudeUsage(accessToken: string): Promise<ClaudeUsageReport
}
}
+const usageCacheMap = new Map<string, ClaudeUsageReport>();
+
export async function getAccountUsage(account: ClaudeAccount): Promise<ClaudeUsageReport | null> {
const creds = await refreshAccountCredentialsAsync(account);
- if (!creds) return null;
- return fetchClaudeUsage(creds.accessToken);
+ if (!creds) return usageCacheMap.get(account.id) ?? null;
+ const report = await fetchClaudeUsage(creds.accessToken);
+ if (report) {
+ usageCacheMap.set(account.id, report);
+ return report;
+ }
+ return usageCacheMap.get(account.id) ?? null;
} \ No newline at end of file