mirror of
https://github.com/purrgrammer/grimoire.git
synced 2026-06-05 18:21:28 +02:00
refactor(nip-66): improve feed UI with clickable titles and simplified layout
- Add ClickableEventTitle to relay discovery feed items for opening detail view - Remove "Monitoring" label from relay monitor feed items for cleaner layout - Remove unused imports (RelayLink, Label, Activity) from feed renderers - Maintain existing Label and NIPBadge usage in detail renderers
This commit is contained in:
@@ -4,14 +4,13 @@ import {
|
|||||||
ClickableEventTitle,
|
ClickableEventTitle,
|
||||||
} from "./BaseEventRenderer";
|
} from "./BaseEventRenderer";
|
||||||
import { Badge } from "@/components/ui/badge";
|
import { Badge } from "@/components/ui/badge";
|
||||||
import { Label } from "@/components/ui/label";
|
|
||||||
import {
|
import {
|
||||||
getMonitorFrequency,
|
getMonitorFrequency,
|
||||||
getMonitorChecks,
|
getMonitorChecks,
|
||||||
formatFrequency,
|
formatFrequency,
|
||||||
getCheckTypeName,
|
getCheckTypeName,
|
||||||
} from "@/lib/nip66-helpers";
|
} from "@/lib/nip66-helpers";
|
||||||
import { Activity, Clock } from "lucide-react";
|
import { Clock } from "lucide-react";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Kind 10166 Renderer - NIP-66 Relay Monitor Announcement (Feed View)
|
* Kind 10166 Renderer - NIP-66 Relay Monitor Announcement (Feed View)
|
||||||
@@ -42,22 +41,16 @@ export function Kind10166Renderer({ event }: BaseEventProps) {
|
|||||||
|
|
||||||
{/* Check Types */}
|
{/* Check Types */}
|
||||||
{checks.length > 0 && (
|
{checks.length > 0 && (
|
||||||
<div className="flex flex-col gap-1.5">
|
<div className="flex flex-wrap gap-1.5">
|
||||||
<Label className="flex items-center gap-2 text-xs text-muted-foreground">
|
{checks.map((check) => (
|
||||||
<Activity className="size-3" />
|
<Badge
|
||||||
Monitoring
|
key={check}
|
||||||
</Label>
|
variant="secondary"
|
||||||
<div className="flex flex-wrap gap-1.5">
|
className="h-5 px-2 text-xs"
|
||||||
{checks.map((check) => (
|
>
|
||||||
<Badge
|
{getCheckTypeName(check)}
|
||||||
key={check}
|
</Badge>
|
||||||
variant="secondary"
|
))}
|
||||||
className="h-5 px-2 text-xs"
|
|
||||||
>
|
|
||||||
{getCheckTypeName(check)}
|
|
||||||
</Badge>
|
|
||||||
))}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
import { BaseEventProps, BaseEventContainer } from "./BaseEventRenderer";
|
import {
|
||||||
import { RelayLink } from "../RelayLink";
|
BaseEventProps,
|
||||||
|
BaseEventContainer,
|
||||||
|
ClickableEventTitle,
|
||||||
|
} from "./BaseEventRenderer";
|
||||||
import { Badge } from "@/components/ui/badge";
|
import { Badge } from "@/components/ui/badge";
|
||||||
import {
|
import {
|
||||||
getRelayUrl,
|
getRelayUrl,
|
||||||
@@ -57,14 +60,14 @@ export function Kind30166Renderer({ event }: BaseEventProps) {
|
|||||||
return (
|
return (
|
||||||
<BaseEventContainer event={event}>
|
<BaseEventContainer event={event}>
|
||||||
<div className="flex flex-col gap-2">
|
<div className="flex flex-col gap-2">
|
||||||
{/* Relay URL and Health Score */}
|
{/* Clickable Title and Health Score */}
|
||||||
<div className="flex items-center justify-between gap-2">
|
<div className="flex items-center justify-between gap-2">
|
||||||
<RelayLink
|
<ClickableEventTitle
|
||||||
url={relayUrl}
|
event={event}
|
||||||
className="py-0.5 hover:bg-none flex-1 min-w-0"
|
className="text-base font-semibold truncate flex-1 min-w-0"
|
||||||
iconClassname="size-4"
|
>
|
||||||
urlClassname="underline decoration-dotted"
|
{relayUrl}
|
||||||
/>
|
</ClickableEventTitle>
|
||||||
<div className="flex items-center gap-1 text-xs shrink-0">
|
<div className="flex items-center gap-1 text-xs shrink-0">
|
||||||
<Activity className={cn("size-3", healthColor)} />
|
<Activity className={cn("size-3", healthColor)} />
|
||||||
<span className={cn("font-medium", healthColor)}>{health}%</span>
|
<span className={cn("font-medium", healthColor)}>{health}%</span>
|
||||||
|
|||||||
Reference in New Issue
Block a user