utils.ts 709 B

12345678910111213141516171819202122232425
  1. import type { Project, ProviderListResponse } from "@opencode-ai/sdk/v2/client"
  2. export const cmp = (a: string, b: string) => (a < b ? -1 : a > b ? 1 : 0)
  3. export function normalizeProviderList(input: ProviderListResponse): ProviderListResponse {
  4. return {
  5. ...input,
  6. all: input.all.map((provider) => ({
  7. ...provider,
  8. models: Object.fromEntries(Object.entries(provider.models).filter(([, info]) => info.status !== "deprecated")),
  9. })),
  10. }
  11. }
  12. export function sanitizeProject(project: Project) {
  13. if (!project.icon?.url && !project.icon?.override) return project
  14. return {
  15. ...project,
  16. icon: {
  17. ...project.icon,
  18. url: undefined,
  19. override: undefined,
  20. },
  21. }
  22. }