rsshub
Version:
Make RSS Great Again!
35 lines (33 loc) • 1.54 kB
JavaScript
import { n as init_esm_shims, t as __dirname } from "./esm-shims-CzJ_djXG.mjs";
import { t as ofetch_default } from "./ofetch-BIyrKU3Y.mjs";
import { t as parseDate } from "./parse-date-BrP7mxXf.mjs";
import { t as cache_default } from "./cache-Bo__VnGm.mjs";
import { t as art } from "./render-BQo6B4tL.mjs";
import { t as timezone } from "./timezone-D8cuwzTY.mjs";
import path from "node:path";
import markdownit from "markdown-it";
//#region lib/routes/utgd/utils.ts
init_esm_shims();
const md = markdownit({ html: true });
const rootUrl = "https://utgd.net";
const apiRootUrl = "https://api.utgd.net";
const parseResult = (results, limit) => results.slice(0, limit).map((item) => ({
id: item.id,
title: item.title,
link: `${rootUrl}/article/${item.id}`,
author: item.article_author_displayname,
pubDate: timezone(parseDate(item.article_published_time), 8),
category: item.article_category.map((c) => c.category_name)
}));
const parseArticle = (item) => cache_default.tryGet(`untag-${item.id}`, async () => {
const data = await ofetch_default(`${apiRootUrl}/api/v2/article/${item.id}/`);
item.description = art(path.join(__dirname, "templates/description-03cfe5f7.art"), {
membership: data.article_for_membership,
image: data.article_image,
description: md.render(data.article_content)
});
item.category = [...data.article_category.map((c) => c.category_name), ...data.article_tag.map((t) => t.tag_name)];
return item;
});
//#endregion
export { rootUrl as i, parseArticle as n, parseResult as r, apiRootUrl as t };