@tanstack/svelte-query 5.90.2 → 6.0.1
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/dist/HydrationBoundary.svelte +15 -4
- package/dist/HydrationBoundary.svelte.d.ts +9 -19
- package/dist/HydrationBoundary.svelte.d.ts.map +1 -1
- package/dist/QueryClientProvider.svelte +4 -2
- package/dist/QueryClientProvider.svelte.d.ts +4 -19
- package/dist/QueryClientProvider.svelte.d.ts.map +1 -1
- package/dist/containers.svelte.d.ts +19 -0
- package/dist/containers.svelte.d.ts.map +1 -0
- package/dist/containers.svelte.js +118 -0
- package/dist/context.d.ts +3 -3
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +4 -5
- package/dist/createBaseQuery.svelte.d.ts +10 -0
- package/dist/createBaseQuery.svelte.d.ts.map +1 -0
- package/dist/createBaseQuery.svelte.js +58 -0
- package/dist/createInfiniteQuery.d.ts +2 -2
- package/dist/createInfiniteQuery.d.ts.map +1 -1
- package/dist/createInfiniteQuery.js +1 -1
- package/dist/createMutation.svelte.d.ts +8 -0
- package/dist/createMutation.svelte.d.ts.map +1 -0
- package/dist/createMutation.svelte.js +50 -0
- package/dist/createQueries.svelte.d.ts +76 -0
- package/dist/createQueries.svelte.d.ts.map +1 -0
- package/dist/createQueries.svelte.js +39 -0
- package/dist/createQuery.d.ts +4 -4
- package/dist/createQuery.d.ts.map +1 -1
- package/dist/createQuery.js +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/types.d.ts +11 -8
- package/dist/types.d.ts.map +1 -1
- package/dist/useIsFetching.svelte.d.ts +4 -0
- package/dist/useIsFetching.svelte.d.ts.map +1 -0
- package/dist/useIsFetching.svelte.js +7 -0
- package/dist/useIsMutating.svelte.d.ts +4 -0
- package/dist/useIsMutating.svelte.d.ts.map +1 -0
- package/dist/useIsMutating.svelte.js +7 -0
- package/dist/useIsRestoring.d.ts +2 -2
- package/dist/useIsRestoring.d.ts.map +1 -1
- package/dist/{useMutationState.d.ts → useMutationState.svelte.d.ts} +2 -3
- package/dist/useMutationState.svelte.d.ts.map +1 -0
- package/dist/useMutationState.svelte.js +33 -0
- package/dist/utils.svelte.d.ts +4 -0
- package/dist/utils.svelte.d.ts.map +1 -0
- package/dist/utils.svelte.js +31 -0
- package/package.json +9 -3
- package/src/HydrationBoundary.svelte +15 -4
- package/src/QueryClientProvider.svelte +4 -2
- package/src/containers.svelte.ts +123 -0
- package/src/context.ts +10 -11
- package/src/createBaseQuery.svelte.ts +107 -0
- package/src/createInfiniteQuery.ts +4 -4
- package/src/createMutation.svelte.ts +91 -0
- package/src/{createQueries.ts → createQueries.svelte.ts} +86 -96
- package/src/createQuery.ts +15 -17
- package/src/index.ts +6 -6
- package/src/types.ts +12 -9
- package/src/useIsFetching.svelte.ts +16 -0
- package/src/useIsMutating.svelte.ts +16 -0
- package/src/useIsRestoring.ts +2 -2
- package/src/useMutationState.svelte.ts +56 -0
- package/src/utils.svelte.ts +44 -0
- package/dist/createBaseQuery.d.ts +0 -4
- package/dist/createBaseQuery.d.ts.map +0 -1
- package/dist/createBaseQuery.js +0 -40
- package/dist/createMutation.d.ts +0 -4
- package/dist/createMutation.d.ts.map +0 -1
- package/dist/createMutation.js +0 -25
- package/dist/createQueries.d.ts +0 -77
- package/dist/createQueries.d.ts.map +0 -1
- package/dist/createQueries.js +0 -40
- package/dist/useIsFetching.d.ts +0 -4
- package/dist/useIsFetching.d.ts.map +0 -1
- package/dist/useIsFetching.js +0 -20
- package/dist/useIsMutating.d.ts +0 -4
- package/dist/useIsMutating.d.ts.map +0 -1
- package/dist/useIsMutating.js +0 -20
- package/dist/useMutationState.d.ts.map +0 -1
- package/dist/useMutationState.js +0 -23
- package/dist/utils.d.ts +0 -4
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -3
- package/src/createBaseQuery.ts +0 -85
- package/src/createMutation.ts +0 -54
- package/src/useIsFetching.ts +0 -30
- package/src/useIsMutating.ts +0 -30
- package/src/useMutationState.ts +0 -49
- package/src/utils.ts +0 -8
package/src/types.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte'
|
|
1
2
|
import type {
|
|
2
3
|
DefaultError,
|
|
3
4
|
DefinedQueryObserverResult,
|
|
@@ -11,14 +12,13 @@ import type {
|
|
|
11
12
|
MutationState,
|
|
12
13
|
OmitKeyof,
|
|
13
14
|
Override,
|
|
15
|
+
QueryClient,
|
|
14
16
|
QueryKey,
|
|
15
17
|
QueryObserverOptions,
|
|
16
18
|
QueryObserverResult,
|
|
17
19
|
} from '@tanstack/query-core'
|
|
18
|
-
import type { Readable } from 'svelte/store'
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
export type StoreOrVal<T> = T | Readable<T>
|
|
21
|
+
export type Accessor<T> = () => T
|
|
22
22
|
|
|
23
23
|
/** Options for createBaseQuery */
|
|
24
24
|
export type CreateBaseQueryOptions<
|
|
@@ -33,7 +33,7 @@ export type CreateBaseQueryOptions<
|
|
|
33
33
|
export type CreateBaseQueryResult<
|
|
34
34
|
TData = unknown,
|
|
35
35
|
TError = DefaultError,
|
|
36
|
-
> =
|
|
36
|
+
> = QueryObserverResult<TData, TError>
|
|
37
37
|
|
|
38
38
|
/** Options for createQuery */
|
|
39
39
|
export type CreateQueryOptions<
|
|
@@ -68,13 +68,13 @@ export type CreateInfiniteQueryOptions<
|
|
|
68
68
|
export type CreateInfiniteQueryResult<
|
|
69
69
|
TData = unknown,
|
|
70
70
|
TError = DefaultError,
|
|
71
|
-
> =
|
|
71
|
+
> = InfiniteQueryObserverResult<TData, TError>
|
|
72
72
|
|
|
73
73
|
/** Options for createBaseQuery with initialData */
|
|
74
74
|
export type DefinedCreateBaseQueryResult<
|
|
75
75
|
TData = unknown,
|
|
76
76
|
TError = DefaultError,
|
|
77
|
-
> =
|
|
77
|
+
> = DefinedQueryObserverResult<TData, TError>
|
|
78
78
|
|
|
79
79
|
/** Options for createQuery with initialData */
|
|
80
80
|
export type DefinedCreateQueryResult<
|
|
@@ -134,9 +134,7 @@ export type CreateMutationResult<
|
|
|
134
134
|
TError = DefaultError,
|
|
135
135
|
TVariables = unknown,
|
|
136
136
|
TOnMutateResult = unknown,
|
|
137
|
-
> =
|
|
138
|
-
CreateBaseMutationResult<TData, TError, TVariables, TOnMutateResult>
|
|
139
|
-
>
|
|
137
|
+
> = CreateBaseMutationResult<TData, TError, TVariables, TOnMutateResult>
|
|
140
138
|
|
|
141
139
|
/** Options for useMutationState */
|
|
142
140
|
export type MutationStateOptions<TResult = MutationState> = {
|
|
@@ -145,3 +143,8 @@ export type MutationStateOptions<TResult = MutationState> = {
|
|
|
145
143
|
mutation: Mutation<unknown, DefaultError, unknown, unknown>,
|
|
146
144
|
) => TResult
|
|
147
145
|
}
|
|
146
|
+
|
|
147
|
+
export type QueryClientProviderProps = {
|
|
148
|
+
client: QueryClient
|
|
149
|
+
children: Snippet
|
|
150
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ReactiveValue } from './containers.svelte.js'
|
|
2
|
+
import { useQueryClient } from './useQueryClient.js'
|
|
3
|
+
import type { QueryClient, QueryFilters } from '@tanstack/query-core'
|
|
4
|
+
|
|
5
|
+
export function useIsFetching(
|
|
6
|
+
filters?: QueryFilters,
|
|
7
|
+
queryClient?: QueryClient,
|
|
8
|
+
): ReactiveValue<number> {
|
|
9
|
+
const client = useQueryClient(queryClient)
|
|
10
|
+
const queryCache = client.getQueryCache()
|
|
11
|
+
|
|
12
|
+
return new ReactiveValue(
|
|
13
|
+
() => client.isFetching(filters),
|
|
14
|
+
(update) => queryCache.subscribe(update),
|
|
15
|
+
)
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useQueryClient } from './useQueryClient.js'
|
|
2
|
+
import { ReactiveValue } from './containers.svelte.js'
|
|
3
|
+
import type { MutationFilters, QueryClient } from '@tanstack/query-core'
|
|
4
|
+
|
|
5
|
+
export function useIsMutating(
|
|
6
|
+
filters?: MutationFilters,
|
|
7
|
+
queryClient?: QueryClient,
|
|
8
|
+
): ReactiveValue<number> {
|
|
9
|
+
const client = useQueryClient(queryClient)
|
|
10
|
+
const cache = client.getMutationCache()
|
|
11
|
+
|
|
12
|
+
return new ReactiveValue(
|
|
13
|
+
() => client.isMutating(filters),
|
|
14
|
+
(update) => cache.subscribe(update),
|
|
15
|
+
)
|
|
16
|
+
}
|
package/src/useIsRestoring.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getIsRestoringContext } from './context.js'
|
|
2
|
-
import type {
|
|
2
|
+
import type { Box } from './containers.svelte.js'
|
|
3
3
|
|
|
4
|
-
export function useIsRestoring():
|
|
4
|
+
export function useIsRestoring(): Box<boolean> {
|
|
5
5
|
return getIsRestoringContext()
|
|
6
6
|
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { replaceEqualDeep } from '@tanstack/query-core'
|
|
2
|
+
import { useQueryClient } from './useQueryClient.js'
|
|
3
|
+
import type {
|
|
4
|
+
MutationCache,
|
|
5
|
+
MutationState,
|
|
6
|
+
QueryClient,
|
|
7
|
+
} from '@tanstack/query-core'
|
|
8
|
+
import type { MutationStateOptions } from './types.js'
|
|
9
|
+
|
|
10
|
+
function getResult<TResult = MutationState>(
|
|
11
|
+
mutationCache: MutationCache,
|
|
12
|
+
options: MutationStateOptions<TResult>,
|
|
13
|
+
): Array<TResult> {
|
|
14
|
+
return mutationCache
|
|
15
|
+
.findAll(options.filters)
|
|
16
|
+
.map(
|
|
17
|
+
(mutation): TResult =>
|
|
18
|
+
(options.select ? options.select(mutation) : mutation.state) as TResult,
|
|
19
|
+
)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function useMutationState<TResult = MutationState>(
|
|
23
|
+
options: MutationStateOptions<TResult> = {},
|
|
24
|
+
queryClient?: QueryClient,
|
|
25
|
+
): Array<TResult> {
|
|
26
|
+
const mutationCache = useQueryClient(queryClient).getMutationCache()
|
|
27
|
+
const result = $state(getResult(mutationCache, options))
|
|
28
|
+
|
|
29
|
+
$effect(() => {
|
|
30
|
+
const unsubscribe = mutationCache.subscribe(() => {
|
|
31
|
+
const nextResult = replaceEqualDeep(
|
|
32
|
+
result,
|
|
33
|
+
getResult(mutationCache, options),
|
|
34
|
+
)
|
|
35
|
+
if (result !== nextResult) {
|
|
36
|
+
Object.assign(result, nextResult)
|
|
37
|
+
}
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
return unsubscribe
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
/* $effect(() => {
|
|
44
|
+
mutationCache.subscribe(() => {
|
|
45
|
+
const nextResult = replaceEqualDeep(
|
|
46
|
+
result.current,
|
|
47
|
+
getResult(mutationCache, optionsRef),
|
|
48
|
+
)
|
|
49
|
+
if (result.current !== nextResult) {
|
|
50
|
+
result = nextResult
|
|
51
|
+
//notifyManager.schedule(onStoreChange)
|
|
52
|
+
}
|
|
53
|
+
})
|
|
54
|
+
}) */
|
|
55
|
+
return result
|
|
56
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { untrack } from 'svelte'
|
|
2
|
+
// modified from the great https://github.com/svecosystem/runed
|
|
3
|
+
function runEffect(
|
|
4
|
+
flush: 'post' | 'pre',
|
|
5
|
+
effect: () => void | VoidFunction,
|
|
6
|
+
): void {
|
|
7
|
+
switch (flush) {
|
|
8
|
+
case 'post':
|
|
9
|
+
$effect(effect)
|
|
10
|
+
break
|
|
11
|
+
case 'pre':
|
|
12
|
+
$effect.pre(effect)
|
|
13
|
+
break
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
type Getter<T> = () => T
|
|
17
|
+
export const watchChanges = <T>(
|
|
18
|
+
sources: Getter<T> | Array<Getter<T>>,
|
|
19
|
+
flush: 'post' | 'pre',
|
|
20
|
+
effect: (
|
|
21
|
+
values: T | Array<T>,
|
|
22
|
+
previousValues: T | undefined | Array<T | undefined>,
|
|
23
|
+
) => void,
|
|
24
|
+
) => {
|
|
25
|
+
let active = false
|
|
26
|
+
let previousValues: T | undefined | Array<T | undefined> = Array.isArray(
|
|
27
|
+
sources,
|
|
28
|
+
)
|
|
29
|
+
? []
|
|
30
|
+
: undefined
|
|
31
|
+
runEffect(flush, () => {
|
|
32
|
+
const values = Array.isArray(sources)
|
|
33
|
+
? sources.map((source) => source())
|
|
34
|
+
: sources()
|
|
35
|
+
if (!active) {
|
|
36
|
+
active = true
|
|
37
|
+
previousValues = values
|
|
38
|
+
return
|
|
39
|
+
}
|
|
40
|
+
const cleanup = untrack(() => effect(values, previousValues))
|
|
41
|
+
previousValues = values
|
|
42
|
+
return cleanup
|
|
43
|
+
})
|
|
44
|
+
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { QueryClient, QueryKey, QueryObserver } from '@tanstack/query-core';
|
|
2
|
-
import type { CreateBaseQueryOptions, CreateBaseQueryResult, StoreOrVal } from './types.js';
|
|
3
|
-
export declare function createBaseQuery<TQueryFnData, TError, TData, TQueryData, TQueryKey extends QueryKey>(options: StoreOrVal<CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>>, Observer: typeof QueryObserver, queryClient?: QueryClient): CreateBaseQueryResult<TData, TError>;
|
|
4
|
-
//# sourceMappingURL=createBaseQuery.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createBaseQuery.d.ts","sourceRoot":"","sources":["../src/createBaseQuery.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,aAAa,EAEd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACrB,UAAU,EACX,MAAM,YAAY,CAAA;AAEnB,wBAAgB,eAAe,CAC7B,YAAY,EACZ,MAAM,EACN,KAAK,EACL,UAAU,EACV,SAAS,SAAS,QAAQ,EAE1B,OAAO,EAAE,UAAU,CACjB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAC3E,EACD,QAAQ,EAAE,OAAO,aAAa,EAC9B,WAAW,CAAC,EAAE,WAAW,GACxB,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAuDtC"}
|
package/dist/createBaseQuery.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { derived, get, readable } from 'svelte/store';
|
|
2
|
-
import { noop, notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { useIsRestoring } from './useIsRestoring.js';
|
|
4
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
5
|
-
import { isSvelteStore } from './utils.js';
|
|
6
|
-
export function createBaseQuery(options, Observer, queryClient) {
|
|
7
|
-
/** Load query client */
|
|
8
|
-
const client = useQueryClient(queryClient);
|
|
9
|
-
const isRestoring = useIsRestoring();
|
|
10
|
-
/** Converts options to a svelte store if not already a store object */
|
|
11
|
-
const optionsStore = isSvelteStore(options) ? options : readable(options);
|
|
12
|
-
/** Creates a store that has the default options applied */
|
|
13
|
-
const defaultedOptionsStore = derived([optionsStore, isRestoring], ([$optionsStore, $isRestoring]) => {
|
|
14
|
-
const defaultedOptions = client.defaultQueryOptions($optionsStore);
|
|
15
|
-
defaultedOptions._optimisticResults = $isRestoring
|
|
16
|
-
? 'isRestoring'
|
|
17
|
-
: 'optimistic';
|
|
18
|
-
return defaultedOptions;
|
|
19
|
-
});
|
|
20
|
-
/** Creates the observer */
|
|
21
|
-
const observer = new Observer(client, get(defaultedOptionsStore));
|
|
22
|
-
defaultedOptionsStore.subscribe(($defaultedOptions) => {
|
|
23
|
-
observer.setOptions($defaultedOptions);
|
|
24
|
-
});
|
|
25
|
-
const result = derived(isRestoring, ($isRestoring, set) => {
|
|
26
|
-
const unsubscribe = $isRestoring
|
|
27
|
-
? noop
|
|
28
|
-
: observer.subscribe(notifyManager.batchCalls(set));
|
|
29
|
-
observer.updateResult();
|
|
30
|
-
return unsubscribe;
|
|
31
|
-
});
|
|
32
|
-
/** Subscribe to changes in result and defaultedOptionsStore */
|
|
33
|
-
const { subscribe } = derived([result, defaultedOptionsStore], ([$result, $defaultedOptionsStore]) => {
|
|
34
|
-
$result = observer.getOptimisticResult($defaultedOptionsStore);
|
|
35
|
-
return !$defaultedOptionsStore.notifyOnChangeProps
|
|
36
|
-
? observer.trackResult($result)
|
|
37
|
-
: $result;
|
|
38
|
-
});
|
|
39
|
-
return { subscribe };
|
|
40
|
-
}
|
package/dist/createMutation.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { CreateMutationOptions, CreateMutationResult, StoreOrVal } from './types.js';
|
|
2
|
-
import type { DefaultError, QueryClient } from '@tanstack/query-core';
|
|
3
|
-
export declare function createMutation<TData = unknown, TError = DefaultError, TVariables = void, TOnMutateResult = unknown>(options: StoreOrVal<CreateMutationOptions<TData, TError, TVariables, TOnMutateResult>>, queryClient?: QueryClient): CreateMutationResult<TData, TError, TVariables, TOnMutateResult>;
|
|
4
|
-
//# sourceMappingURL=createMutation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createMutation.d.ts","sourceRoot":"","sources":["../src/createMutation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACX,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAErE,wBAAgB,cAAc,CAC5B,KAAK,GAAG,OAAO,EACf,MAAM,GAAG,YAAY,EACrB,UAAU,GAAG,IAAI,EACjB,eAAe,GAAG,OAAO,EAEzB,OAAO,EAAE,UAAU,CACjB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,CAAC,CAClE,EACD,WAAW,CAAC,EAAE,WAAW,GACxB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,CAAC,CA+BlE"}
|
package/dist/createMutation.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { derived, get, readable } from 'svelte/store';
|
|
2
|
-
import { MutationObserver, noop, notifyManager } from '@tanstack/query-core';
|
|
3
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
4
|
-
import { isSvelteStore } from './utils.js';
|
|
5
|
-
export function createMutation(options, queryClient) {
|
|
6
|
-
const client = useQueryClient(queryClient);
|
|
7
|
-
const optionsStore = isSvelteStore(options) ? options : readable(options);
|
|
8
|
-
const observer = new MutationObserver(client, get(optionsStore));
|
|
9
|
-
let mutate;
|
|
10
|
-
optionsStore.subscribe(($options) => {
|
|
11
|
-
mutate = (variables, mutateOptions) => {
|
|
12
|
-
observer.mutate(variables, mutateOptions).catch(noop);
|
|
13
|
-
};
|
|
14
|
-
observer.setOptions($options);
|
|
15
|
-
});
|
|
16
|
-
const result = readable(observer.getCurrentResult(), (set) => {
|
|
17
|
-
return observer.subscribe(notifyManager.batchCalls((val) => set(val)));
|
|
18
|
-
});
|
|
19
|
-
const { subscribe } = derived(result, ($result) => ({
|
|
20
|
-
...$result,
|
|
21
|
-
mutate,
|
|
22
|
-
mutateAsync: $result.mutate,
|
|
23
|
-
}));
|
|
24
|
-
return { subscribe };
|
|
25
|
-
}
|
package/dist/createQueries.d.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import type { Readable } from 'svelte/store';
|
|
2
|
-
import type { StoreOrVal } from './types.js';
|
|
3
|
-
import type { DefaultError, DefinedQueryObserverResult, OmitKeyof, QueriesPlaceholderDataFunction, QueryClient, QueryFunction, QueryKey, QueryObserverOptions, QueryObserverResult, ThrowOnError } from '@tanstack/query-core';
|
|
4
|
-
type QueryObserverOptionsForCreateQueries<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = OmitKeyof<QueryObserverOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>, 'placeholderData'> & {
|
|
5
|
-
placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>;
|
|
6
|
-
};
|
|
7
|
-
type MAXIMUM_DEPTH = 20;
|
|
8
|
-
type SkipTokenForUseQueries = symbol;
|
|
9
|
-
type GetQueryObserverOptionsForCreateQueries<T> = T extends {
|
|
10
|
-
queryFnData: infer TQueryFnData;
|
|
11
|
-
error?: infer TError;
|
|
12
|
-
data: infer TData;
|
|
13
|
-
} ? QueryObserverOptionsForCreateQueries<TQueryFnData, TError, TData> : T extends {
|
|
14
|
-
queryFnData: infer TQueryFnData;
|
|
15
|
-
error?: infer TError;
|
|
16
|
-
} ? QueryObserverOptionsForCreateQueries<TQueryFnData, TError> : T extends {
|
|
17
|
-
data: infer TData;
|
|
18
|
-
error?: infer TError;
|
|
19
|
-
} ? QueryObserverOptionsForCreateQueries<unknown, TError, TData> : T extends [infer TQueryFnData, infer TError, infer TData] ? QueryObserverOptionsForCreateQueries<TQueryFnData, TError, TData> : T extends [infer TQueryFnData, infer TError] ? QueryObserverOptionsForCreateQueries<TQueryFnData, TError> : T extends [infer TQueryFnData] ? QueryObserverOptionsForCreateQueries<TQueryFnData> : T extends {
|
|
20
|
-
queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> | SkipTokenForUseQueries;
|
|
21
|
-
select?: (data: any) => infer TData;
|
|
22
|
-
throwOnError?: ThrowOnError<any, infer TError, any, any>;
|
|
23
|
-
} ? QueryObserverOptionsForCreateQueries<TQueryFnData, unknown extends TError ? DefaultError : TError, unknown extends TData ? TQueryFnData : TData, TQueryKey> : QueryObserverOptionsForCreateQueries;
|
|
24
|
-
type GetDefinedOrUndefinedQueryResult<T, TData, TError = unknown> = T extends {
|
|
25
|
-
initialData?: infer TInitialData;
|
|
26
|
-
} ? unknown extends TInitialData ? QueryObserverResult<TData, TError> : TInitialData extends TData ? DefinedQueryObserverResult<TData, TError> : TInitialData extends () => infer TInitialDataResult ? unknown extends TInitialDataResult ? QueryObserverResult<TData, TError> : TInitialDataResult extends TData ? DefinedQueryObserverResult<TData, TError> : QueryObserverResult<TData, TError> : QueryObserverResult<TData, TError> : QueryObserverResult<TData, TError>;
|
|
27
|
-
type GetCreateQueryResult<T> = T extends {
|
|
28
|
-
queryFnData: any;
|
|
29
|
-
error?: infer TError;
|
|
30
|
-
data: infer TData;
|
|
31
|
-
} ? GetDefinedOrUndefinedQueryResult<T, TData, TError> : T extends {
|
|
32
|
-
queryFnData: infer TQueryFnData;
|
|
33
|
-
error?: infer TError;
|
|
34
|
-
} ? GetDefinedOrUndefinedQueryResult<T, TQueryFnData, TError> : T extends {
|
|
35
|
-
data: infer TData;
|
|
36
|
-
error?: infer TError;
|
|
37
|
-
} ? GetDefinedOrUndefinedQueryResult<T, TData, TError> : T extends [any, infer TError, infer TData] ? GetDefinedOrUndefinedQueryResult<T, TData, TError> : T extends [infer TQueryFnData, infer TError] ? GetDefinedOrUndefinedQueryResult<T, TQueryFnData, TError> : T extends [infer TQueryFnData] ? GetDefinedOrUndefinedQueryResult<T, TQueryFnData> : T extends {
|
|
38
|
-
queryFn?: QueryFunction<infer TQueryFnData, any> | SkipTokenForUseQueries;
|
|
39
|
-
select?: (data: any) => infer TData;
|
|
40
|
-
throwOnError?: ThrowOnError<any, infer TError, any, any>;
|
|
41
|
-
} ? GetDefinedOrUndefinedQueryResult<T, unknown extends TData ? TQueryFnData : TData, unknown extends TError ? DefaultError : TError> : QueryObserverResult;
|
|
42
|
-
/**
|
|
43
|
-
* QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param
|
|
44
|
-
*/
|
|
45
|
-
export type QueriesOptions<T extends Array<any>, TResults extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> = TDepth['length'] extends MAXIMUM_DEPTH ? Array<QueryObserverOptionsForCreateQueries> : T extends [] ? [] : T extends [infer Head] ? [...TResults, GetQueryObserverOptionsForCreateQueries<Head>] : T extends [infer Head, ...infer Tails] ? QueriesOptions<[
|
|
46
|
-
...Tails
|
|
47
|
-
], [
|
|
48
|
-
...TResults,
|
|
49
|
-
GetQueryObserverOptionsForCreateQueries<Head>
|
|
50
|
-
], [
|
|
51
|
-
...TDepth,
|
|
52
|
-
1
|
|
53
|
-
]> : ReadonlyArray<unknown> extends T ? T : T extends Array<QueryObserverOptionsForCreateQueries<infer TQueryFnData, infer TError, infer TData, infer TQueryKey>> ? Array<QueryObserverOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>> : Array<QueryObserverOptionsForCreateQueries>;
|
|
54
|
-
/**
|
|
55
|
-
* QueriesResults reducer recursively maps type param to results
|
|
56
|
-
*/
|
|
57
|
-
export type QueriesResults<T extends Array<any>, TResults extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> = TDepth['length'] extends MAXIMUM_DEPTH ? Array<QueryObserverResult> : T extends [] ? [] : T extends [infer Head] ? [...TResults, GetCreateQueryResult<Head>] : T extends [infer Head, ...infer Tails] ? QueriesResults<[
|
|
58
|
-
...Tails
|
|
59
|
-
], [
|
|
60
|
-
...TResults,
|
|
61
|
-
GetCreateQueryResult<Head>
|
|
62
|
-
], [
|
|
63
|
-
...TDepth,
|
|
64
|
-
1
|
|
65
|
-
]> : {
|
|
66
|
-
[K in keyof T]: GetCreateQueryResult<T[K]>;
|
|
67
|
-
};
|
|
68
|
-
export declare function createQueries<T extends Array<any>, TCombinedResult = QueriesResults<T>>({ queries, ...options }: {
|
|
69
|
-
queries: StoreOrVal<[...QueriesOptions<T>]> | StoreOrVal<[
|
|
70
|
-
...{
|
|
71
|
-
[K in keyof T]: GetQueryObserverOptionsForCreateQueries<T[K]>;
|
|
72
|
-
}
|
|
73
|
-
]>;
|
|
74
|
-
combine?: (result: QueriesResults<T>) => TCombinedResult;
|
|
75
|
-
}, queryClient?: QueryClient): Readable<TCombinedResult>;
|
|
76
|
-
export {};
|
|
77
|
-
//# sourceMappingURL=createQueries.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createQueries.d.ts","sourceRoot":"","sources":["../src/createQueries.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,SAAS,EAET,8BAA8B,EAC9B,WAAW,EACX,aAAa,EACb,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACb,MAAM,sBAAsB,CAAA;AAI7B,KAAK,oCAAoC,CACvC,YAAY,GAAG,OAAO,EACtB,MAAM,GAAG,YAAY,EACrB,KAAK,GAAG,YAAY,EACpB,SAAS,SAAS,QAAQ,GAAG,QAAQ,IACnC,SAAS,CACX,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,EAC1E,iBAAiB,CAClB,GAAG;IACF,eAAe,CAAC,EAAE,YAAY,GAAG,8BAA8B,CAAC,YAAY,CAAC,CAAA;CAC9E,CAAA;AAGD,KAAK,aAAa,GAAG,EAAE,CAAA;AAGvB,KAAK,sBAAsB,GAAG,MAAM,CAAA;AAEpC,KAAK,uCAAuC,CAAC,CAAC,IAE5C,CAAC,SAAS;IACR,WAAW,EAAE,MAAM,YAAY,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,KAAK,CAAA;CAClB,GACG,oCAAoC,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,GACjE,CAAC,SAAS;IAAE,WAAW,EAAE,MAAM,YAAY,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAAE,GACjE,oCAAoC,CAAC,YAAY,EAAE,MAAM,CAAC,GAC1D,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,KAAK,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAAE,GACnD,oCAAoC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,GAE5D,CAAC,SAAS,CAAC,MAAM,YAAY,EAAE,MAAM,MAAM,EAAE,MAAM,KAAK,CAAC,GACvD,oCAAoC,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,GACjE,CAAC,SAAS,CAAC,MAAM,YAAY,EAAE,MAAM,MAAM,CAAC,GAC1C,oCAAoC,CAAC,YAAY,EAAE,MAAM,CAAC,GAC1D,CAAC,SAAS,CAAC,MAAM,YAAY,CAAC,GAC5B,oCAAoC,CAAC,YAAY,CAAC,GAElD,CAAC,SAAS;IACN,OAAO,CAAC,EACJ,aAAa,CAAC,MAAM,YAAY,EAAE,MAAM,SAAS,CAAC,GAClD,sBAAsB,CAAA;IAC1B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,MAAM,KAAK,CAAA;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,EAAE,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CACzD,GACD,oCAAoC,CAClC,YAAY,EACZ,OAAO,SAAS,MAAM,GAAG,YAAY,GAAG,MAAM,EAC9C,OAAO,SAAS,KAAK,GAAG,YAAY,GAAG,KAAK,EAC5C,SAAS,CACV,GAED,oCAAoC,CAAA;AAGtD,KAAK,gCAAgC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,IAAI,CAAC,SAAS;IAC5E,WAAW,CAAC,EAAE,MAAM,YAAY,CAAA;CACjC,GACG,OAAO,SAAS,YAAY,GAC1B,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,GAClC,YAAY,SAAS,KAAK,GACxB,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,GACzC,YAAY,SAAS,MAAM,MAAM,kBAAkB,GACjD,OAAO,SAAS,kBAAkB,GAChC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,GAClC,kBAAkB,SAAS,KAAK,GAC9B,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,GACzC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,GACtC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,GACxC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AAEtC,KAAK,oBAAoB,CAAC,CAAC,IAEzB,CAAC,SAAS;IAAE,WAAW,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,KAAK,CAAA;CAAE,GACnE,gCAAgC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAClD,CAAC,SAAS;IAAE,WAAW,EAAE,MAAM,YAAY,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAAE,GACjE,gCAAgC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,GACzD,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,KAAK,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAAE,GACnD,gCAAgC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAElD,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,MAAM,EAAE,MAAM,KAAK,CAAC,GACxC,gCAAgC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAClD,CAAC,SAAS,CAAC,MAAM,YAAY,EAAE,MAAM,MAAM,CAAC,GAC1C,gCAAgC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,GACzD,CAAC,SAAS,CAAC,MAAM,YAAY,CAAC,GAC5B,gCAAgC,CAAC,CAAC,EAAE,YAAY,CAAC,GAEjD,CAAC,SAAS;IACN,OAAO,CAAC,EACJ,aAAa,CAAC,MAAM,YAAY,EAAE,GAAG,CAAC,GACtC,sBAAsB,CAAA;IAC1B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,MAAM,KAAK,CAAA;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,EAAE,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CACzD,GACD,gCAAgC,CAC9B,CAAC,EACD,OAAO,SAAS,KAAK,GAAG,YAAY,GAAG,KAAK,EAC5C,OAAO,SAAS,MAAM,GAAG,YAAY,GAAG,MAAM,CAC/C,GAED,mBAAmB,CAAA;AAErC;;GAEG;AACH,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EACpB,QAAQ,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAChC,MAAM,SAAS,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,IACvC,MAAM,CAAC,QAAQ,CAAC,SAAS,aAAa,GACtC,KAAK,CAAC,oCAAoC,CAAC,GAC3C,CAAC,SAAS,EAAE,GACV,EAAE,GACF,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GACpB,CAAC,GAAG,QAAQ,EAAE,uCAAuC,CAAC,IAAI,CAAC,CAAC,GAC5D,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,GACpC,cAAc,CACZ;IAAC,GAAG,KAAK;CAAC,EACV;IAAC,GAAG,QAAQ;IAAE,uCAAuC,CAAC,IAAI,CAAC;CAAC,EAC5D;IAAC,GAAG,MAAM;IAAE,CAAC;CAAC,CACf,GACD,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,GAC9B,CAAC,GAGD,CAAC,SAAS,KAAK,CACX,oCAAoC,CAClC,MAAM,YAAY,EAClB,MAAM,MAAM,EACZ,MAAM,KAAK,EACX,MAAM,SAAS,CAChB,CACF,GACD,KAAK,CACH,oCAAoC,CAClC,YAAY,EACZ,MAAM,EACN,KAAK,EACL,SAAS,CACV,CACF,GAED,KAAK,CAAC,oCAAoC,CAAC,CAAA;AAEzD;;GAEG;AACH,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EACpB,QAAQ,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAChC,MAAM,SAAS,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,IACvC,MAAM,CAAC,QAAQ,CAAC,SAAS,aAAa,GACtC,KAAK,CAAC,mBAAmB,CAAC,GAC1B,CAAC,SAAS,EAAE,GACV,EAAE,GACF,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GACpB,CAAC,GAAG,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,GACzC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,GACpC,cAAc,CACZ;IAAC,GAAG,KAAK;CAAC,EACV;IAAC,GAAG,QAAQ;IAAE,oBAAoB,CAAC,IAAI,CAAC;CAAC,EACzC;IAAC,GAAG,MAAM;IAAE,CAAC;CAAC,CACf,GACD;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAExD,wBAAgB,aAAa,CAC3B,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EACpB,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,EAEnC,EACE,OAAO,EACP,GAAG,OAAO,EACX,EAAE;IACD,OAAO,EACH,UAAU,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAClC,UAAU,CACR;QAAC,GAAG;aAAG,CAAC,IAAI,MAAM,CAAC,GAAG,uCAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;KAAC,CACvE,CAAA;IACL,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,eAAe,CAAA;CACzD,EACD,WAAW,CAAC,EAAE,WAAW,GACxB,QAAQ,CAAC,eAAe,CAAC,CA2D3B"}
|
package/dist/createQueries.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { QueriesObserver, noop, notifyManager } from '@tanstack/query-core';
|
|
2
|
-
import { derived, get, readable } from 'svelte/store';
|
|
3
|
-
import { useIsRestoring } from './useIsRestoring.js';
|
|
4
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
5
|
-
import { isSvelteStore } from './utils.js';
|
|
6
|
-
export function createQueries({ queries, ...options }, queryClient) {
|
|
7
|
-
const client = useQueryClient(queryClient);
|
|
8
|
-
const isRestoring = useIsRestoring();
|
|
9
|
-
const queriesStore = isSvelteStore(queries) ? queries : readable(queries);
|
|
10
|
-
const defaultedQueriesStore = derived([queriesStore, isRestoring], ([$queries, $isRestoring]) => {
|
|
11
|
-
return $queries.map((opts) => {
|
|
12
|
-
const defaultedOptions = client.defaultQueryOptions(opts);
|
|
13
|
-
// Make sure the results are already in fetching state before subscribing or updating options
|
|
14
|
-
defaultedOptions._optimisticResults = $isRestoring
|
|
15
|
-
? 'isRestoring'
|
|
16
|
-
: 'optimistic';
|
|
17
|
-
return defaultedOptions;
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
const observer = new QueriesObserver(client, get(defaultedQueriesStore), options);
|
|
21
|
-
defaultedQueriesStore.subscribe(($defaultedQueries) => {
|
|
22
|
-
// Do not notify on updates because of changes in the options because
|
|
23
|
-
// these changes should already be reflected in the optimistic result.
|
|
24
|
-
observer.setQueries($defaultedQueries, options);
|
|
25
|
-
});
|
|
26
|
-
const result = derived([isRestoring], ([$isRestoring], set) => {
|
|
27
|
-
const unsubscribe = $isRestoring
|
|
28
|
-
? noop
|
|
29
|
-
: observer.subscribe(notifyManager.batchCalls(set));
|
|
30
|
-
return () => unsubscribe();
|
|
31
|
-
});
|
|
32
|
-
const { subscribe } = derived([result, defaultedQueriesStore],
|
|
33
|
-
// @ts-expect-error svelte-check thinks this is unused
|
|
34
|
-
([$result, $defaultedQueriesStore]) => {
|
|
35
|
-
const [rawResult, combineResult, trackResult] = observer.getOptimisticResult($defaultedQueriesStore, options.combine);
|
|
36
|
-
$result = rawResult;
|
|
37
|
-
return combineResult(trackResult());
|
|
38
|
-
});
|
|
39
|
-
return { subscribe };
|
|
40
|
-
}
|
package/dist/useIsFetching.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { Readable } from 'svelte/store';
|
|
2
|
-
import type { QueryClient, QueryFilters } from '@tanstack/query-core';
|
|
3
|
-
export declare function useIsFetching(filters?: QueryFilters, queryClient?: QueryClient): Readable<number>;
|
|
4
|
-
//# sourceMappingURL=useIsFetching.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIsFetching.d.ts","sourceRoot":"","sources":["../src/useIsFetching.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAErE,wBAAgB,aAAa,CAC3B,OAAO,CAAC,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,QAAQ,CAAC,MAAM,CAAC,CAoBlB"}
|
package/dist/useIsFetching.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { notifyManager } from '@tanstack/query-core';
|
|
2
|
-
import { readable } from 'svelte/store';
|
|
3
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
4
|
-
export function useIsFetching(filters, queryClient) {
|
|
5
|
-
const client = useQueryClient(queryClient);
|
|
6
|
-
const cache = client.getQueryCache();
|
|
7
|
-
// isFetching is the prev value initialized on mount *
|
|
8
|
-
let isFetching = client.isFetching(filters);
|
|
9
|
-
const { subscribe } = readable(isFetching, (set) => {
|
|
10
|
-
return cache.subscribe(notifyManager.batchCalls(() => {
|
|
11
|
-
const newIsFetching = client.isFetching(filters);
|
|
12
|
-
if (isFetching !== newIsFetching) {
|
|
13
|
-
// * and update with each change
|
|
14
|
-
isFetching = newIsFetching;
|
|
15
|
-
set(isFetching);
|
|
16
|
-
}
|
|
17
|
-
}));
|
|
18
|
-
});
|
|
19
|
-
return { subscribe };
|
|
20
|
-
}
|
package/dist/useIsMutating.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { Readable } from 'svelte/store';
|
|
2
|
-
import type { MutationFilters, QueryClient } from '@tanstack/query-core';
|
|
3
|
-
export declare function useIsMutating(filters?: MutationFilters, queryClient?: QueryClient): Readable<number>;
|
|
4
|
-
//# sourceMappingURL=useIsMutating.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIsMutating.d.ts","sourceRoot":"","sources":["../src/useIsMutating.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAExE,wBAAgB,aAAa,CAC3B,OAAO,CAAC,EAAE,eAAe,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,QAAQ,CAAC,MAAM,CAAC,CAoBlB"}
|
package/dist/useIsMutating.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { notifyManager } from '@tanstack/query-core';
|
|
2
|
-
import { readable } from 'svelte/store';
|
|
3
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
4
|
-
export function useIsMutating(filters, queryClient) {
|
|
5
|
-
const client = useQueryClient(queryClient);
|
|
6
|
-
const cache = client.getMutationCache();
|
|
7
|
-
// isMutating is the prev value initialized on mount *
|
|
8
|
-
let isMutating = client.isMutating(filters);
|
|
9
|
-
const { subscribe } = readable(isMutating, (set) => {
|
|
10
|
-
return cache.subscribe(notifyManager.batchCalls(() => {
|
|
11
|
-
const newIisMutating = client.isMutating(filters);
|
|
12
|
-
if (isMutating !== newIisMutating) {
|
|
13
|
-
// * and update with each change
|
|
14
|
-
isMutating = newIisMutating;
|
|
15
|
-
set(isMutating);
|
|
16
|
-
}
|
|
17
|
-
}));
|
|
18
|
-
});
|
|
19
|
-
return { subscribe };
|
|
20
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useMutationState.d.ts","sourceRoot":"","sources":["../src/useMutationState.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,aAAa,EACb,WAAW,EACZ,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AActD,wBAAgB,gBAAgB,CAAC,OAAO,GAAG,aAAa,EACtD,OAAO,GAAE,oBAAoB,CAAC,OAAO,CAAM,EAC3C,WAAW,CAAC,EAAE,WAAW,GACxB,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAsB1B"}
|
package/dist/useMutationState.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { readable } from 'svelte/store';
|
|
2
|
-
import { notifyManager, replaceEqualDeep } from '@tanstack/query-core';
|
|
3
|
-
import { useQueryClient } from './useQueryClient.js';
|
|
4
|
-
function getResult(mutationCache, options) {
|
|
5
|
-
return mutationCache
|
|
6
|
-
.findAll(options.filters)
|
|
7
|
-
.map((mutation) => (options.select ? options.select(mutation) : mutation.state));
|
|
8
|
-
}
|
|
9
|
-
export function useMutationState(options = {}, queryClient) {
|
|
10
|
-
const client = useQueryClient(queryClient);
|
|
11
|
-
const mutationCache = client.getMutationCache();
|
|
12
|
-
let result = getResult(mutationCache, options);
|
|
13
|
-
const { subscribe } = readable(result, (set) => {
|
|
14
|
-
return mutationCache.subscribe(notifyManager.batchCalls(() => {
|
|
15
|
-
const nextResult = replaceEqualDeep(result, getResult(mutationCache, options));
|
|
16
|
-
if (result !== nextResult) {
|
|
17
|
-
result = nextResult;
|
|
18
|
-
set(result);
|
|
19
|
-
}
|
|
20
|
-
}));
|
|
21
|
-
});
|
|
22
|
-
return { subscribe };
|
|
23
|
-
}
|
package/dist/utils.d.ts
DELETED
package/dist/utils.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAC5C,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GACjB,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,CAEpB"}
|
package/dist/utils.js
DELETED
package/src/createBaseQuery.ts
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { derived, get, readable } from 'svelte/store'
|
|
2
|
-
import { noop, notifyManager } from '@tanstack/query-core'
|
|
3
|
-
import { useIsRestoring } from './useIsRestoring.js'
|
|
4
|
-
import { useQueryClient } from './useQueryClient.js'
|
|
5
|
-
import { isSvelteStore } from './utils.js'
|
|
6
|
-
import type {
|
|
7
|
-
QueryClient,
|
|
8
|
-
QueryKey,
|
|
9
|
-
QueryObserver,
|
|
10
|
-
QueryObserverResult,
|
|
11
|
-
} from '@tanstack/query-core'
|
|
12
|
-
import type {
|
|
13
|
-
CreateBaseQueryOptions,
|
|
14
|
-
CreateBaseQueryResult,
|
|
15
|
-
StoreOrVal,
|
|
16
|
-
} from './types.js'
|
|
17
|
-
|
|
18
|
-
export function createBaseQuery<
|
|
19
|
-
TQueryFnData,
|
|
20
|
-
TError,
|
|
21
|
-
TData,
|
|
22
|
-
TQueryData,
|
|
23
|
-
TQueryKey extends QueryKey,
|
|
24
|
-
>(
|
|
25
|
-
options: StoreOrVal<
|
|
26
|
-
CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>
|
|
27
|
-
>,
|
|
28
|
-
Observer: typeof QueryObserver,
|
|
29
|
-
queryClient?: QueryClient,
|
|
30
|
-
): CreateBaseQueryResult<TData, TError> {
|
|
31
|
-
/** Load query client */
|
|
32
|
-
const client = useQueryClient(queryClient)
|
|
33
|
-
const isRestoring = useIsRestoring()
|
|
34
|
-
/** Converts options to a svelte store if not already a store object */
|
|
35
|
-
const optionsStore = isSvelteStore(options) ? options : readable(options)
|
|
36
|
-
|
|
37
|
-
/** Creates a store that has the default options applied */
|
|
38
|
-
const defaultedOptionsStore = derived(
|
|
39
|
-
[optionsStore, isRestoring],
|
|
40
|
-
([$optionsStore, $isRestoring]) => {
|
|
41
|
-
const defaultedOptions = client.defaultQueryOptions($optionsStore)
|
|
42
|
-
defaultedOptions._optimisticResults = $isRestoring
|
|
43
|
-
? 'isRestoring'
|
|
44
|
-
: 'optimistic'
|
|
45
|
-
return defaultedOptions
|
|
46
|
-
},
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
/** Creates the observer */
|
|
50
|
-
const observer = new Observer<
|
|
51
|
-
TQueryFnData,
|
|
52
|
-
TError,
|
|
53
|
-
TData,
|
|
54
|
-
TQueryData,
|
|
55
|
-
TQueryKey
|
|
56
|
-
>(client, get(defaultedOptionsStore))
|
|
57
|
-
|
|
58
|
-
defaultedOptionsStore.subscribe(($defaultedOptions) => {
|
|
59
|
-
observer.setOptions($defaultedOptions)
|
|
60
|
-
})
|
|
61
|
-
|
|
62
|
-
const result = derived<
|
|
63
|
-
typeof isRestoring,
|
|
64
|
-
QueryObserverResult<TData, TError>
|
|
65
|
-
>(isRestoring, ($isRestoring, set) => {
|
|
66
|
-
const unsubscribe = $isRestoring
|
|
67
|
-
? noop
|
|
68
|
-
: observer.subscribe(notifyManager.batchCalls(set))
|
|
69
|
-
observer.updateResult()
|
|
70
|
-
return unsubscribe
|
|
71
|
-
})
|
|
72
|
-
|
|
73
|
-
/** Subscribe to changes in result and defaultedOptionsStore */
|
|
74
|
-
const { subscribe } = derived(
|
|
75
|
-
[result, defaultedOptionsStore],
|
|
76
|
-
([$result, $defaultedOptionsStore]) => {
|
|
77
|
-
$result = observer.getOptimisticResult($defaultedOptionsStore)
|
|
78
|
-
return !$defaultedOptionsStore.notifyOnChangeProps
|
|
79
|
-
? observer.trackResult($result)
|
|
80
|
-
: $result
|
|
81
|
-
},
|
|
82
|
-
)
|
|
83
|
-
|
|
84
|
-
return { subscribe }
|
|
85
|
-
}
|