import { component$, $, useSignal } from '@builder.io/qwik'
import { Link, useNavigate } from '@builder.io/qwik-city'
import { formatTimeAgo } from '~/utils/dateTime'
import type { Account, MastodonStatus } from '~/types'
import { MediaGallery } from '../MediaGallery.tsx'
import { useAccountUrl } from '~/utils/useAccountUrl'
import { getDisplayNameElement } from '~/utils/getDisplayNameElement'
import { StatusAccountCard } from '../StatusAccountCard/StatusAccountCard'
import { HtmlContent } from '../HtmlContent/HtmlContent'
import { StatusInfoTray } from '../StatusInfoTray/StatusInfoTray'
type Props = {
status: MastodonStatus
accountSubText: 'username' | 'acct'
showInfoTray: boolean
contentClickable: boolean
}
export default component$((props: Props) => {
const nav = useNavigate()
const status = props.status.reblog ?? props.status
const reblogger = props.status.reblog && props.status.account
const accountUrl = useAccountUrl(status.account)
const statusUrl = `${accountUrl}/${status.id}`
const showContent = useSignal(!status.spoiler_text)
const handleContentClick = $(() => props.contentClickable && nav(statusUrl))
return (
{getDisplayNameElement(account)} boosted