mirror of
https://gitlab.com/soapbox-pub/ditto.git
synced 2025-12-06 11:29:46 +00:00
21 lines
518 B
TypeScript
21 lines
518 B
TypeScript
import { type Event } from '@/nostr/event.ts';
|
|
|
|
import { parseRelay } from './schema.ts';
|
|
|
|
/** Gets relays which pertain to the author from the event. */
|
|
function getAuthorRelays(event: Event): URL[] {
|
|
const relays: string[] = [];
|
|
|
|
switch (event.kind) {
|
|
case 10002:
|
|
event.tags.forEach((tag) => tag[0] === 'r' && relays.push(tag[1]));
|
|
break;
|
|
case 2:
|
|
relays.push(event.content);
|
|
break;
|
|
}
|
|
|
|
return relays.map(parseRelay).filter((r): r is URL => !!r);
|
|
}
|
|
|
|
export { getAuthorRelays };
|