UNPKG

rsshub

Version:
48 lines (43 loc) 1.46 kB
import { Route } from '@/types'; import got from '@/utils/got'; import MarkdownIt from 'markdown-it'; export const route: Route = { path: '/funded/:username/:repo', categories: ['programming'], example: '/issuehunt/funded/DIYgod/RSSHub', parameters: { username: 'Github user/org', repo: 'Repository name' }, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false, }, name: 'Project Funded', maintainers: ['running-grass'], handler, }; async function handler(ctx) { const { username, repo } = ctx.req.param(); const response = await got(`https://issuehunt.io/apis/pages/repos/show?repositoryOwnerName=${username}&repositoryName=${repo}`); const { issues } = response.data; if (issues === undefined) { throw new Error('没有获取到数据'); } const md = MarkdownIt({ html: true, }); return { title: `Issue Hunt 的悬赏 -- ${username}/${repo}`, link: `https://issuehunt.io/r/${username}/${repo}`, description: ``, item: issues.map((item) => ({ title: item.title, description: md.render(item.body), pubDate: item.fundedAt, link: `https://issuehunt.io/r/${username}/${repo}/issues/${item.number}`, author: item.userName, })), }; }