mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-19 21:32:20 +03:00
Validado em lote numa worktree combinada com os 9 PRs desta leva sobre o tip de `release/v3.8.51`: `typecheck:core` limpo, `check:provider-consistency` OK (273 entradas REGISTRY, **356** providers canônicos), `check-docs-counts-sync` exit 0 e **300/300** nos testes que a leva toca. O crescimento de arquivo que os PRs empilham uns sobre os outros foi rebaselinado num único registro datado (`_rebaseline_2026_09_03_houminxi_batch`), com a decomposição por arquivo: `providers/page.tsx` +18 (import CSV do #12504 + busca do #12495 no mesmo painel), `accountFallback.ts` +6 (o #12566 sobre o rebaseline que o #12590 já registrou — os dois tocam `checkFallbackError`) e `chatCore.ts` +3 (invalidez de cache de quota no 429 do #12325). As violações restantes (`codex.ts`, `stream.ts`) foram medidas também no tip puro e são drift da base, não desta leva.
24 lines
816 B
TypeScript
24 lines
816 B
TypeScript
import { USAGE_SUPPORTED_PROVIDERS } from "@/shared/constants/providers";
|
|
import { isMoonshotOpenPlatformConnection } from "@omniroute/open-sse/services/usage/moonshotOpenPlatform.ts";
|
|
|
|
export interface ProviderQuotaVisibilityConnection {
|
|
quotaVisible?: boolean;
|
|
provider?: string;
|
|
providerSpecificData?: unknown;
|
|
}
|
|
|
|
export function isProviderQuotaVisible(connection: ProviderQuotaVisibilityConnection): boolean {
|
|
return connection.quotaVisible !== false;
|
|
}
|
|
|
|
export function supportsProviderQuota(
|
|
providerId: string,
|
|
connection?: { provider?: string; providerSpecificData?: unknown },
|
|
): boolean {
|
|
if (USAGE_SUPPORTED_PROVIDERS.includes(providerId)) return true;
|
|
return isMoonshotOpenPlatformConnection({
|
|
provider: providerId,
|
|
providerSpecificData: connection?.providerSpecificData,
|
|
});
|
|
}
|