import htmlParse from 'html-react-parser'
import { useReadingTime } from 'react-hook-reading-time'
import { useRouteLoaderData } from 'react-router'
import { twMerge } from 'tailwind-merge'
import { Button } from '~/components/ui/button'
import { Card } from '~/components/ui/card'
import { CarouselSection } from '~/components/ui/carousel-section'
import { NewsAuthor } from '~/components/ui/news-author'
import { SocialShareButtons } from '~/components/ui/social-share'
import { Tags } from '~/components/ui/tags'
import { useNewsContext } from '~/contexts/news'
import type { loader } from '~/routes/_news.detail.$slug'
import type { TNews } from '~/types/news'
export const NewsDetailPage = () => {
const { setIsSuccessOpen } = useNewsContext()
const loaderData = useRouteLoaderData(
'routes/_news.detail.$slug',
)
const berita: TNews = {
title: loaderData?.beritaCategory?.name || '',
description: loaderData?.beritaCategory?.description || '',
items: loaderData?.beritaData || Promise.resolve({ data: [] }),
}
const currentUrl = globalThis.location
const { title, content, featured_image, author, live_at, tags } =
loaderData?.newsDetailData || {}
const { shouldSubscribe } = loaderData || {}
const { text } = useReadingTime(content || '')
return (
{title}
{content && htmlParse(content)}
{shouldSubscribe && (
)}
)
}