From cfa6579b9d1945e473cc3107b9b21a042c0b5fd0 Mon Sep 17 00:00:00 2001 From: Wonsuk Choi Date: Mon, 21 Sep 2026 12:37:25 +0900 Subject: [PATCH] docs(query-core): add JSDoc for 'Subscribable' and 'Removable' base classes --- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../angular/reference/classes/Mutation.md | 14 ++++++--- .../reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../reference/classes/QueriesObserver.md | 27 ++++++++++++++-- .../angular/reference/classes/Query.md | 8 ++--- .../angular/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../lit/reference/classes/Mutation.md | 14 ++++++--- .../lit/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../lit/reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../lit/reference/classes/QueriesObserver.md | 27 ++++++++++++++-- docs/framework/lit/reference/classes/Query.md | 8 ++--- .../lit/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../lit/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../lit/reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../lit/reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../preact/reference/classes/Mutation.md | 14 ++++++--- .../preact/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../reference/classes/QueriesObserver.md | 27 ++++++++++++++-- .../preact/reference/classes/Query.md | 8 ++--- .../preact/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../preact/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../react/reference/classes/Mutation.md | 14 ++++++--- .../react/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../reference/classes/QueriesObserver.md | 27 ++++++++++++++-- .../react/reference/classes/Query.md | 8 ++--- .../react/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../react/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../solid/reference/classes/Mutation.md | 14 ++++++--- .../solid/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../reference/classes/QueriesObserver.md | 27 ++++++++++++++-- .../solid/reference/classes/Query.md | 8 ++--- .../solid/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../solid/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../svelte/reference/classes/Mutation.md | 14 ++++++--- .../svelte/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../reference/classes/QueriesObserver.md | 27 ++++++++++++++-- .../svelte/reference/classes/Query.md | 8 ++--- .../svelte/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../svelte/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../reference/interfaces/OnlineManager.md | 25 +++++++++++++-- .../classes/InfiniteQueryObserver.md | 25 +++++++++++++-- .../vue/reference/classes/Mutation.md | 14 ++++++--- .../vue/reference/classes/MutationCache.md | 31 ++++++++++++++++--- .../vue/reference/classes/MutationObserver.md | 27 ++++++++++++++-- .../vue/reference/classes/QueriesObserver.md | 27 ++++++++++++++-- docs/framework/vue/reference/classes/Query.md | 8 ++--- .../vue/reference/classes/QueryCache.md | 31 ++++++++++++++++--- .../vue/reference/classes/QueryObserver.md | 27 ++++++++++++++-- .../vue/reference/interfaces/FocusManager.md | 25 +++++++++++++-- .../vue/reference/interfaces/OnlineManager.md | 25 +++++++++++++-- packages/query-core/src/removable.ts | 9 ++++++ packages/query-core/src/subscribable.ts | 23 ++++++++++++++ 72 files changed, 1474 insertions(+), 238 deletions(-) diff --git a/docs/framework/angular/reference/classes/InfiniteQueryObserver.md b/docs/framework/angular/reference/classes/InfiniteQueryObserver.md index 0fc1765d488..b26ee216b8c 100644 --- a/docs/framework/angular/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/angular/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/angular/reference/classes/Mutation.md b/docs/framework/angular/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/angular/reference/classes/Mutation.md +++ b/docs/framework/angular/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/angular/reference/classes/MutationCache.md b/docs/framework/angular/reference/classes/MutationCache.md index 65015530c74..1cc8dd18632 100644 --- a/docs/framework/angular/reference/classes/MutationCache.md +++ b/docs/framework/angular/reference/classes/MutationCache.md @@ -67,7 +67,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -231,12 +231,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -251,7 +255,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -271,7 +275,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -291,7 +295,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -299,8 +305,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -309,6 +320,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/classes/MutationObserver.md b/docs/framework/angular/reference/classes/MutationObserver.md index 90bac0ff994..765be4ca99b 100644 --- a/docs/framework/angular/reference/classes/MutationObserver.md +++ b/docs/framework/angular/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/classes/QueriesObserver.md b/docs/framework/angular/reference/classes/QueriesObserver.md index 8bf48fdbebe..8dc1a72cb5f 100644 --- a/docs/framework/angular/reference/classes/QueriesObserver.md +++ b/docs/framework/angular/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/classes/Query.md b/docs/framework/angular/reference/classes/Query.md index fee2fb07529..646028952e1 100644 --- a/docs/framework/angular/reference/classes/Query.md +++ b/docs/framework/angular/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/angular/reference/classes/QueryCache.md b/docs/framework/angular/reference/classes/QueryCache.md index 982a6e72fb9..cb3d92e872f 100644 --- a/docs/framework/angular/reference/classes/QueryCache.md +++ b/docs/framework/angular/reference/classes/QueryCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -350,12 +350,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -370,7 +374,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -390,7 +394,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -446,7 +450,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -454,8 +460,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -464,6 +475,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/classes/QueryObserver.md b/docs/framework/angular/reference/classes/QueryObserver.md index 8f5dd48169e..ca217750da4 100644 --- a/docs/framework/angular/reference/classes/QueryObserver.md +++ b/docs/framework/angular/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/interfaces/FocusManager.md b/docs/framework/angular/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/angular/reference/interfaces/FocusManager.md +++ b/docs/framework/angular/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/angular/reference/interfaces/OnlineManager.md b/docs/framework/angular/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/angular/reference/interfaces/OnlineManager.md +++ b/docs/framework/angular/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/classes/InfiniteQueryObserver.md b/docs/framework/lit/reference/classes/InfiniteQueryObserver.md index 9aed0a23afa..ca8ee2dfb44 100644 --- a/docs/framework/lit/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/lit/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/lit/reference/classes/Mutation.md b/docs/framework/lit/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/lit/reference/classes/Mutation.md +++ b/docs/framework/lit/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/lit/reference/classes/MutationCache.md b/docs/framework/lit/reference/classes/MutationCache.md index 4b193f45424..799a759592d 100644 --- a/docs/framework/lit/reference/classes/MutationCache.md +++ b/docs/framework/lit/reference/classes/MutationCache.md @@ -67,7 +67,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -231,12 +231,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -251,7 +255,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -271,7 +275,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -291,7 +295,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -299,8 +305,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -309,6 +320,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/classes/MutationObserver.md b/docs/framework/lit/reference/classes/MutationObserver.md index 90bac0ff994..765be4ca99b 100644 --- a/docs/framework/lit/reference/classes/MutationObserver.md +++ b/docs/framework/lit/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/classes/QueriesObserver.md b/docs/framework/lit/reference/classes/QueriesObserver.md index 42841eaddf8..c66ff6389eb 100644 --- a/docs/framework/lit/reference/classes/QueriesObserver.md +++ b/docs/framework/lit/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/classes/Query.md b/docs/framework/lit/reference/classes/Query.md index fee2fb07529..646028952e1 100644 --- a/docs/framework/lit/reference/classes/Query.md +++ b/docs/framework/lit/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/lit/reference/classes/QueryCache.md b/docs/framework/lit/reference/classes/QueryCache.md index 2f05591bd63..1d6451e1179 100644 --- a/docs/framework/lit/reference/classes/QueryCache.md +++ b/docs/framework/lit/reference/classes/QueryCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -350,12 +350,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -370,7 +374,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -390,7 +394,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -446,7 +450,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -454,8 +460,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -464,6 +475,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/classes/QueryObserver.md b/docs/framework/lit/reference/classes/QueryObserver.md index 3cdbfaf4984..d20e66ba665 100644 --- a/docs/framework/lit/reference/classes/QueryObserver.md +++ b/docs/framework/lit/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/interfaces/FocusManager.md b/docs/framework/lit/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/lit/reference/interfaces/FocusManager.md +++ b/docs/framework/lit/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/lit/reference/interfaces/OnlineManager.md b/docs/framework/lit/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/lit/reference/interfaces/OnlineManager.md +++ b/docs/framework/lit/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/classes/InfiniteQueryObserver.md b/docs/framework/preact/reference/classes/InfiniteQueryObserver.md index 0fc1765d488..b26ee216b8c 100644 --- a/docs/framework/preact/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/preact/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/preact/reference/classes/Mutation.md b/docs/framework/preact/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/preact/reference/classes/Mutation.md +++ b/docs/framework/preact/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/preact/reference/classes/MutationCache.md b/docs/framework/preact/reference/classes/MutationCache.md index 65015530c74..1cc8dd18632 100644 --- a/docs/framework/preact/reference/classes/MutationCache.md +++ b/docs/framework/preact/reference/classes/MutationCache.md @@ -67,7 +67,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -231,12 +231,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -251,7 +255,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -271,7 +275,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -291,7 +295,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -299,8 +305,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -309,6 +320,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/classes/MutationObserver.md b/docs/framework/preact/reference/classes/MutationObserver.md index 90bac0ff994..765be4ca99b 100644 --- a/docs/framework/preact/reference/classes/MutationObserver.md +++ b/docs/framework/preact/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/classes/QueriesObserver.md b/docs/framework/preact/reference/classes/QueriesObserver.md index 8bf48fdbebe..8dc1a72cb5f 100644 --- a/docs/framework/preact/reference/classes/QueriesObserver.md +++ b/docs/framework/preact/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/classes/Query.md b/docs/framework/preact/reference/classes/Query.md index fee2fb07529..646028952e1 100644 --- a/docs/framework/preact/reference/classes/Query.md +++ b/docs/framework/preact/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/preact/reference/classes/QueryCache.md b/docs/framework/preact/reference/classes/QueryCache.md index 982a6e72fb9..cb3d92e872f 100644 --- a/docs/framework/preact/reference/classes/QueryCache.md +++ b/docs/framework/preact/reference/classes/QueryCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -350,12 +350,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -370,7 +374,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -390,7 +394,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -446,7 +450,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -454,8 +460,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -464,6 +475,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/classes/QueryObserver.md b/docs/framework/preact/reference/classes/QueryObserver.md index 8f5dd48169e..ca217750da4 100644 --- a/docs/framework/preact/reference/classes/QueryObserver.md +++ b/docs/framework/preact/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/interfaces/FocusManager.md b/docs/framework/preact/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/preact/reference/interfaces/FocusManager.md +++ b/docs/framework/preact/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/preact/reference/interfaces/OnlineManager.md b/docs/framework/preact/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/preact/reference/interfaces/OnlineManager.md +++ b/docs/framework/preact/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/classes/InfiniteQueryObserver.md b/docs/framework/react/reference/classes/InfiniteQueryObserver.md index 84a44027ee5..a0c04dc27e4 100644 --- a/docs/framework/react/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/react/reference/classes/InfiniteQueryObserver.md @@ -133,7 +133,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -163,14 +163,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -179,6 +186,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -430,12 +447,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/react/reference/classes/Mutation.md b/docs/framework/react/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/react/reference/classes/Mutation.md +++ b/docs/framework/react/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/react/reference/classes/MutationCache.md b/docs/framework/react/reference/classes/MutationCache.md index f5643fb5fe1..2e02303c789 100644 --- a/docs/framework/react/reference/classes/MutationCache.md +++ b/docs/framework/react/reference/classes/MutationCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -234,12 +234,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -254,7 +258,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -274,7 +278,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -294,7 +298,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -302,8 +308,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -312,6 +323,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/classes/MutationObserver.md b/docs/framework/react/reference/classes/MutationObserver.md index 90bac0ff994..765be4ca99b 100644 --- a/docs/framework/react/reference/classes/MutationObserver.md +++ b/docs/framework/react/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/classes/QueriesObserver.md b/docs/framework/react/reference/classes/QueriesObserver.md index 0bfdcccbf00..34d244ebe6f 100644 --- a/docs/framework/react/reference/classes/QueriesObserver.md +++ b/docs/framework/react/reference/classes/QueriesObserver.md @@ -82,7 +82,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -205,12 +205,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -303,7 +307,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -311,8 +317,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -321,6 +332,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/classes/Query.md b/docs/framework/react/reference/classes/Query.md index fee2fb07529..646028952e1 100644 --- a/docs/framework/react/reference/classes/Query.md +++ b/docs/framework/react/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/react/reference/classes/QueryCache.md b/docs/framework/react/reference/classes/QueryCache.md index 749af9a1bca..bca2860a75e 100644 --- a/docs/framework/react/reference/classes/QueryCache.md +++ b/docs/framework/react/reference/classes/QueryCache.md @@ -73,7 +73,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -353,12 +353,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -373,7 +377,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -393,7 +397,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -449,7 +453,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -457,8 +463,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -467,6 +478,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/classes/QueryObserver.md b/docs/framework/react/reference/classes/QueryObserver.md index bafb738ee20..efd54965250 100644 --- a/docs/framework/react/reference/classes/QueryObserver.md +++ b/docs/framework/react/reference/classes/QueryObserver.md @@ -96,7 +96,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -301,12 +301,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -461,7 +465,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -469,8 +475,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -479,6 +490,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/interfaces/FocusManager.md b/docs/framework/react/reference/interfaces/FocusManager.md index a4905c66cb3..6ef9966e9ce 100644 --- a/docs/framework/react/reference/interfaces/FocusManager.md +++ b/docs/framework/react/reference/interfaces/FocusManager.md @@ -30,12 +30,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -205,7 +209,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -213,8 +219,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -223,6 +234,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/react/reference/interfaces/OnlineManager.md b/docs/framework/react/reference/interfaces/OnlineManager.md index 9bba37298ff..a4da5d8ca90 100644 --- a/docs/framework/react/reference/interfaces/OnlineManager.md +++ b/docs/framework/react/reference/interfaces/OnlineManager.md @@ -34,12 +34,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -182,7 +186,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -190,8 +196,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -200,6 +211,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/classes/InfiniteQueryObserver.md b/docs/framework/solid/reference/classes/InfiniteQueryObserver.md index 836e3d52947..654d14c9a99 100644 --- a/docs/framework/solid/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/solid/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/solid/reference/classes/Mutation.md b/docs/framework/solid/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/solid/reference/classes/Mutation.md +++ b/docs/framework/solid/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/solid/reference/classes/MutationCache.md b/docs/framework/solid/reference/classes/MutationCache.md index 65015530c74..1cc8dd18632 100644 --- a/docs/framework/solid/reference/classes/MutationCache.md +++ b/docs/framework/solid/reference/classes/MutationCache.md @@ -67,7 +67,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -231,12 +231,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -251,7 +255,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -271,7 +275,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -291,7 +295,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -299,8 +305,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -309,6 +320,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/classes/MutationObserver.md b/docs/framework/solid/reference/classes/MutationObserver.md index b0a5f850b74..4795bf9e942 100644 --- a/docs/framework/solid/reference/classes/MutationObserver.md +++ b/docs/framework/solid/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/classes/QueriesObserver.md b/docs/framework/solid/reference/classes/QueriesObserver.md index 0ab09d19e60..719d1b594cd 100644 --- a/docs/framework/solid/reference/classes/QueriesObserver.md +++ b/docs/framework/solid/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/classes/Query.md b/docs/framework/solid/reference/classes/Query.md index a996eb21a15..eca90a14360 100644 --- a/docs/framework/solid/reference/classes/Query.md +++ b/docs/framework/solid/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/solid/reference/classes/QueryCache.md b/docs/framework/solid/reference/classes/QueryCache.md index fab04311c1b..4a5f9bd3ab0 100644 --- a/docs/framework/solid/reference/classes/QueryCache.md +++ b/docs/framework/solid/reference/classes/QueryCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -350,12 +350,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -370,7 +374,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -390,7 +394,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -446,7 +450,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -454,8 +460,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -464,6 +475,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/classes/QueryObserver.md b/docs/framework/solid/reference/classes/QueryObserver.md index 87b45f54c5f..39e00ca9609 100644 --- a/docs/framework/solid/reference/classes/QueryObserver.md +++ b/docs/framework/solid/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/interfaces/FocusManager.md b/docs/framework/solid/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/solid/reference/interfaces/FocusManager.md +++ b/docs/framework/solid/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/solid/reference/interfaces/OnlineManager.md b/docs/framework/solid/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/solid/reference/interfaces/OnlineManager.md +++ b/docs/framework/solid/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/classes/InfiniteQueryObserver.md b/docs/framework/svelte/reference/classes/InfiniteQueryObserver.md index 0fc1765d488..b26ee216b8c 100644 --- a/docs/framework/svelte/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/svelte/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/svelte/reference/classes/Mutation.md b/docs/framework/svelte/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/svelte/reference/classes/Mutation.md +++ b/docs/framework/svelte/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/svelte/reference/classes/MutationCache.md b/docs/framework/svelte/reference/classes/MutationCache.md index 65015530c74..1cc8dd18632 100644 --- a/docs/framework/svelte/reference/classes/MutationCache.md +++ b/docs/framework/svelte/reference/classes/MutationCache.md @@ -67,7 +67,7 @@ Defined in: [packages/query-core/src/mutationCache.ts:129](https://github.com/Ta protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -231,12 +231,16 @@ const mutations = mutationCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -251,7 +255,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -271,7 +275,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -291,7 +295,9 @@ Subscribable.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -299,8 +305,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -309,6 +320,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/classes/MutationObserver.md b/docs/framework/svelte/reference/classes/MutationObserver.md index 90bac0ff994..765be4ca99b 100644 --- a/docs/framework/svelte/reference/classes/MutationObserver.md +++ b/docs/framework/svelte/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/classes/QueriesObserver.md b/docs/framework/svelte/reference/classes/QueriesObserver.md index 8bf48fdbebe..8dc1a72cb5f 100644 --- a/docs/framework/svelte/reference/classes/QueriesObserver.md +++ b/docs/framework/svelte/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/classes/Query.md b/docs/framework/svelte/reference/classes/Query.md index fee2fb07529..646028952e1 100644 --- a/docs/framework/svelte/reference/classes/Query.md +++ b/docs/framework/svelte/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/svelte/reference/classes/QueryCache.md b/docs/framework/svelte/reference/classes/QueryCache.md index 982a6e72fb9..cb3d92e872f 100644 --- a/docs/framework/svelte/reference/classes/QueryCache.md +++ b/docs/framework/svelte/reference/classes/QueryCache.md @@ -70,7 +70,7 @@ Defined in: [packages/query-core/src/queryCache.ts:126](https://github.com/TanSt protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -350,12 +350,16 @@ const queries = queryCache.getAll() hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -370,7 +374,7 @@ Subscribable.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -390,7 +394,7 @@ Subscribable.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -446,7 +450,9 @@ if (query) { subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -454,8 +460,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -464,6 +475,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/classes/QueryObserver.md b/docs/framework/svelte/reference/classes/QueryObserver.md index 8f5dd48169e..ca217750da4 100644 --- a/docs/framework/svelte/reference/classes/QueryObserver.md +++ b/docs/framework/svelte/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/interfaces/FocusManager.md b/docs/framework/svelte/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/svelte/reference/interfaces/FocusManager.md +++ b/docs/framework/svelte/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/svelte/reference/interfaces/OnlineManager.md b/docs/framework/svelte/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/svelte/reference/interfaces/OnlineManager.md +++ b/docs/framework/svelte/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/classes/InfiniteQueryObserver.md b/docs/framework/vue/reference/classes/InfiniteQueryObserver.md index 7553204ff87..61ce78a8535 100644 --- a/docs/framework/vue/reference/classes/InfiniteQueryObserver.md +++ b/docs/framework/vue/reference/classes/InfiniteQueryObserver.md @@ -130,7 +130,7 @@ QueryObserver.getCurrentResult protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -160,14 +160,21 @@ subscribe: (listener: InfiniteQueryObserverListener) => () => void; Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github.com/TanStack/query/blob/main/packages/query-core/src/infiniteQueryObserver.ts#L55) +Registers a listener to be called on every update this object notifies about. + #### Parameters ##### listener `InfiniteQueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -176,6 +183,16 @@ Defined in: [packages/query-core/src/infiniteQueryObserver.ts:55](https://github `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Overrides ```ts @@ -427,12 +444,16 @@ synchronously. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from [`QueryObserver`](QueryObserver.md).[`hasListeners`](QueryObserver.md#haslisteners) diff --git a/docs/framework/vue/reference/classes/Mutation.md b/docs/framework/vue/reference/classes/Mutation.md index fa3b9c79522..49975b76a75 100644 --- a/docs/framework/vue/reference/classes/Mutation.md +++ b/docs/framework/vue/reference/classes/Mutation.md @@ -78,7 +78,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -142,7 +142,7 @@ The `meta` object passed in the mutation's options, if any. protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -199,7 +199,11 @@ await mutation?.continue() destroy(): void; ``` -Defined in: [packages/query-core/src/removable.ts:10](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L10) +Defined in: [packages/query-core/src/removable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L19) + +Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. +A subclass may override this to release what it holds on to as well — `Query` also cancels any +in-flight fetch. #### Returns @@ -291,7 +295,7 @@ Removable.optionalRemove protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -311,7 +315,7 @@ Removable.scheduleGc protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/vue/reference/classes/MutationCache.md b/docs/framework/vue/reference/classes/MutationCache.md index 4b17e1412af..041b7fc6fc2 100644 --- a/docs/framework/vue/reference/classes/MutationCache.md +++ b/docs/framework/vue/reference/classes/MutationCache.md @@ -63,7 +63,7 @@ MC.config protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -251,12 +251,16 @@ MC.getAll hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -271,7 +275,7 @@ MC.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -291,7 +295,7 @@ MC.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -311,7 +315,9 @@ MC.onUnsubscribe subscribe(listener: MutationCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -319,8 +325,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -329,6 +340,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/classes/MutationObserver.md b/docs/framework/vue/reference/classes/MutationObserver.md index b0a5f850b74..4795bf9e942 100644 --- a/docs/framework/vue/reference/classes/MutationObserver.md +++ b/docs/framework/vue/reference/classes/MutationObserver.md @@ -82,7 +82,7 @@ Subscribable< protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -140,12 +140,16 @@ built yet, e.g. before the first `mutate()` call or after `reset()`). hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -310,7 +314,9 @@ observer.setOptions({ subscribe(listener: MutationObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -318,8 +324,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `MutationObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -328,6 +339,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/classes/QueriesObserver.md b/docs/framework/vue/reference/classes/QueriesObserver.md index a8fdea14666..905c83684cd 100644 --- a/docs/framework/vue/reference/classes/QueriesObserver.md +++ b/docs/framework/vue/reference/classes/QueriesObserver.md @@ -79,7 +79,7 @@ Subscribable.constructor protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -202,12 +202,16 @@ the same order as the queries passed to the constructor or `setQueries`. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -300,7 +304,9 @@ observer.setQueries([ subscribe(listener: QueriesObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -308,8 +314,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueriesObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -318,6 +329,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/classes/Query.md b/docs/framework/vue/reference/classes/Query.md index a996eb21a15..eca90a14360 100644 --- a/docs/framework/vue/reference/classes/Query.md +++ b/docs/framework/vue/reference/classes/Query.md @@ -80,7 +80,7 @@ Removable.constructor gcTime: number; ``` -Defined in: [packages/query-core/src/removable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L7) +Defined in: [packages/query-core/src/removable.ts:11](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L11) #### Inherited from @@ -213,7 +213,7 @@ await query.cancel() protected clearGcTimeout(): void; ``` -Defined in: [packages/query-core/src/removable.ts:32](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L32) +Defined in: [packages/query-core/src/removable.ts:41](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L41) #### Returns @@ -522,7 +522,7 @@ in-flight fetch. protected scheduleGc(): void; ``` -Defined in: [packages/query-core/src/removable.ts:14](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L14) +Defined in: [packages/query-core/src/removable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L23) #### Returns @@ -566,7 +566,7 @@ user manually trigger a loading/error state or edit the cached data. protected updateGcTime(newGcTime: number | undefined): void; ``` -Defined in: [packages/query-core/src/removable.ts:24](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L24) +Defined in: [packages/query-core/src/removable.ts:33](https://github.com/TanStack/query/blob/main/packages/query-core/src/removable.ts#L33) #### Parameters diff --git a/docs/framework/vue/reference/classes/QueryCache.md b/docs/framework/vue/reference/classes/QueryCache.md index ad4911294b8..9a0873bcb69 100644 --- a/docs/framework/vue/reference/classes/QueryCache.md +++ b/docs/framework/vue/reference/classes/QueryCache.md @@ -63,7 +63,7 @@ QC.config protected listeners: Set; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -379,12 +379,16 @@ QC.getAll hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -399,7 +403,7 @@ QC.hasListeners protected onSubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:23](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L23) +Defined in: [packages/query-core/src/subscribable.ts:46](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L46) #### Returns @@ -419,7 +423,7 @@ QC.onSubscribe protected onUnsubscribe(): void; ``` -Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) +Defined in: [packages/query-core/src/subscribable.ts:50](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L50) #### Returns @@ -481,7 +485,9 @@ QC.remove subscribe(listener: QueryCacheListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -489,8 +495,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryCacheListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -499,6 +510,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/classes/QueryObserver.md b/docs/framework/vue/reference/classes/QueryObserver.md index 891331d2cb5..e0292429063 100644 --- a/docs/framework/vue/reference/classes/QueryObserver.md +++ b/docs/framework/vue/reference/classes/QueryObserver.md @@ -93,7 +93,7 @@ Subscribable>.constructor protected listeners: Set>; ``` -Defined in: [packages/query-core/src/subscribable.ts:2](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L2) +Defined in: [packages/query-core/src/subscribable.ts:7](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L7) #### Inherited from @@ -298,12 +298,16 @@ returned value is available synchronously, ahead of `setOptions` triggering an a hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -458,7 +462,9 @@ regains focus. subscribe(listener: QueryObserverListener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -466,8 +472,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `QueryObserverListener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -476,6 +487,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/interfaces/FocusManager.md b/docs/framework/vue/reference/interfaces/FocusManager.md index 63e0813388a..07f9ed34f0e 100644 --- a/docs/framework/vue/reference/interfaces/FocusManager.md +++ b/docs/framework/vue/reference/interfaces/FocusManager.md @@ -27,12 +27,16 @@ It can be used to change the default event listeners or to manually change the f hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -202,7 +206,9 @@ focusManager.setFocused(undefined) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -210,8 +216,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -220,6 +231,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/docs/framework/vue/reference/interfaces/OnlineManager.md b/docs/framework/vue/reference/interfaces/OnlineManager.md index 6f0f71074db..da620d2120a 100644 --- a/docs/framework/vue/reference/interfaces/OnlineManager.md +++ b/docs/framework/vue/reference/interfaces/OnlineManager.md @@ -31,12 +31,16 @@ detect changes. hasListeners(): boolean; ``` -Defined in: [packages/query-core/src/subscribable.ts:19](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L19) +Defined in: [packages/query-core/src/subscribable.ts:42](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L42) + +Whether anything is currently subscribed. #### Returns `boolean` +`true` while at least one listener is registered, `false` once they have all unsubscribed. + #### Inherited from ```ts @@ -179,7 +183,9 @@ onlineManager.setOnline(false) subscribe(listener: Listener): () => void; ``` -Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L8) +Defined in: [packages/query-core/src/subscribable.ts:27](https://github.com/TanStack/query/blob/main/packages/query-core/src/subscribable.ts#L27) + +Registers a listener to be called on every update this object notifies about. #### Parameters @@ -187,8 +193,13 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `Listener` +Called on each update, with whatever the subclass passes to its subscribers. + #### Returns +A function that removes the listener again. Call it to stop listening; the base class never +drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + ```ts (): void; ``` @@ -197,6 +208,16 @@ Defined in: [packages/query-core/src/subscribable.ts:8](https://github.com/TanSt `void` +#### Example + +```ts +const unsubscribe = subscribable.subscribe(() => { + // react to the update +}) + +unsubscribe() +``` + #### Inherited from ```ts diff --git a/packages/query-core/src/removable.ts b/packages/query-core/src/removable.ts index 4e84ee62060..e987b84555f 100644 --- a/packages/query-core/src/removable.ts +++ b/packages/query-core/src/removable.ts @@ -3,10 +3,19 @@ import { isServer as isServerEnvironment } from './environmentManager' import { isValidTimeout } from './utils' import type { ManagedTimerId } from './timeoutManager' +/** + * The base class for cache entries that are garbage collected once nothing is using them — + * `Query` and `Mutation` both extend it. `gcTime` controls how long an unused entry is kept. + */ export abstract class Removable { gcTime!: number #gcTimeout?: ManagedTimerId + /** + * Clears the pending garbage collection timeout, so the entry is no longer scheduled for removal. + * A subclass may override this to release what it holds on to as well — `Query` also cancels any + * in-flight fetch. + */ destroy(): void { this.clearGcTimeout() } diff --git a/packages/query-core/src/subscribable.ts b/packages/query-core/src/subscribable.ts index 044efe64720..a28c83f4663 100644 --- a/packages/query-core/src/subscribable.ts +++ b/packages/query-core/src/subscribable.ts @@ -1,3 +1,8 @@ +/** + * The base class behind everything in Query that you can subscribe to: `QueryCache`, `MutationCache`, + * the observers, and the `FocusManager`/`OnlineManager` behind `focusManager` and `onlineManager`. + * Subclasses decide what a listener receives and when it is called. + */ export class Subscribable { protected listeners = new Set() @@ -5,6 +10,20 @@ export class Subscribable { this.subscribe = this.subscribe.bind(this) } + /** + * Registers a listener to be called on every update this object notifies about. + * @param listener - Called on each update, with whatever the subclass passes to its subscribers. + * @returns A function that removes the listener again. Call it to stop listening; the base class never + * drops a listener on its own, though some subclasses clear all of theirs in `destroy()`. + * @example + * ```ts + * const unsubscribe = subscribable.subscribe(() => { + * // react to the update + * }) + * + * unsubscribe() + * ``` + */ subscribe(listener: TListener): () => void { this.listeners.add(listener) @@ -16,6 +35,10 @@ export class Subscribable { } } + /** + * Whether anything is currently subscribed. + * @returns `true` while at least one listener is registered, `false` once they have all unsubscribed. + */ hasListeners(): boolean { return this.listeners.size > 0 }