dsh-subscriptions 0.1.2 → 0.1.4
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.
- package/README.md +92 -10
- package/lib/auth/rpc.d.ts +3 -1
- package/lib/auth/rpc.js +10 -1
- package/lib/client/ExternalUsageCards.d.ts +11 -1
- package/lib/client/ExternalUsageCards.js +18 -3
- package/lib/client/ProviderAccountManager.js +34 -41
- package/lib/client/ProviderModelEditor.js +5 -9
- package/lib/client/SpeedSelect.js +8 -7
- package/lib/client/SubscriptionUsageBadge.d.ts +19 -2
- package/lib/client/SubscriptionUsageBadge.js +65 -9
- package/lib/client/SubscriptionsSection.d.ts +22 -0
- package/lib/client/SubscriptionsSection.js +128 -38
- package/lib/client/UsageBadgeDisplaySetting.js +6 -10
- package/lib/client/UsageMeter.js +11 -6
- package/lib/client/host-contract.d.ts +1 -1
- package/lib/client/host-contract.js +22 -0
- package/lib/client/locales.d.ts +60 -0
- package/lib/client/locales.js +62 -2
- package/lib/client/provider-settings-styles.d.ts +3 -0
- package/lib/client/provider-settings-styles.js +206 -0
- package/lib/client/reset-action.d.ts +14 -0
- package/lib/client/reset-action.js +15 -0
- package/lib/client/reset-credits-view.d.ts +53 -0
- package/lib/client/reset-credits-view.js +103 -0
- package/lib/client/usage-badge-preferences.d.ts +7 -2
- package/lib/client/usage-badge-preferences.js +3 -2
- package/lib/client/usage-pace.d.ts +14 -1
- package/lib/client/usage-pace.js +14 -1
- package/lib/client.js +1036 -334
- package/lib/client.js.map +1 -1
- package/lib/index.d.ts +9 -0
- package/lib/index.js +1120 -602
- package/lib/providers/account-preferences.js +3 -2
- package/lib/providers/catalog-store.d.ts +3 -2
- package/lib/providers/catalog-store.js +57 -26
- package/lib/providers/claude.d.ts +22 -3
- package/lib/providers/claude.js +113 -15
- package/lib/providers/codex.d.ts +15 -2
- package/lib/providers/codex.js +72 -4
- package/lib/providers/common.d.ts +25 -0
- package/lib/providers/common.js +22 -18
- package/lib/providers/copilot.d.ts +2 -1
- package/lib/providers/copilot.js +10 -3
- package/lib/providers/grok.d.ts +2 -2
- package/lib/providers/grok.js +2 -2
- package/lib/providers/minimax-usage.d.ts +22 -1
- package/lib/providers/minimax-usage.js +37 -7
- package/lib/providers/pool-health.d.ts +2 -0
- package/lib/providers/pool-health.js +9 -0
- package/lib/providers/pool-usage.d.ts +13 -1
- package/lib/providers/pool-usage.js +39 -7
- package/lib/providers/pool.d.ts +7 -5
- package/lib/providers/pool.js +89 -12
- package/lib/providers/rate-limit.d.ts +0 -14
- package/lib/providers/rate-limit.js +0 -26
- package/lib/providers/replay.d.ts +4 -0
- package/lib/providers/replay.js +50 -0
- package/lib/providers/reset-redemption.d.ts +51 -0
- package/lib/providers/reset-redemption.js +102 -0
- package/lib/translate/anthropic.d.ts +21 -2
- package/lib/translate/anthropic.js +35 -11
- package/lib/translate/antigravity.js +13 -6
- package/lib/translate/chat-completions.js +1 -1
- package/lib/translate/resolved.d.ts +21 -0
- package/lib/translate/resolved.js +63 -3
- package/lib/translate/responses.js +8 -6
- package/lib/translate/sse.js +8 -0
- package/package.json +1 -1
package/lib/client/usage-pace.js
CHANGED
|
@@ -23,13 +23,26 @@ export function resetCountdownParts(ms) {
|
|
|
23
23
|
];
|
|
24
24
|
return parts.filter(part => part.count > 0).slice(0, 2);
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Whether the reported percentage still describes the window now. Only a fresh
|
|
28
|
+
* reading may be compared with the current time (pace warnings); an old one
|
|
29
|
+
* keeps its absolute color. This does not decide whether the time cursor is
|
|
30
|
+
* drawn: where the window stands in time never depends on the reading.
|
|
31
|
+
*/
|
|
26
32
|
export function isUsageFresh(window, observation, now = Date.now()) {
|
|
27
33
|
return validUsage(window.usedPercent) && observation.stale !== true
|
|
28
34
|
&& observation.observedAt !== undefined && Number.isFinite(observation.observedAt)
|
|
29
35
|
&& observation.observedAt <= now && now - observation.observedAt <= USAGE_FRESHNESS_MS
|
|
30
36
|
&& (window.resetsAt === undefined || Number.isFinite(window.resetsAt) && window.resetsAt > now);
|
|
31
37
|
}
|
|
32
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* How far through its window the clock is, from the window's own timing alone.
|
|
40
|
+
* It ignores the percentage and how recently it was read, so an unused,
|
|
41
|
+
* stale, aged or unobserved reading keeps its cursor whenever the timing
|
|
42
|
+
* places it. Returns undefined when the timing cannot: only an explicit
|
|
43
|
+
* interval or a provider-verified fixed duration supports linear pace, and no
|
|
44
|
+
* start is invented from a window's kind or label.
|
|
45
|
+
*/
|
|
33
46
|
export function elapsedPercent(window, now = Date.now()) {
|
|
34
47
|
const end = window.resetsAt;
|
|
35
48
|
if (end === undefined || !Number.isFinite(end) || end <= now)
|