diff --git a/src/screens/Moderation/index.tsx b/src/screens/Moderation/index.tsx index 09e4191957..a0047f906d 100644 --- a/src/screens/Moderation/index.tsx +++ b/src/screens/Moderation/index.tsx @@ -27,7 +27,7 @@ import { } from '#/state/queries/preferences' import {logger} from '#/logger' -import {useTheme, atoms as a, useBreakpoints} from '#/alf' +import {useTheme, atoms as a, useBreakpoints, ViewStyleProp} from '#/alf' import {Divider} from '#/components/Divider' import {CircleBanSign_Stroke2_Corner0_Rounded as CircleBanSign} from '#/components/icons/CircleBanSign' import {Group3_Stroke2_Corner0_Rounded as Group} from '#/components/icons/Group' @@ -43,6 +43,7 @@ import * as LabelingService from '#/components/LabelingServiceCard' import {GlobalModerationLabelPref} from '#/components/moderation/GlobalModerationLabelPref' import {useGlobalDialogsControlContext} from '#/components/dialogs/Context' import {useModalControls} from '#/state/modals' +import {Props as SVGIconProps} from '#/components/icons/common' function ErrorState({error}: {error: string}) { const t = useTheme() @@ -120,6 +121,38 @@ export function ModerationScreen( ) } +function SubItem({ + title, + icon: Icon, + style, +}: ViewStyleProp & { + title: string + icon: React.ComponentType +}) { + const t = useTheme() + return ( + + + + {title} + + + + ) +} + export function ModerationScreenInner({ preferences, }: { @@ -193,90 +226,52 @@ export function ModerationScreenInner({ - - - - - Moderation lists - - - + + {state => ( + + )} - - - - - Muted accounts - - - + + {state => ( + + )} - - - - - Blocked accounts - - - + + {state => ( + + )}