Something went wrong. Try again.
Monorepo for Tangled tangled.org
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445import type { BobbinContext, XrpcRequestInit } from "#lib/api/client.ts";import { jsonGet } from "#lib/api/_request.ts";import type { TicketState } from "#lib/api/records.ts";
// count endpoints share { subject } params and { count, distinctAuthors } output.export type CountName = | "org.tangled.feed.countStars" | "org.tangled.feed.countStarsBy" | "org.tangled.feed.countComments" | "org.tangled.feed.countCommentsBy" | "org.tangled.feed.countReactions" | "org.tangled.feed.countReactionsBy" | "org.tangled.graph.countFollows" | "org.tangled.graph.countFollowsBy" | "org.tangled.label.countDefinitions" | "org.tangled.publicKey.countKeys" | "org.tangled.repo.countArtifacts" | "org.tangled.repo.countArtifactsBy" | "org.tangled.repo.countCollaborators" | "org.tangled.repo.countCollaboratorsBy" | "org.tangled.repo.countForks" | "org.tangled.repo.countIssues" | "org.tangled.repo.countPulls" | "org.tangled.repo.countRepos" | "org.tangled.string.countStrings";
export interface CountResult { count: number; distinctAuthors: number;}
export interface CountFilter { author?: string; state?: TicketState; status?: TicketState;}
export const count = ( ctx: BobbinContext, name: CountName, subject: string, filter: CountFilter = {}, init?: XrpcRequestInit): Promise<CountResult> => jsonGet<CountResult>(ctx, name, { subject, ...filter }, init);