This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

core / web / src / lib / api / count.ts
1.9 kB 57 lines
1import type { BobbinContext, XrpcRequestInit } from "./client"; 2import { jsonGet } from "./_request"; 3 4// count endpoints share { subject } params and { count, distinctAuthors } output. 5export type CountName = 6 | "sh.tangled.feed.countStars" 7 | "sh.tangled.feed.countStarsBy" 8 | "sh.tangled.feed.countComments" 9 | "sh.tangled.feed.countCommentsBy" 10 | "sh.tangled.feed.countReactions" 11 | "sh.tangled.feed.countReactionsBy" 12 | "sh.tangled.graph.countFollows" 13 | "sh.tangled.graph.countFollowsBy" 14 | "sh.tangled.graph.countVouches" 15 | "sh.tangled.graph.countVouchesBy" 16 | "sh.tangled.git.countRefUpdates" 17 | "sh.tangled.git.countRefUpdatesBy" 18 | "sh.tangled.knot.countKnots" 19 | "sh.tangled.knot.countMembers" 20 | "sh.tangled.knot.countMembersBy" 21 | "sh.tangled.label.countDefinitions" 22 | "sh.tangled.label.countOps" 23 | "sh.tangled.label.countOpsBy" 24 | "sh.tangled.pipeline.countPipelines" 25 | "sh.tangled.pipeline.countPipelinesBy" 26 | "sh.tangled.pipeline.countStatuses" 27 | "sh.tangled.pipeline.countStatusesBy" 28 | "sh.tangled.publicKey.countKeys" 29 | "sh.tangled.repo.countArtifacts" 30 | "sh.tangled.repo.countArtifactsBy" 31 | "sh.tangled.repo.countCollaborators" 32 | "sh.tangled.repo.countCollaboratorsBy" 33 | "sh.tangled.repo.countIssues" 34 | "sh.tangled.repo.countIssuesBy" 35 | "sh.tangled.repo.countPulls" 36 | "sh.tangled.repo.countPullsBy" 37 | "sh.tangled.repo.countRepos" 38 | "sh.tangled.repo.issue.countStates" 39 | "sh.tangled.repo.issue.countStatesBy" 40 | "sh.tangled.repo.pull.countStatuses" 41 | "sh.tangled.repo.pull.countStatusesBy" 42 | "sh.tangled.spindle.countSpindles" 43 | "sh.tangled.spindle.countMembers" 44 | "sh.tangled.spindle.countMembersBy" 45 | "sh.tangled.string.countStrings"; 46 47export interface CountResult { 48 count: number; 49 distinctAuthors: number; 50} 51 52export const count = ( 53 ctx: BobbinContext, 54 name: CountName, 55 subject: string, 56 init?: XrpcRequestInit 57): Promise<CountResult> => jsonGet<CountResult>(ctx, name, { subject }, init);