Bring back repository store
This commit is contained in:
@@ -11,6 +11,25 @@ export const tracker = new Tracker()
|
||||
|
||||
// Adapt objects to stores
|
||||
|
||||
export const makeRepositoryStore = ({throttle: t = 300}: {throttle?: number} = {}) =>
|
||||
custom(
|
||||
setter => {
|
||||
let onUpdate = () => setter(repository)
|
||||
|
||||
if (t) {
|
||||
onUpdate = throttle(t, onUpdate)
|
||||
}
|
||||
|
||||
onUpdate()
|
||||
repository.on("update", onUpdate)
|
||||
|
||||
return () => repository.off("update", onUpdate)
|
||||
},
|
||||
{
|
||||
set: (other: Repository) => repository.load(other.dump()),
|
||||
},
|
||||
)
|
||||
|
||||
export const makeTrackerStore = ({throttle: t = 300}: {throttle?: number} = {}) =>
|
||||
custom(
|
||||
setter => {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import {Scope, FeedController, FeedControllerOptions, Feed} from "@welshman/feeds"
|
||||
import {pubkey, signer} from "./session.js"
|
||||
import {wotGraph, maxWot, getFollows, getNetwork, getFollowers} from "./wot.js"
|
||||
import {repository} from "./core.js"
|
||||
|
||||
export const getPubkeysForScope = (scope: string) => {
|
||||
const $pubkey = pubkey.get()
|
||||
@@ -41,10 +40,4 @@ export const getPubkeysForWOTRange = (min: number, max: number) => {
|
||||
type MakeFeedControllerOptions = Partial<Omit<FeedControllerOptions, "feed">> & {feed: Feed}
|
||||
|
||||
export const makeFeedController = (options: MakeFeedControllerOptions) =>
|
||||
new FeedController({
|
||||
repository,
|
||||
getPubkeysForScope,
|
||||
getPubkeysForWOTRange,
|
||||
signer: signer.get(),
|
||||
...options,
|
||||
})
|
||||
new FeedController({getPubkeysForScope, getPubkeysForWOTRange, signer: signer.get(), ...options})
|
||||
|
||||
@@ -122,7 +122,6 @@ export class Socket extends EventEmitter {
|
||||
close = () => {
|
||||
this._ws?.close()
|
||||
this._ws = undefined
|
||||
this._sendQueue.clear()
|
||||
}
|
||||
|
||||
cleanup = () => {
|
||||
|
||||
@@ -33,6 +33,7 @@ export type Nip46BrokerParams = {
|
||||
signerPubkey?: string
|
||||
algorithm?: Nip46Algorithm
|
||||
context?: AdapterContext
|
||||
debug?: (message: string, ...args: any[]) => void
|
||||
}
|
||||
|
||||
export type Nip46Response = {
|
||||
@@ -189,7 +190,7 @@ export class Nip46Sender extends Emitter {
|
||||
try {
|
||||
await this.send(request)
|
||||
} catch (error: any) {
|
||||
console.error("nip46 error:", error, request)
|
||||
this.params.debug?.("nip46 error:", error, request)
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
@@ -307,7 +308,7 @@ export class Nip46Broker extends Emitter {
|
||||
const sender = new Nip46Sender(this.signer, this.params)
|
||||
|
||||
sender.on(Nip46Event.Send, (data: any) => {
|
||||
console.log("nip46 send:", data)
|
||||
this.params.debug?.("nip46 send:", data)
|
||||
})
|
||||
|
||||
return sender
|
||||
@@ -317,7 +318,7 @@ export class Nip46Broker extends Emitter {
|
||||
const receiver = new Nip46Receiver(this.signer, this.params)
|
||||
|
||||
receiver.on(Nip46Event.Receive, (data: any) => {
|
||||
console.log("nip46 receive:", data)
|
||||
this.params.debug?.("nip46 receive:", data)
|
||||
})
|
||||
|
||||
return receiver
|
||||
|
||||
Reference in New Issue
Block a user