diff --git a/packages/app/src/index.ts b/packages/app/src/index.ts index c86ea9d..8b3e873 100644 --- a/packages/app/src/index.ts +++ b/packages/app/src/index.ts @@ -26,9 +26,9 @@ export * from "./zappers.js" import {derived} from "svelte/store" import {sortBy, throttleWithValue, tryCatch} from "@welshman/lib" -import {verifyEvent, isEphemeralKind, isDVMKind, RelayMode, getRelaysFromList} from "@welshman/util" +import {isEphemeralKind, isDVMKind, RelayMode, getRelaysFromList} from "@welshman/util" import {routerContext} from "@welshman/router" -import {Pool, SocketEvent, isRelayEvent} from "@welshman/net" +import {Pool, SocketEvent, isRelayEvent, netContext} from "@welshman/net" import {pubkey} from "./session.js" import {repository, tracker} from "./core.js" import {Relay, relays, loadRelay, trackRelayStats, getRelayQuality} from "./relays.js" @@ -45,7 +45,11 @@ Pool.get().subscribe(socket => { if (isRelayEvent(message)) { const event = message[2] - if (!isEphemeralKind(event.kind) && !isDVMKind(event.kind) && verifyEvent(event)) { + if ( + !isEphemeralKind(event.kind) && + !isDVMKind(event.kind) && + netContext.isEventValid(event, socket.url) + ) { tracker.track(event.id, socket.url) repository.publish(event) } diff --git a/packages/app/src/relaySelections.ts b/packages/app/src/relaySelections.ts index 3d460ed..89b0aa4 100644 --- a/packages/app/src/relaySelections.ts +++ b/packages/app/src/relaySelections.ts @@ -1,5 +1,12 @@ import {batcher} from "@welshman/lib" -import {RELAYS, asDecryptedEvent, readList, TrustedEvent, PublishedList} from "@welshman/util" +import { + RELAYS, + Filter, + asDecryptedEvent, + readList, + TrustedEvent, + PublishedList, +} from "@welshman/util" import {deriveEventsMapped, collection} from "@welshman/store" import {load, LoadOptions} from "@welshman/net" import {Router} from "@welshman/router" @@ -14,15 +21,18 @@ export const loadUsingOutbox = batcher(200, (optionses: LoadUsingOutboxOptions[] return optionses.map(options => load({...options, relays})) }) -export const makeOutboxLoader = (kind: number) => (pubkey: string, relays: string[]) => { - const filters = [{authors: [pubkey], kinds: [kind]}] +export const makeOutboxLoader = + (kind: number, filter: Filter = {}) => + (pubkey: string, relays: string[]) => { + const filters = [{...filter, authors: [pubkey], kinds: [kind]}] - return Promise.all([load({relays, filters}), loadUsingOutbox({filters})]) -} + return Promise.all([load({relays, filters}), loadUsingOutbox({filters})]) + } export const makeOutboxLoaderWithIndexers = - (kind: number) => (pubkey: string, relays: string[]) => { - const filters = [{authors: [pubkey], kinds: [kind]}] + (kind: number, filter: Filter = {}) => + (pubkey: string, relays: string[]) => { + const filters = [{...filter, authors: [pubkey], kinds: [kind]}] return Promise.all([ load({relays, filters}), diff --git a/packages/app/src/thunk.ts b/packages/app/src/thunk.ts index 68a06c7..dc5c648 100644 --- a/packages/app/src/thunk.ts +++ b/packages/app/src/thunk.ts @@ -69,7 +69,6 @@ export class Thunk { } this.controller.signal.addEventListener("abort", () => { - console.log("abort") for (const relay of options.relays) { this._setAborted(relay) } @@ -228,8 +227,6 @@ export class MergedThunk { } } - console.log(this.status) - this._notify() if (thunks.every(thunkIsComplete)) { diff --git a/packages/net/src/message.ts b/packages/net/src/message.ts index c75667f..298808d 100644 --- a/packages/net/src/message.ts +++ b/packages/net/src/message.ts @@ -18,7 +18,7 @@ export type RelayAuthPayload = [string] export type RelayClosedPayload = [string, string] -export type RelayEosePayload = [string, SignedEvent] +export type RelayEosePayload = [string] export type RelayEventPayload = [string, SignedEvent] diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 25bc9fb..97c17b3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -242,15 +242,6 @@ importers: specifier: ~5.8.0 version: 5.8.2 - packages/mls: - devDependencies: - rimraf: - specifier: ~6.0.0 - version: 6.0.1 - typescript: - specifier: ~5.8.0 - version: 5.8.2 - packages/net: dependencies: '@welshman/lib':