Hotfix for relay publishing

This commit is contained in:
Alex Gleason 2025-02-23 14:55:19 -06:00
parent e88a7d01d4
commit 77c0ac3561
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7
2 changed files with 13 additions and 10 deletions

View file

@ -103,19 +103,21 @@ export class DittoAPIStore implements NRelay {
return relay.req(filters, opts); return relay.req(filters, opts);
} }
async event(event: NostrEvent, opts?: { signal?: AbortSignal }): Promise<void> { async event(event: NostrEvent, opts?: { publish?: boolean; signal?: AbortSignal }): Promise<void> {
const { pool } = this.opts; const { pool } = this.opts;
const { id, kind } = event; const { id, kind } = event;
await this.handleEvent(event, opts); await this.handleEvent(event, opts);
(async () => { if (opts?.publish) {
try { (async () => {
await pool.event(purifyEvent(event), opts); try {
} catch (e) { await pool.event(purifyEvent(event), opts);
logi({ level: 'error', ns: this.ns, source: 'publish', id, kind, error: errorJson(e) }); } catch (e) {
} logi({ level: 'error', ns: this.ns, source: 'publish', id, kind, error: errorJson(e) });
})(); }
})();
}
} }
/** Open a firehose to the relay. */ /** Open a firehose to the relay. */

View file

@ -33,7 +33,7 @@ async function createEvent<E extends (DittoEnv & { Variables: { user?: User } })
...t, ...t,
}); });
await relay.event(event, { signal }); await relay.event(event, { signal, publish: true });
return event; return event;
} }
@ -89,7 +89,8 @@ async function createAdminEvent(t: EventStub, c: AppContext): Promise<NostrEvent
...t, ...t,
}); });
await relay.event(event, { signal }); // @ts-ignore `publish` is important for `DittoAPIStore`.
await relay.event(event, { signal, publish: true });
return event; return event;
} }