import type { PipelineSummary } from "$lib/components/repo/types"; export type CommitStatuses = Record; export const fetchCommitStatuses = async ( ownerHandle: string, repoName: string, shas: string[], signal?: AbortSignal ): Promise => { const params = new URLSearchParams(); for (const sha of new Set(shas)) params.append("sha", sha); const path = `/${encodeURIComponent(ownerHandle)}/${encodeURIComponent(repoName)}/commit-statuses?${params}`; const response = await fetch(path, { signal }); if (!response.ok) throw new Error(`commit statuses returned ${response.status}`); return response.json() as Promise; };