diff --git a/src/client/github.ts b/src/client/github.ts index 6aac06f..8163945 100644 --- a/src/client/github.ts +++ b/src/client/github.ts @@ -51,6 +51,8 @@ export interface Metadata { issueStats: IssueStats pullRequestStats: IssueStats + + mentionableUsers: number } const host = 'api.github.com' @@ -137,6 +139,7 @@ function metadataByGraphql(owner: string, name: string): Metadata { }, totalReleases: repository.releases.totalCount, totalTags: repository.tags?.totalCount ?? 0, + mentionableUsers: repository.mentionableUsers.totalCount, } } diff --git a/src/handlers/handlers.ts b/src/handlers/handlers.ts index 103d676..94e565a 100644 --- a/src/handlers/handlers.ts +++ b/src/handlers/handlers.ts @@ -110,6 +110,7 @@ export function loadSection( totalReleases, issueStats, pullRequestStats, + mentionableUsers, } = github.metaByUrl(supportedUrl) const line = new thing.ThingBuilder() .setAvatar(repository.avatar) @@ -130,6 +131,7 @@ export function loadSection( .setTotalReleases(totalReleases) .setTotalIssues(issueStats.totalOpen, issueStats.totalClosed) .setTotalPullRequests(pullRequestStats.totalOpen, pullRequestStats.totalClosed) + .setMentionableUsers(mentionableUsers) .build() sheet.appendRow(line) diff --git a/src/handlers/thing.ts b/src/handlers/thing.ts index a40770a..b0e4a56 100644 --- a/src/handlers/thing.ts +++ b/src/handlers/thing.ts @@ -21,6 +21,7 @@ export class ThingBuilder { private totalClosedIssues?: number private totalOpenPullRequests?: number private totalClosedPullRequests?: number + private totalMentionableUsers?: number setAvatar(url: string): this { this.avatar = url @@ -120,6 +121,12 @@ export class ThingBuilder { return this } + setMentionableUsers(total: number): this { + this.totalMentionableUsers = total + + return this + } + private doBuild(): object { const s = '|' return { @@ -139,6 +146,7 @@ export class ThingBuilder { typeof this.totalClosedPullRequests === 'number' ? `${this.totalOpenPullRequests}${s}${this.totalClosedPullRequests}${s}${this.totalOpenPullRequests + this.totalClosedPullRequests}` : '', + mentionedUsers: this.totalMentionableUsers, lastTag: this.lastTag || '', totalTags: typeof this.totalTags === 'number' ? this.totalTags : '', lastRelease: this.lastRelease || '', diff --git a/src/queries/repository_meta.graphql b/src/queries/repository_meta.graphql index fc20c46..0850d04 100644 --- a/src/queries/repository_meta.graphql +++ b/src/queries/repository_meta.graphql @@ -74,5 +74,9 @@ query RepositoryMeta($owner: String!, $name: String!) { } } } + + mentionableUsers { + totalCount + } } }