| 1 | import type { ChangelogDict } from "../types"; |
| 2 | |
| 3 | /** |
| 4 | * English reference dictionary for `app/[locale]/changelog/page.tsx`. |
| 5 | * Version numbers, tags, dates, and release-note text are content from |
| 6 | * `lib/facts.generated.ts` and `lib/changelog.generated.ts`, never copy. |
| 7 | */ |
| 8 | export const changelog: ChangelogDict = { |
| 9 | metaTitle: "Changelog · Codewhale", |
| 10 | metaDescription: |
| 11 | "Codewhale release record: the latest published release, the unreleased source candidate, and the notes for each version, drawn from CHANGELOG.md in the repository.", |
| 12 | kicker: "Release record", |
| 13 | title: "What changed, and in which version.", |
| 14 | lead: |
| 15 | "Two facts sit at the top of this page: the newest published release, and the version the source tree currently declares. Everything below is the repository's own CHANGELOG.md, section by section.", |
| 16 | publishedLabel: "Latest published release", |
| 17 | publishedValue: "{tag} · published {date}", |
| 18 | candidateLabel: "Source candidate", |
| 19 | candidateValue: "{version} · unreleased", |
| 20 | candidateMatches: "{version} · matches the published release", |
| 21 | releasesLink: "GitHub Releases ↗", |
| 22 | unreleasedHeading: "Unreleased", |
| 23 | unreleasedNote: |
| 24 | "Changes merged to the main branch since the last tag. They are part of the source candidate, not of any published package.", |
| 25 | compareLink: "Compare on GitHub ↗", |
| 26 | releasePageLink: "Release page ↗", |
| 27 | moreEntries: "{shown} of {total} entries shown", |
| 28 | fullNotes: "Full notes in CHANGELOG.md ↗", |
| 29 | releaseNotesLink: "Full notes for {version} ↗", |
| 30 | emptyTitle: "No release notes were derived", |
| 31 | emptyBody: |
| 32 | "The build did not find a parsable CHANGELOG.md. The GitHub release list is still the record.", |
| 33 | }; |
| 34 |