import { Link } from "react-router"; import { useTranslation } from "react-i18next"; import ThumbsDownIcon from "~/components/ui/icons/ThumbsDownIcon"; import ThumbsDownIconFilled from "~/components/ui/icons/ThumbsDownIconFilled"; import ThumbsUpIcon from "~/components/ui/icons/ThumbsUpIcon"; import ThumbsUpIconFilled from "~/components/ui/icons/ThumbsUpIconFilled"; import { KbArticleDto } from "~/modules/knowledgeBase/dtos/KbArticleDto"; import { renderSanitizedMarkdown } from "~/utils/html-sanitizer"; import { useLocaleFormatters } from "~/locale/format"; export default function KbArticleContent({ item, content, actions, userState, }: { item: KbArticleDto; content: string; userState?: { hasThumbsUp: boolean; hasThumbsDown: boolean; }; actions?: { onThumbsUp: () => void; onThumbsDown: () => void; }; }) { const { t } = useTranslation(); const formatters = useLocaleFormatters(); return (

{item.title}

{item.description}

  • {item.createdByUser?.avatar && ( {`${item.createdByUser.firstName} )}
    {item.createdByUser && (
    {t("knowledgeBase.article.author")}
    {t("shared.by")} {item.createdByUser.firstName} {item.createdByUser.lastName}
    )}
    {formatters.relativeDate(item.createdAt)}
  • {actions && (
    )}
    {item.relatedArticles.length > 0 && (
    {t("knowledgeBase.article.relatedArticles")}
    {item.relatedArticles.map((x) => (
    {x.title}
    ))}
    )}
    ); }