UNPKG

rsshub

Version:
46 lines (44 loc) 2.28 kB
import "./dist-Bog6z_OM.mjs"; import "./config-MQ-7ebJ_.mjs"; import "./logger-C4avouvV.mjs"; import { t as ofetch_default } from "./ofetch-DKl_Ma9g.mjs"; import "./parse-date-r5WDWHno.mjs"; import "./is-worker-DESPicPc.mjs"; import "./cache-SV6W5EPy.mjs"; import { t as invalid_parameter_default } from "./invalid-parameter-ByDtry1B.mjs"; import { n as parseItem, r as parsePost, t as baseUrl } from "./utils-D_ggQaQc.mjs"; //#region lib/routes/tfc-taiwan/category.ts const handler = async (ctx) => { const { category } = ctx.req.param(); const limit = ctx.req.query("limit") ? Number.parseInt(ctx.req.query("limit"), 10) : void 0; const isNumericCategory = !Number.isNaN(Number.parseInt(category, 10)); const categoryResponse = await ofetch_default(`${baseUrl}/wp-json/wp/v2/categories${isNumericCategory ? `/${category}` : ""}`, { query: { slug: isNumericCategory ? void 0 : category } }); if (Array.isArray(categoryResponse) && !categoryResponse.length) throw new invalid_parameter_default(`Category "${category}" not found`); const categoryInfo = isNumericCategory ? categoryResponse : categoryResponse[0]; if (!categoryInfo.id) throw new invalid_parameter_default(`Category "${category}" not found`); const items = parseItem(await parsePost(limit, categoryInfo.id)); return { title: categoryInfo.yoast_head_json.title, description: categoryInfo.yoast_head_json.og_site_name, image: categoryInfo.yoast_head_json.og_image[0].url, logo: categoryInfo.yoast_head_json.og_image[0].url, icon: categoryInfo.yoast_head_json.og_image[0].url, link: categoryInfo.link, lang: "zh-TW", item: items }; }; const route = { name: "分類", maintainers: ["TonyRL"], example: "/tfc-taiwan/category/weekly-top-ten-rumors", path: "/category/:category", parameters: { category: "分類,見下表,預設為 `weekly-top-ten-rumors`" }, handler, url: "tfc-taiwan.org.tw/category/rumor-mill/", description: `| 謠言風向球 | 議題觀察室 | TOP10 | 名家專欄 | 國際視野 | | ---------- | ----------------- | --------------------- | -------------- | -------------------- | | rumor-mill | issue-observatory | weekly-top-ten-rumors | expert-columns | research-and-updates |` }; //#endregion export { route };