Skip to main content

Interface: OngoingQuery

Properties

activated

activated: boolean


alias

alias: string


allObservables

Optional allObservables: ReplaySubject<Observable<DocsAndAlias>[]>

In case of joins, and if this ongoing query is the root, this field emits all the supported observables for example A.join(B, {...some join condition...}).join(C, {...some join condition}. This field will emit [A.subject.pipe(), B.subject.pipe(), C.subject.pipe()]. Any new supported queries will be added here.


canExpandForJoin

canExpandForJoin: boolean

If the query is a supporting query (right side of the join) and the query has '==' condition on the join column, there is no need to emit a new query when additional values are added to the left side of the join since the right side will not change.


clientRequestId

clientRequestId: string


dataSubject

dataSubject: BehaviorSubject<null | SquidDocument[]>


done

done: boolean


forceFetchFromServer

forceFetchFromServer: boolean


gotInitialResponse

gotInitialResponse: boolean


isEmptyForJoin

isEmptyForJoin: boolean


isInFlight

isInFlight: boolean


joinCondition

Optional joinCondition: JoinCondition


limitUnderflowState

limitUnderflowState: LimitUnderflowState

If there's a limit, we request limit + FETCH_BEYOND_LIMIT documents from the server. If we got that many documents, that means there may be even more. In that case, if our result set goes below limit + LIMIT_UNDERFLOW_TRIGGER documents (due to local or remote deletions), we need to resend the query to the server to potentially get more documents. If the number of documents is less than limit + FETCH_BEYOND_LIMIT, that means there are not that many documents on the server, so we don't need to resend the query regardless of how small our result size is or becomes.


query

query: Query<any>


queryRegistered

queryRegistered: BehaviorSubject<boolean>


subscribe

subscribe: boolean


supportedQueries

supportedQueries: OngoingQuery[]


supportingOngoingQuery

Optional supportingOngoingQuery: OngoingQuery


unsubscribeBlockerCount

unsubscribeBlockerCount: BehaviorSubject<number>

In case that this query is a parent of another query (that is, the other query is a subset of this query), this query should not be unsubscribed from the server until we registered the child query in the server.