UNPKG

rsshub

Version:
48 lines (47 loc) 1.46 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/newproducts.ts const route = { path: "/newproducts", categories: ["shopping"], example: "/mi/newproducts", name: "小米上新", maintainers: ["nuomi1"], handler, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportRadar: false, supportBT: false, supportPodcast: false, supportScihub: false }, view: 5 }; const getDataItems = (list) => Promise.all(list.map((listItem) => cache_default.tryGet(`mi:product:dataitem:${listItem.product_id}`, async () => { const detail = await utils_default.getNewProductItem(listItem); return getDataItem(listItem, detail); }))); const getDataItem = (listItem, detail) => ({ title: listItem.product_name, description: utils_default.renderNewProduct(listItem, detail), link: `https://m.mi.com/commodity/detail/${listItem.product_id}`, image: listItem.img, pubDate: parseDate(listItem.start_time, "X"), language: "zh-CN" }); async function handler() { const list = await utils_default.getNewProductList(); return { title: "小米上新", link: "https://m.mi.com/", item: await getDataItems(list), image: "https://m.mi.com/static/img/icons/apple-touch-icon-152x152.png", language: "zh-CN" }; } //#endregion export { route };