diff --git a/src/components/profile/ProfileIdentityRail.tsx b/src/components/profile/ProfileIdentityRail.tsx index 580a67bc..0f7d2fc6 100644 --- a/src/components/profile/ProfileIdentityRail.tsx +++ b/src/components/profile/ProfileIdentityRail.tsx @@ -31,7 +31,6 @@ import { Nip05Badge } from '@/components/Nip05Badge'; import { PledgeCard } from '@/components/PledgeCard'; import { ProfileReactionButton } from '@/components/ProfileReactionButton'; import { OrganizationsAllDialog } from '@/components/profile/OrganizationsAllDialog'; -import { ProfileVerifierSection } from '@/components/profile/ProfileVerifierSection'; import { useCampaignModeration } from '@/hooks/useCampaignModeration'; import { useProfileOrganizations, type ProfileOrganization } from '@/hooks/useProfileOrganizations'; import type { ProfileCampaignStats } from '@/hooks/useProfileCampaignStats'; @@ -390,11 +389,6 @@ export function ProfileOverviewSections({ const { t } = useTranslation(); return (
- {/* Verifier statement (kind 14672) — surfaced first so donors can - immediately see how this account verifies campaigns. Renders - nothing when the profile has not published a statement. */} - - {/* Profile fields (rendered upstream) — placed first so the profile's own freeform metadata (links, addresses, etc.) is the first thing visitors read, ahead of campaigns/orgs. */} diff --git a/src/components/profile/ProfileVerifiedTab.tsx b/src/components/profile/ProfileVerifiedTab.tsx index ac7f39b1..0416b811 100644 --- a/src/components/profile/ProfileVerifiedTab.tsx +++ b/src/components/profile/ProfileVerifiedTab.tsx @@ -2,6 +2,7 @@ import { useTranslation } from 'react-i18next'; import { BadgeCheck } from 'lucide-react'; import { CampaignCard, CampaignCardSkeleton } from '@/components/CampaignCard'; +import { ProfileVerifierSection } from '@/components/profile/ProfileVerifierSection'; import { Card } from '@/components/ui/card'; import { useVerifiedCampaigns } from '@/hooks/useVerifiedCampaigns'; @@ -11,10 +12,13 @@ interface ProfileVerifiedTabProps { } /** - * Grid of campaigns this profile has verified — resolved from the - * account's own `agora.verified` (kind 1985) labels via - * {@link useVerifiedCampaigns}. Surfaced as the default tab for verifier - * profiles so visitors immediately see what the organization stands behind. + * The profile's verification tab: the account's self-published + * "How We Verify" statement (kind 14672) followed by the grid of + * campaigns it has verified — resolved from the account's own + * `agora.verified` (kind 1985) labels via {@link useVerifiedCampaigns}. + * Surfaced as the default tab for verifier profiles so visitors + * immediately see how the organization vets campaigns and what it + * stands behind. */ export function ProfileVerifiedTab({ pubkey, displayName }: ProfileVerifiedTabProps) { const { t } = useTranslation(); @@ -22,7 +26,8 @@ export function ProfileVerifiedTab({ pubkey, displayName }: ProfileVerifiedTabPr if (isLoading && campaigns.length === 0) { return ( -
+
+
{Array.from({ length: 3 }).map((_, i) => ( @@ -34,7 +39,8 @@ export function ProfileVerifiedTab({ pubkey, displayName }: ProfileVerifiedTabPr if (campaigns.length === 0) { return ( -
+
+
@@ -49,6 +55,7 @@ export function ProfileVerifiedTab({ pubkey, displayName }: ProfileVerifiedTabPr return (
+

{t('profile.verified.count', { count: campaigns.length })}