Welshman Docs / @welshman/domain / EventQuery
Class: abstract EventQuery ​
Defined in: core/EventQuery.ts:25
The read-side counterpart to EventWriter: a chainable builder for the filters that fetch a kind's events, plus the relays to request them from. The kind comes from the factory; each subclass implements renderRoutes to say where its events live, and adds any domain-specific methods (e.g. CommentQuery.forRoot).
Extended by ​
AppDataQueryArticleQueryBlockedRelayListQueryBlossomServerListQueryBookmarkListQueryClassifiedQueryCommandQueryCommentQueryCommunityListQueryDeleteQueryDirectMessageQueryEmojiListQueryFeedQueryFeedListQueryFollowListQueryHandlerQueryHandlerRecommendationQueryHighlightQueryLabelQueryMessagingRelayListQueryMuteListQueryNoteQueryPinQueryPinboardQueryPinListQueryPollQueryPollResponseQueryProfileQueryReactionQueryRelayAddMemberQueryRelayInviteQueryRelayJoinQueryRelayLeaveQueryRelayListQueryRelayMembersQueryRelayRemoveMemberQueryRelayRoleQueryRelaySetQueryReportQueryRepostQueryRoomAddMemberQueryRoomAdminsQueryRoomCreateQueryRoomCreatePermissionQueryRoomDeleteQueryRoomEditQueryRoomJoinQueryRoomLeaveQueryRoomListQueryRoomMembersQueryRoomRemoveMemberQueryRoomMetaQueryRoomPinsQueryRoomUpdatePinsQuerySearchRelayListQueryThreadQueryTimeEventQueryTopicListQueryZapGoalQueryZapReceiptQueryZapRequestQuery
Constructors ​
Constructor ​
new EventQuery(
kind,context):EventQuery
Defined in: core/EventQuery.ts:36
Parameters ​
kind ​
number
context ​
Returns ​
EventQuery
Properties ​
authors? ​
optionalauthors:string[]
Defined in: core/EventQuery.ts:27
context ​
readonlycontext:KindContext
Defined in: core/EventQuery.ts:38
extraRoutes ​
extraRoutes:
RelaySelection[] =[]
Defined in: core/EventQuery.ts:34
forcedRoutes? ​
optionalforcedRoutes:RelaySelection[]
Defined in: core/EventQuery.ts:33
ids? ​
optionalids:string[]
Defined in: core/EventQuery.ts:26
kind ​
readonlykind:number
Defined in: core/EventQuery.ts:37
limit? ​
optionallimit:number
Defined in: core/EventQuery.ts:30
search? ​
optionalsearch:string
Defined in: core/EventQuery.ts:31
since? ​
optionalsince:number
Defined in: core/EventQuery.ts:28
tagValues ​
tagValues:
Map<string,string[]>
Defined in: core/EventQuery.ts:32
until? ​
optionaluntil:number
Defined in: core/EventQuery.ts:29
Methods ​
addAuthors() ​
addAuthors(
authors):EventQuery
Defined in: core/EventQuery.ts:71
Parameters ​
authors ​
string[]
Returns ​
EventQuery
addIds() ​
addIds(
ids):EventQuery
Defined in: core/EventQuery.ts:47
Parameters ​
ids ​
string[]
Returns ​
EventQuery
addRoutes() ​
addRoutes(
routes):EventQuery
Defined in: core/EventQuery.ts:204
Adds routes alongside the rendered ones.
Parameters ​
routes ​
Returns ​
EventQuery
addTag() ​
addTag(
key,values):EventQuery
Defined in: core/EventQuery.ts:95
Parameters ​
key ​
string
values ​
string[]
Returns ​
EventQuery
authorRoutes() ​
protectedauthorRoutes(weight):RelaySelection[]
Defined in: core/EventQuery.ts:258
Returns the outboxes of the authors being queried.
Parameters ​
weight ​
number = 1
Returns ​
clearAuthors() ​
clearAuthors():
EventQuery
Defined in: core/EventQuery.ts:83
Returns ​
EventQuery
clearIds() ​
clearIds():
EventQuery
Defined in: core/EventQuery.ts:59
Returns ​
EventQuery
clearLimit() ​
clearLimit():
EventQuery
Defined in: core/EventQuery.ts:159
Returns ​
EventQuery
clearRoom() ​
clearRoom():
EventQuery
Defined in: core/EventQuery.ts:184
Returns ​
EventQuery
clearRoutes() ​
clearRoutes():
EventQuery
Defined in: core/EventQuery.ts:210
Returns ​
EventQuery
clearSearch() ​
clearSearch():
EventQuery
Defined in: core/EventQuery.ts:171
Returns ​
EventQuery
clearSince() ​
clearSince():
EventQuery
Defined in: core/EventQuery.ts:135
Returns ​
EventQuery
clearTag() ​
clearTag(
key):EventQuery
Defined in: core/EventQuery.ts:117
Parameters ​
key ​
string
Returns ​
EventQuery
clearTags() ​
clearTags():
EventQuery
Defined in: core/EventQuery.ts:123
Returns ​
EventQuery
clearUntil() ​
clearUntil():
EventQuery
Defined in: core/EventQuery.ts:147
Returns ​
EventQuery
mentionRoutes() ​
protectedmentionRoutes(weight):RelaySelection[]
Defined in: core/EventQuery.ts:266
Returns the inboxes of the pubkeys this query filters on by p tag — where events addressed to them are delivered.
Parameters ​
weight ​
number = 0.5
Returns ​
relays() ​
relays():
Promise<string[]>
Defined in: core/EventQuery.ts:290
Shortcut for getting relays from the router scenario.
Returns ​
Promise<string[]>
removeAuthors() ​
removeAuthors(
authors):EventQuery
Defined in: core/EventQuery.ts:77
Parameters ​
authors ​
string[]
Returns ​
EventQuery
removeIds() ​
removeIds(
ids):EventQuery
Defined in: core/EventQuery.ts:53
Parameters ​
ids ​
string[]
Returns ​
EventQuery
removeTag() ​
removeTag(
key,values):EventQuery
Defined in: core/EventQuery.ts:106
Parameters ​
key ​
string
values ​
string[]
Returns ​
EventQuery
render() ​
render():
Promise<{filters:Filter[];relays:string[]; }>
Defined in: core/EventQuery.ts:297
Returns rendered filters along with the relays to request them from.
Returns ​
Promise<{ filters: Filter[]; relays: string[]; }>
renderBaseFilter() ​
protectedrenderBaseFilter():MaybeAsync<Filter>
Defined in: core/EventQuery.ts:220
Returns the filter fields that may be set on any kind.
Returns ​
renderDomainFilters() ​
protectedrenderDomainFilters():MaybeAsync<Filter[]>
Defined in: core/EventQuery.ts:241
Returns one filter per kind-specific variant. A relay ANDs a filter's fields together, so alternative references go in separate filters.
Returns ​
MaybeAsync<Filter[]>
renderFilters() ​
renderFilters():
Promise<Filter[]>
Defined in: core/EventQuery.ts:248
Returns the complete filter list for requesting.
Returns ​
Promise<Filter[]>
renderRoutes() ​
abstractprotectedrenderRoutes():MaybeAsync<RelaySelection[]>
Defined in: core/EventQuery.ts:274
Returns the list of routes this query should be sent to. Every kind implements this itself; there is no default.
Returns ​
scenario() ​
scenario():
Promise<RelayScenario>
Defined in: core/EventQuery.ts:281
Returns a router scenario for this query. Requests the routes given to setRoutes when set, otherwise the rendered ones; either way addRoutes contributes on top.
Returns ​
Promise<RelayScenario>
setAuthors() ​
setAuthors(
authors):EventQuery
Defined in: core/EventQuery.ts:65
Parameters ​
authors ​
string[]
Returns ​
EventQuery
setIds() ​
setIds(
ids):EventQuery
Defined in: core/EventQuery.ts:41
Parameters ​
ids ​
string[]
Returns ​
EventQuery
setLimit() ​
setLimit(
limit):EventQuery
Defined in: core/EventQuery.ts:153
Parameters ​
limit ​
number
Returns ​
EventQuery
setRoom() ​
setRoom(
url,room):EventQuery
Defined in: core/EventQuery.ts:178
Parameters ​
url ​
string
room ​
string
Returns ​
EventQuery
setRoutes() ​
setRoutes(
routes):EventQuery
Defined in: core/EventQuery.ts:195
Replaces the rendered routes. These are routes rather than urls, so setRoutes([userInbox()]) asks the user's read relays without resolving them first.
Parameters ​
routes ​
Returns ​
EventQuery
setSearch() ​
setSearch(
search):EventQuery
Defined in: core/EventQuery.ts:165
Parameters ​
search ​
string
Returns ​
EventQuery
setSince() ​
setSince(
since):EventQuery
Defined in: core/EventQuery.ts:129
Parameters ​
since ​
number
Returns ​
EventQuery
setTag() ​
setTag(
key,values):EventQuery
Defined in: core/EventQuery.ts:89
Parameters ​
key ​
string
values ​
string[]
Returns ​
EventQuery
setUntil() ​
setUntil(
until):EventQuery
Defined in: core/EventQuery.ts:141
Parameters ​
until ​
number
Returns ​
EventQuery