diff --git a/src/components/moderation/ModerationMenu.tsx b/src/components/moderation/ModerationMenu.tsx index ced48058..cc4d8da7 100644 --- a/src/components/moderation/ModerationMenu.tsx +++ b/src/components/moderation/ModerationMenu.tsx @@ -247,11 +247,16 @@ function CampaignItemsInner(props: { // // The verification row is gated separately (by the labeler allowlist, // not the moderator pack), so it's rendered here as a sibling rather - // than inside the shell. The moderator rows only render when the user - // is a mod; the verify row only when they're a labeler — the two sets - // can differ, and either alone is enough to mount this menu. + // than inside the shell. It sits at the TOP of the menu; the moderator + // rows (when present) follow below a separator. The verify row only + // renders for labelers, the moderator rows only for mods — the two + // sets can differ, and either alone is enough to mount this menu. return ( <> + {isMod && ( )} - ); } @@ -280,12 +280,9 @@ function CampaignItemsInner(props: { function CampaignVerifyItem({ coord, entityTitle, - showLeadingSeparator, }: { coord: string; entityTitle: string; - /** Render a separator above the row (when moderator rows precede it). */ - showLeadingSeparator: boolean; }) { const { t } = useTranslation(); const { toast } = useToast(); @@ -328,7 +325,6 @@ function CampaignVerifyItem({ return ( <> - {showLeadingSeparator && } {mine ? (