@ravshansbox/pi-quota 0.10.5 → 0.10.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.ts +7 -2
  2. package/package.json +1 -1
package/index.ts CHANGED
@@ -17,6 +17,7 @@ interface QuotaState {
17
17
  fiveHourReset: Date | null;
18
18
  sevenDayUsed: number | null;
19
19
  sevenDayReset: Date | null;
20
+ sevenDayExhausted: boolean;
20
21
  resetsAvailable: number;
21
22
  resetSoonestExpiry: Date | null;
22
23
  lastUpdated: Date;
@@ -132,6 +133,7 @@ function parseAnthropicHeaders(headers: Record<string, string>): QuotaState | nu
132
133
  fiveHourReset: fiveHour.reset,
133
134
  sevenDayUsed: sevenDay.used,
134
135
  sevenDayReset: sevenDay.reset,
136
+ sevenDayExhausted: false,
135
137
  resetsAvailable: 0,
136
138
  resetSoonestExpiry: null,
137
139
  lastUpdated: new Date(),
@@ -325,6 +327,7 @@ export default function (pi: ExtensionAPI) {
325
327
  existing.fiveHourReset = parsed.fiveHourReset;
326
328
  existing.sevenDayUsed = parsed.sevenDayUsed;
327
329
  existing.sevenDayReset = parsed.sevenDayReset;
330
+ existing.sevenDayExhausted = parsed.sevenDayExhausted;
328
331
  existing.resetsAvailable = parsed.resetsAvailable;
329
332
  existing.resetSoonestExpiry = parsed.resetSoonestExpiry;
330
333
  existing.lastUpdated = parsed.lastUpdated;
@@ -512,6 +515,7 @@ export default function (pi: ExtensionAPI) {
512
515
  fiveHourReset: fiveHour?.resets_at ? new Date(fiveHour.resets_at) : null,
513
516
  sevenDayUsed: sevenDay ? clampPercent(sevenDay.utilization ?? 0) : null,
514
517
  sevenDayReset: sevenDay?.resets_at ? new Date(sevenDay.resets_at) : null,
518
+ sevenDayExhausted: false,
515
519
  resetsAvailable: 0,
516
520
  resetSoonestExpiry: null,
517
521
  lastUpdated: new Date(),
@@ -555,6 +559,7 @@ export default function (pi: ExtensionAPI) {
555
559
  fiveHourReset: fiveHour?.reset_at ? new Date(fiveHour.reset_at * 1000) : null,
556
560
  sevenDayUsed: sevenDay ? clampPercent(sevenDay.used_percent ?? 0) : null,
557
561
  sevenDayReset: sevenDay?.reset_at ? new Date(sevenDay.reset_at * 1000) : null,
562
+ sevenDayExhausted: (sevenDay?.used_percent ?? 0) >= 100,
558
563
  resetsAvailable: resetCount,
559
564
  resetSoonestExpiry:
560
565
  resetCount > 0 ? await fetchCodexSoonestResetExpiry(openaiAuth.access) : null,
@@ -577,11 +582,11 @@ export default function (pi: ExtensionAPI) {
577
582
  const codexState = states.find((s) => s.provider === 'openai-codex');
578
583
  if (!codexState) return;
579
584
 
580
- if (codexState.sevenDayUsed !== null && codexState.sevenDayUsed < 100) {
585
+ if (codexState.sevenDayUsed !== null && !codexState.sevenDayExhausted) {
581
586
  codexRedeemAttempted = false;
582
587
  }
583
588
 
584
- if (codexState.sevenDayUsed !== 100) return;
589
+ if (!codexState.sevenDayExhausted) return;
585
590
  if (codexState.resetsAvailable === 0) return;
586
591
  if (codexRedeemAttempted) return;
587
592
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ravshansbox/pi-quota",
3
- "version": "0.10.5",
3
+ "version": "0.10.6",
4
4
  "description": "Anthropic and OpenAI Codex quota status extension for pi",
5
5
  "license": "MIT",
6
6
  "type": "module",