From 557e6ab312ca59d17bdc6769cbb4bdd756face53 Mon Sep 17 00:00:00 2001 From: roboloop <12248453+roboloop@users.noreply.github.com> Date: Mon, 26 May 2025 11:13:35 +0000 Subject: [PATCH] Show the date of the latest published release --- src/client/github.ts | 2 ++ src/handlers/handlers.ts | 1 + src/handlers/thing.ts | 8 ++++++++ src/queries/repository_meta.graphql | 1 + 4 files changed, 12 insertions(+) diff --git a/src/client/github.ts b/src/client/github.ts index 8163945..416292f 100644 --- a/src/client/github.ts +++ b/src/client/github.ts @@ -32,6 +32,7 @@ export interface Tag { export interface Release { name?: string + publishedAt?: string } interface IssueStats { @@ -133,6 +134,7 @@ function metadataByGraphql(owner: string, name: string): Metadata { }, lastRelease: { name: repository.latestRelease?.name ?? '', + publishedAt: repository.latestRelease?.publishedAt ?? '', }, lastTag: { version: repository.latestTag?.edges?.[0]?.node?.name, diff --git a/src/handlers/handlers.ts b/src/handlers/handlers.ts index 94e565a..21148a1 100644 --- a/src/handlers/handlers.ts +++ b/src/handlers/handlers.ts @@ -128,6 +128,7 @@ export function loadSection( .setLastTag(lastTag.version) .setTotalTags(totalTags) .setLastRelease(lastRelease.name) + .setLastReleaseAt(lastRelease.publishedAt) .setTotalReleases(totalReleases) .setTotalIssues(issueStats.totalOpen, issueStats.totalClosed) .setTotalPullRequests(pullRequestStats.totalOpen, pullRequestStats.totalClosed) diff --git a/src/handlers/thing.ts b/src/handlers/thing.ts index b0e4a56..6e3b566 100644 --- a/src/handlers/thing.ts +++ b/src/handlers/thing.ts @@ -16,6 +16,7 @@ export class ThingBuilder { private lastTag?: string private totalTags?: number private lastRelease?: string + private lastReleaseAt?: string private totalReleases?: number private totalOpenIssues?: number private totalClosedIssues?: number @@ -101,6 +102,12 @@ export class ThingBuilder { return this } + setLastReleaseAt(lastReleaseAt?: string): this { + this.lastReleaseAt = lastReleaseAt + + return this + } + setTotalReleases(totalReleases: number): this { this.totalReleases = totalReleases @@ -150,6 +157,7 @@ export class ThingBuilder { lastTag: this.lastTag || '', totalTags: typeof this.totalTags === 'number' ? this.totalTags : '', lastRelease: this.lastRelease || '', + lastReleaseAt: this.lastReleaseAt ? new Date(this.lastReleaseAt) : '', totalReleases: typeof this.totalReleases === 'number' ? this.totalReleases : '', lastCommitAt: this.lastCommittedAt ? new Date(this.lastCommittedAt) : '', createdAt: this.createdAt ? new Date(this.createdAt) : '', diff --git a/src/queries/repository_meta.graphql b/src/queries/repository_meta.graphql index 0850d04..197dadb 100644 --- a/src/queries/repository_meta.graphql +++ b/src/queries/repository_meta.graphql @@ -63,6 +63,7 @@ query RepositoryMeta($owner: String!, $name: String!) { } latestRelease { name + publishedAt } # Last commit on default branch