"use client"; import { useTranslations } from "next-intl"; import { Modules } from "../../../../core"; import { usePageUrlGenerator } from "../../../../hooks"; import { HoverCard, HoverCardContent, HoverCardTrigger, Link } from "../../../../shadcnui"; import { getIconByModule } from "../../../../utils"; import { SectionHeader } from "../../../../components/typography"; import { ContributorsList } from "../../../user/components"; import { ContentInterface } from "../../data"; type ContentsListProps = { contentList: ContentInterface[]; }; export function ContentsList({ contentList }: ContentsListProps) { const t = useTranslations(); return (
{t(`content.news`)}
{contentList.map((content) => ( ))}
); } type ContentsListElementProps = { content: ContentInterface; }; function ContentsListElement({ content }: ContentsListElementProps) { const generateUrl = usePageUrlGenerator(); const contentModule = content.contentType ? Modules.findByModelName(content.contentType) : undefined; const link = contentModule ? generateUrl({ page: contentModule, id: content.id }) : "#"; return (
{contentModule && getIconByModule({ module: contentModule, className: "h-4 w-4" })} {content.name} {content.name}
{content.abstract}
{/*
{content.tldr}
{content.topics.length > 0 && (
)} */}
); }