mirror of
https://github.com/nbd-wtf/nostr-tools.git
synced 2025-12-08 16:28:49 +00:00
Merge branch 'nbd-wtf:master' into mock-relay-class
This commit is contained in:
20
nip29.ts
20
nip29.ts
@@ -2,40 +2,40 @@ import type { Event } from './pure'
|
|||||||
|
|
||||||
export type Group = {
|
export type Group = {
|
||||||
id: string
|
id: string
|
||||||
|
relay: string
|
||||||
name?: string
|
name?: string
|
||||||
picture?: string
|
picture?: string
|
||||||
about?: string
|
about?: string
|
||||||
relay?: string
|
|
||||||
public?: boolean
|
public?: boolean
|
||||||
open?: boolean
|
open?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
export function parseGroup(event: Event): Group {
|
export function parseGroup(event: Event, relay: string): Group {
|
||||||
const chan: Partial<Group> = {}
|
const group: Partial<Group> = { relay }
|
||||||
for (let i = 0; i < event.tags.length; i++) {
|
for (let i = 0; i < event.tags.length; i++) {
|
||||||
const tag = event.tags[i]
|
const tag = event.tags[i]
|
||||||
switch (tag[0]) {
|
switch (tag[0]) {
|
||||||
case 'd':
|
case 'd':
|
||||||
chan.id = tag[1] || ''
|
group.id = tag[1] || ''
|
||||||
break
|
break
|
||||||
case 'name':
|
case 'name':
|
||||||
chan.name = tag[1] || ''
|
group.name = tag[1] || ''
|
||||||
break
|
break
|
||||||
case 'about':
|
case 'about':
|
||||||
chan.about = tag[1] || ''
|
group.about = tag[1] || ''
|
||||||
break
|
break
|
||||||
case 'picture':
|
case 'picture':
|
||||||
chan.picture = tag[1] || ''
|
group.picture = tag[1] || ''
|
||||||
break
|
break
|
||||||
case 'open':
|
case 'open':
|
||||||
chan.open = true
|
group.open = true
|
||||||
break
|
break
|
||||||
case 'public':
|
case 'public':
|
||||||
chan.public = true
|
group.public = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return chan as Group
|
return group as Group
|
||||||
}
|
}
|
||||||
|
|
||||||
export type Member = {
|
export type Member = {
|
||||||
|
|||||||
Reference in New Issue
Block a user