rsshub
Version:
Make RSS Great Again!
44 lines (43 loc) • 1.38 kB
JavaScript
import { t as rofetch } from "./ofetch-W1aeTHCo.mjs";
import { t as config } from "./config-Bpyy15zS.mjs";
import { t as parseDate } from "./parse-date-CjhZE69i.mjs";
import { t as cache_default } from "./cache-CiDoUSLo.mjs";
import { escape } from "entities";
//#region lib/routes/patchwork.kernel.org/comments.ts
const route = {
path: "/comments/:id",
categories: ["programming"],
example: "/patchwork.kernel.org/comments/10723629",
parameters: { id: "Patch ID" },
name: "Patch Comments",
maintainers: ["ysc3839"],
handler
};
async function handler(ctx) {
const { id } = ctx.req.param();
const name = await cache_default.tryGet(`patchwork-kernel-org-patchname-from-id-${id}`, async () => {
return (await rofetch(`https://patchwork.kernel.org/api/patches/${id}/`, { headers: {
accept: "application/json",
"user-agent": config.trueUA
} })).name;
});
const data = await rofetch(`https://patchwork.kernel.org/api/patches/${id}/comments/`, {
query: { order: "-date" },
headers: {
accept: "application/json",
"user-agent": config.trueUA
}
});
return {
title: `${name} - Comments`,
link: `https://patchwork.kernel.org/patch/${id}/`,
item: data.map((item) => ({
title: item.subject,
description: escape(item.content).replaceAll("\n", "<br>"),
pubDate: parseDate(item.date),
link: item.web_url
}))
};
}
//#endregion
export { route };