@tanstack/angular-query-experimental 5.60.0 → 5.60.3
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/build/{rollup.d.ts → index.d.ts} +280 -361
- package/build/index.js +572 -0
- package/build/index.js.map +1 -0
- package/package.json +12 -15
- package/src/create-base-query.ts +117 -0
- package/src/index.ts +28 -0
- package/src/infinite-query-options.ts +125 -0
- package/src/inject-infinite-query.ts +119 -0
- package/src/inject-is-fetching.ts +49 -0
- package/src/inject-is-mutating.ts +48 -0
- package/src/inject-mutation-state.ts +102 -0
- package/src/inject-mutation.ts +121 -0
- package/src/inject-queries.ts +246 -0
- package/src/inject-query-client.ts +22 -0
- package/src/inject-query.ts +207 -0
- package/src/providers.ts +351 -0
- package/src/query-options.ts +125 -0
- package/src/signal-proxy.ts +46 -0
- package/src/test-setup.ts +12 -0
- package/src/types.ts +328 -0
- package/src/util/assert-injector/assert-injector.test.ts +74 -0
- package/src/util/assert-injector/assert-injector.ts +81 -0
- package/src/util/index.ts +13 -0
- package/src/util/is-dev-mode/is-dev-mode.ts +3 -0
- package/src/util/lazy-init/lazy-init.ts +34 -0
- package/src/util/lazy-signal-initializer/lazy-signal-initializer.ts +23 -0
- package/build/README.md +0 -133
- package/build/esm2022/create-base-query.mjs +0 -62
- package/build/esm2022/index.mjs +0 -16
- package/build/esm2022/infinite-query-options.mjs +0 -12
- package/build/esm2022/inject-infinite-query.mjs +0 -15
- package/build/esm2022/inject-is-fetching.mjs +0 -38
- package/build/esm2022/inject-is-mutating.mjs +0 -37
- package/build/esm2022/inject-mutation-state.mjs +0 -47
- package/build/esm2022/inject-mutation.mjs +0 -51
- package/build/esm2022/inject-queries.mjs +0 -33
- package/build/esm2022/inject-query-client.mjs +0 -23
- package/build/esm2022/inject-query.mjs +0 -44
- package/build/esm2022/providers.mjs +0 -206
- package/build/esm2022/query-options.mjs +0 -26
- package/build/esm2022/signal-proxy.mjs +0 -38
- package/build/esm2022/tanstack-angular-query-experimental.mjs +0 -5
- package/build/esm2022/types.mjs +0 -3
- package/build/esm2022/util/assert-injector/assert-injector.mjs +0 -21
- package/build/esm2022/util/create-injection-token/create-injection-token.mjs +0 -61
- package/build/esm2022/util/index.mjs +0 -9
- package/build/esm2022/util/is-dev-mode/is-dev-mode.mjs +0 -3
- package/build/esm2022/util/lazy-init/lazy-init.mjs +0 -31
- package/build/esm2022/util/lazy-signal-initializer/lazy-signal-initializer.mjs +0 -14
- package/build/fesm2022/tanstack-angular-query-experimental.mjs +0 -738
- package/build/fesm2022/tanstack-angular-query-experimental.mjs.map +0 -1
package/build/README.md
DELETED
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-

|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/@tanstack/angular-query-experimental)
|
|
4
|
-
[](https://github.com/TanStack/query/blob/main/LICENSE)
|
|
5
|
-
[](https://bundlephobia.com/package/@tanstack/angular-query-experimental)
|
|
6
|
-
[](https://www.npmjs.com/package/@tanstack/angular-query-experimental)
|
|
7
|
-
|
|
8
|
-
# Angular Query
|
|
9
|
-
|
|
10
|
-
> IMPORTANT: This library is currently in an experimental stage. This means that breaking changes may happen in minor AND patch releases. Upgrade carefully. If you use this in production while in experimental stage, please lock your version to a patch-level version to avoid unexpected breaking changes.
|
|
11
|
-
|
|
12
|
-
Functions for fetching, caching and updating asynchronous data in Angular
|
|
13
|
-
|
|
14
|
-
# Documentation
|
|
15
|
-
|
|
16
|
-
Visit https://tanstack.com/query/latest/docs/framework/angular/overview
|
|
17
|
-
|
|
18
|
-
## Quick Features
|
|
19
|
-
|
|
20
|
-
- Transport/protocol/backend agnostic data fetching (REST, GraphQL, promises, whatever!)
|
|
21
|
-
- Auto Caching + Refetching (stale-while-revalidate, Window Refocus, Polling/Realtime)
|
|
22
|
-
- Parallel + Dependent Queries
|
|
23
|
-
- Mutations + Reactive Query Refetching
|
|
24
|
-
- Multi-layer Cache + Automatic Garbage Collection
|
|
25
|
-
- Paginated + Cursor-based Queries
|
|
26
|
-
- Load-More + Infinite Scroll Queries w/ Scroll Recovery
|
|
27
|
-
- Request Cancellation
|
|
28
|
-
- Dedicated Devtools
|
|
29
|
-
|
|
30
|
-
# Quick Start
|
|
31
|
-
|
|
32
|
-
> The Angular adapter for TanStack Query requires Angular 16 or higher.
|
|
33
|
-
|
|
34
|
-
1. Install `angular-query`
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
$ npm i @tanstack/angular-query-experimental
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
or
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
$ pnpm add @tanstack/angular-query-experimental
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
or
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
$ yarn add @tanstack/angular-query-experimental
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
or
|
|
53
|
-
|
|
54
|
-
```bash
|
|
55
|
-
$ bun add @tanstack/angular-query-experimental
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
2. Initialize **TanStack Query** by adding **provideTanStackQuery** to your application
|
|
59
|
-
|
|
60
|
-
```ts
|
|
61
|
-
import { provideTanStackQuery } from '@tanstack/angular-query-experimental'
|
|
62
|
-
import { QueryClient } from '@tanstack/angular-query-experimental'
|
|
63
|
-
|
|
64
|
-
bootstrapApplication(AppComponent, {
|
|
65
|
-
providers: [provideTanStackQuery(new QueryClient())],
|
|
66
|
-
})
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
or in a NgModule-based app
|
|
70
|
-
|
|
71
|
-
```ts
|
|
72
|
-
import { provideHttpClient } from '@angular/common/http'
|
|
73
|
-
import {
|
|
74
|
-
provideTanStackQuery,
|
|
75
|
-
QueryClient,
|
|
76
|
-
} from '@tanstack/angular-query-experimental'
|
|
77
|
-
|
|
78
|
-
@NgModule({
|
|
79
|
-
declarations: [AppComponent],
|
|
80
|
-
imports: [BrowserModule],
|
|
81
|
-
providers: [provideTanStackQuery(new QueryClient())],
|
|
82
|
-
bootstrap: [AppComponent],
|
|
83
|
-
})
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
3. Inject query
|
|
87
|
-
|
|
88
|
-
```ts
|
|
89
|
-
import { injectQuery } from '@tanstack/angular-query-experimental'
|
|
90
|
-
import { Component } from '@angular/core'
|
|
91
|
-
|
|
92
|
-
@Component({...})
|
|
93
|
-
export class TodosComponent {
|
|
94
|
-
info = injectQuery(() => ({ queryKey: ['todos'], queryFn: fetchTodoList }))
|
|
95
|
-
}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
4. If you need to update options on your query dynamically, make sure to pass them as signals. The query will refetch automatically if data for an updated query key is stale or not present.
|
|
99
|
-
|
|
100
|
-
[Open in StackBlitz](https://stackblitz.com/github/TanStack/query/tree/main/examples/angular/router)
|
|
101
|
-
|
|
102
|
-
```ts
|
|
103
|
-
@Component({})
|
|
104
|
-
export class PostComponent {
|
|
105
|
-
#postsService = inject(PostsService)
|
|
106
|
-
postId = input.required({
|
|
107
|
-
transform: numberAttribute,
|
|
108
|
-
})
|
|
109
|
-
|
|
110
|
-
postQuery = injectQuery(() => ({
|
|
111
|
-
queryKey: ['post', this.postId()],
|
|
112
|
-
queryFn: () => {
|
|
113
|
-
return lastValueFrom(this.#postsService.postById$(this.postId()))
|
|
114
|
-
},
|
|
115
|
-
}))
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
@Injectable({
|
|
119
|
-
providedIn: 'root',
|
|
120
|
-
})
|
|
121
|
-
export class PostsService {
|
|
122
|
-
#http = inject(HttpClient)
|
|
123
|
-
|
|
124
|
-
postById$ = (postId: number) =>
|
|
125
|
-
this.#http.get<Post>(`https://jsonplaceholder.typicode.com/posts/${postId}`)
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
export interface Post {
|
|
129
|
-
id: number
|
|
130
|
-
title: string
|
|
131
|
-
body: string
|
|
132
|
-
}
|
|
133
|
-
```
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, Injector, NgZone, computed, effect, inject, runInInjectionContext, signal, untracked, } from '@angular/core';
|
|
2
|
-
import { notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { signalProxy } from './signal-proxy';
|
|
4
|
-
import { shouldThrowError } from './util';
|
|
5
|
-
import { lazyInit } from './util/lazy-init/lazy-init';
|
|
6
|
-
import { injectQueryClient } from './inject-query-client';
|
|
7
|
-
/**
|
|
8
|
-
* Base implementation for `injectQuery` and `injectInfiniteQuery`.
|
|
9
|
-
*/
|
|
10
|
-
export function createBaseQuery(optionsFn, Observer) {
|
|
11
|
-
const injector = inject(Injector);
|
|
12
|
-
return lazyInit(() => {
|
|
13
|
-
const ngZone = injector.get(NgZone);
|
|
14
|
-
const destroyRef = injector.get(DestroyRef);
|
|
15
|
-
const queryClient = injectQueryClient({ injector });
|
|
16
|
-
/**
|
|
17
|
-
* Signal that has the default options from query client applied
|
|
18
|
-
* computed() is used so signals can be inserted into the options
|
|
19
|
-
* making it reactive. Wrapping options in a function ensures embedded expressions
|
|
20
|
-
* are preserved and can keep being applied after signal changes
|
|
21
|
-
*/
|
|
22
|
-
const defaultedOptionsSignal = computed(() => {
|
|
23
|
-
const options = runInInjectionContext(injector, () => optionsFn(queryClient));
|
|
24
|
-
const defaultedOptions = queryClient.defaultQueryOptions(options);
|
|
25
|
-
defaultedOptions._optimisticResults = 'optimistic';
|
|
26
|
-
return defaultedOptions;
|
|
27
|
-
});
|
|
28
|
-
const observer = new Observer(queryClient, defaultedOptionsSignal());
|
|
29
|
-
const resultSignal = signal(observer.getOptimisticResult(defaultedOptionsSignal()));
|
|
30
|
-
effect(() => {
|
|
31
|
-
const defaultedOptions = defaultedOptionsSignal();
|
|
32
|
-
observer.setOptions(defaultedOptions, {
|
|
33
|
-
// Do not notify on updates because of changes in the options because
|
|
34
|
-
// these changes should already be reflected in the optimistic result.
|
|
35
|
-
listeners: false,
|
|
36
|
-
});
|
|
37
|
-
untracked(() => {
|
|
38
|
-
resultSignal.set(observer.getOptimisticResult(defaultedOptions));
|
|
39
|
-
});
|
|
40
|
-
}, {
|
|
41
|
-
injector,
|
|
42
|
-
});
|
|
43
|
-
// observer.trackResult is not used as this optimization is not needed for Angular
|
|
44
|
-
const unsubscribe = observer.subscribe(notifyManager.batchCalls((state) => {
|
|
45
|
-
ngZone.run(() => {
|
|
46
|
-
if (state.isError &&
|
|
47
|
-
!state.isFetching &&
|
|
48
|
-
// !isRestoring() && // todo: enable when client persistence is implemented
|
|
49
|
-
shouldThrowError(observer.options.throwOnError, [
|
|
50
|
-
state.error,
|
|
51
|
-
observer.getCurrentQuery(),
|
|
52
|
-
])) {
|
|
53
|
-
throw state.error;
|
|
54
|
-
}
|
|
55
|
-
resultSignal.set(state);
|
|
56
|
-
});
|
|
57
|
-
}));
|
|
58
|
-
destroyRef.onDestroy(unsubscribe);
|
|
59
|
-
return signalProxy(resultSignal);
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWJhc2UtcXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY3JlYXRlLWJhc2UtcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixRQUFRLEVBQ1IsTUFBTSxFQUNOLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLHFCQUFxQixFQUNyQixNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQVN6RDs7R0FFRztBQUNILE1BQU0sVUFBVSxlQUFlLENBTzdCLFNBUUMsRUFDRCxRQUE4QjtJQUU5QixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDakMsT0FBTyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ25CLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDbkMsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUMzQyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFFbkQ7Ozs7O1dBS0c7UUFDSCxNQUFNLHNCQUFzQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDM0MsTUFBTSxPQUFPLEdBQUcscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUNuRCxTQUFTLENBQUMsV0FBVyxDQUFDLENBQ3ZCLENBQUE7WUFDRCxNQUFNLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUNqRSxnQkFBZ0IsQ0FBQyxrQkFBa0IsR0FBRyxZQUFZLENBQUE7WUFDbEQsT0FBTyxnQkFBZ0IsQ0FBQTtRQUN6QixDQUFDLENBQUMsQ0FBQTtRQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQU0zQixXQUFXLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFBO1FBRXhDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FDekIsUUFBUSxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FDdkQsQ0FBQTtRQUVELE1BQU0sQ0FDSixHQUFHLEVBQUU7WUFDSCxNQUFNLGdCQUFnQixHQUFHLHNCQUFzQixFQUFFLENBQUE7WUFDakQsUUFBUSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDcEMscUVBQXFFO2dCQUNyRSxzRUFBc0U7Z0JBQ3RFLFNBQVMsRUFBRSxLQUFLO2FBQ2pCLENBQUMsQ0FBQTtZQUNGLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2IsWUFBWSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFBO1lBQ2xFLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxFQUNEO1lBQ0UsUUFBUTtTQUNULENBQ0YsQ0FBQTtRQUVELGtGQUFrRjtRQUNsRixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUNwQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBeUMsRUFBRSxFQUFFO1lBQ3JFLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQ0UsS0FBSyxDQUFDLE9BQU87b0JBQ2IsQ0FBQyxLQUFLLENBQUMsVUFBVTtvQkFDakIsMkVBQTJFO29CQUMzRSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTt3QkFDOUMsS0FBSyxDQUFDLEtBQUs7d0JBQ1gsUUFBUSxDQUFDLGVBQWUsRUFBRTtxQkFDM0IsQ0FBQyxFQUNGLENBQUM7b0JBQ0QsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFBO2dCQUNuQixDQUFDO2dCQUNELFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDekIsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0QsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUVqQyxPQUFPLFdBQVcsQ0FBQyxZQUFZLENBQXlDLENBQUE7SUFDMUUsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVzdHJveVJlZixcbiAgSW5qZWN0b3IsXG4gIE5nWm9uZSxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIHNpZ25hbCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbm90aWZ5TWFuYWdlciB9IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHsgc2lnbmFsUHJveHkgfSBmcm9tICcuL3NpZ25hbC1wcm94eSdcbmltcG9ydCB7IHNob3VsZFRocm93RXJyb3IgfSBmcm9tICcuL3V0aWwnXG5pbXBvcnQgeyBsYXp5SW5pdCB9IGZyb20gJy4vdXRpbC9sYXp5LWluaXQvbGF6eS1pbml0J1xuaW1wb3J0IHsgaW5qZWN0UXVlcnlDbGllbnQgfSBmcm9tICcuL2luamVjdC1xdWVyeS1jbGllbnQnXG5pbXBvcnQgdHlwZSB7XG4gIFF1ZXJ5Q2xpZW50LFxuICBRdWVyeUtleSxcbiAgUXVlcnlPYnNlcnZlcixcbiAgUXVlcnlPYnNlcnZlclJlc3VsdCxcbn0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgdHlwZSB7IENyZWF0ZUJhc2VRdWVyeU9wdGlvbnMsIENyZWF0ZUJhc2VRdWVyeVJlc3VsdCB9IGZyb20gJy4vdHlwZXMnXG5cbi8qKlxuICogQmFzZSBpbXBsZW1lbnRhdGlvbiBmb3IgYGluamVjdFF1ZXJ5YCBhbmQgYGluamVjdEluZmluaXRlUXVlcnlgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQmFzZVF1ZXJ5PFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvcixcbiAgVERhdGEsXG4gIFRRdWVyeURhdGEsXG4gIFRRdWVyeUtleSBleHRlbmRzIFF1ZXJ5S2V5LFxuPihcbiAgb3B0aW9uc0ZuOiAoXG4gICAgY2xpZW50OiBRdWVyeUNsaWVudCxcbiAgKSA9PiBDcmVhdGVCYXNlUXVlcnlPcHRpb25zPFxuICAgIFRRdWVyeUZuRGF0YSxcbiAgICBURXJyb3IsXG4gICAgVERhdGEsXG4gICAgVFF1ZXJ5RGF0YSxcbiAgICBUUXVlcnlLZXlcbiAgPixcbiAgT2JzZXJ2ZXI6IHR5cGVvZiBRdWVyeU9ic2VydmVyLFxuKTogQ3JlYXRlQmFzZVF1ZXJ5UmVzdWx0PFREYXRhLCBURXJyb3I+IHtcbiAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpXG4gIHJldHVybiBsYXp5SW5pdCgoKSA9PiB7XG4gICAgY29uc3Qgbmdab25lID0gaW5qZWN0b3IuZ2V0KE5nWm9uZSlcbiAgICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0b3IuZ2V0KERlc3Ryb3lSZWYpXG4gICAgY29uc3QgcXVlcnlDbGllbnQgPSBpbmplY3RRdWVyeUNsaWVudCh7IGluamVjdG9yIH0pXG5cbiAgICAvKipcbiAgICAgKiBTaWduYWwgdGhhdCBoYXMgdGhlIGRlZmF1bHQgb3B0aW9ucyBmcm9tIHF1ZXJ5IGNsaWVudCBhcHBsaWVkXG4gICAgICogY29tcHV0ZWQoKSBpcyB1c2VkIHNvIHNpZ25hbHMgY2FuIGJlIGluc2VydGVkIGludG8gdGhlIG9wdGlvbnNcbiAgICAgKiBtYWtpbmcgaXQgcmVhY3RpdmUuIFdyYXBwaW5nIG9wdGlvbnMgaW4gYSBmdW5jdGlvbiBlbnN1cmVzIGVtYmVkZGVkIGV4cHJlc3Npb25zXG4gICAgICogYXJlIHByZXNlcnZlZCBhbmQgY2FuIGtlZXAgYmVpbmcgYXBwbGllZCBhZnRlciBzaWduYWwgY2hhbmdlc1xuICAgICAqL1xuICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnNTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICBjb25zdCBvcHRpb25zID0gcnVuSW5JbmplY3Rpb25Db250ZXh0KGluamVjdG9yLCAoKSA9PlxuICAgICAgICBvcHRpb25zRm4ocXVlcnlDbGllbnQpLFxuICAgICAgKVxuICAgICAgY29uc3QgZGVmYXVsdGVkT3B0aW9ucyA9IHF1ZXJ5Q2xpZW50LmRlZmF1bHRRdWVyeU9wdGlvbnMob3B0aW9ucylcbiAgICAgIGRlZmF1bHRlZE9wdGlvbnMuX29wdGltaXN0aWNSZXN1bHRzID0gJ29wdGltaXN0aWMnXG4gICAgICByZXR1cm4gZGVmYXVsdGVkT3B0aW9uc1xuICAgIH0pXG5cbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBPYnNlcnZlcjxcbiAgICAgIFRRdWVyeUZuRGF0YSxcbiAgICAgIFRFcnJvcixcbiAgICAgIFREYXRhLFxuICAgICAgVFF1ZXJ5RGF0YSxcbiAgICAgIFRRdWVyeUtleVxuICAgID4ocXVlcnlDbGllbnQsIGRlZmF1bHRlZE9wdGlvbnNTaWduYWwoKSlcblxuICAgIGNvbnN0IHJlc3VsdFNpZ25hbCA9IHNpZ25hbChcbiAgICAgIG9ic2VydmVyLmdldE9wdGltaXN0aWNSZXN1bHQoZGVmYXVsdGVkT3B0aW9uc1NpZ25hbCgpKSxcbiAgICApXG5cbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnMgPSBkZWZhdWx0ZWRPcHRpb25zU2lnbmFsKClcbiAgICAgICAgb2JzZXJ2ZXIuc2V0T3B0aW9ucyhkZWZhdWx0ZWRPcHRpb25zLCB7XG4gICAgICAgICAgLy8gRG8gbm90IG5vdGlmeSBvbiB1cGRhdGVzIGJlY2F1c2Ugb2YgY2hhbmdlcyBpbiB0aGUgb3B0aW9ucyBiZWNhdXNlXG4gICAgICAgICAgLy8gdGhlc2UgY2hhbmdlcyBzaG91bGQgYWxyZWFkeSBiZSByZWZsZWN0ZWQgaW4gdGhlIG9wdGltaXN0aWMgcmVzdWx0LlxuICAgICAgICAgIGxpc3RlbmVyczogZmFsc2UsXG4gICAgICAgIH0pXG4gICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgcmVzdWx0U2lnbmFsLnNldChvYnNlcnZlci5nZXRPcHRpbWlzdGljUmVzdWx0KGRlZmF1bHRlZE9wdGlvbnMpKVxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaW5qZWN0b3IsXG4gICAgICB9LFxuICAgIClcblxuICAgIC8vIG9ic2VydmVyLnRyYWNrUmVzdWx0IGlzIG5vdCB1c2VkIGFzIHRoaXMgb3B0aW1pemF0aW9uIGlzIG5vdCBuZWVkZWQgZm9yIEFuZ3VsYXJcbiAgICBjb25zdCB1bnN1YnNjcmliZSA9IG9ic2VydmVyLnN1YnNjcmliZShcbiAgICAgIG5vdGlmeU1hbmFnZXIuYmF0Y2hDYWxscygoc3RhdGU6IFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ8VERhdGEsIFRFcnJvcj4pID0+IHtcbiAgICAgICAgbmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgc3RhdGUuaXNFcnJvciAmJlxuICAgICAgICAgICAgIXN0YXRlLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAgIC8vICFpc1Jlc3RvcmluZygpICYmIC8vIHRvZG86IGVuYWJsZSB3aGVuIGNsaWVudCBwZXJzaXN0ZW5jZSBpcyBpbXBsZW1lbnRlZFxuICAgICAgICAgICAgc2hvdWxkVGhyb3dFcnJvcihvYnNlcnZlci5vcHRpb25zLnRocm93T25FcnJvciwgW1xuICAgICAgICAgICAgICBzdGF0ZS5lcnJvcixcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuZ2V0Q3VycmVudFF1ZXJ5KCksXG4gICAgICAgICAgICBdKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhyb3cgc3RhdGUuZXJyb3JcbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzdWx0U2lnbmFsLnNldChzdGF0ZSlcbiAgICAgICAgfSlcbiAgICAgIH0pLFxuICAgIClcbiAgICBkZXN0cm95UmVmLm9uRGVzdHJveSh1bnN1YnNjcmliZSlcblxuICAgIHJldHVybiBzaWduYWxQcm94eShyZXN1bHRTaWduYWwpIGFzIENyZWF0ZUJhc2VRdWVyeVJlc3VsdDxURGF0YSwgVEVycm9yPlxuICB9KVxufVxuIl19
|
package/build/esm2022/index.mjs
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/* istanbul ignore file */
|
|
2
|
-
// Re-export core
|
|
3
|
-
export * from '@tanstack/query-core';
|
|
4
|
-
export * from './types';
|
|
5
|
-
export { queryOptions } from './query-options';
|
|
6
|
-
export { infiniteQueryOptions } from './infinite-query-options';
|
|
7
|
-
export * from './inject-infinite-query';
|
|
8
|
-
export * from './inject-is-fetching';
|
|
9
|
-
export * from './inject-is-mutating';
|
|
10
|
-
export * from './inject-mutation';
|
|
11
|
-
export * from './inject-mutation-state';
|
|
12
|
-
export * from './inject-queries';
|
|
13
|
-
export * from './inject-query';
|
|
14
|
-
export * from './inject-query-client';
|
|
15
|
-
export * from './providers';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMEJBQTBCO0FBRTFCLGlCQUFpQjtBQUNqQixjQUFjLHNCQUFzQixDQUFBO0FBRXBDLGNBQWMsU0FBUyxDQUFBO0FBTXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQU05QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUUvRCxjQUFjLHlCQUF5QixDQUFBO0FBQ3ZDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsdUJBQXVCLENBQUE7QUFDckMsY0FBYyxhQUFhLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBpc3RhbmJ1bCBpZ25vcmUgZmlsZSAqL1xuXG4vLyBSZS1leHBvcnQgY29yZVxuZXhwb3J0ICogZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5cbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCB0eXBlIHtcbiAgRGVmaW5lZEluaXRpYWxEYXRhT3B0aW9ucyxcbiAgVW5kZWZpbmVkSW5pdGlhbERhdGFPcHRpb25zLFxufSBmcm9tICcuL3F1ZXJ5LW9wdGlvbnMnXG5leHBvcnQgeyBxdWVyeU9wdGlvbnMgfSBmcm9tICcuL3F1ZXJ5LW9wdGlvbnMnXG5cbmV4cG9ydCB0eXBlIHtcbiAgRGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zLFxuICBVbmRlZmluZWRJbml0aWFsRGF0YUluZmluaXRlT3B0aW9ucyxcbn0gZnJvbSAnLi9pbmZpbml0ZS1xdWVyeS1vcHRpb25zJ1xuZXhwb3J0IHsgaW5maW5pdGVRdWVyeU9wdGlvbnMgfSBmcm9tICcuL2luZmluaXRlLXF1ZXJ5LW9wdGlvbnMnXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5qZWN0LWluZmluaXRlLXF1ZXJ5J1xuZXhwb3J0ICogZnJvbSAnLi9pbmplY3QtaXMtZmV0Y2hpbmcnXG5leHBvcnQgKiBmcm9tICcuL2luamVjdC1pcy1tdXRhdGluZydcbmV4cG9ydCAqIGZyb20gJy4vaW5qZWN0LW11dGF0aW9uJ1xuZXhwb3J0ICogZnJvbSAnLi9pbmplY3QtbXV0YXRpb24tc3RhdGUnXG5leHBvcnQgKiBmcm9tICcuL2luamVjdC1xdWVyaWVzJ1xuZXhwb3J0ICogZnJvbSAnLi9pbmplY3QtcXVlcnknXG5leHBvcnQgKiBmcm9tICcuL2luamVjdC1xdWVyeS1jbGllbnQnXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycydcbiJdfQ==
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Allows to share and re-use infinite query options in a type-safe way.
|
|
3
|
-
*
|
|
4
|
-
* The `queryKey` will be tagged with the type from `queryFn`.
|
|
5
|
-
* @param options - The infinite query options to tag with the type from `queryFn`.
|
|
6
|
-
* @returns The tagged infinite query options.
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export function infiniteQueryOptions(options) {
|
|
10
|
-
return options;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5maW5pdGUtcXVlcnktb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmZpbml0ZS1xdWVyeS1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtIQTs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE9BQWdCO0lBQ25ELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIERhdGFUYWcsXG4gIERlZmF1bHRFcnJvcixcbiAgSW5maW5pdGVEYXRhLFxuICBRdWVyeUtleSxcbn0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgdHlwZSB7IENyZWF0ZUluZmluaXRlUXVlcnlPcHRpb25zLCBOb25VbmRlZmluZWRHdWFyZCB9IGZyb20gJy4vdHlwZXMnXG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBVbmRlZmluZWRJbml0aWFsRGF0YUluZmluaXRlT3B0aW9uczxcbiAgVFF1ZXJ5Rm5EYXRhLFxuICBURXJyb3IgPSBEZWZhdWx0RXJyb3IsXG4gIFREYXRhID0gSW5maW5pdGVEYXRhPFRRdWVyeUZuRGF0YT4sXG4gIFRRdWVyeUtleSBleHRlbmRzIFF1ZXJ5S2V5ID0gUXVlcnlLZXksXG4gIFRQYWdlUGFyYW0gPSB1bmtub3duLFxuPiA9IENyZWF0ZUluZmluaXRlUXVlcnlPcHRpb25zPFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvcixcbiAgVERhdGEsXG4gIFRRdWVyeUZuRGF0YSxcbiAgVFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtXG4+ICYge1xuICBpbml0aWFsRGF0YT86IHVuZGVmaW5lZFxufVxuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgRGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zPFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvciA9IERlZmF1bHRFcnJvcixcbiAgVERhdGEgPSBJbmZpbml0ZURhdGE8VFF1ZXJ5Rm5EYXRhPixcbiAgVFF1ZXJ5S2V5IGV4dGVuZHMgUXVlcnlLZXkgPSBRdWVyeUtleSxcbiAgVFBhZ2VQYXJhbSA9IHVua25vd24sXG4+ID0gQ3JlYXRlSW5maW5pdGVRdWVyeU9wdGlvbnM8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yLFxuICBURGF0YSxcbiAgVFF1ZXJ5Rm5EYXRhLFxuICBUUXVlcnlLZXksXG4gIFRQYWdlUGFyYW1cbj4gJiB7XG4gIGluaXRpYWxEYXRhOlxuICAgIHwgTm9uVW5kZWZpbmVkR3VhcmQ8SW5maW5pdGVEYXRhPFRRdWVyeUZuRGF0YSwgVFBhZ2VQYXJhbT4+XG4gICAgfCAoKCkgPT4gTm9uVW5kZWZpbmVkR3VhcmQ8SW5maW5pdGVEYXRhPFRRdWVyeUZuRGF0YSwgVFBhZ2VQYXJhbT4+KVxufVxuXG4vKipcbiAqIEFsbG93cyB0byBzaGFyZSBhbmQgcmUtdXNlIGluZmluaXRlIHF1ZXJ5IG9wdGlvbnMgaW4gYSB0eXBlLXNhZmUgd2F5LlxuICpcbiAqIFRoZSBgcXVlcnlLZXlgIHdpbGwgYmUgdGFnZ2VkIHdpdGggdGhlIHR5cGUgZnJvbSBgcXVlcnlGbmAuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBpbmZpbml0ZSBxdWVyeSBvcHRpb25zIHRvIHRhZyB3aXRoIHRoZSB0eXBlIGZyb20gYHF1ZXJ5Rm5gLlxuICogQHJldHVybnMgVGhlIHRhZ2dlZCBpbmZpbml0ZSBxdWVyeSBvcHRpb25zLlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5maW5pdGVRdWVyeU9wdGlvbnM8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yID0gRGVmYXVsdEVycm9yLFxuICBURGF0YSA9IEluZmluaXRlRGF0YTxUUXVlcnlGbkRhdGE+LFxuICBUUXVlcnlLZXkgZXh0ZW5kcyBRdWVyeUtleSA9IFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnM6IERlZmluZWRJbml0aWFsRGF0YUluZmluaXRlT3B0aW9uczxcbiAgICBUUXVlcnlGbkRhdGEsXG4gICAgVEVycm9yLFxuICAgIFREYXRhLFxuICAgIFRRdWVyeUtleSxcbiAgICBUUGFnZVBhcmFtXG4gID4sXG4pOiBEZWZpbmVkSW5pdGlhbERhdGFJbmZpbml0ZU9wdGlvbnM8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yLFxuICBURGF0YSxcbiAgVFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtXG4+ICYge1xuICBxdWVyeUtleTogRGF0YVRhZzxUUXVlcnlLZXksIEluZmluaXRlRGF0YTxUUXVlcnlGbkRhdGE+PlxufVxuXG4vKipcbiAqIEFsbG93cyB0byBzaGFyZSBhbmQgcmUtdXNlIGluZmluaXRlIHF1ZXJ5IG9wdGlvbnMgaW4gYSB0eXBlLXNhZmUgd2F5LlxuICpcbiAqIFRoZSBgcXVlcnlLZXlgIHdpbGwgYmUgdGFnZ2VkIHdpdGggdGhlIHR5cGUgZnJvbSBgcXVlcnlGbmAuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBpbmZpbml0ZSBxdWVyeSBvcHRpb25zIHRvIHRhZyB3aXRoIHRoZSB0eXBlIGZyb20gYHF1ZXJ5Rm5gLlxuICogQHJldHVybnMgVGhlIHRhZ2dlZCBpbmZpbml0ZSBxdWVyeSBvcHRpb25zLlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5maW5pdGVRdWVyeU9wdGlvbnM8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yID0gRGVmYXVsdEVycm9yLFxuICBURGF0YSA9IEluZmluaXRlRGF0YTxUUXVlcnlGbkRhdGE+LFxuICBUUXVlcnlLZXkgZXh0ZW5kcyBRdWVyeUtleSA9IFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnM6IFVuZGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zPFxuICAgIFRRdWVyeUZuRGF0YSxcbiAgICBURXJyb3IsXG4gICAgVERhdGEsXG4gICAgVFF1ZXJ5S2V5LFxuICAgIFRQYWdlUGFyYW1cbiAgPixcbik6IFVuZGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zPFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvcixcbiAgVERhdGEsXG4gIFRRdWVyeUtleSxcbiAgVFBhZ2VQYXJhbVxuPiAmIHtcbiAgcXVlcnlLZXk6IERhdGFUYWc8VFF1ZXJ5S2V5LCBJbmZpbml0ZURhdGE8VFF1ZXJ5Rm5EYXRhPj5cbn1cblxuLyoqXG4gKiBBbGxvd3MgdG8gc2hhcmUgYW5kIHJlLXVzZSBpbmZpbml0ZSBxdWVyeSBvcHRpb25zIGluIGEgdHlwZS1zYWZlIHdheS5cbiAqXG4gKiBUaGUgYHF1ZXJ5S2V5YCB3aWxsIGJlIHRhZ2dlZCB3aXRoIHRoZSB0eXBlIGZyb20gYHF1ZXJ5Rm5gLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgaW5maW5pdGUgcXVlcnkgb3B0aW9ucyB0byB0YWcgd2l0aCB0aGUgdHlwZSBmcm9tIGBxdWVyeUZuYC5cbiAqIEByZXR1cm5zIFRoZSB0YWdnZWQgaW5maW5pdGUgcXVlcnkgb3B0aW9ucy5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluZmluaXRlUXVlcnlPcHRpb25zKG9wdGlvbnM6IHVua25vd24pIHtcbiAgcmV0dXJuIG9wdGlvbnNcbn1cbiJdfQ==
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { InfiniteQueryObserver } from '@tanstack/query-core';
|
|
2
|
-
import { createBaseQuery } from './create-base-query';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
/**
|
|
5
|
-
* Injects an infinite query: a declarative dependency on an asynchronous source of data that is tied to a unique key.
|
|
6
|
-
* Infinite queries can additively "load more" data onto an existing set of data or "infinite scroll"
|
|
7
|
-
* @param optionsFn - A function that returns infinite query options.
|
|
8
|
-
* @param injector - The Angular injector to use.
|
|
9
|
-
* @returns The infinite query result.
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export function injectInfiniteQuery(optionsFn, injector) {
|
|
13
|
-
return assertInjector(injectInfiniteQuery, injector, () => createBaseQuery(optionsFn, InfiniteQueryObserver));
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LWluZmluaXRlLXF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1pbmZpbml0ZS1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBcUd2RTs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxTQUE4RCxFQUM5RCxRQUFtQjtJQUVuQixPQUFPLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQ3hELGVBQWUsQ0FBQyxTQUFTLEVBQUUscUJBQTZDLENBQUMsQ0FDMUUsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmZpbml0ZVF1ZXJ5T2JzZXJ2ZXIgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB7IGNyZWF0ZUJhc2VRdWVyeSB9IGZyb20gJy4vY3JlYXRlLWJhc2UtcXVlcnknXG5pbXBvcnQgeyBhc3NlcnRJbmplY3RvciB9IGZyb20gJy4vdXRpbC9hc3NlcnQtaW5qZWN0b3IvYXNzZXJ0LWluamVjdG9yJ1xuaW1wb3J0IHR5cGUgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgdHlwZSB7XG4gIERlZmF1bHRFcnJvcixcbiAgSW5maW5pdGVEYXRhLFxuICBRdWVyeUNsaWVudCxcbiAgUXVlcnlLZXksXG4gIFF1ZXJ5T2JzZXJ2ZXIsXG59IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHR5cGUge1xuICBDcmVhdGVJbmZpbml0ZVF1ZXJ5T3B0aW9ucyxcbiAgQ3JlYXRlSW5maW5pdGVRdWVyeVJlc3VsdCxcbiAgRGVmaW5lZENyZWF0ZUluZmluaXRlUXVlcnlSZXN1bHQsXG59IGZyb20gJy4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7XG4gIERlZmluZWRJbml0aWFsRGF0YUluZmluaXRlT3B0aW9ucyxcbiAgVW5kZWZpbmVkSW5pdGlhbERhdGFJbmZpbml0ZU9wdGlvbnMsXG59IGZyb20gJy4vaW5maW5pdGUtcXVlcnktb3B0aW9ucydcblxuLyoqXG4gKiBJbmplY3RzIGFuIGluZmluaXRlIHF1ZXJ5OiBhIGRlY2xhcmF0aXZlIGRlcGVuZGVuY3kgb24gYW4gYXN5bmNocm9ub3VzIHNvdXJjZSBvZiBkYXRhIHRoYXQgaXMgdGllZCB0byBhIHVuaXF1ZSBrZXkuXG4gKiBJbmZpbml0ZSBxdWVyaWVzIGNhbiBhZGRpdGl2ZWx5IFwibG9hZCBtb3JlXCIgZGF0YSBvbnRvIGFuIGV4aXN0aW5nIHNldCBvZiBkYXRhIG9yIFwiaW5maW5pdGUgc2Nyb2xsXCJcbiAqIEBwYXJhbSBvcHRpb25zRm4gLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpbmZpbml0ZSBxdWVyeSBvcHRpb25zLlxuICogQHBhcmFtIGluamVjdG9yIC0gVGhlIEFuZ3VsYXIgaW5qZWN0b3IgdG8gdXNlLlxuICogQHJldHVybnMgVGhlIGluZmluaXRlIHF1ZXJ5IHJlc3VsdC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEluZmluaXRlUXVlcnk8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yID0gRGVmYXVsdEVycm9yLFxuICBURGF0YSA9IEluZmluaXRlRGF0YTxUUXVlcnlGbkRhdGE+LFxuICBUUXVlcnlLZXkgZXh0ZW5kcyBRdWVyeUtleSA9IFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnNGbjogKFxuICAgIGNsaWVudDogUXVlcnlDbGllbnQsXG4gICkgPT4gRGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zPFxuICAgIFRRdWVyeUZuRGF0YSxcbiAgICBURXJyb3IsXG4gICAgVERhdGEsXG4gICAgVFF1ZXJ5S2V5LFxuICAgIFRQYWdlUGFyYW1cbiAgPixcbiAgaW5qZWN0b3I/OiBJbmplY3Rvcixcbik6IERlZmluZWRDcmVhdGVJbmZpbml0ZVF1ZXJ5UmVzdWx0PFREYXRhLCBURXJyb3I+XG5cbi8qKlxuICogSW5qZWN0cyBhbiBpbmZpbml0ZSBxdWVyeTogYSBkZWNsYXJhdGl2ZSBkZXBlbmRlbmN5IG9uIGFuIGFzeW5jaHJvbm91cyBzb3VyY2Ugb2YgZGF0YSB0aGF0IGlzIHRpZWQgdG8gYSB1bmlxdWUga2V5LlxuICogSW5maW5pdGUgcXVlcmllcyBjYW4gYWRkaXRpdmVseSBcImxvYWQgbW9yZVwiIGRhdGEgb250byBhbiBleGlzdGluZyBzZXQgb2YgZGF0YSBvciBcImluZmluaXRlIHNjcm9sbFwiXG4gKiBAcGFyYW0gb3B0aW9uc0ZuIC0gQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgaW5maW5pdGUgcXVlcnkgb3B0aW9ucy5cbiAqIEBwYXJhbSBpbmplY3RvciAtIFRoZSBBbmd1bGFyIGluamVjdG9yIHRvIHVzZS5cbiAqIEByZXR1cm5zIFRoZSBpbmZpbml0ZSBxdWVyeSByZXN1bHQuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RJbmZpbml0ZVF1ZXJ5PFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvciA9IERlZmF1bHRFcnJvcixcbiAgVERhdGEgPSBJbmZpbml0ZURhdGE8VFF1ZXJ5Rm5EYXRhPixcbiAgVFF1ZXJ5S2V5IGV4dGVuZHMgUXVlcnlLZXkgPSBRdWVyeUtleSxcbiAgVFBhZ2VQYXJhbSA9IHVua25vd24sXG4+KFxuICBvcHRpb25zRm46IChcbiAgICBjbGllbnQ6IFF1ZXJ5Q2xpZW50LFxuICApID0+IFVuZGVmaW5lZEluaXRpYWxEYXRhSW5maW5pdGVPcHRpb25zPFxuICAgIFRRdWVyeUZuRGF0YSxcbiAgICBURXJyb3IsXG4gICAgVERhdGEsXG4gICAgVFF1ZXJ5S2V5LFxuICAgIFRQYWdlUGFyYW1cbiAgPixcbiAgaW5qZWN0b3I/OiBJbmplY3Rvcixcbik6IENyZWF0ZUluZmluaXRlUXVlcnlSZXN1bHQ8VERhdGEsIFRFcnJvcj5cblxuLyoqXG4gKiBJbmplY3RzIGFuIGluZmluaXRlIHF1ZXJ5OiBhIGRlY2xhcmF0aXZlIGRlcGVuZGVuY3kgb24gYW4gYXN5bmNocm9ub3VzIHNvdXJjZSBvZiBkYXRhIHRoYXQgaXMgdGllZCB0byBhIHVuaXF1ZSBrZXkuXG4gKiBJbmZpbml0ZSBxdWVyaWVzIGNhbiBhZGRpdGl2ZWx5IFwibG9hZCBtb3JlXCIgZGF0YSBvbnRvIGFuIGV4aXN0aW5nIHNldCBvZiBkYXRhIG9yIFwiaW5maW5pdGUgc2Nyb2xsXCJcbiAqIEBwYXJhbSBvcHRpb25zRm4gLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpbmZpbml0ZSBxdWVyeSBvcHRpb25zLlxuICogQHBhcmFtIGluamVjdG9yIC0gVGhlIEFuZ3VsYXIgaW5qZWN0b3IgdG8gdXNlLlxuICogQHJldHVybnMgVGhlIGluZmluaXRlIHF1ZXJ5IHJlc3VsdC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEluZmluaXRlUXVlcnk8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yID0gRGVmYXVsdEVycm9yLFxuICBURGF0YSA9IEluZmluaXRlRGF0YTxUUXVlcnlGbkRhdGE+LFxuICBUUXVlcnlLZXkgZXh0ZW5kcyBRdWVyeUtleSA9IFF1ZXJ5S2V5LFxuICBUUGFnZVBhcmFtID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnNGbjogKFxuICAgIGNsaWVudDogUXVlcnlDbGllbnQsXG4gICkgPT4gQ3JlYXRlSW5maW5pdGVRdWVyeU9wdGlvbnM8XG4gICAgVFF1ZXJ5Rm5EYXRhLFxuICAgIFRFcnJvcixcbiAgICBURGF0YSxcbiAgICBUUXVlcnlGbkRhdGEsXG4gICAgVFF1ZXJ5S2V5LFxuICAgIFRQYWdlUGFyYW1cbiAgPixcbiAgaW5qZWN0b3I/OiBJbmplY3Rvcixcbik6IENyZWF0ZUluZmluaXRlUXVlcnlSZXN1bHQ8VERhdGEsIFRFcnJvcj5cblxuLyoqXG4gKiBJbmplY3RzIGFuIGluZmluaXRlIHF1ZXJ5OiBhIGRlY2xhcmF0aXZlIGRlcGVuZGVuY3kgb24gYW4gYXN5bmNocm9ub3VzIHNvdXJjZSBvZiBkYXRhIHRoYXQgaXMgdGllZCB0byBhIHVuaXF1ZSBrZXkuXG4gKiBJbmZpbml0ZSBxdWVyaWVzIGNhbiBhZGRpdGl2ZWx5IFwibG9hZCBtb3JlXCIgZGF0YSBvbnRvIGFuIGV4aXN0aW5nIHNldCBvZiBkYXRhIG9yIFwiaW5maW5pdGUgc2Nyb2xsXCJcbiAqIEBwYXJhbSBvcHRpb25zRm4gLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBpbmZpbml0ZSBxdWVyeSBvcHRpb25zLlxuICogQHBhcmFtIGluamVjdG9yIC0gVGhlIEFuZ3VsYXIgaW5qZWN0b3IgdG8gdXNlLlxuICogQHJldHVybnMgVGhlIGluZmluaXRlIHF1ZXJ5IHJlc3VsdC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEluZmluaXRlUXVlcnkoXG4gIG9wdGlvbnNGbjogKGNsaWVudDogUXVlcnlDbGllbnQpID0+IENyZWF0ZUluZmluaXRlUXVlcnlPcHRpb25zLFxuICBpbmplY3Rvcj86IEluamVjdG9yLFxuKSB7XG4gIHJldHVybiBhc3NlcnRJbmplY3RvcihpbmplY3RJbmZpbml0ZVF1ZXJ5LCBpbmplY3RvciwgKCkgPT5cbiAgICBjcmVhdGVCYXNlUXVlcnkob3B0aW9uc0ZuLCBJbmZpbml0ZVF1ZXJ5T2JzZXJ2ZXIgYXMgdHlwZW9mIFF1ZXJ5T2JzZXJ2ZXIpLFxuICApXG59XG4iXX0=
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, NgZone, inject, signal } from '@angular/core';
|
|
2
|
-
import { notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
import { injectQueryClient } from './inject-query-client';
|
|
5
|
-
/**
|
|
6
|
-
* Injects a signal that tracks the number of queries that your application is loading or
|
|
7
|
-
* fetching in the background.
|
|
8
|
-
*
|
|
9
|
-
* Can be used for app-wide loading indicators
|
|
10
|
-
* @param filters - The filters to apply to the query.
|
|
11
|
-
* @param injector - The Angular injector to use.
|
|
12
|
-
* @returns signal with number of loading or fetching queries.
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
export function injectIsFetching(filters, injector) {
|
|
16
|
-
return assertInjector(injectIsFetching, injector, () => {
|
|
17
|
-
const queryClient = injectQueryClient();
|
|
18
|
-
const destroyRef = inject(DestroyRef);
|
|
19
|
-
const ngZone = inject(NgZone);
|
|
20
|
-
const cache = queryClient.getQueryCache();
|
|
21
|
-
// isFetching is the prev value initialized on mount *
|
|
22
|
-
let isFetching = queryClient.isFetching(filters);
|
|
23
|
-
const result = signal(isFetching);
|
|
24
|
-
const unsubscribe = cache.subscribe(notifyManager.batchCalls(() => {
|
|
25
|
-
const newIsFetching = queryClient.isFetching(filters);
|
|
26
|
-
if (isFetching !== newIsFetching) {
|
|
27
|
-
// * and update with each change
|
|
28
|
-
isFetching = newIsFetching;
|
|
29
|
-
ngZone.run(() => {
|
|
30
|
-
result.set(isFetching);
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
}));
|
|
34
|
-
destroyRef.onDestroy(unsubscribe);
|
|
35
|
-
return result;
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LWlzLWZldGNoaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1pcy1mZXRjaGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFJekQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixPQUFzQixFQUN0QixRQUFtQjtJQUVuQixPQUFPLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ3JELE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFDdkMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUU3QixNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDekMsc0RBQXNEO1FBQ3RELElBQUksVUFBVSxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7UUFFaEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBRWpDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQ2pDLGFBQWEsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQzVCLE1BQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDckQsSUFBSSxVQUFVLEtBQUssYUFBYSxFQUFFLENBQUM7Z0JBQ2pDLGdDQUFnQztnQkFDaEMsVUFBVSxHQUFHLGFBQWEsQ0FBQTtnQkFDMUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQTtnQkFDeEIsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtRQUVELFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUE7UUFFakMsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBOZ1pvbmUsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IG5vdGlmeU1hbmFnZXIgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB7IGFzc2VydEluamVjdG9yIH0gZnJvbSAnLi91dGlsL2Fzc2VydC1pbmplY3Rvci9hc3NlcnQtaW5qZWN0b3InXG5pbXBvcnQgeyBpbmplY3RRdWVyeUNsaWVudCB9IGZyb20gJy4vaW5qZWN0LXF1ZXJ5LWNsaWVudCdcbmltcG9ydCB0eXBlIHsgUXVlcnlGaWx0ZXJzIH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgdHlwZSB7IEluamVjdG9yLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG4vKipcbiAqIEluamVjdHMgYSBzaWduYWwgdGhhdCB0cmFja3MgdGhlIG51bWJlciBvZiBxdWVyaWVzIHRoYXQgeW91ciBhcHBsaWNhdGlvbiBpcyBsb2FkaW5nIG9yXG4gKiBmZXRjaGluZyBpbiB0aGUgYmFja2dyb3VuZC5cbiAqXG4gKiBDYW4gYmUgdXNlZCBmb3IgYXBwLXdpZGUgbG9hZGluZyBpbmRpY2F0b3JzXG4gKiBAcGFyYW0gZmlsdGVycyAtIFRoZSBmaWx0ZXJzIHRvIGFwcGx5IHRvIHRoZSBxdWVyeS5cbiAqIEBwYXJhbSBpbmplY3RvciAtIFRoZSBBbmd1bGFyIGluamVjdG9yIHRvIHVzZS5cbiAqIEByZXR1cm5zIHNpZ25hbCB3aXRoIG51bWJlciBvZiBsb2FkaW5nIG9yIGZldGNoaW5nIHF1ZXJpZXMuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RJc0ZldGNoaW5nKFxuICBmaWx0ZXJzPzogUXVlcnlGaWx0ZXJzLFxuICBpbmplY3Rvcj86IEluamVjdG9yLFxuKTogU2lnbmFsPG51bWJlcj4ge1xuICByZXR1cm4gYXNzZXJ0SW5qZWN0b3IoaW5qZWN0SXNGZXRjaGluZywgaW5qZWN0b3IsICgpID0+IHtcbiAgICBjb25zdCBxdWVyeUNsaWVudCA9IGluamVjdFF1ZXJ5Q2xpZW50KClcbiAgICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpXG4gICAgY29uc3Qgbmdab25lID0gaW5qZWN0KE5nWm9uZSlcblxuICAgIGNvbnN0IGNhY2hlID0gcXVlcnlDbGllbnQuZ2V0UXVlcnlDYWNoZSgpXG4gICAgLy8gaXNGZXRjaGluZyBpcyB0aGUgcHJldiB2YWx1ZSBpbml0aWFsaXplZCBvbiBtb3VudCAqXG4gICAgbGV0IGlzRmV0Y2hpbmcgPSBxdWVyeUNsaWVudC5pc0ZldGNoaW5nKGZpbHRlcnMpXG5cbiAgICBjb25zdCByZXN1bHQgPSBzaWduYWwoaXNGZXRjaGluZylcblxuICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gY2FjaGUuc3Vic2NyaWJlKFxuICAgICAgbm90aWZ5TWFuYWdlci5iYXRjaENhbGxzKCgpID0+IHtcbiAgICAgICAgY29uc3QgbmV3SXNGZXRjaGluZyA9IHF1ZXJ5Q2xpZW50LmlzRmV0Y2hpbmcoZmlsdGVycylcbiAgICAgICAgaWYgKGlzRmV0Y2hpbmcgIT09IG5ld0lzRmV0Y2hpbmcpIHtcbiAgICAgICAgICAvLyAqIGFuZCB1cGRhdGUgd2l0aCBlYWNoIGNoYW5nZVxuICAgICAgICAgIGlzRmV0Y2hpbmcgPSBuZXdJc0ZldGNoaW5nXG4gICAgICAgICAgbmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICByZXN1bHQuc2V0KGlzRmV0Y2hpbmcpXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKVxuXG4gICAgZGVzdHJveVJlZi5vbkRlc3Ryb3kodW5zdWJzY3JpYmUpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0pXG59XG4iXX0=
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, NgZone, inject, signal } from '@angular/core';
|
|
2
|
-
import { notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
import { injectQueryClient } from './inject-query-client';
|
|
5
|
-
/**
|
|
6
|
-
* Injects a signal that tracks the number of mutations that your application is fetching.
|
|
7
|
-
*
|
|
8
|
-
* Can be used for app-wide loading indicators
|
|
9
|
-
* @param filters - The filters to apply to the query.
|
|
10
|
-
* @param injector - The Angular injector to use.
|
|
11
|
-
* @returns signal with number of fetching mutations.
|
|
12
|
-
* @public
|
|
13
|
-
*/
|
|
14
|
-
export function injectIsMutating(filters, injector) {
|
|
15
|
-
return assertInjector(injectIsMutating, injector, () => {
|
|
16
|
-
const queryClient = injectQueryClient();
|
|
17
|
-
const destroyRef = inject(DestroyRef);
|
|
18
|
-
const ngZone = inject(NgZone);
|
|
19
|
-
const cache = queryClient.getMutationCache();
|
|
20
|
-
// isMutating is the prev value initialized on mount *
|
|
21
|
-
let isMutating = queryClient.isMutating(filters);
|
|
22
|
-
const result = signal(isMutating);
|
|
23
|
-
const unsubscribe = cache.subscribe(notifyManager.batchCalls(() => {
|
|
24
|
-
const newIsMutating = queryClient.isMutating(filters);
|
|
25
|
-
if (isMutating !== newIsMutating) {
|
|
26
|
-
// * and update with each change
|
|
27
|
-
isMutating = newIsMutating;
|
|
28
|
-
ngZone.run(() => {
|
|
29
|
-
result.set(isMutating);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}));
|
|
33
|
-
destroyRef.onDestroy(unsubscribe);
|
|
34
|
-
return result;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LWlzLW11dGF0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1pcy1tdXRhdGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFJekQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLE9BQXlCLEVBQ3pCLFFBQW1CO0lBRW5CLE9BQU8sY0FBYyxDQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDckQsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQTtRQUN2QyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBRTdCLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFBO1FBQzVDLHNEQUFzRDtRQUN0RCxJQUFJLFVBQVUsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRWhELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUVqQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUNqQyxhQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUM1QixNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQ3JELElBQUksVUFBVSxLQUFLLGFBQWEsRUFBRSxDQUFDO2dCQUNqQyxnQ0FBZ0M7Z0JBQ2hDLFVBQVUsR0FBRyxhQUFhLENBQUE7Z0JBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNkLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7Z0JBQ3hCLENBQUMsQ0FBQyxDQUFBO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUE7UUFFRCxVQUFVLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBRWpDLE9BQU8sTUFBTSxDQUFBO0lBQ2YsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgTmdab25lLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBub3RpZnlNYW5hZ2VyIH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgeyBhc3NlcnRJbmplY3RvciB9IGZyb20gJy4vdXRpbC9hc3NlcnQtaW5qZWN0b3IvYXNzZXJ0LWluamVjdG9yJ1xuaW1wb3J0IHsgaW5qZWN0UXVlcnlDbGllbnQgfSBmcm9tICcuL2luamVjdC1xdWVyeS1jbGllbnQnXG5pbXBvcnQgdHlwZSB7IE11dGF0aW9uRmlsdGVycyB9IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHR5cGUgeyBJbmplY3RvciwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuLyoqXG4gKiBJbmplY3RzIGEgc2lnbmFsIHRoYXQgdHJhY2tzIHRoZSBudW1iZXIgb2YgbXV0YXRpb25zIHRoYXQgeW91ciBhcHBsaWNhdGlvbiBpcyBmZXRjaGluZy5cbiAqXG4gKiBDYW4gYmUgdXNlZCBmb3IgYXBwLXdpZGUgbG9hZGluZyBpbmRpY2F0b3JzXG4gKiBAcGFyYW0gZmlsdGVycyAtIFRoZSBmaWx0ZXJzIHRvIGFwcGx5IHRvIHRoZSBxdWVyeS5cbiAqIEBwYXJhbSBpbmplY3RvciAtIFRoZSBBbmd1bGFyIGluamVjdG9yIHRvIHVzZS5cbiAqIEByZXR1cm5zIHNpZ25hbCB3aXRoIG51bWJlciBvZiBmZXRjaGluZyBtdXRhdGlvbnMuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RJc011dGF0aW5nKFxuICBmaWx0ZXJzPzogTXV0YXRpb25GaWx0ZXJzLFxuICBpbmplY3Rvcj86IEluamVjdG9yLFxuKTogU2lnbmFsPG51bWJlcj4ge1xuICByZXR1cm4gYXNzZXJ0SW5qZWN0b3IoaW5qZWN0SXNNdXRhdGluZywgaW5qZWN0b3IsICgpID0+IHtcbiAgICBjb25zdCBxdWVyeUNsaWVudCA9IGluamVjdFF1ZXJ5Q2xpZW50KClcbiAgICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpXG4gICAgY29uc3Qgbmdab25lID0gaW5qZWN0KE5nWm9uZSlcblxuICAgIGNvbnN0IGNhY2hlID0gcXVlcnlDbGllbnQuZ2V0TXV0YXRpb25DYWNoZSgpXG4gICAgLy8gaXNNdXRhdGluZyBpcyB0aGUgcHJldiB2YWx1ZSBpbml0aWFsaXplZCBvbiBtb3VudCAqXG4gICAgbGV0IGlzTXV0YXRpbmcgPSBxdWVyeUNsaWVudC5pc011dGF0aW5nKGZpbHRlcnMpXG5cbiAgICBjb25zdCByZXN1bHQgPSBzaWduYWwoaXNNdXRhdGluZylcblxuICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gY2FjaGUuc3Vic2NyaWJlKFxuICAgICAgbm90aWZ5TWFuYWdlci5iYXRjaENhbGxzKCgpID0+IHtcbiAgICAgICAgY29uc3QgbmV3SXNNdXRhdGluZyA9IHF1ZXJ5Q2xpZW50LmlzTXV0YXRpbmcoZmlsdGVycylcbiAgICAgICAgaWYgKGlzTXV0YXRpbmcgIT09IG5ld0lzTXV0YXRpbmcpIHtcbiAgICAgICAgICAvLyAqIGFuZCB1cGRhdGUgd2l0aCBlYWNoIGNoYW5nZVxuICAgICAgICAgIGlzTXV0YXRpbmcgPSBuZXdJc011dGF0aW5nXG4gICAgICAgICAgbmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICByZXN1bHQuc2V0KGlzTXV0YXRpbmcpXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKVxuXG4gICAgZGVzdHJveVJlZi5vbkRlc3Ryb3kodW5zdWJzY3JpYmUpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0pXG59XG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, NgZone, effect, inject, signal, untracked, } from '@angular/core';
|
|
2
|
-
import { notifyManager, replaceEqualDeep } from '@tanstack/query-core';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
import { injectQueryClient } from './inject-query-client';
|
|
5
|
-
import { lazySignalInitializer } from './util/lazy-signal-initializer/lazy-signal-initializer';
|
|
6
|
-
function getResult(mutationCache, options) {
|
|
7
|
-
return mutationCache
|
|
8
|
-
.findAll(options.filters)
|
|
9
|
-
.map((mutation) => (options.select ? options.select(mutation) : mutation.state));
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Injects a signal that tracks the state of all mutations.
|
|
13
|
-
* @param mutationStateOptionsFn - A function that returns mutation state options.
|
|
14
|
-
* @param options - The Angular injector to use.
|
|
15
|
-
* @returns The signal that tracks the state of all mutations.
|
|
16
|
-
* @public
|
|
17
|
-
*/
|
|
18
|
-
export function injectMutationState(mutationStateOptionsFn = () => ({}), options) {
|
|
19
|
-
return assertInjector(injectMutationState, options?.injector, () => {
|
|
20
|
-
const destroyRef = inject(DestroyRef);
|
|
21
|
-
const queryClient = injectQueryClient();
|
|
22
|
-
const ngZone = inject(NgZone);
|
|
23
|
-
const mutationCache = queryClient.getMutationCache();
|
|
24
|
-
return lazySignalInitializer((injector) => {
|
|
25
|
-
const result = signal(getResult(mutationCache, mutationStateOptionsFn()));
|
|
26
|
-
effect(() => {
|
|
27
|
-
const mutationStateOptions = mutationStateOptionsFn();
|
|
28
|
-
untracked(() => {
|
|
29
|
-
// Setting the signal from an effect because it's both 'computed' from options()
|
|
30
|
-
// and needs to be set imperatively in the mutationCache listener.
|
|
31
|
-
result.set(getResult(mutationCache, mutationStateOptions));
|
|
32
|
-
});
|
|
33
|
-
}, { injector });
|
|
34
|
-
const unsubscribe = mutationCache.subscribe(notifyManager.batchCalls(() => {
|
|
35
|
-
const nextResult = replaceEqualDeep(result(), getResult(mutationCache, mutationStateOptionsFn()));
|
|
36
|
-
if (result() !== nextResult) {
|
|
37
|
-
ngZone.run(() => {
|
|
38
|
-
result.set(nextResult);
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
}));
|
|
42
|
-
destroyRef.onDestroy(unsubscribe);
|
|
43
|
-
return result;
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTtBQWM5RixTQUFTLFNBQVMsQ0FDaEIsYUFBNEIsRUFDNUIsT0FBc0M7SUFFdEMsT0FBTyxhQUFhO1NBQ2pCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1NBQ3hCLEdBQUcsQ0FDRixDQUFDLFFBQVEsRUFBVyxFQUFFLENBQ3BCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBWSxDQUMxRSxDQUFBO0FBQ0wsQ0FBQztBQVNEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMseUJBQThELEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQ3hFLE9BQW9DO0lBRXBDLE9BQU8sY0FBYyxDQUFDLG1CQUFtQixFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNyQyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsRUFBRSxDQUFBO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUU3QixNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtRQUVwRCxPQUFPLHFCQUFxQixDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDeEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUNuQixTQUFTLENBQUMsYUFBYSxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FDbkQsQ0FBQTtZQUVELE1BQU0sQ0FDSixHQUFHLEVBQUU7Z0JBQ0gsTUFBTSxvQkFBb0IsR0FBRyxzQkFBc0IsRUFBRSxDQUFBO2dCQUNyRCxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNiLGdGQUFnRjtvQkFDaEYsa0VBQWtFO29CQUNsRSxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxDQUFBO2dCQUM1RCxDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUMsRUFDRCxFQUFFLFFBQVEsRUFBRSxDQUNiLENBQUE7WUFFRCxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUN6QyxhQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDNUIsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQ2pDLE1BQU0sRUFBRSxFQUNSLFNBQVMsQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUNuRCxDQUFBO2dCQUNELElBQUksTUFBTSxFQUFFLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQzVCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNkLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7b0JBQ3hCLENBQUMsQ0FBQyxDQUFBO2dCQUNKLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1lBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUVqQyxPQUFPLE1BQU0sQ0FBQTtRQUNmLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVzdHJveVJlZixcbiAgTmdab25lLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgc2lnbmFsLFxuICB1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBub3RpZnlNYW5hZ2VyLCByZXBsYWNlRXF1YWxEZWVwIH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgeyBhc3NlcnRJbmplY3RvciB9IGZyb20gJy4vdXRpbC9hc3NlcnQtaW5qZWN0b3IvYXNzZXJ0LWluamVjdG9yJ1xuaW1wb3J0IHsgaW5qZWN0UXVlcnlDbGllbnQgfSBmcm9tICcuL2luamVjdC1xdWVyeS1jbGllbnQnXG5pbXBvcnQgeyBsYXp5U2lnbmFsSW5pdGlhbGl6ZXIgfSBmcm9tICcuL3V0aWwvbGF6eS1zaWduYWwtaW5pdGlhbGl6ZXIvbGF6eS1zaWduYWwtaW5pdGlhbGl6ZXInXG5pbXBvcnQgdHlwZSB7IEluamVjdG9yLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHR5cGUge1xuICBNdXRhdGlvbixcbiAgTXV0YXRpb25DYWNoZSxcbiAgTXV0YXRpb25GaWx0ZXJzLFxuICBNdXRhdGlvblN0YXRlLFxufSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcblxudHlwZSBNdXRhdGlvblN0YXRlT3B0aW9uczxUUmVzdWx0ID0gTXV0YXRpb25TdGF0ZT4gPSB7XG4gIGZpbHRlcnM/OiBNdXRhdGlvbkZpbHRlcnNcbiAgc2VsZWN0PzogKG11dGF0aW9uOiBNdXRhdGlvbikgPT4gVFJlc3VsdFxufVxuXG5mdW5jdGlvbiBnZXRSZXN1bHQ8VFJlc3VsdCA9IE11dGF0aW9uU3RhdGU+KFxuICBtdXRhdGlvbkNhY2hlOiBNdXRhdGlvbkNhY2hlLFxuICBvcHRpb25zOiBNdXRhdGlvblN0YXRlT3B0aW9uczxUUmVzdWx0Pixcbik6IEFycmF5PFRSZXN1bHQ+IHtcbiAgcmV0dXJuIG11dGF0aW9uQ2FjaGVcbiAgICAuZmluZEFsbChvcHRpb25zLmZpbHRlcnMpXG4gICAgLm1hcChcbiAgICAgIChtdXRhdGlvbik6IFRSZXN1bHQgPT5cbiAgICAgICAgKG9wdGlvbnMuc2VsZWN0ID8gb3B0aW9ucy5zZWxlY3QobXV0YXRpb24pIDogbXV0YXRpb24uc3RhdGUpIGFzIFRSZXN1bHQsXG4gICAgKVxufVxuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbmplY3RNdXRhdGlvblN0YXRlT3B0aW9ucyB7XG4gIGluamVjdG9yPzogSW5qZWN0b3Jcbn1cblxuLyoqXG4gKiBJbmplY3RzIGEgc2lnbmFsIHRoYXQgdHJhY2tzIHRoZSBzdGF0ZSBvZiBhbGwgbXV0YXRpb25zLlxuICogQHBhcmFtIG11dGF0aW9uU3RhdGVPcHRpb25zRm4gLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBtdXRhdGlvbiBzdGF0ZSBvcHRpb25zLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgQW5ndWxhciBpbmplY3RvciB0byB1c2UuXG4gKiBAcmV0dXJucyBUaGUgc2lnbmFsIHRoYXQgdHJhY2tzIHRoZSBzdGF0ZSBvZiBhbGwgbXV0YXRpb25zLlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0TXV0YXRpb25TdGF0ZTxUUmVzdWx0ID0gTXV0YXRpb25TdGF0ZT4oXG4gIG11dGF0aW9uU3RhdGVPcHRpb25zRm46ICgpID0+IE11dGF0aW9uU3RhdGVPcHRpb25zPFRSZXN1bHQ+ID0gKCkgPT4gKHt9KSxcbiAgb3B0aW9ucz86IEluamVjdE11dGF0aW9uU3RhdGVPcHRpb25zLFxuKTogU2lnbmFsPEFycmF5PFRSZXN1bHQ+PiB7XG4gIHJldHVybiBhc3NlcnRJbmplY3RvcihpbmplY3RNdXRhdGlvblN0YXRlLCBvcHRpb25zPy5pbmplY3RvciwgKCkgPT4ge1xuICAgIGNvbnN0IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZilcbiAgICBjb25zdCBxdWVyeUNsaWVudCA9IGluamVjdFF1ZXJ5Q2xpZW50KClcbiAgICBjb25zdCBuZ1pvbmUgPSBpbmplY3QoTmdab25lKVxuXG4gICAgY29uc3QgbXV0YXRpb25DYWNoZSA9IHF1ZXJ5Q2xpZW50LmdldE11dGF0aW9uQ2FjaGUoKVxuXG4gICAgcmV0dXJuIGxhenlTaWduYWxJbml0aWFsaXplcigoaW5qZWN0b3IpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHNpZ25hbDxBcnJheTxUUmVzdWx0Pj4oXG4gICAgICAgIGdldFJlc3VsdChtdXRhdGlvbkNhY2hlLCBtdXRhdGlvblN0YXRlT3B0aW9uc0ZuKCkpLFxuICAgICAgKVxuXG4gICAgICBlZmZlY3QoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBjb25zdCBtdXRhdGlvblN0YXRlT3B0aW9ucyA9IG11dGF0aW9uU3RhdGVPcHRpb25zRm4oKVxuICAgICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBTZXR0aW5nIHRoZSBzaWduYWwgZnJvbSBhbiBlZmZlY3QgYmVjYXVzZSBpdCdzIGJvdGggJ2NvbXB1dGVkJyBmcm9tIG9wdGlvbnMoKVxuICAgICAgICAgICAgLy8gYW5kIG5lZWRzIHRvIGJlIHNldCBpbXBlcmF0aXZlbHkgaW4gdGhlIG11dGF0aW9uQ2FjaGUgbGlzdGVuZXIuXG4gICAgICAgICAgICByZXN1bHQuc2V0KGdldFJlc3VsdChtdXRhdGlvbkNhY2hlLCBtdXRhdGlvblN0YXRlT3B0aW9ucykpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSxcbiAgICAgICAgeyBpbmplY3RvciB9LFxuICAgICAgKVxuXG4gICAgICBjb25zdCB1bnN1YnNjcmliZSA9IG11dGF0aW9uQ2FjaGUuc3Vic2NyaWJlKFxuICAgICAgICBub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5leHRSZXN1bHQgPSByZXBsYWNlRXF1YWxEZWVwKFxuICAgICAgICAgICAgcmVzdWx0KCksXG4gICAgICAgICAgICBnZXRSZXN1bHQobXV0YXRpb25DYWNoZSwgbXV0YXRpb25TdGF0ZU9wdGlvbnNGbigpKSxcbiAgICAgICAgICApXG4gICAgICAgICAgaWYgKHJlc3VsdCgpICE9PSBuZXh0UmVzdWx0KSB7XG4gICAgICAgICAgICBuZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgcmVzdWx0LnNldChuZXh0UmVzdWx0KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKVxuXG4gICAgICBkZXN0cm95UmVmLm9uRGVzdHJveSh1bnN1YnNjcmliZSlcblxuICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0pXG4gIH0pXG59XG4iXX0=
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, Injector, NgZone, computed, effect, inject, runInInjectionContext, signal, } from '@angular/core';
|
|
2
|
-
import { MutationObserver, notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
import { signalProxy } from './signal-proxy';
|
|
5
|
-
import { injectQueryClient } from './inject-query-client';
|
|
6
|
-
import { noop, shouldThrowError } from './util';
|
|
7
|
-
import { lazyInit } from './util/lazy-init/lazy-init';
|
|
8
|
-
/**
|
|
9
|
-
* Injects a mutation: an imperative function that can be invoked which typically performs server side effects.
|
|
10
|
-
*
|
|
11
|
-
* Unlike queries, mutations are not run automatically.
|
|
12
|
-
* @param optionsFn - A function that returns mutation options.
|
|
13
|
-
* @param injector - The Angular injector to use.
|
|
14
|
-
* @returns The mutation.
|
|
15
|
-
* @public
|
|
16
|
-
*/
|
|
17
|
-
export function injectMutation(optionsFn, injector) {
|
|
18
|
-
return assertInjector(injectMutation, injector, () => {
|
|
19
|
-
const queryClient = injectQueryClient();
|
|
20
|
-
const currentInjector = inject(Injector);
|
|
21
|
-
const destroyRef = inject(DestroyRef);
|
|
22
|
-
const ngZone = inject(NgZone);
|
|
23
|
-
return lazyInit(() => runInInjectionContext(currentInjector, () => {
|
|
24
|
-
const observer = new MutationObserver(queryClient, optionsFn(queryClient));
|
|
25
|
-
const mutate = (variables, mutateOptions) => {
|
|
26
|
-
observer.mutate(variables, mutateOptions).catch(noop);
|
|
27
|
-
};
|
|
28
|
-
effect(() => {
|
|
29
|
-
observer.setOptions(runInInjectionContext(currentInjector, () => optionsFn(queryClient)));
|
|
30
|
-
});
|
|
31
|
-
const result = signal(observer.getCurrentResult());
|
|
32
|
-
const unsubscribe = observer.subscribe(notifyManager.batchCalls((state) => {
|
|
33
|
-
ngZone.run(() => {
|
|
34
|
-
if (state.isError &&
|
|
35
|
-
shouldThrowError(observer.options.throwOnError, [state.error])) {
|
|
36
|
-
throw state.error;
|
|
37
|
-
}
|
|
38
|
-
result.set(state);
|
|
39
|
-
});
|
|
40
|
-
}));
|
|
41
|
-
destroyRef.onDestroy(unsubscribe);
|
|
42
|
-
const resultSignal = computed(() => ({
|
|
43
|
-
...result(),
|
|
44
|
-
mutate,
|
|
45
|
-
mutateAsync: result().mutate,
|
|
46
|
-
}));
|
|
47
|
-
return signalProxy(resultSignal);
|
|
48
|
-
}));
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixNQUFNLEVBQ04sUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04scUJBQXFCLEVBQ3JCLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sUUFBUSxDQUFBO0FBRS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQVlyRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxjQUFjLENBTTVCLFNBRStELEVBQy9ELFFBQW1CO0lBRW5CLE9BQU8sY0FBYyxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ25ELE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFDdkMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFN0IsT0FBTyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQ25CLHFCQUFxQixDQUFDLGVBQWUsRUFBRSxHQUFHLEVBQUU7WUFDMUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxnQkFBZ0IsQ0FLbkMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO1lBQ3RDLE1BQU0sTUFBTSxHQUtSLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxFQUFFO2dCQUMvQixRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDdkQsQ0FBQyxDQUFBO1lBRUQsTUFBTSxDQUFDLEdBQUcsRUFBRTtnQkFDVixRQUFRLENBQUMsVUFBVSxDQUNqQixxQkFBcUIsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFLENBQzFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FDdkIsQ0FDRixDQUFBO1lBQ0gsQ0FBQyxDQUFDLENBQUE7WUFFRixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQTtZQUVsRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUNwQyxhQUFhLENBQUMsVUFBVSxDQUN0QixDQUNFLEtBS0MsRUFDRCxFQUFFO2dCQUNGLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQ0UsS0FBSyxDQUFDLE9BQU87d0JBQ2IsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDOUQsQ0FBQzt3QkFDRCxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUE7b0JBQ25CLENBQUM7b0JBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtnQkFDbkIsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDLENBQ0YsQ0FDRixDQUFBO1lBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUVqQyxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDbkMsR0FBRyxNQUFNLEVBQUU7Z0JBQ1gsTUFBTTtnQkFDTixXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUMsTUFBTTthQUM3QixDQUFDLENBQUMsQ0FBQTtZQUVILE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FLOUIsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZXN0cm95UmVmLFxuICBJbmplY3RvcixcbiAgTmdab25lLFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTXV0YXRpb25PYnNlcnZlciwgbm90aWZ5TWFuYWdlciB9IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0b3IgfSBmcm9tICcuL3V0aWwvYXNzZXJ0LWluamVjdG9yL2Fzc2VydC1pbmplY3RvcidcbmltcG9ydCB7IHNpZ25hbFByb3h5IH0gZnJvbSAnLi9zaWduYWwtcHJveHknXG5pbXBvcnQgeyBpbmplY3RRdWVyeUNsaWVudCB9IGZyb20gJy4vaW5qZWN0LXF1ZXJ5LWNsaWVudCdcbmltcG9ydCB7IG5vb3AsIHNob3VsZFRocm93RXJyb3IgfSBmcm9tICcuL3V0aWwnXG5cbmltcG9ydCB7IGxhenlJbml0IH0gZnJvbSAnLi91dGlsL2xhenktaW5pdC9sYXp5LWluaXQnXG5pbXBvcnQgdHlwZSB7XG4gIERlZmF1bHRFcnJvcixcbiAgTXV0YXRpb25PYnNlcnZlclJlc3VsdCxcbiAgUXVlcnlDbGllbnQsXG59IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHR5cGUge1xuICBDcmVhdGVNdXRhdGVGdW5jdGlvbixcbiAgQ3JlYXRlTXV0YXRpb25PcHRpb25zLFxuICBDcmVhdGVNdXRhdGlvblJlc3VsdCxcbn0gZnJvbSAnLi90eXBlcydcblxuLyoqXG4gKiBJbmplY3RzIGEgbXV0YXRpb246IGFuIGltcGVyYXRpdmUgZnVuY3Rpb24gdGhhdCBjYW4gYmUgaW52b2tlZCB3aGljaCB0eXBpY2FsbHkgcGVyZm9ybXMgc2VydmVyIHNpZGUgZWZmZWN0cy5cbiAqXG4gKiBVbmxpa2UgcXVlcmllcywgbXV0YXRpb25zIGFyZSBub3QgcnVuIGF1dG9tYXRpY2FsbHkuXG4gKiBAcGFyYW0gb3B0aW9uc0ZuIC0gQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgbXV0YXRpb24gb3B0aW9ucy5cbiAqIEBwYXJhbSBpbmplY3RvciAtIFRoZSBBbmd1bGFyIGluamVjdG9yIHRvIHVzZS5cbiAqIEByZXR1cm5zIFRoZSBtdXRhdGlvbi5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluamVjdE11dGF0aW9uPFxuICBURGF0YSA9IHVua25vd24sXG4gIFRFcnJvciA9IERlZmF1bHRFcnJvcixcbiAgVFZhcmlhYmxlcyA9IHZvaWQsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnNGbjogKFxuICAgIGNsaWVudDogUXVlcnlDbGllbnQsXG4gICkgPT4gQ3JlYXRlTXV0YXRpb25PcHRpb25zPFREYXRhLCBURXJyb3IsIFRWYXJpYWJsZXMsIFRDb250ZXh0PixcbiAgaW5qZWN0b3I/OiBJbmplY3Rvcixcbik6IENyZWF0ZU11dGF0aW9uUmVzdWx0PFREYXRhLCBURXJyb3IsIFRWYXJpYWJsZXMsIFRDb250ZXh0PiB7XG4gIHJldHVybiBhc3NlcnRJbmplY3RvcihpbmplY3RNdXRhdGlvbiwgaW5qZWN0b3IsICgpID0+IHtcbiAgICBjb25zdCBxdWVyeUNsaWVudCA9IGluamVjdFF1ZXJ5Q2xpZW50KClcbiAgICBjb25zdCBjdXJyZW50SW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpXG4gICAgY29uc3QgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKVxuICAgIGNvbnN0IG5nWm9uZSA9IGluamVjdChOZ1pvbmUpXG5cbiAgICByZXR1cm4gbGF6eUluaXQoKCkgPT5cbiAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dChjdXJyZW50SW5qZWN0b3IsICgpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcjxcbiAgICAgICAgICBURGF0YSxcbiAgICAgICAgICBURXJyb3IsXG4gICAgICAgICAgVFZhcmlhYmxlcyxcbiAgICAgICAgICBUQ29udGV4dFxuICAgICAgICA+KHF1ZXJ5Q2xpZW50LCBvcHRpb25zRm4ocXVlcnlDbGllbnQpKVxuICAgICAgICBjb25zdCBtdXRhdGU6IENyZWF0ZU11dGF0ZUZ1bmN0aW9uPFxuICAgICAgICAgIFREYXRhLFxuICAgICAgICAgIFRFcnJvcixcbiAgICAgICAgICBUVmFyaWFibGVzLFxuICAgICAgICAgIFRDb250ZXh0XG4gICAgICAgID4gPSAodmFyaWFibGVzLCBtdXRhdGVPcHRpb25zKSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIubXV0YXRlKHZhcmlhYmxlcywgbXV0YXRlT3B0aW9ucykuY2F0Y2gobm9vcClcbiAgICAgICAgfVxuXG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIuc2V0T3B0aW9ucyhcbiAgICAgICAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dChjdXJyZW50SW5qZWN0b3IsICgpID0+XG4gICAgICAgICAgICAgIG9wdGlvbnNGbihxdWVyeUNsaWVudCksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIClcbiAgICAgICAgfSlcblxuICAgICAgICBjb25zdCByZXN1bHQgPSBzaWduYWwob2JzZXJ2ZXIuZ2V0Q3VycmVudFJlc3VsdCgpKVxuXG4gICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gb2JzZXJ2ZXIuc3Vic2NyaWJlKFxuICAgICAgICAgIG5vdGlmeU1hbmFnZXIuYmF0Y2hDYWxscyhcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgc3RhdGU6IE11dGF0aW9uT2JzZXJ2ZXJSZXN1bHQ8XG4gICAgICAgICAgICAgICAgVERhdGEsXG4gICAgICAgICAgICAgICAgVEVycm9yLFxuICAgICAgICAgICAgICAgIFRWYXJpYWJsZXMsXG4gICAgICAgICAgICAgICAgVENvbnRleHRcbiAgICAgICAgICAgICAgPixcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICBuZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICBzdGF0ZS5pc0Vycm9yICYmXG4gICAgICAgICAgICAgICAgICBzaG91bGRUaHJvd0Vycm9yKG9ic2VydmVyLm9wdGlvbnMudGhyb3dPbkVycm9yLCBbc3RhdGUuZXJyb3JdKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhdGUuZXJyb3JcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzdWx0LnNldChzdGF0ZSlcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgKSxcbiAgICAgICAgKVxuXG4gICAgICAgIGRlc3Ryb3lSZWYub25EZXN0cm95KHVuc3Vic2NyaWJlKVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgICAgICAgLi4ucmVzdWx0KCksXG4gICAgICAgICAgbXV0YXRlLFxuICAgICAgICAgIG11dGF0ZUFzeW5jOiByZXN1bHQoKS5tdXRhdGUsXG4gICAgICAgIH0pKVxuXG4gICAgICAgIHJldHVybiBzaWduYWxQcm94eShyZXN1bHRTaWduYWwpIGFzIHVua25vd24gYXMgQ3JlYXRlTXV0YXRpb25SZXN1bHQ8XG4gICAgICAgICAgVERhdGEsXG4gICAgICAgICAgVEVycm9yLFxuICAgICAgICAgIFRWYXJpYWJsZXMsXG4gICAgICAgICAgVENvbnRleHRcbiAgICAgICAgPlxuICAgICAgfSksXG4gICAgKVxuICB9KVxufVxuIl19
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { QueriesObserver, notifyManager } from '@tanstack/query-core';
|
|
2
|
-
import { DestroyRef, computed, effect, inject, signal } from '@angular/core';
|
|
3
|
-
import { assertInjector } from './util/assert-injector/assert-injector';
|
|
4
|
-
import { injectQueryClient } from './inject-query-client';
|
|
5
|
-
/**
|
|
6
|
-
* @public
|
|
7
|
-
*/
|
|
8
|
-
export function injectQueries({ queries, ...options }, injector) {
|
|
9
|
-
return assertInjector(injectQueries, injector, () => {
|
|
10
|
-
const queryClient = injectQueryClient();
|
|
11
|
-
const destroyRef = inject(DestroyRef);
|
|
12
|
-
const defaultedQueries = computed(() => {
|
|
13
|
-
return queries().map((opts) => {
|
|
14
|
-
const defaultedOptions = queryClient.defaultQueryOptions(opts);
|
|
15
|
-
// Make sure the results are already in fetching state before subscribing or updating options
|
|
16
|
-
defaultedOptions._optimisticResults = 'optimistic';
|
|
17
|
-
return defaultedOptions;
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
const observer = new QueriesObserver(queryClient, defaultedQueries(), options);
|
|
21
|
-
// Do not notify on updates because of changes in the options because
|
|
22
|
-
// these changes should already be reflected in the optimistic result.
|
|
23
|
-
effect(() => {
|
|
24
|
-
observer.setQueries(defaultedQueries(), options, { listeners: false });
|
|
25
|
-
});
|
|
26
|
-
const [, getCombinedResult] = observer.getOptimisticResult(defaultedQueries(), options.combine);
|
|
27
|
-
const result = signal(getCombinedResult());
|
|
28
|
-
const unsubscribe = observer.subscribe(notifyManager.batchCalls(result.set));
|
|
29
|
-
destroyRef.onDestroy(unsubscribe);
|
|
30
|
-
return result;
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LXF1ZXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5qZWN0LXF1ZXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFxTHpEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FJM0IsRUFDRSxPQUFPLEVBQ1AsR0FBRyxPQUFPLEVBSVgsRUFDRCxRQUFtQjtJQUVuQixPQUFPLGNBQWMsQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRTtRQUNsRCxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsRUFBRSxDQUFBO1FBQ3ZDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUVyQyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDckMsT0FBTyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDNUIsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQzlELDZGQUE2RjtnQkFDN0YsZ0JBQWdCLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFBO2dCQUVsRCxPQUFPLGdCQUF3QyxDQUFBO1lBQ2pELENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixNQUFNLFFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FDbEMsV0FBVyxFQUNYLGdCQUFnQixFQUFFLEVBQ2xCLE9BQWtELENBQ25ELENBQUE7UUFFRCxxRUFBcUU7UUFDckUsc0VBQXNFO1FBQ3RFLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixRQUFRLENBQUMsVUFBVSxDQUNqQixnQkFBZ0IsRUFBRSxFQUNsQixPQUFrRCxFQUNsRCxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FDckIsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUFBO1FBRUYsTUFBTSxDQUFDLEVBQUUsaUJBQWlCLENBQUMsR0FBRyxRQUFRLENBQUMsbUJBQW1CLENBQ3hELGdCQUFnQixFQUFFLEVBQ2pCLE9BQW1ELENBQUMsT0FBTyxDQUM3RCxDQUFBO1FBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixFQUFTLENBQUMsQ0FBQTtRQUVqRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFDNUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUVqQyxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJpZXNPYnNlcnZlciwgbm90aWZ5TWFuYWdlciB9IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHsgRGVzdHJveVJlZiwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0b3IgfSBmcm9tICcuL3V0aWwvYXNzZXJ0LWluamVjdG9yL2Fzc2VydC1pbmplY3RvcidcbmltcG9ydCB7IGluamVjdFF1ZXJ5Q2xpZW50IH0gZnJvbSAnLi9pbmplY3QtcXVlcnktY2xpZW50J1xuaW1wb3J0IHR5cGUgeyBJbmplY3RvciwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB0eXBlIHtcbiAgRGVmYXVsdEVycm9yLFxuICBPbWl0S2V5b2YsXG4gIFF1ZXJpZXNPYnNlcnZlck9wdGlvbnMsXG4gIFF1ZXJpZXNQbGFjZWhvbGRlckRhdGFGdW5jdGlvbixcbiAgUXVlcnlGdW5jdGlvbixcbiAgUXVlcnlLZXksXG4gIFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zLFxuICBRdWVyeU9ic2VydmVyUmVzdWx0LFxuICBUaHJvd09uRXJyb3IsXG59IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuXG4vLyBUaGlzIGRlZmluZXMgdGhlIGBDcmVhdGVRdWVyeU9wdGlvbnNgIHRoYXQgYXJlIGFjY2VwdGVkIGluIGBRdWVyaWVzT3B0aW9uc2AgJiBgR2V0T3B0aW9uc2AuXG4vLyBgcGxhY2Vob2xkZXJEYXRhYCBmdW5jdGlvbiBkb2VzIG5vdCBoYXZlIGEgcGFyYW1ldGVyXG50eXBlIFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zRm9yQ3JlYXRlUXVlcmllczxcbiAgVFF1ZXJ5Rm5EYXRhID0gdW5rbm93bixcbiAgVEVycm9yID0gRGVmYXVsdEVycm9yLFxuICBURGF0YSA9IFRRdWVyeUZuRGF0YSxcbiAgVFF1ZXJ5S2V5IGV4dGVuZHMgUXVlcnlLZXkgPSBRdWVyeUtleSxcbj4gPSBPbWl0S2V5b2Y8XG4gIFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zPFRRdWVyeUZuRGF0YSwgVEVycm9yLCBURGF0YSwgVFF1ZXJ5Rm5EYXRhLCBUUXVlcnlLZXk+LFxuICAncGxhY2Vob2xkZXJEYXRhJ1xuPiAmIHtcbiAgcGxhY2Vob2xkZXJEYXRhPzogVFF1ZXJ5Rm5EYXRhIHwgUXVlcmllc1BsYWNlaG9sZGVyRGF0YUZ1bmN0aW9uPFRRdWVyeUZuRGF0YT5cbn1cblxuLy8gQXZvaWQgVFMgZGVwdGgtbGltaXQgZXJyb3IgaW4gY2FzZSBvZiBsYXJnZSBhcnJheSBsaXRlcmFsXG50eXBlIE1BWElNVU1fREVQVEggPSAyMFxuXG4vLyBXaWRlbiB0aGUgdHlwZSBvZiB0aGUgc3ltYm9sIHRvIGVuYWJsZSB0eXBlIGluZmVyZW5jZSBldmVuIGlmIHNraXBUb2tlbiBpcyBub3QgaW1tdXRhYmxlLlxudHlwZSBTa2lwVG9rZW5Gb3JVc2VRdWVyaWVzID0gc3ltYm9sXG5cbnR5cGUgR2V0T3B0aW9uczxUPiA9XG4gIC8vIFBhcnQgMTogcmVzcG9uc2libGUgZm9yIGFwcGx5aW5nIGV4cGxpY2l0IHR5cGUgcGFyYW1ldGVyIHRvIGZ1bmN0aW9uIGFyZ3VtZW50cywgaWYgb2JqZWN0IHsgcXVlcnlGbkRhdGE6IFRRdWVyeUZuRGF0YSwgZXJyb3I6IFRFcnJvciwgZGF0YTogVERhdGEgfVxuICBUIGV4dGVuZHMge1xuICAgIHF1ZXJ5Rm5EYXRhOiBpbmZlciBUUXVlcnlGbkRhdGFcbiAgICBlcnJvcj86IGluZmVyIFRFcnJvclxuICAgIGRhdGE6IGluZmVyIFREYXRhXG4gIH1cbiAgICA/IFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zRm9yQ3JlYXRlUXVlcmllczxUUXVlcnlGbkRhdGEsIFRFcnJvciwgVERhdGE+XG4gICAgOiBUIGV4dGVuZHMgeyBxdWVyeUZuRGF0YTogaW5mZXIgVFF1ZXJ5Rm5EYXRhOyBlcnJvcj86IGluZmVyIFRFcnJvciB9XG4gICAgICA/IFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zRm9yQ3JlYXRlUXVlcmllczxUUXVlcnlGbkRhdGEsIFRFcnJvcj5cbiAgICAgIDogVCBleHRlbmRzIHsgZGF0YTogaW5mZXIgVERhdGE7IGVycm9yPzogaW5mZXIgVEVycm9yIH1cbiAgICAgICAgPyBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM8dW5rbm93biwgVEVycm9yLCBURGF0YT5cbiAgICAgICAgOiAvLyBQYXJ0IDI6IHJlc3BvbnNpYmxlIGZvciBhcHBseWluZyBleHBsaWNpdCB0eXBlIHBhcmFtZXRlciB0byBmdW5jdGlvbiBhcmd1bWVudHMsIGlmIHR1cGxlIFtUUXVlcnlGbkRhdGEsIFRFcnJvciwgVERhdGFdXG4gICAgICAgICAgVCBleHRlbmRzIFtpbmZlciBUUXVlcnlGbkRhdGEsIGluZmVyIFRFcnJvciwgaW5mZXIgVERhdGFdXG4gICAgICAgICAgPyBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM8VFF1ZXJ5Rm5EYXRhLCBURXJyb3IsIFREYXRhPlxuICAgICAgICAgIDogVCBleHRlbmRzIFtpbmZlciBUUXVlcnlGbkRhdGEsIGluZmVyIFRFcnJvcl1cbiAgICAgICAgICAgID8gUXVlcnlPYnNlcnZlck9wdGlvbnNGb3JDcmVhdGVRdWVyaWVzPFRRdWVyeUZuRGF0YSwgVEVycm9yPlxuICAgICAgICAgICAgOiBUIGV4dGVuZHMgW2luZmVyIFRRdWVyeUZuRGF0YV1cbiAgICAgICAgICAgICAgPyBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM8VFF1ZXJ5Rm5EYXRhPlxuICAgICAgICAgICAgICA6IC8vIFBhcnQgMzogcmVzcG9uc2libGUgZm9yIGluZmVycmluZyBhbmQgZW5mb3JjaW5nIHR5cGUgaWYgbm8gZXhwbGljaXQgcGFyYW1ldGVyIHdhcyBwcm92aWRlZFxuICAgICAgICAgICAgICAgIFQgZXh0ZW5kcyB7XG4gICAgICAgICAgICAgICAgICAgIHF1ZXJ5Rm4/OlxuICAgICAgICAgICAgICAgICAgICAgIHwgUXVlcnlGdW5jdGlvbjxpbmZlciBUUXVlcnlGbkRhdGEsIGluZmVyIFRRdWVyeUtleT5cbiAgICAgICAgICAgICAgICAgICAgICB8IFNraXBUb2tlbkZvclVzZVF1ZXJpZXNcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0OiAoZGF0YTogYW55KSA9PiBpbmZlciBURGF0YVxuICAgICAgICAgICAgICAgICAgICB0aHJvd09uRXJyb3I/OiBUaHJvd09uRXJyb3I8YW55LCBpbmZlciBURXJyb3IsIGFueSwgYW55PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID8gUXVlcnlPYnNlcnZlck9wdGlvbnNGb3JDcmVhdGVRdWVyaWVzPFxuICAgICAgICAgICAgICAgICAgICBUUXVlcnlGbkRhdGEsXG4gICAgICAgICAgICAgICAgICAgIHVua25vd24gZXh0ZW5kcyBURXJyb3IgPyBEZWZhdWx0RXJyb3IgOiBURXJyb3IsXG4gICAgICAgICAgICAgICAgICAgIHVua25vd24gZXh0ZW5kcyBURGF0YSA/IFRRdWVyeUZuRGF0YSA6IFREYXRhLFxuICAgICAgICAgICAgICAgICAgICBUUXVlcnlLZXlcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA6IC8vIEZhbGxiYWNrXG4gICAgICAgICAgICAgICAgICBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXNcblxudHlwZSBHZXRSZXN1bHRzPFQ+ID1cbiAgLy8gUGFydCAxOiByZXNwb25zaWJsZSBmb3IgbWFwcGluZyBleHBsaWNpdCB0eXBlIHBhcmFtZXRlciB0byBmdW5jdGlvbiByZXN1bHQsIGlmIG9iamVjdFxuICBUIGV4dGVuZHMgeyBxdWVyeUZuRGF0YTogYW55OyBlcnJvcj86IGluZmVyIFRFcnJvcjsgZGF0YTogaW5mZXIgVERhdGEgfVxuICAgID8gUXVlcnlPYnNlcnZlclJlc3VsdDxURGF0YSwgVEVycm9yPlxuICAgIDogVCBleHRlbmRzIHsgcXVlcnlGbkRhdGE6IGluZmVyIFRRdWVyeUZuRGF0YTsgZXJyb3I/OiBpbmZlciBURXJyb3IgfVxuICAgICAgPyBRdWVyeU9ic2VydmVyUmVzdWx0PFRRdWVyeUZuRGF0YSwgVEVycm9yPlxuICAgICAgOiBUIGV4dGVuZHMgeyBkYXRhOiBpbmZlciBURGF0YTsgZXJyb3I/OiBpbmZlciBURXJyb3IgfVxuICAgICAgICA/IFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ8VERhdGEsIFRFcnJvcj5cbiAgICAgICAgOiAvLyBQYXJ0IDI6IHJlc3BvbnNpYmxlIGZvciBtYXBwaW5nIGV4cGxpY2l0IHR5cGUgcGFyYW1ldGVyIHRvIGZ1bmN0aW9uIHJlc3VsdCwgaWYgdHVwbGVcbiAgICAgICAgICBUIGV4dGVuZHMgW2FueSwgaW5mZXIgVEVycm9yLCBpbmZlciBURGF0YV1cbiAgICAgICAgICA/IFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ8VERhdGEsIFRFcnJvcj5cbiAgICAgICAgICA6IFQgZXh0ZW5kcyBbaW5mZXIgVFF1ZXJ5Rm5EYXRhLCBpbmZlciBURXJyb3JdXG4gICAgICAgICAgICA/IFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ8VFF1ZXJ5Rm5EYXRhLCBURXJyb3I+XG4gICAgICAgICAgICA6IFQgZXh0ZW5kcyBbaW5mZXIgVFF1ZXJ5Rm5EYXRhXVxuICAgICAgICAgICAgICA/IFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ8VFF1ZXJ5Rm5EYXRhPlxuICAgICAgICAgICAgICA6IC8vIFBhcnQgMzogcmVzcG9uc2libGUgZm9yIG1hcHBpbmcgaW5mZXJyZWQgdHlwZSB0byByZXN1bHRzLCBpZiBubyBleHBsaWNpdCBwYXJhbWV0ZXIgd2FzIHByb3ZpZGVkXG4gICAgICAgICAgICAgICAgVCBleHRlbmRzIHtcbiAgICAgICAgICAgICAgICAgICAgcXVlcnlGbj86XG4gICAgICAgICAgICAgICAgICAgICAgfCBRdWVyeUZ1bmN0aW9uPGluZmVyIFRRdWVyeUZuRGF0YSwgYW55PlxuICAgICAgICAgICAgICAgICAgICAgIHwgU2tpcFRva2VuRm9yVXNlUXVlcmllc1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3Q6IChkYXRhOiBhbnkpID0+IGluZmVyIFREYXRhXG4gICAgICAgICAgICAgICAgICAgIHRocm93T25FcnJvcj86IFRocm93T25FcnJvcjxhbnksIGluZmVyIFRFcnJvciwgYW55LCBhbnk+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPyBRdWVyeU9ic2VydmVyUmVzdWx0PFxuICAgICAgICAgICAgICAgICAgICB1bmtub3duIGV4dGVuZHMgVERhdGEgPyBUUXVlcnlGbkRhdGEgOiBURGF0YSxcbiAgICAgICAgICAgICAgICAgICAgdW5rbm93biBleHRlbmRzIFRFcnJvciA/IERlZmF1bHRFcnJvciA6IFRFcnJvclxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDogLy8gRmFsbGJhY2tcbiAgICAgICAgICAgICAgICAgIFF1ZXJ5T2JzZXJ2ZXJSZXN1bHRcblxuLyoqXG4gKiBRdWVyaWVzT3B0aW9ucyByZWR1Y2VyIHJlY3Vyc2l2ZWx5IHVud3JhcHMgZnVuY3Rpb24gYXJndW1lbnRzIHRvIGluZmVyL2VuZm9yY2UgdHlwZSBwYXJhbVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBRdWVyaWVzT3B0aW9uczxcbiAgVCBleHRlbmRzIEFycmF5PGFueT4sXG4gIFRSZXN1bHQgZXh0ZW5kcyBBcnJheTxhbnk+ID0gW10sXG4gIFREZXB0aCBleHRlbmRzIFJlYWRvbmx5QXJyYXk8bnVtYmVyPiA9IFtdLFxuPiA9IFREZXB0aFsnbGVuZ3RoJ10gZXh0ZW5kcyBNQVhJTVVNX0RFUFRIXG4gID8gQXJyYXk8UXVlcnlPYnNlcnZlck9wdGlvbnNGb3JDcmVhdGVRdWVyaWVzPlxuICA6IFQgZXh0ZW5kcyBbXVxuICAgID8gW11cbiAgICA6IFQgZXh0ZW5kcyBbaW5mZXIgSGVhZF1cbiAgICAgID8gWy4uLlRSZXN1bHQsIEdldE9wdGlvbnM8SGVhZD5dXG4gICAgICA6IFQgZXh0ZW5kcyBbaW5mZXIgSGVhZCwgLi4uaW5mZXIgVGFpbF1cbiAgICAgICAgPyBRdWVyaWVzT3B0aW9uczxcbiAgICAgICAgICAgIFsuLi5UYWlsXSxcbiAgICAgICAgICAgIFsuLi5UUmVzdWx0LCBHZXRPcHRpb25zPEhlYWQ+XSxcbiAgICAgICAgICAgIFsuLi5URGVwdGgsIDFdXG4gICAgICAgICAgPlxuICAgICAgICA6IFJlYWRvbmx5QXJyYXk8dW5rbm93bj4gZXh0ZW5kcyBUXG4gICAgICAgICAgPyBUXG4gICAgICAgICAgOiAvLyBJZiBUIGlzICpzb21lKiBhcnJheSBidXQgd2UgY291bGRuJ3QgYXNzaWduIHVua25vd25bXSB0byBpdCwgdGhlbiBpdCBtdXN0IGhvbGQgc29tZSBrbm93bi9ob21vZ2Vub3VzIHR5cGUhXG4gICAgICAgICAgICAvLyB1c2UgdGhpcyB0byBpbmZlciB0aGUgcGFyYW0gdHlwZXMgaW4gdGhlIGNhc2Ugb2YgQXJyYXkubWFwKCkgYXJndW1lbnRcbiAgICAgICAgICAgIFQgZXh0ZW5kcyBBcnJheTxcbiAgICAgICAgICAgICAgICBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM8XG4gICAgICAgICAgICAgICAgICBpbmZlciBUUXVlcnlGbkRhdGEsXG4gICAgICAgICAgICAgICAgICBpbmZlciBURXJyb3IsXG4gICAgICAgICAgICAgICAgICBpbmZlciBURGF0YSxcbiAgICAgICAgICAgICAgICAgIGluZmVyIFRRdWVyeUtleVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPyBBcnJheTxcbiAgICAgICAgICAgICAgICBRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM8XG4gICAgICAgICAgICAgICAgICBUUXVlcnlGbkRhdGEsXG4gICAgICAgICAgICAgICAgICBURXJyb3IsXG4gICAgICAgICAgICAgICAgICBURGF0YSxcbiAgICAgICAgICAgICAgICAgIFRRdWVyeUtleVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgOiAvLyBGYWxsYmFja1xuICAgICAgICAgICAgICBBcnJheTxRdWVyeU9ic2VydmVyT3B0aW9uc0ZvckNyZWF0ZVF1ZXJpZXM+XG5cbi8qKlxuICogUXVlcmllc1Jlc3VsdHMgcmVkdWNlciByZWN1cnNpdmVseSBtYXBzIHR5cGUgcGFyYW0gdG8gcmVzdWx0c1xuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBRdWVyaWVzUmVzdWx0czxcbiAgVCBleHRlbmRzIEFycmF5PGFueT4sXG4gIFRSZXN1bHQgZXh0ZW5kcyBBcnJheTxhbnk+ID0gW10sXG4gIFREZXB0aCBleHRlbmRzIFJlYWRvbmx5QXJyYXk8bnVtYmVyPiA9IFtdLFxuPiA9IFREZXB0aFsnbGVuZ3RoJ10gZXh0ZW5kcyBNQVhJTVVNX0RFUFRIXG4gID8gQXJyYXk8UXVlcnlPYnNlcnZlclJlc3VsdD5cbiAgOiBUIGV4dGVuZHMgW11cbiAgICA/IFtdXG4gICAgOiBUIGV4dGVuZHMgW2luZmVyIEhlYWRdXG4gICAgICA/IFsuLi5UUmVzdWx0LCBHZXRSZXN1bHRzPEhlYWQ+XVxuICAgICAgOiBUIGV4dGVuZHMgW2luZmVyIEhlYWQsIC4uLmluZmVyIFRhaWxdXG4gICAgICAgID8gUXVlcmllc1Jlc3VsdHM8XG4gICAgICAgICAgICBbLi4uVGFpbF0sXG4gICAgICAgICAgICBbLi4uVFJlc3VsdCwgR2V0UmVzdWx0czxIZWFkPl0sXG4gICAgICAgICAgICBbLi4uVERlcHRoLCAxXVxuICAgICAgICAgID5cbiAgICAgICAgOiBUIGV4dGVuZHMgQXJyYXk8XG4gICAgICAgICAgICAgIFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zRm9yQ3JlYXRlUXVlcmllczxcbiAgICAgICAgICAgICAgICBpbmZlciBUUXVlcnlGbkRhdGEsXG4gICAgICAgICAgICAgICAgaW5mZXIgVEVycm9yLFxuICAgICAgICAgICAgICAgIGluZmVyIFREYXRhLFxuICAgICAgICAgICAgICAgIGFueVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA+XG4gICAgICAgICAgPyAvLyBEeW5hbWljLXNpemUgKGhvbW9nZW5vdXMpIENyZWF0ZVF1ZXJ5T3B0aW9ucyBhcnJheTogbWFwIGRpcmVjdGx5IHRvIGFycmF5IG9mIHJlc3VsdHNcbiAgICAgICAgICAgIEFycmF5PFxuICAgICAgICAgICAgICBRdWVyeU9ic2VydmVyUmVzdWx0PFxuICAgICAgICAgICAgICAgIHVua25vd24gZXh0ZW5kcyBURGF0YSA/IFRRdWVyeUZuRGF0YSA6IFREYXRhLFxuICAgICAgICAgICAgICAgIHVua25vd24gZXh0ZW5kcyBURXJyb3IgPyBEZWZhdWx0RXJyb3IgOiBURXJyb3JcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPlxuICAgICAgICAgIDogLy8gRmFsbGJhY2tcbiAgICAgICAgICAgIEFycmF5PFF1ZXJ5T2JzZXJ2ZXJSZXN1bHQ+XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0UXVlcmllczxcbiAgVCBleHRlbmRzIEFycmF5PGFueT4sXG4gIFRDb21iaW5lZFJlc3VsdCA9IFF1ZXJpZXNSZXN1bHRzPFQ+LFxuPihcbiAge1xuICAgIHF1ZXJpZXMsXG4gICAgLi4ub3B0aW9uc1xuICB9OiB7XG4gICAgcXVlcmllczogU2lnbmFsPFsuLi5RdWVyaWVzT3B0aW9uczxUPl0+XG4gICAgY29tYmluZT86IChyZXN1bHQ6IFF1ZXJpZXNSZXN1bHRzPFQ+KSA9PiBUQ29tYmluZWRSZXN1bHRcbiAgfSxcbiAgaW5qZWN0b3I/OiBJbmplY3Rvcixcbik6IFNpZ25hbDxUQ29tYmluZWRSZXN1bHQ+IHtcbiAgcmV0dXJuIGFzc2VydEluamVjdG9yKGluamVjdFF1ZXJpZXMsIGluamVjdG9yLCAoKSA9PiB7XG4gICAgY29uc3QgcXVlcnlDbGllbnQgPSBpbmplY3RRdWVyeUNsaWVudCgpXG4gICAgY29uc3QgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKVxuXG4gICAgY29uc3QgZGVmYXVsdGVkUXVlcmllcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgIHJldHVybiBxdWVyaWVzKCkubWFwKChvcHRzKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnMgPSBxdWVyeUNsaWVudC5kZWZhdWx0UXVlcnlPcHRpb25zKG9wdHMpXG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGUgcmVzdWx0cyBhcmUgYWxyZWFkeSBpbiBmZXRjaGluZyBzdGF0ZSBiZWZvcmUgc3Vic2NyaWJpbmcgb3IgdXBkYXRpbmcgb3B0aW9uc1xuICAgICAgICBkZWZhdWx0ZWRPcHRpb25zLl9vcHRpbWlzdGljUmVzdWx0cyA9ICdvcHRpbWlzdGljJ1xuXG4gICAgICAgIHJldHVybiBkZWZhdWx0ZWRPcHRpb25zIGFzIFF1ZXJ5T2JzZXJ2ZXJPcHRpb25zXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBRdWVyaWVzT2JzZXJ2ZXI8VENvbWJpbmVkUmVzdWx0PihcbiAgICAgIHF1ZXJ5Q2xpZW50LFxuICAgICAgZGVmYXVsdGVkUXVlcmllcygpLFxuICAgICAgb3B0aW9ucyBhcyBRdWVyaWVzT2JzZXJ2ZXJPcHRpb25zPFRDb21iaW5lZFJlc3VsdD4sXG4gICAgKVxuXG4gICAgLy8gRG8gbm90IG5vdGlmeSBvbiB1cGRhdGVzIGJlY2F1c2Ugb2YgY2hhbmdlcyBpbiB0aGUgb3B0aW9ucyBiZWNhdXNlXG4gICAgLy8gdGhlc2UgY2hhbmdlcyBzaG91bGQgYWxyZWFkeSBiZSByZWZsZWN0ZWQgaW4gdGhlIG9wdGltaXN0aWMgcmVzdWx0LlxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBvYnNlcnZlci5zZXRRdWVyaWVzKFxuICAgICAgICBkZWZhdWx0ZWRRdWVyaWVzKCksXG4gICAgICAgIG9wdGlvbnMgYXMgUXVlcmllc09ic2VydmVyT3B0aW9uczxUQ29tYmluZWRSZXN1bHQ+LFxuICAgICAgICB7IGxpc3RlbmVyczogZmFsc2UgfSxcbiAgICAgIClcbiAgICB9KVxuXG4gICAgY29uc3QgWywgZ2V0Q29tYmluZWRSZXN1bHRdID0gb2JzZXJ2ZXIuZ2V0T3B0aW1pc3RpY1Jlc3VsdChcbiAgICAgIGRlZmF1bHRlZFF1ZXJpZXMoKSxcbiAgICAgIChvcHRpb25zIGFzIFF1ZXJpZXNPYnNlcnZlck9wdGlvbnM8VENvbWJpbmVkUmVzdWx0PikuY29tYmluZSxcbiAgICApXG5cbiAgICBjb25zdCByZXN1bHQgPSBzaWduYWwoZ2V0Q29tYmluZWRSZXN1bHQoKSBhcyBhbnkpXG5cbiAgICBjb25zdCB1bnN1YnNjcmliZSA9IG9ic2VydmVyLnN1YnNjcmliZShub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMocmVzdWx0LnNldCkpXG4gICAgZGVzdHJveVJlZi5vbkRlc3Ryb3kodW5zdWJzY3JpYmUpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0pXG59XG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { createNoopInjectionToken } from './util/create-injection-token/create-injection-token';
|
|
2
|
-
const tokens = createNoopInjectionToken('QueryClientToken');
|
|
3
|
-
/**
|
|
4
|
-
* Injects the `QueryClient` instance into the component or service.
|
|
5
|
-
*
|
|
6
|
-
* **Example**
|
|
7
|
-
* ```ts
|
|
8
|
-
* const queryClient = injectQueryClient();
|
|
9
|
-
* ```
|
|
10
|
-
* @returns The `QueryClient` instance.
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
export const injectQueryClient = tokens[0];
|
|
14
|
-
/**
|
|
15
|
-
* Usually {@link provideTanStackQuery} is used once to set up TanStack Query and the
|
|
16
|
-
* {@link https://tanstack.com/query/latest/docs/reference/QueryClient|QueryClient}
|
|
17
|
-
* for the entire application. You can use `provideQueryClient` to provide a
|
|
18
|
-
* different `QueryClient` instance for a part of the application.
|
|
19
|
-
* @public
|
|
20
|
-
*/
|
|
21
|
-
export const provideQueryClient = tokens[1];
|
|
22
|
-
export const QUERY_CLIENT = tokens[2];
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LXF1ZXJ5LWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmplY3QtcXVlcnktY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFBO0FBRy9GLE1BQU0sTUFBTSxHQUFHLHdCQUF3QixDQUFjLGtCQUFrQixDQUFDLENBQUE7QUFFeEU7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRTFDOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUUzQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlTm9vcEluamVjdGlvblRva2VuIH0gZnJvbSAnLi91dGlsL2NyZWF0ZS1pbmplY3Rpb24tdG9rZW4vY3JlYXRlLWluamVjdGlvbi10b2tlbidcbmltcG9ydCB0eXBlIHsgUXVlcnlDbGllbnQgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcblxuY29uc3QgdG9rZW5zID0gY3JlYXRlTm9vcEluamVjdGlvblRva2VuPFF1ZXJ5Q2xpZW50PignUXVlcnlDbGllbnRUb2tlbicpXG5cbi8qKlxuICogSW5qZWN0cyB0aGUgYFF1ZXJ5Q2xpZW50YCBpbnN0YW5jZSBpbnRvIHRoZSBjb21wb25lbnQgb3Igc2VydmljZS5cbiAqXG4gKiAqKkV4YW1wbGUqKlxuICogYGBgdHNcbiAqIGNvbnN0IHF1ZXJ5Q2xpZW50ID0gaW5qZWN0UXVlcnlDbGllbnQoKTtcbiAqIGBgYFxuICogQHJldHVybnMgVGhlIGBRdWVyeUNsaWVudGAgaW5zdGFuY2UuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjb25zdCBpbmplY3RRdWVyeUNsaWVudCA9IHRva2Vuc1swXVxuXG4vKipcbiAqIFVzdWFsbHkge0BsaW5rIHByb3ZpZGVUYW5TdGFja1F1ZXJ5fSBpcyB1c2VkIG9uY2UgdG8gc2V0IHVwIFRhblN0YWNrIFF1ZXJ5IGFuZCB0aGVcbiAqIHtAbGluayBodHRwczovL3RhbnN0YWNrLmNvbS9xdWVyeS9sYXRlc3QvZG9jcy9yZWZlcmVuY2UvUXVlcnlDbGllbnR8UXVlcnlDbGllbnR9XG4gKiBmb3IgdGhlIGVudGlyZSBhcHBsaWNhdGlvbi4gWW91IGNhbiB1c2UgYHByb3ZpZGVRdWVyeUNsaWVudGAgdG8gcHJvdmlkZSBhXG4gKiBkaWZmZXJlbnQgYFF1ZXJ5Q2xpZW50YCBpbnN0YW5jZSBmb3IgYSBwYXJ0IG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IHByb3ZpZGVRdWVyeUNsaWVudCA9IHRva2Vuc1sxXVxuXG5leHBvcnQgY29uc3QgUVVFUllfQ0xJRU5UID0gdG9rZW5zWzJdXG4iXX0=
|