import type { FC } from 'hono/jsx'; import { Data } from '@/types'; const RSS: FC<{ data: Data }> = ({ data }) => { const hasItunes = data.itunes_author || data.itunes_category || (data.item && data.item.some((i) => i.itunes_item_image || i.itunes_duration)); const hasMedia = data.item?.some((i) => i.media); return ( {data.title || 'RSSHub'} {data.link || 'https://docs.rsshub.app'} {data.description || data.title} - Made with love by RSSHub(https://github.com/DIYgod/RSSHub) RSSHub i@diygod.me (DIYgod) {data.itunes_author && {data.itunes_author}} {data.itunes_category && } {data.itunes_author && {data.itunes_explicit || 'false'}} {data.language || 'en'} {data.image && ( {data.image} {data.title || 'RSSHub'} {data.link} )} {data.lastBuildDate} {data.ttl} {data.item?.map((item) => ( {item.title} {item.description} {item.link} {item.guid || item.link || item.title} {item.pubDate && {item.pubDate}} {item.author && {item.author}} {item.itunes_item_image && } {item.enclosure_url && } {item.itunes_duration && {item.itunes_duration}} {typeof item.category === 'string' ? {item.category} : item.category?.map((c) => {c})} {item.media && Object.entries(item.media).map(([key, value]) => { const Tag = `media:${key}`; return ; })} ))} ); }; export default RSS;