UNPKG

rsshub

Version:
52 lines (51 loc) 1.6 kB
import "./types-DNj6Etbg.mjs"; import { t as parseDate } from "./parse-date-CjhZE69i.mjs"; import { t as cache_default } from "./cache-CiDoUSLo.mjs"; import { t as utils_default } from "./utils--STQ8dFN.mjs"; //#region lib/routes/mi/crowdfunding.ts const route = { path: "/crowdfunding", categories: ["shopping"], example: "/mi/crowdfunding", name: "小米众筹", maintainers: ["DIYgod", "nuomi1"], handler, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportRadar: true, supportBT: false, supportPodcast: false, supportScihub: false }, radar: [{ source: ["m.mi.com/crowdfunding/home"], target: "/crowdfunding" }], view: 5 }; const getDataItems = (list) => Promise.all(list.map((listItem) => cache_default.tryGet(`mi:crowdfunding:dataitem:${listItem.project_id}`, async () => { const detail = await utils_default.getCrowdfundingItem(listItem); return getDataItem(listItem, detail); }))); const getDataItem = (listItem, detail) => ({ title: listItem.product_name, description: utils_default.renderCrowdfunding(listItem, detail), link: `https://m.mi.com/crowdfunding/proddetail/${listItem.project_id}`, image: listItem.img_url, pubDate: parseDate(detail.start_time, "X"), language: "zh-CN" }); async function handler() { const list = await utils_default.getCrowdfundingList(); return { title: "小米众筹", link: "https://m.mi.com/crowdfunding/home", item: await getDataItems(list), image: "https://m.mi.com/static/img/icons/apple-touch-icon-152x152.png", language: "zh-CN" }; } //#endregion export { route };