import {useState} from 'react'
import {View} from 'react-native'
import {plural} from '@lingui/core/macro'
import {Trans, useLingui} from '@lingui/react/macro'
import {Pager} from '#/view/com/pager/Pager'
import {TabBar} from '#/view/com/pager/TabBar'
import {NotFoundScreen} from '#/view/screens/NotFound'
import {atoms as a, useTheme} from '#/alf'
import {ButtonIcon} from '#/components/Button'
import {SettingsGear2_Stroke2_Corner0_Rounded as SettingsIcon} from '#/components/icons/SettingsGear2'
import * as Layout from '#/components/Layout'
import {createStaticClick, Link, SimpleInlineLinkText} from '#/components/Link'
import {useAnalytics} from '#/analytics'
import {AccountStatus} from './components/AccountStatus'
import {FilterMenu} from './components/FilterMenu'
import {ReportRow} from './components/ReportRow'
type ReportFilter = 'all' | 'pending' | 'resolved' | 'unread'
export function ModerationInboxScreen() {
const {t: l} = useLingui()
const ax = useAnalytics()
const isEnabled = ax.features.enabled(ax.features.ModerationInboxEnable)
if (!isEnabled) {
return
}
return (
(
Moderation inbox
)}>
)
}
function YourReports() {
const t = useTheme()
const {t: l} = useLingui()
const [filter, setFilter] = useState('all')
const hasUnread = true // TODO This is hard-coded atm. -dsb
// TODO Placeholders. - dsb
const account = '@deleteme01.bsky.social'
const list = 'The Worst Posters'
return (
{hasUnread ? (
{
// TODO Handle this action. -dsb
})}>
Mark all as read
) : undefined}
)
}
function YourAccount() {
const t = useTheme()
const {t: l} = useLingui()
const [filter, setFilter] = useState('all')
const hasUnread = true // TODO This is hard-coded atm. -dsb
// TODO Placeholders. - dsb
const guideline = l({
context: 'moderation-report-guideline',
message: 'Harassment',
})
const label = l({
context: 'moderation-report-label',
message: 'Graphic media',
})
const duration = plural(72, {
one: '# hour',
other: '# hours',
})
return (
{hasUnread ? (
{
// TODO Handle this action. -dsb
})}>
Mark all as read
) : undefined}
)
}