Files
paseo/packages/app/src/utils/provider-definitions.ts
T
Mohamed Boudra cda3d1d46c chore: apply oxlint fix-suggestions (unused imports + useless fragments)
Scoped to only `no-unused-vars` and `react/jsx-no-useless-fragment` —
the safe subset of --fix-suggestions. Primary changes:

- Remove unused named imports from statements
- Remove unused default/type imports entirely
- Collapse `<><Single/></>` fragments to `<Single/>`

Verified clean: typecheck + format + lint all green.
2026-04-23 21:55:25 +07:00

48 lines
1.5 KiB
TypeScript

import type { ProviderSnapshotEntry } from "@server/server/agent/agent-sdk-types";
import {
type AgentModeColorTier,
type AgentModeIcon,
type AgentProviderDefinition,
type AgentProviderModeDefinition,
} from "@server/server/agent/provider-manifest";
function buildProviderModes(entry: ProviderSnapshotEntry): AgentProviderModeDefinition[] {
const entryModes = entry.modes ?? [];
return entryModes.map((mode) => ({
...mode,
icon: (mode.icon ?? "ShieldCheck") as AgentModeIcon,
colorTier: (mode.colorTier ?? "moderate") as AgentModeColorTier,
}));
}
export function buildProviderDefinitions(
snapshotEntries: ProviderSnapshotEntry[] | undefined,
): AgentProviderDefinition[] {
if (!snapshotEntries?.length) {
return [];
}
return snapshotEntries.map((entry) => ({
id: entry.provider,
label: entry.label ?? entry.provider,
description: entry.description ?? "",
defaultModeId: entry.defaultModeId ?? null,
modes: buildProviderModes(entry),
}));
}
export function resolveProviderLabel(
provider: string,
snapshotEntries: ProviderSnapshotEntry[] | undefined,
): string {
return snapshotEntries?.find((entry) => entry.provider === provider)?.label ?? provider;
}
export function resolveProviderDefinition(
provider: string,
snapshotEntries: ProviderSnapshotEntry[] | undefined,
): AgentProviderDefinition | undefined {
return buildProviderDefinitions(snapshotEntries).find((definition) => definition.id === provider);
}