ProtectedeventProtectedextraProtectedinitialProtectedloadingProtectedloadingProtectedloadingProtectedlocationProtectedpagesProtectedparamsProtectedrevalidatingStaticDEFAULT_This value should not be relied upon when preloading an API document.
In those cases the pageSize should be taken from the meta information of the preloaded
document. Checkout DiscussionListState.loadPage for an example.
ProtectedgetProtectedgetStored state parameters.
ProtectedgetIn the last request, has the user searched for a model?
ProtectedloadLoad a new page of results.
ProtectedmutateProtectedparamsProtectedparseAbstractrequestGet the parameters that should be passed in the API request. Do not include page offset unless subclass overrides loadPage.
Reconcile the realtime additions after a background revalidation.
refresh() empties extraDiscussions, because it routes through
clear(). revalidate() deliberately does not clear anything before it
asks the API, so it rebuilds pages and leaves extraDiscussions alone —
and the first page it gets back contains exactly the discussions realtime
put there, since a new post is what moved them to the top. Left unhandled
they render from both places at once, which is what a reader coming back
to an idle tab sees as a duplicate.
Only the ids the new pages actually contain are dropped. A revalidation
that failed resolves rather than rejecting and leaves pages untouched,
so clearing unconditionally would take realtime's additions off a list
that was never reloaded.
Get a map of sort keys (which appear in the URL, and are used for translation) to the API sort value that they represent.
The in-flight background refresh, if any. Deliberately not part of the
isLoading()family: a revalidation is invisible by design, so exposing it there would put the loading state back on screen.