summaryrefslogtreecommitdiff
path: root/packages/astro-rss/src
diff options
context:
space:
mode:
authorGravatar Bjorn Lu <bjornlu.dev@gmail.com> 2023-08-23 21:09:11 +0800
committerGravatar GitHub <noreply@github.com> 2023-08-23 21:09:11 +0800
commitcb95aa5f8e0b04eba1a56e3e4a7901d40f1c854b (patch)
tree1358ee728c7cafcf77c449e0acd10b333bc2dc37 /packages/astro-rss/src
parent353dcb23e8035c0fa93f4a1ae83195e371e757f1 (diff)
downloadastro-cb95aa5f8e0b04eba1a56e3e4a7901d40f1c854b.tar.gz
astro-cb95aa5f8e0b04eba1a56e3e4a7901d40f1c854b.tar.zst
astro-cb95aa5f8e0b04eba1a56e3e4a7901d40f1c854b.zip
Update rss package to return a response (#8198)
Diffstat (limited to 'packages/astro-rss/src')
-rw-r--r--packages/astro-rss/src/index.ts16
1 files changed, 11 insertions, 5 deletions
diff --git a/packages/astro-rss/src/index.ts b/packages/astro-rss/src/index.ts
index 843edd146..a611afc16 100644
--- a/packages/astro-rss/src/index.ts
+++ b/packages/astro-rss/src/index.ts
@@ -98,12 +98,18 @@ const rssOptionsValidator = z.object({
trailingSlash: z.boolean().default(true),
});
-export default async function getRSS(rssOptions: RSSOptions) {
- const validatedRssOptions = await validateRssOptions(rssOptions);
+export default async function getRssResponse(rssOptions: RSSOptions): Promise<Response> {
+ const rssString = await getRssString(rssOptions);
+ return new Response(rssString, {
+ headers: {
+ 'Content-Type': 'application/xml',
+ },
+ });
+}
- return {
- body: await generateRSS(validatedRssOptions),
- };
+export async function getRssString(rssOptions: RSSOptions): Promise<string> {
+ const validatedRssOptions = await validateRssOptions(rssOptions);
+ return await generateRSS(validatedRssOptions);
}
async function validateRssOptions(rssOptions: RSSOptions) {