From d79d32e52a7f14b2e93cc518599a9ad09463f690 Mon Sep 17 00:00:00 2001 From: Daniel Masterson Date: Mon, 30 Sep 2024 15:50:21 +0100 Subject: [PATCH 1/3] Update RSS feed to accomodate theme changes --- src/app/feed.xml/route.ts | 58 +++++++++++++++++++++------------------ 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/src/app/feed.xml/route.ts b/src/app/feed.xml/route.ts index 99d97d0..e401cb7 100644 --- a/src/app/feed.xml/route.ts +++ b/src/app/feed.xml/route.ts @@ -79,32 +79,38 @@ function formatReleaseNote(releaseNote: ReleaseNote) { content += `

${releaseNote.extra.replace(/(\n)/g, "
")}

`; } - if (releaseNote.breakingChanges) { - content += `

⚠️ Breaking changes

`; - content += ``; - } - - if (releaseNote.features) { - content += `

⭐ Features

`; - content += ``; - } - - if (releaseNote.fixes) { - content += `

✓ Fixes

`; - content += ``; - } + content += addReleaseNoteSection("⚠️ Breaking changes", releaseNote.breakingChanges); + content += addReleaseNoteSection("✓ Fixes", releaseNote.fixes?.map(fixToReleaseNote)); + content += addReleaseNoteSection("🖌 Theme Changes", releaseNote.themeChanges) + content += addReleaseNoteSection("⭐ Features", releaseNote.features); return content; } + +function addReleaseNoteSection(title: string, items?: string[]): string { + if (!items) { + return ""; + } + + let content = `

${title}

`; + content += ``; + return content; +} + +function fixToReleaseNote(fix?: Exclude[number]) { + if (!fix || !fix.description || fix.description.length === 0) { + return ""; + } + + let note = fix.description; + if (fix.issue) { + note += ` (#${fix.issue})`; + } + return note; +} From 1eb7009167556246bed4c05b658f4713ae3ccb4d Mon Sep 17 00:00:00 2001 From: Daniel Masterson Date: Mon, 30 Sep 2024 16:04:28 +0100 Subject: [PATCH 2/3] Add release image to RSS feed. --- src/app/feed.xml/route.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/app/feed.xml/route.ts b/src/app/feed.xml/route.ts index e401cb7..39d87ce 100644 --- a/src/app/feed.xml/route.ts +++ b/src/app/feed.xml/route.ts @@ -72,8 +72,17 @@ function formatRssDate(dateStr: string) { * @returns The formatted release note as a HTML string. */ function formatReleaseNote(releaseNote: ReleaseNote) { - let content = - '

If you encounter any issues, please report them on the issues page. Thanks everyone for your feedback! ❤️

'; + let content = `

+ If you encounter any issues, please report them on the issues page. + Thanks everyone for your feedback! ❤️ +

`; + + if (releaseNote.image) { + content += `Release Image for version ${releaseNote.version}`; + } if (releaseNote.extra) { content += `

${releaseNote.extra.replace(/(\n)/g, "
")}

`; @@ -110,7 +119,7 @@ function fixToReleaseNote(fix?: Exclude[number] let note = fix.description; if (fix.issue) { - note += ` (#${fix.issue})`; + note += ` (#${fix.issue})`; } return note; } From 966d4254499e0b7813edb4bfa927c706ad54ad5d Mon Sep 17 00:00:00 2001 From: Daniel Masterson Date: Mon, 30 Sep 2024 16:06:03 +0100 Subject: [PATCH 3/3] Limit release notes image width in RSS feed. --- src/app/feed.xml/route.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/feed.xml/route.ts b/src/app/feed.xml/route.ts index 39d87ce..a0c9fc6 100644 --- a/src/app/feed.xml/route.ts +++ b/src/app/feed.xml/route.ts @@ -80,7 +80,7 @@ function formatReleaseNote(releaseNote: ReleaseNote) { if (releaseNote.image) { content += `Release Image for version ${releaseNote.version}`; }