@ethlete/query 6.0.0-next.10 → 6.0.0-next.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/fesm2022/ethlete-query.mjs +94 -70
- package/fesm2022/ethlete-query.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ethlete-query.d.ts +28 -3
package/package.json
CHANGED
package/types/ethlete-query.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { Signal, Injector, CreateComputedOptions, InjectionToken, TrackByFunction, PipeTransform, OnInit, OnDestroy, DestroyRef, EnvironmentInjector,
|
|
2
|
+
import { Signal, Injector, CreateComputedOptions, InjectionToken, TrackByFunction, PipeTransform, OnInit, OnDestroy, DestroyRef, EnvironmentInjector, ErrorHandler, WritableSignal, CreateEffectOptions } from '@angular/core';
|
|
3
3
|
import * as _ethlete_core from '@ethlete/core';
|
|
4
4
|
import { ProviderResult, RuntimeError } from '@ethlete/core';
|
|
5
5
|
import * as rxjs from 'rxjs';
|
|
@@ -1981,8 +1981,6 @@ type QueryDependencies = {
|
|
|
1981
1981
|
client: QueryClient;
|
|
1982
1982
|
/** The injector of the query */
|
|
1983
1983
|
injector: EnvironmentInjector;
|
|
1984
|
-
/** The effect scheduler */
|
|
1985
|
-
effectScheduler: _EffectScheduler;
|
|
1986
1984
|
/** The error handler */
|
|
1987
1985
|
ngErrorHandler: ErrorHandler;
|
|
1988
1986
|
/** The http client */
|
|
@@ -2052,6 +2050,18 @@ type SetupQueryStateOptions<TArgs extends QueryArgs> = {
|
|
|
2052
2050
|
type QueryStateSubtle<TArgs extends QueryArgs> = {
|
|
2053
2051
|
request: WritableSignal<HttpRequest<TArgs> | null>;
|
|
2054
2052
|
rawResponse: WritableSignal<RawResponseType<TArgs> | null>;
|
|
2053
|
+
/**
|
|
2054
|
+
* Forwards the given request's discrete event stream onto the query-level `events$`.
|
|
2055
|
+
* Called by `queryExecute` whenever a request is (re-)executed.
|
|
2056
|
+
*/
|
|
2057
|
+
bindRequestEvents: (request: HttpRequest<TArgs>) => void;
|
|
2058
|
+
/**
|
|
2059
|
+
* Installs the reactive source that backs `state.args`. The `withArgs` feature uses this so that
|
|
2060
|
+
* `state.args` always reflects the latest args (pulled from the reactive source on read) instead
|
|
2061
|
+
* of being push-updated by an effect that may not have run yet. Without a `withArgs` feature the
|
|
2062
|
+
* default source returns `null`.
|
|
2063
|
+
*/
|
|
2064
|
+
setArgsSource: (source: () => RequestArgs<TArgs> | null) => void;
|
|
2055
2065
|
};
|
|
2056
2066
|
type QueryState<TArgs extends QueryArgs> = {
|
|
2057
2067
|
rawResponse: WritableSignal<RawResponseType<TArgs> | null>;
|
|
@@ -2063,6 +2073,14 @@ type QueryState<TArgs extends QueryArgs> = {
|
|
|
2063
2073
|
lastTimeExecutedAt: WritableSignal<number | null>;
|
|
2064
2074
|
lastTriggeredBy: WritableSignal<string | null>;
|
|
2065
2075
|
executionState: Signal<QueryExecutionState<TArgs> | null>;
|
|
2076
|
+
/**
|
|
2077
|
+
* A discrete, query-level stream of every request event, fed synchronously from the current
|
|
2078
|
+
* request's `events$` at the moment each event occurs. Side-effect features
|
|
2079
|
+
* (success/error/logging) subscribe to this instead of edge-detecting on the shared, resettable
|
|
2080
|
+
* `response`/`error`/`latestHttpEvent` signals — so they cannot miss a transition when the next
|
|
2081
|
+
* execution swaps the underlying request.
|
|
2082
|
+
*/
|
|
2083
|
+
events$: Observable<RequestHttpEvent<TArgs>>;
|
|
2066
2084
|
subtle: QueryStateSubtle<TArgs>;
|
|
2067
2085
|
};
|
|
2068
2086
|
type QueryExecutionStateSuccess<TArgs extends QueryArgs> = {
|
|
@@ -2560,6 +2578,13 @@ type HttpRequest<TArgs extends QueryArgs> = {
|
|
|
2560
2578
|
response: Signal<ResponseType<TArgs> | null>;
|
|
2561
2579
|
/** The current event of the request */
|
|
2562
2580
|
currentEvent: Signal<RequestHttpEvent<TArgs> | null>;
|
|
2581
|
+
/**
|
|
2582
|
+
* A discrete stream of every event of this request, emitted synchronously at the moment the
|
|
2583
|
+
* event is processed (including the terminal Response / error event). Unlike the `currentEvent`
|
|
2584
|
+
* signal, this never coalesces or gets reset, so consumers cannot miss a transition. Completes
|
|
2585
|
+
* when the request is destroyed.
|
|
2586
|
+
*/
|
|
2587
|
+
events$: Observable<RequestHttpEvent<TArgs>>;
|
|
2563
2588
|
/** Whether the request is stale or not aka the cache header has expired */
|
|
2564
2589
|
isStale: Signal<boolean>;
|
|
2565
2590
|
};
|