feat: show provider kind tag in trusted provider list renderers

Add Label with formatKindTag() to both feed and detail views so each
provider row shows what it provides (e.g. "User Assertion: Rank").
Also swap Badge → Label for consistency with the assertion renderers.

https://claude.ai/code/session_01XjwLaShFSVPR5gNA7iUjuB
This commit is contained in:
Claude
2026-02-20 07:56:48 +00:00
parent 1d2f27f9a3
commit a5d0106207
2 changed files with 14 additions and 10 deletions

View File

@@ -4,7 +4,9 @@ import { RelayLink } from "../RelayLink";
import {
getTrustedProviders,
hasEncryptedProviders,
formatKindTag,
} from "@/lib/nip85-helpers";
import { Label } from "@/components/ui/label";
import { Shield, Lock } from "lucide-react";
/**
@@ -59,6 +61,9 @@ export function TrustedProviderListDetailRenderer({
className="text-sm font-medium"
/>
{/* Kind tag */}
<Label className="w-fit">{formatKindTag(p.kindTag)}</Label>
{/* Relay */}
<RelayLink url={p.relay} showInboxOutbox={false} />
</div>

View File

@@ -3,12 +3,13 @@ import {
BaseEventContainer,
ClickableEventTitle,
} from "./BaseEventRenderer";
import { Badge } from "@/components/ui/badge";
import { Label } from "@/components/ui/label";
import { UserName } from "../UserName";
import { RelayLink } from "../RelayLink";
import {
getTrustedProviders,
hasEncryptedProviders,
formatKindTag,
} from "@/lib/nip85-helpers";
import { Shield, Lock } from "lucide-react";
@@ -33,33 +34,31 @@ export function TrustedProviderListRenderer({ event }: BaseEventProps) {
{/* Compact summary */}
<div className="flex flex-wrap items-center gap-1.5">
<Badge variant="outline" className="h-5 px-1.5 text-muted-foreground">
<Label>
{providers.length} provider{providers.length !== 1 ? "s" : ""}
</Badge>
</Label>
{hasEncrypted && (
<Badge
variant="outline"
className="h-5 px-1.5 gap-1 text-muted-foreground"
>
<Label className="flex items-center gap-1">
<Lock className="size-3" />
Encrypted
</Badge>
</Label>
)}
</div>
{/* Provider preview */}
{previewProviders.length > 0 && (
<div className="flex flex-col gap-1">
<div className="flex flex-col gap-1.5">
{previewProviders.map((p, i) => (
<div
key={`${p.servicePubkey}-${i}`}
className="flex items-center gap-1.5 text-xs text-muted-foreground"
className="flex flex-wrap items-center gap-1.5 text-xs text-muted-foreground"
>
<UserName
pubkey={p.servicePubkey}
relayHints={[p.relay]}
className="text-xs"
/>
<Label>{formatKindTag(p.kindTag)}</Label>
<span className="text-muted-foreground/50">on</span>
<RelayLink
url={p.relay}