diff --git a/src/lib/groups.svelte.ts b/src/lib/groups.svelte.ts index ce0ceab..fabf080 100644 --- a/src/lib/groups.svelte.ts +++ b/src/lib/groups.svelte.ts @@ -6,8 +6,12 @@ export type GroupSummary = { picture?: string; about?: string; createdAt: number; + flags: string[]; // special NIP-29 markers present (private, hidden, closed, restricted) }; +// NIP-29 metadata markers we surface as room tags, in display order. +const SPECIAL_FLAGS = ["private", "hidden", "closed", "restricted"]; + let list = $state([]); let loaded = $state(false); @@ -34,6 +38,7 @@ export async function loadGroups() { picture: e.tags.find((t) => t[0] === "picture")?.[1], about: e.tags.find((t) => t[0] === "about")?.[1], createdAt: e.created_at, + flags: SPECIAL_FLAGS.filter((f) => e.tags.some((t) => t[0] === f)), }; }) .filter((g) => g.id) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 5210d7b..6126a9c 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,6 +1,7 @@