UNPKG

rsshub

Version:
54 lines (53 loc) 2.16 kB
import { t as parseDate } from "./parse-date-Cr0wQjV_.mjs"; import { t as cache_default } from "./cache-BkqOokyU.mjs"; import { t as got_default } from "./got-BTowW50G.mjs"; import { Fragment, jsx, jsxs } from "hono/jsx/jsx-runtime"; import { load } from "cheerio"; import { renderToString } from "hono/jsx/dom/server"; import { raw } from "hono/html"; //#region lib/routes/chaincatcher/home.tsx const rootUrl = "https://www.chaincatcher.com"; const route = { path: "/", categories: ["new-media"], example: "/chaincatcher", radar: [{ source: ["chaincatcher.com/"], target: "" }], name: "首页", maintainers: ["TonyRL"], handler, url: "chaincatcher.com/" }; async function handler() { const { data } = await got_default.post(`${rootUrl}/api/article/lists`, { form: { page: 1, home: 1 } }); const list = data.data.map((item) => ({ title: item.title, description: item.description, link: `${rootUrl}/article/${item.id}`, pubDate: parseDate(item.add_time, "X"), categoryId: item.categoryid, category: [...item.keywords.split(","), item.category_name] })); const items = await Promise.all(list.map((item) => cache_default.tryGet(item.link, async () => { if (item.categoryId !== 3) { const { data: response } = await got_default(item.link); const $ = load(response); item.description = renderToString(/* @__PURE__ */ jsxs(Fragment, { children: [item.description ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("blockquote", { children: item.description }), /* @__PURE__ */ jsx("br", {})] }) : null, $(".article-container").html() ? raw($(".article-container").html()) : null] })); } return item; }))); return { title: "链捕手ChainCatcher — 专业的区块链技术研究与资讯平台-Chain Catcher", description: "链捕手ChainCatcher为区块链技术爱好者与项目决策者提供NFT、Web3社交、DID、Layer2等专业的资讯与研究内容,Chain Catcher输出对Scroll、Sui、Aptos、ENS等项目的思考,拓宽读者对区块链与数字经济认知的边界。", image: `${rootUrl}/logo.png`, link: rootUrl, item: items }; } //#endregion export { route };