Clean up nostr-tools dependencies
This commit is contained in:
@@ -1,14 +1,26 @@
|
||||
import {throttle} from "@welshman/lib"
|
||||
import {Repository, LocalRelay} from "@welshman/relay"
|
||||
import {Tracker} from "@welshman/net"
|
||||
import {verifyEvent, isEphemeralKind, isDVMKind} from "@welshman/util"
|
||||
import {Repository} from "@welshman/relay"
|
||||
import {Pool, Tracker, SocketEvent, isRelayEvent} from "@welshman/net"
|
||||
import {custom} from "@welshman/store"
|
||||
|
||||
export const repository = Repository.getSingleton()
|
||||
|
||||
export const relay = new LocalRelay(repository)
|
||||
|
||||
export const tracker = new Tracker()
|
||||
|
||||
Pool.getSingleton().subscribe(socket => {
|
||||
socket.on(SocketEvent.Receive, message => {
|
||||
if (isRelayEvent(message)) {
|
||||
const event = message[2]
|
||||
|
||||
if (!isEphemeralKind(event.kind) && !isDVMKind(event.kind) && verifyEvent(event)) {
|
||||
tracker.track(event.id, socket.url)
|
||||
repository.publish(event)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
// Adapt above objects to stores
|
||||
|
||||
export const makeRepositoryStore = ({throttle: t = 300}: {throttle?: number} = {}) =>
|
||||
|
||||
Reference in New Issue
Block a user