Something went wrong. Try again.
Monorepo for Tangled tangled.org
Something went wrong. Try again.
123456789101112131415161718192021222324252627import { browser } from "$app/environment";import type { PipelineSummary } from "$lib/components/repo/types";
export type CommitStatuses = Record<string, PipelineSummary>;
const never = new Promise<CommitStatuses>(() => {});
export const commitStatuses = ( spindle: string | undefined, ownerHandle: string, repoName: string, shas: string[]): Promise<CommitStatuses> | undefined => { // only repos with a spindle run CI if (!spindle || shas.length === 0) return undefined; if (!browser) return never;
const params = new URLSearchParams(); for (const sha of new Set(shas)) params.append("sha", sha); const path = `/${encodeURIComponent(ownerHandle)}/${encodeURIComponent(repoName)}/commit-statuses?${params}`; return ( fetch(path) .then((res) => (res.ok ? (res.json() as Promise<CommitStatuses>) : ({} as CommitStatuses))) .catch(() => ({})) );};