Fix hasValidSignature, rename to isValid
This commit is contained in:
@@ -20,7 +20,7 @@ export const getDefaultNetContext = () => ({
|
|||||||
onAuth: onAuth,
|
onAuth: onAuth,
|
||||||
onEvent: (url: string, event: TrustedEvent) => tracker.track(event.id, url),
|
onEvent: (url: string, event: TrustedEvent) => tracker.track(event.id, url),
|
||||||
isDeleted: (url: string, event: TrustedEvent) => repository.isDeleted(event),
|
isDeleted: (url: string, event: TrustedEvent) => repository.isDeleted(event),
|
||||||
hasValidSignature: (event: TrustedEvent) =>
|
isValid: (url: string, event: TrustedEvent) =>
|
||||||
getSession(event.pubkey) || (isSignedEvent(event) && hasValidSignature(event)),
|
getSession(event.pubkey) || (isSignedEvent(event) && hasValidSignature(event)),
|
||||||
optimizeSubscriptions: (subs: Subscription[]) => {
|
optimizeSubscriptions: (subs: Subscription[]) => {
|
||||||
const [withRelays, withoutRelays] = partition(sub => sub.request.relays.length > 0, subs)
|
const [withRelays, withoutRelays] = partition(sub => sub.request.relays.length > 0, subs)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ export type NetContext = {
|
|||||||
onAuth: (url: string, challenge: string) => void
|
onAuth: (url: string, challenge: string) => void
|
||||||
onOk: (url: string, id: string, ok: boolean, message: string) => void
|
onOk: (url: string, id: string, ok: boolean, message: string) => void
|
||||||
isDeleted: (url: string, event: TrustedEvent) => boolean
|
isDeleted: (url: string, event: TrustedEvent) => boolean
|
||||||
hasValidSignature: (url: string, event: TrustedEvent) => boolean
|
isValid: (url: string, event: TrustedEvent) => boolean
|
||||||
matchFilters: (url: string, filters: Filter[], event: TrustedEvent) => boolean
|
matchFilters: (url: string, filters: Filter[], event: TrustedEvent) => boolean
|
||||||
optimizeSubscriptions: (subs: Subscription[]) => RelaysAndFilters[]
|
optimizeSubscriptions: (subs: Subscription[]) => RelaysAndFilters[]
|
||||||
}
|
}
|
||||||
@@ -33,8 +33,8 @@ export const getDefaultNetContext = () => ({
|
|||||||
onEvent: noop,
|
onEvent: noop,
|
||||||
pool: new Pool(),
|
pool: new Pool(),
|
||||||
isDeleted: always(false),
|
isDeleted: always(false),
|
||||||
|
isValid: (url: string, event: TrustedEvent) => isSignedEvent(event) && hasValidSignature(event),
|
||||||
getExecutor: (relays: string[]) => new Executor(new Relays(relays.map((relay: string) => ctx.net.pool.get(relay)))),
|
getExecutor: (relays: string[]) => new Executor(new Relays(relays.map((relay: string) => ctx.net.pool.get(relay)))),
|
||||||
hasValidSignature: (url: string, event: TrustedEvent) => isSignedEvent(event) && hasValidSignature(event),
|
|
||||||
matchFilters: (url: string, filters: Filter[], event: TrustedEvent) => matchFilters(filters, event),
|
matchFilters: (url: string, filters: Filter[], event: TrustedEvent) => matchFilters(filters, event),
|
||||||
optimizeSubscriptions: defaultOptimizeSubscriptions,
|
optimizeSubscriptions: defaultOptimizeSubscriptions,
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ export enum SubscriptionEvent {
|
|||||||
Duplicate = "duplicate",
|
Duplicate = "duplicate",
|
||||||
DeletedEvent = "deleted-event",
|
DeletedEvent = "deleted-event",
|
||||||
FailedFilter = "failed-filter",
|
FailedFilter = "failed-filter",
|
||||||
InvalidSignature = "invalid-signature",
|
Invalid = "invalid",
|
||||||
}
|
}
|
||||||
|
|
||||||
export type RelaysAndFilters = {
|
export type RelaysAndFilters = {
|
||||||
@@ -118,7 +118,7 @@ export const mergeSubscriptions = (subs: Subscription[]) => {
|
|||||||
propagateEvent(SubscriptionEvent.Duplicate)
|
propagateEvent(SubscriptionEvent.Duplicate)
|
||||||
propagateEvent(SubscriptionEvent.DeletedEvent)
|
propagateEvent(SubscriptionEvent.DeletedEvent)
|
||||||
propagateEvent(SubscriptionEvent.FailedFilter)
|
propagateEvent(SubscriptionEvent.FailedFilter)
|
||||||
propagateEvent(SubscriptionEvent.InvalidSignature)
|
propagateEvent(SubscriptionEvent.Invalid)
|
||||||
propagateEvent(SubscriptionEvent.Eose)
|
propagateEvent(SubscriptionEvent.Eose)
|
||||||
propagateEvent(SubscriptionEvent.Close)
|
propagateEvent(SubscriptionEvent.Close)
|
||||||
}
|
}
|
||||||
@@ -179,7 +179,7 @@ export const optimizeSubscriptions = (subs: Subscription[]) => {
|
|||||||
|
|
||||||
propagateEvent(SubscriptionEvent.Duplicate)
|
propagateEvent(SubscriptionEvent.Duplicate)
|
||||||
propagateEvent(SubscriptionEvent.DeletedEvent)
|
propagateEvent(SubscriptionEvent.DeletedEvent)
|
||||||
propagateEvent(SubscriptionEvent.InvalidSignature)
|
propagateEvent(SubscriptionEvent.Invalid)
|
||||||
|
|
||||||
const propagateFinality = (type: SubscriptionEvent, subIds: Set<string>) =>
|
const propagateFinality = (type: SubscriptionEvent, subIds: Set<string>) =>
|
||||||
mergedSub.emitter.on(type, (...args: any[]) => {
|
mergedSub.emitter.on(type, (...args: any[]) => {
|
||||||
@@ -257,8 +257,8 @@ export const executeSubscription = (sub: Subscription) => {
|
|||||||
emitter.emit(SubscriptionEvent.DeletedEvent, url, event)
|
emitter.emit(SubscriptionEvent.DeletedEvent, url, event)
|
||||||
} else if (!ctx.net.matchFilters(url, filters, event)) {
|
} else if (!ctx.net.matchFilters(url, filters, event)) {
|
||||||
emitter.emit(SubscriptionEvent.FailedFilter, url, event)
|
emitter.emit(SubscriptionEvent.FailedFilter, url, event)
|
||||||
} else if (!ctx.net.hasValidSignature(url, event)) {
|
} else if (!ctx.net.isValid(url, event)) {
|
||||||
emitter.emit(SubscriptionEvent.InvalidSignature, url, event)
|
emitter.emit(SubscriptionEvent.Invalid, url, event)
|
||||||
} else {
|
} else {
|
||||||
emitter.emit(SubscriptionEvent.Event, url, event)
|
emitter.emit(SubscriptionEvent.Event, url, event)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user