@gravity-ui/data-source 0.5.0 → 0.6.0
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/cjs/core/index.d.ts +1 -1
- package/build/cjs/core/index.js.map +1 -1
- package/build/cjs/core/types/DataManger.js.map +1 -1
- package/build/cjs/core/types/DataSource.d.ts +21 -17
- package/build/cjs/core/types/DataSource.js.map +1 -1
- package/build/cjs/core/utils/getError.js.map +1 -1
- package/build/cjs/core/utils/getStatus.js.map +1 -1
- package/build/cjs/core/utils/hasTag.js.map +1 -1
- package/build/cjs/core/utils/skipContext.d.ts +24 -0
- package/build/cjs/core/utils/skipContext.js +24 -0
- package/build/cjs/core/utils/skipContext.js.map +1 -1
- package/build/cjs/react-query/ClientDataManager.d.ts +4 -4
- package/build/cjs/react-query/ClientDataManager.js +3 -7
- package/build/cjs/react-query/ClientDataManager.js.map +1 -1
- package/build/cjs/react-query/hooks/useQueryContext.d.ts +1 -1
- package/build/cjs/react-query/hooks/useQueryContext.js.map +1 -1
- package/build/cjs/react-query/hooks/useQueryData.d.ts +1 -1
- package/build/cjs/react-query/hooks/useQueryData.js.map +1 -1
- package/build/cjs/react-query/hooks/useRefetchInterval.d.ts +7 -7
- package/build/cjs/react-query/hooks/useRefetchInterval.js +14 -14
- package/build/cjs/react-query/hooks/useRefetchInterval.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/factory.d.ts +1 -1
- package/build/cjs/react-query/impl/infinite/factory.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/hooks.d.ts +2 -4
- package/build/cjs/react-query/impl/infinite/hooks.js +24 -26
- package/build/cjs/react-query/impl/infinite/hooks.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/types.d.ts +11 -12
- package/build/cjs/react-query/impl/infinite/types.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/utils.js +44 -7
- package/build/cjs/react-query/impl/infinite/utils.js.map +1 -1
- package/build/cjs/react-query/impl/plain/factory.d.ts +1 -1
- package/build/cjs/react-query/impl/plain/factory.js.map +1 -1
- package/build/cjs/react-query/impl/plain/hooks.d.ts +2 -5
- package/build/cjs/react-query/impl/plain/hooks.js +20 -22
- package/build/cjs/react-query/impl/plain/hooks.js.map +1 -1
- package/build/cjs/react-query/impl/plain/types.d.ts +7 -6
- package/build/cjs/react-query/impl/plain/types.js.map +1 -1
- package/build/cjs/react-query/impl/plain/utils.js +42 -4
- package/build/cjs/react-query/impl/plain/utils.js.map +1 -1
- package/build/cjs/react-query/impl/utils.d.ts +4 -0
- package/build/cjs/react-query/impl/utils.js +27 -0
- package/build/cjs/react-query/impl/utils.js.map +1 -0
- package/build/cjs/react-query/index.d.ts +3 -1
- package/build/cjs/react-query/index.js.map +1 -1
- package/build/cjs/react-query/types/options.d.ts +5 -0
- package/build/cjs/react-query/types/options.js +6 -0
- package/build/cjs/react-query/types/options.js.map +1 -0
- package/build/cjs/react-query/types/refetch-interval.d.ts +0 -7
- package/build/cjs/react-query/types/refetch-interval.js.map +1 -1
- package/build/cjs/react-query/utils/getProgressiveRefetch.d.ts +7 -2
- package/build/cjs/react-query/utils/getProgressiveRefetch.js +5 -4
- package/build/cjs/react-query/utils/getProgressiveRefetch.js.map +1 -1
- package/build/esm/core/index.d.ts +1 -1
- package/build/esm/core/index.js.map +1 -1
- package/build/esm/core/types/DataManger.js.map +1 -1
- package/build/esm/core/types/DataSource.d.ts +21 -17
- package/build/esm/core/types/DataSource.js.map +1 -1
- package/build/esm/core/utils/getError.js.map +1 -1
- package/build/esm/core/utils/getStatus.js.map +1 -1
- package/build/esm/core/utils/hasTag.js.map +1 -1
- package/build/esm/core/utils/skipContext.d.ts +24 -0
- package/build/esm/core/utils/skipContext.js +24 -0
- package/build/esm/core/utils/skipContext.js.map +1 -1
- package/build/esm/react-query/ClientDataManager.d.ts +4 -4
- package/build/esm/react-query/ClientDataManager.js +3 -7
- package/build/esm/react-query/ClientDataManager.js.map +1 -1
- package/build/esm/react-query/hooks/useQueryContext.d.ts +1 -1
- package/build/esm/react-query/hooks/useQueryContext.js.map +1 -1
- package/build/esm/react-query/hooks/useQueryData.d.ts +1 -1
- package/build/esm/react-query/hooks/useQueryData.js.map +1 -1
- package/build/esm/react-query/hooks/useRefetchInterval.d.ts +7 -7
- package/build/esm/react-query/hooks/useRefetchInterval.js +14 -14
- package/build/esm/react-query/hooks/useRefetchInterval.js.map +1 -1
- package/build/esm/react-query/impl/infinite/factory.d.ts +1 -1
- package/build/esm/react-query/impl/infinite/factory.js.map +1 -1
- package/build/esm/react-query/impl/infinite/hooks.d.ts +2 -4
- package/build/esm/react-query/impl/infinite/hooks.js +24 -25
- package/build/esm/react-query/impl/infinite/hooks.js.map +1 -1
- package/build/esm/react-query/impl/infinite/types.d.ts +11 -12
- package/build/esm/react-query/impl/infinite/types.js.map +1 -1
- package/build/esm/react-query/impl/infinite/utils.js +44 -7
- package/build/esm/react-query/impl/infinite/utils.js.map +1 -1
- package/build/esm/react-query/impl/plain/factory.d.ts +1 -1
- package/build/esm/react-query/impl/plain/factory.js.map +1 -1
- package/build/esm/react-query/impl/plain/hooks.d.ts +2 -5
- package/build/esm/react-query/impl/plain/hooks.js +20 -21
- package/build/esm/react-query/impl/plain/hooks.js.map +1 -1
- package/build/esm/react-query/impl/plain/types.d.ts +7 -6
- package/build/esm/react-query/impl/plain/types.js.map +1 -1
- package/build/esm/react-query/impl/plain/utils.js +42 -4
- package/build/esm/react-query/impl/plain/utils.js.map +1 -1
- package/build/esm/react-query/impl/utils.d.ts +4 -0
- package/build/esm/react-query/impl/utils.js +21 -0
- package/build/esm/react-query/impl/utils.js.map +1 -0
- package/build/esm/react-query/index.d.ts +3 -1
- package/build/esm/react-query/index.js.map +1 -1
- package/build/esm/react-query/types/options.d.ts +5 -0
- package/build/esm/react-query/types/options.js +2 -0
- package/build/esm/react-query/types/options.js.map +1 -0
- package/build/esm/react-query/types/refetch-interval.d.ts +0 -7
- package/build/esm/react-query/types/refetch-interval.js.map +1 -1
- package/build/esm/react-query/utils/getProgressiveRefetch.d.ts +7 -2
- package/build/esm/react-query/utils/getProgressiveRefetch.js +5 -4
- package/build/esm/react-query/utils/getProgressiveRefetch.js.map +1 -1
- package/package.json +1 -1
- package/build/cjs/react-query/types/index.d.ts +0 -2
- package/build/cjs/react-query/types/index.js +0 -28
- package/build/cjs/react-query/types/index.js.map +0 -1
- package/build/esm/react-query/types/index.d.ts +0 -2
- package/build/esm/react-query/types/index.js +0 -3
- package/build/esm/react-query/types/index.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { DataSourceKey, DataSourceTag, DataSource, AnyDataSource, DataSourceContext, DataSourceParams, DataSourceRequest, DataSourceResponse, DataSourceData, DataSourceError, DataSourceOptions, DataSourceState, DataSourceFetchContext, ActualParams, ActualData, } from './types/DataSource';
|
|
1
|
+
export type { DataSourceKey, DataSourceTag, DataSource, AnyDataSource, DataSourceContext, DataSourceParams, DataSourceRequest, DataSourceResponse, DataSourceErrorResponse, DataSourceData, DataSourceError, DataSourceOptions, DataSourceState, DataSourceFetchContext, ActualParams, ActualData, ActualResponse, } from './types/DataSource';
|
|
2
2
|
export type { DataManager } from './types/DataManger';
|
|
3
3
|
export type { DataLoaderStatus } from './types/DataLoaderStatus';
|
|
4
4
|
export type { InvalidateRepeatOptions, InvalidateOptions } from './types/DataManagerOptions';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_constants","require","_composeKey","_composeFullKey","_getError","_getStatus","_hasTag","_mergeStatuses","_skipContext","_withCancellation"],"sources":["index.ts"],"sourcesContent":["export type {\n DataSourceKey,\n DataSourceTag,\n DataSource,\n AnyDataSource,\n DataSourceContext,\n DataSourceParams,\n DataSourceRequest,\n DataSourceResponse,\n DataSourceData,\n DataSourceError,\n DataSourceOptions,\n DataSourceState,\n DataSourceFetchContext,\n ActualParams,\n ActualData,\n} from './types/DataSource';\nexport type {DataManager} from './types/DataManger';\nexport type {DataLoaderStatus} from './types/DataLoaderStatus';\nexport type {InvalidateRepeatOptions, InvalidateOptions} from './types/DataManagerOptions';\n\nexport {idle} from './constants';\n\nexport {composeKey} from './utils/composeKey';\nexport {composeFullKey} from './utils/composeFullKey';\nexport {getError} from './utils/getError';\nexport {getStatus} from './utils/getStatus';\nexport {hasTag} from './utils/hasTag';\nexport {mergeStatuses} from './utils/mergeStatuses';\nexport {skipContext} from './utils/skipContext';\nexport type {Cancellable} from './utils/withCancellation';\nexport {isCancellable, isAbortable, withCancellation} from './utils/withCancellation';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"names":["_constants","require","_composeKey","_composeFullKey","_getError","_getStatus","_hasTag","_mergeStatuses","_skipContext","_withCancellation"],"sources":["index.ts"],"sourcesContent":["export type {\n DataSourceKey,\n DataSourceTag,\n DataSource,\n AnyDataSource,\n DataSourceContext,\n DataSourceParams,\n DataSourceRequest,\n DataSourceResponse,\n DataSourceErrorResponse,\n DataSourceData,\n DataSourceError,\n DataSourceOptions,\n DataSourceState,\n DataSourceFetchContext,\n ActualParams,\n ActualData,\n ActualResponse,\n} from './types/DataSource';\nexport type {DataManager} from './types/DataManger';\nexport type {DataLoaderStatus} from './types/DataLoaderStatus';\nexport type {InvalidateRepeatOptions, InvalidateOptions} from './types/DataManagerOptions';\n\nexport {idle} from './constants';\n\nexport {composeKey} from './utils/composeKey';\nexport {composeFullKey} from './utils/composeFullKey';\nexport {getError} from './utils/getError';\nexport {getStatus} from './utils/getStatus';\nexport {hasTag} from './utils/hasTag';\nexport {mergeStatuses} from './utils/mergeStatuses';\nexport {skipContext} from './utils/skipContext';\nexport type {Cancellable} from './utils/withCancellation';\nexport {isCancellable, isAbortable, withCancellation} from './utils/withCancellation';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAEA,IAAAQ,iBAAA,GAAAR,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["DataManger.ts"],"sourcesContent":["import type {InvalidateOptions} from './DataManagerOptions';\nimport type {AnyDataSource, DataSourceParams, DataSourceTag} from './DataSource';\n\nexport interface DataManager {\n invalidateTag(tag: DataSourceTag, invalidateOptions?: InvalidateOptions): Promise<void>;\n invalidateTags(tags: DataSourceTag[], invalidateOptions?: InvalidateOptions): Promise<void>;\n\n invalidateSource<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n\n resetSource<TDataSource extends AnyDataSource>(dataSource: TDataSource): Promise<void>;\n\n invalidateParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n\n resetParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n ): Promise<void>;\n\n invalidateSourceTags<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["DataManger.ts"],"sourcesContent":["import type {InvalidateOptions} from './DataManagerOptions';\nimport type {AnyDataSource, DataSourceParams, DataSourceTag} from './DataSource';\n\nexport interface DataManager {\n invalidateTag(tag: DataSourceTag, invalidateOptions?: InvalidateOptions): Promise<void>;\n\n invalidateTags(tags: DataSourceTag[], invalidateOptions?: InvalidateOptions): Promise<void>;\n\n invalidateSource<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n\n resetSource<TDataSource extends AnyDataSource>(dataSource: TDataSource): Promise<void>;\n\n invalidateParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n\n resetParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n ): Promise<void>;\n\n invalidateSourceTags<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1,28 +1,32 @@
|
|
|
1
1
|
import type { idle } from '../constants';
|
|
2
2
|
export type DataSourceKey = ReadonlyArray<unknown>;
|
|
3
3
|
export type DataSourceTag = string;
|
|
4
|
-
declare const errorHintSymbol: unique symbol;
|
|
5
4
|
declare const stateHintSymbol: unique symbol;
|
|
6
|
-
export interface DataSource<TContext, TParams, TRequest, TResponse, TData, TError, TOptions, TState, TFetchContext> {
|
|
5
|
+
export interface DataSource<TContext, TParams, TRequest, TResponse, TData, TError, TErrorResponse, TOptions, TState, TFetchContext> {
|
|
7
6
|
readonly name: string;
|
|
8
7
|
fetch: (context: TContext, fetchContext: TFetchContext, request: TRequest) => Promise<TResponse> | TResponse;
|
|
9
|
-
tags?: (params: ActualParams<TParams
|
|
10
|
-
transformParams?: (params: TParams) => TRequest
|
|
11
|
-
transformResponse?: (response: TResponse) => TData;
|
|
12
|
-
|
|
8
|
+
tags?: (params: ActualParams<NoInfer<TParams>, NoInfer<TRequest>>) => DataSourceTag[];
|
|
9
|
+
transformParams?: (params: TParams) => NoInfer<TRequest>;
|
|
10
|
+
transformResponse?: (response: ActualResponse<NoInfer<TResponse>, NoInfer<TErrorResponse>>) => TData;
|
|
11
|
+
/**
|
|
12
|
+
* When set, the `fetch` errors will be transformed into data without changing the state to error.
|
|
13
|
+
*/
|
|
14
|
+
transformError?: (error: TError) => TErrorResponse;
|
|
13
15
|
options?: Partial<TOptions>;
|
|
14
16
|
[stateHintSymbol]?: TState;
|
|
15
17
|
}
|
|
16
|
-
export type AnyDataSource = DataSource<any, any, any, any, any, any, any, any, any>;
|
|
17
|
-
export type DataSourceContext<TDataSource> = TDataSource extends DataSource<infer TContext, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer _TOptions, infer _TState, infer _TFetchContext> ? TContext : never;
|
|
18
|
-
export type DataSourceParams<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer TParams, infer TRequest, infer _TResponse, infer _TData, infer _TError, infer _TOptions, infer _TState, infer _TFetchContext> ? ActualParams<TParams, TRequest> : never;
|
|
19
|
-
export type DataSourceRequest<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer TRequest, infer _TResponse, infer _TData, infer _TError, infer _TOptions, infer _TState, infer _TFetchContext> ? TRequest : never;
|
|
20
|
-
export type DataSourceResponse<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer TResponse, infer _TData, infer _TError, infer _TOptions, infer _TState, infer _TFetchContext> ? TResponse : never;
|
|
21
|
-
export type DataSourceData<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer TResponse, infer TData, infer _TError, infer _TOptions, infer _TState, infer _TFetchContext> ? ActualData<TData,
|
|
22
|
-
export type DataSourceError<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer TError, infer _TOptions, infer _TState, infer _TFetchContext> ? TError : never;
|
|
23
|
-
export type
|
|
24
|
-
export type
|
|
25
|
-
export type
|
|
18
|
+
export type AnyDataSource = DataSource<any, any, any, any, any, any, any, any, any, any>;
|
|
19
|
+
export type DataSourceContext<TDataSource> = TDataSource extends DataSource<infer TContext, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? TContext : never;
|
|
20
|
+
export type DataSourceParams<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer TParams, infer TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? ActualParams<TParams, TRequest> : never;
|
|
21
|
+
export type DataSourceRequest<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? TRequest : never;
|
|
22
|
+
export type DataSourceResponse<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer TResponse, infer _TData, infer _TError, infer TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? ActualResponse<TResponse, TErrorResponse> : never;
|
|
23
|
+
export type DataSourceData<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer TResponse, infer TData, infer _TError, infer TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? ActualData<TResponse, TData, TErrorResponse> : never;
|
|
24
|
+
export type DataSourceError<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer TError, infer _TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? TError : never;
|
|
25
|
+
export type DataSourceErrorResponse<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer TErrorResponse, infer _TOptions, infer _TState, infer _TFetchContext> ? TErrorResponse : never;
|
|
26
|
+
export type DataSourceOptions<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer TOptions, infer _TState, infer _TFetchContext> ? TOptions : never;
|
|
27
|
+
export type DataSourceState<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer _TOptions, infer TState, infer _TFetchContext> ? TState : never;
|
|
28
|
+
export type DataSourceFetchContext<TDataSource> = TDataSource extends DataSource<infer _TContenxt, infer _TParams, infer _TRequest, infer _TResponse, infer _TData, infer _TError, infer _TErrorResponse, infer _TOptions, infer _TState, infer TFetchContext> ? TFetchContext : never;
|
|
26
29
|
export type ActualParams<TParams, TRequest> = (unknown extends TParams ? TRequest : TParams) | typeof idle;
|
|
27
|
-
export type
|
|
30
|
+
export type ActualResponse<TResponse, TErrorResponse> = unknown extends TErrorResponse ? TResponse : TResponse | TErrorResponse;
|
|
31
|
+
export type ActualData<TResponse, TData, TErrorResponse> = unknown extends TData ? ActualResponse<TResponse, TErrorResponse> : TData;
|
|
28
32
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["DataSource.ts"],"sourcesContent":["import type {idle} from '../constants';\n\nexport type DataSourceKey = ReadonlyArray<unknown>;\nexport type DataSourceTag = string;\n\ndeclare const
|
|
1
|
+
{"version":3,"names":[],"sources":["DataSource.ts"],"sourcesContent":["import type {idle} from '../constants';\n\nexport type DataSourceKey = ReadonlyArray<unknown>;\nexport type DataSourceTag = string;\n\ndeclare const stateHintSymbol: unique symbol;\n\nexport interface DataSource<\n TContext,\n TParams,\n TRequest,\n TResponse,\n TData,\n TError,\n TErrorResponse,\n TOptions,\n TState,\n TFetchContext,\n> {\n readonly name: string;\n\n fetch: (\n context: TContext,\n fetchContext: TFetchContext,\n request: TRequest,\n ) => Promise<TResponse> | TResponse;\n tags?: (params: ActualParams<NoInfer<TParams>, NoInfer<TRequest>>) => DataSourceTag[];\n\n transformParams?: (params: TParams) => NoInfer<TRequest>;\n transformResponse?: (\n response: ActualResponse<NoInfer<TResponse>, NoInfer<TErrorResponse>>,\n ) => TData;\n\n /**\n * When set, the `fetch` errors will be transformed into data without changing the state to error.\n */\n transformError?: (error: TError) => TErrorResponse;\n\n options?: Partial<TOptions>;\n [stateHintSymbol]?: TState;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyDataSource = DataSource<any, any, any, any, any, any, any, any, any, any>;\n\nexport type DataSourceContext<TDataSource> =\n TDataSource extends DataSource<\n infer TContext,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? TContext\n : never;\n\nexport type DataSourceParams<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer TParams,\n infer TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? ActualParams<TParams, TRequest>\n : never;\n\nexport type DataSourceRequest<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? TRequest\n : never;\n\nexport type DataSourceResponse<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer TResponse,\n infer _TData,\n infer _TError,\n infer TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? ActualResponse<TResponse, TErrorResponse>\n : never;\n\nexport type DataSourceData<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer TResponse,\n infer TData,\n infer _TError,\n infer TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? ActualData<TResponse, TData, TErrorResponse>\n : never;\n\nexport type DataSourceError<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? TError\n : never;\n\nexport type DataSourceErrorResponse<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? TErrorResponse\n : never;\n\nexport type DataSourceOptions<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer TOptions,\n infer _TState,\n infer _TFetchContext\n >\n ? TOptions\n : never;\n\nexport type DataSourceState<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer TState,\n infer _TFetchContext\n >\n ? TState\n : never;\n\nexport type DataSourceFetchContext<TDataSource> =\n TDataSource extends DataSource<\n infer _TContenxt,\n infer _TParams,\n infer _TRequest,\n infer _TResponse,\n infer _TData,\n infer _TError,\n infer _TErrorResponse,\n infer _TOptions,\n infer _TState,\n infer TFetchContext\n >\n ? TFetchContext\n : never;\n\nexport type ActualParams<TParams, TRequest> =\n | (unknown extends TParams ? TRequest : TParams)\n | typeof idle;\n\nexport type ActualResponse<TResponse, TErrorResponse> = unknown extends TErrorResponse\n ? TResponse\n : TResponse | TErrorResponse;\n\nexport type ActualData<TResponse, TData, TErrorResponse> = unknown extends TData\n ? ActualResponse<TResponse, TErrorResponse>\n : TData;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getError","exports","states","_states$find$error","_states$find","find","_ref","error","Boolean"],"sources":["getError.ts"],"sourcesContent":["export const getError = <T>(states: {error: T | null}[]) => {\n return states.find(({error}) => Boolean(error))?.error ?? null;\n};\n"],"mappings":";;;;;;AAAO,IAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,SAAXA,QAAQA,CAAOE,MAA2B,
|
|
1
|
+
{"version":3,"names":["getError","exports","states","_states$find$error","_states$find","find","_ref","error","Boolean"],"sources":["getError.ts"],"sourcesContent":["export const getError = <T>(states: {error: T | null}[]): NonNullable<T> | null => {\n return states.find(({error}) => Boolean(error))?.error ?? null;\n};\n"],"mappings":";;;;;;AAAO,IAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,SAAXA,QAAQA,CAAOE,MAA2B,EAA4B;EAAA,IAAAC,kBAAA,EAAAC,YAAA;EAC/E,QAAAD,kBAAA,IAAAC,YAAA,GAAOF,MAAM,CAACG,IAAI,CAAC,UAAAC,IAAA;IAAA,IAAEC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAA,OAAMC,OAAO,CAACD,KAAK,CAAC;EAAA,EAAC,cAAAH,YAAA,uBAAxCA,YAAA,CAA0CG,KAAK,cAAAJ,kBAAA,cAAAA,kBAAA,GAAI,IAAI;AAClE,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mergeStatuses","require","getStatus","exports","states","mergeStatuses","map","_ref","status"],"sources":["getStatus.ts"],"sourcesContent":["import type {DataLoaderStatus} from '../types/DataLoaderStatus';\n\nimport {mergeStatuses} from './mergeStatuses';\n\nexport const getStatus = (states: {status: DataLoaderStatus}[]) => {\n return mergeStatuses(states.map(({status}) => status));\n};\n"],"mappings":";;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAEO,IAAMC,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,SAAZA,SAASA,CAAIE,MAAoC,
|
|
1
|
+
{"version":3,"names":["_mergeStatuses","require","getStatus","exports","states","mergeStatuses","map","_ref","status"],"sources":["getStatus.ts"],"sourcesContent":["import type {DataLoaderStatus} from '../types/DataLoaderStatus';\n\nimport {mergeStatuses} from './mergeStatuses';\n\nexport const getStatus = (states: {status: DataLoaderStatus}[]): DataLoaderStatus => {\n return mergeStatuses(states.map(({status}) => status));\n};\n"],"mappings":";;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAEO,IAAMC,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,SAAZA,SAASA,CAAIE,MAAoC,EAAuB;EACjF,OAAO,IAAAC,4BAAa,EAACD,MAAM,CAACE,GAAG,CAAC,UAAAC,IAAA;IAAA,IAAEC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAA,OAAMA,MAAM;EAAA,EAAC,CAAC;AAC1D,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["hasTag","exports","key","tag","Array","isArray","index","indexOf","length"],"sources":["hasTag.ts"],"sourcesContent":["import type {DataSourceKey, DataSourceTag} from '../types/DataSource';\n\nexport const hasTag = (key: DataSourceKey, tag: DataSourceTag) => {\n if (!Array.isArray(key)) {\n return false;\n }\n\n const index = key.indexOf(tag);\n\n // First element — data source name\n // Last element — full key\n // Skip them for consistency\n return index > 0 && index < key.length - 2;\n};\n"],"mappings":";;;;;;AAEO,IAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,GAAkB,EAAEC,GAAkB,
|
|
1
|
+
{"version":3,"names":["hasTag","exports","key","tag","Array","isArray","index","indexOf","length"],"sources":["hasTag.ts"],"sourcesContent":["import type {DataSourceKey, DataSourceTag} from '../types/DataSource';\n\nexport const hasTag = (key: DataSourceKey, tag: DataSourceTag): boolean => {\n if (!Array.isArray(key)) {\n return false;\n }\n\n const index = key.indexOf(tag);\n\n // First element — data source name\n // Last element — full key\n // Skip them for consistency\n return index > 0 && index < key.length - 2;\n};\n"],"mappings":";;;;;;AAEO,IAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,GAAkB,EAAEC,GAAkB,EAAc;EACvE,IAAI,CAACC,KAAK,CAACC,OAAO,CAACH,GAAG,CAAC,EAAE;IACrB,OAAO,KAAK;EAChB;EAEA,IAAMI,KAAK,GAAGJ,GAAG,CAACK,OAAO,CAACJ,GAAG,CAAC;;EAE9B;EACA;EACA;EACA,OAAOG,KAAK,GAAG,CAAC,IAAIA,KAAK,GAAGJ,GAAG,CAACM,MAAM,GAAG,CAAC;AAC9C,CAAC","ignoreList":[]}
|
|
@@ -1,2 +1,26 @@
|
|
|
1
1
|
import type { AnyFunction } from '../types/utils';
|
|
2
|
+
/**
|
|
3
|
+
* @description
|
|
4
|
+
*
|
|
5
|
+
* The function is intended to be used with the `fetch` parameter of the query data source config.
|
|
6
|
+
* It is used to ignore the query data context and the query function context parameters.
|
|
7
|
+
*
|
|
8
|
+
* NOTE: When passed directly to the `fetch` parameter, typescript fails to infer the types of the `DataSource` fields.
|
|
9
|
+
* It is better to define a constant first.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
*
|
|
13
|
+
* function someFetchFunction(request: TRequest) {...}
|
|
14
|
+
*
|
|
15
|
+
* const fetchData = skipContext(someFetchFunction);
|
|
16
|
+
*
|
|
17
|
+
* const dataSource = makePlainQueryDataSource({
|
|
18
|
+
* ...
|
|
19
|
+
* fetch: fetchData,
|
|
20
|
+
* ...
|
|
21
|
+
* })
|
|
22
|
+
*
|
|
23
|
+
* @param fetch fetch function
|
|
24
|
+
* @returns fetch function with the ignored query data source context and the query function context.
|
|
25
|
+
*/
|
|
2
26
|
export declare const skipContext: <TFunc extends AnyFunction>(fetch: TFunc) => (_0: unknown, _1: unknown, ...args: Parameters<TFunc>) => ReturnType<TFunc>;
|
|
@@ -4,6 +4,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.skipContext = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* @description
|
|
9
|
+
*
|
|
10
|
+
* The function is intended to be used with the `fetch` parameter of the query data source config.
|
|
11
|
+
* It is used to ignore the query data context and the query function context parameters.
|
|
12
|
+
*
|
|
13
|
+
* NOTE: When passed directly to the `fetch` parameter, typescript fails to infer the types of the `DataSource` fields.
|
|
14
|
+
* It is better to define a constant first.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
*
|
|
18
|
+
* function someFetchFunction(request: TRequest) {...}
|
|
19
|
+
*
|
|
20
|
+
* const fetchData = skipContext(someFetchFunction);
|
|
21
|
+
*
|
|
22
|
+
* const dataSource = makePlainQueryDataSource({
|
|
23
|
+
* ...
|
|
24
|
+
* fetch: fetchData,
|
|
25
|
+
* ...
|
|
26
|
+
* })
|
|
27
|
+
*
|
|
28
|
+
* @param fetch fetch function
|
|
29
|
+
* @returns fetch function with the ignored query data source context and the query function context.
|
|
30
|
+
*/
|
|
7
31
|
var skipContext = exports.skipContext = function skipContext(fetch) {
|
|
8
32
|
return function (_0, _1) {
|
|
9
33
|
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["skipContext","exports","fetch","_0","_1","_len","arguments","length","args","Array","_key","apply"],"sources":["skipContext.ts"],"sourcesContent":["import type {AnyFunction} from '../types/utils';\n\nexport const skipContext = <TFunc extends AnyFunction>(fetch: TFunc) => {\n return (_0: unknown, _1: unknown, ...args: Parameters<TFunc>): ReturnType<TFunc> => {\n return fetch(...args);\n };\n};\n"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["skipContext","exports","fetch","_0","_1","_len","arguments","length","args","Array","_key","apply"],"sources":["skipContext.ts"],"sourcesContent":["import type {AnyFunction} from '../types/utils';\n\n/**\n * @description\n *\n * The function is intended to be used with the `fetch` parameter of the query data source config.\n * It is used to ignore the query data context and the query function context parameters.\n *\n * NOTE: When passed directly to the `fetch` parameter, typescript fails to infer the types of the `DataSource` fields.\n * It is better to define a constant first.\n *\n * @example\n *\n * function someFetchFunction(request: TRequest) {...}\n *\n * const fetchData = skipContext(someFetchFunction);\n *\n * const dataSource = makePlainQueryDataSource({\n * ...\n * fetch: fetchData,\n * ...\n * })\n *\n * @param fetch fetch function\n * @returns fetch function with the ignored query data source context and the query function context.\n */\nexport const skipContext = <TFunc extends AnyFunction>(fetch: TFunc) => {\n return (_0: unknown, _1: unknown, ...args: Parameters<TFunc>): ReturnType<TFunc> => {\n return fetch(...args);\n };\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAA+BE,KAAY,EAAK;EACpE,OAAO,UAACC,EAAW,EAAEC,EAAW,EAAoD;IAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAA/CC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAJF,IAAI,CAAAE,IAAA,QAAAJ,SAAA,CAAAI,IAAA;IAAA;IACrC,OAAOR,KAAK,CAAAS,KAAA,SAAIH,IAAI,CAAC;EACzB,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { QueryClientConfig } from '@tanstack/react-query';
|
|
1
|
+
import type { InvalidateQueryFilters, QueryClientConfig } from '@tanstack/react-query';
|
|
2
2
|
import { QueryClient } from '@tanstack/react-query';
|
|
3
3
|
import { type AnyDataSource, type DataManager, type DataSourceParams, type DataSourceTag } from '../core';
|
|
4
|
-
import type { InvalidateOptions } from '../core/types/DataManagerOptions';
|
|
4
|
+
import type { InvalidateOptions, InvalidateRepeatOptions } from '../core/types/DataManagerOptions';
|
|
5
5
|
export type ClientDataManagerConfig = QueryClientConfig;
|
|
6
6
|
export declare class ClientDataManager implements DataManager {
|
|
7
7
|
readonly queryClient: QueryClient;
|
|
@@ -13,6 +13,6 @@ export declare class ClientDataManager implements DataManager {
|
|
|
13
13
|
invalidateParams<TDataSource extends AnyDataSource>(dataSource: TDataSource, params: DataSourceParams<TDataSource>, invalidateOptions?: InvalidateOptions): Promise<void>;
|
|
14
14
|
resetParams<TDataSource extends AnyDataSource>(dataSource: TDataSource, params: DataSourceParams<TDataSource>): Promise<void>;
|
|
15
15
|
invalidateSourceTags<TDataSource extends AnyDataSource>(dataSource: TDataSource, params: DataSourceParams<TDataSource>, invalidateOptions?: InvalidateOptions): Promise<void>;
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
protected invalidateQueries(filters: InvalidateQueryFilters, invalidateOptions?: InvalidateOptions): Promise<void>;
|
|
17
|
+
protected repeatInvalidate(invalidate: () => Promise<void>, repeat?: InvalidateRepeatOptions): void;
|
|
18
18
|
}
|
|
@@ -93,12 +93,10 @@ var ClientDataManager = exports.ClientDataManager = /*#__PURE__*/function () {
|
|
|
93
93
|
key: "invalidateQueries",
|
|
94
94
|
value: function invalidateQueries(filters, invalidateOptions) {
|
|
95
95
|
var _this = this;
|
|
96
|
-
var _ref3 = invalidateOptions || {},
|
|
97
|
-
repeat = _ref3.repeat;
|
|
98
96
|
var invalidate = function invalidate() {
|
|
99
97
|
return _this.queryClient.invalidateQueries(filters);
|
|
100
98
|
};
|
|
101
|
-
this.repeatInvalidate(invalidate, repeat);
|
|
99
|
+
this.repeatInvalidate(invalidate, invalidateOptions === null || invalidateOptions === void 0 ? void 0 : invalidateOptions.repeat);
|
|
102
100
|
return invalidate();
|
|
103
101
|
}
|
|
104
102
|
}, {
|
|
@@ -107,10 +105,8 @@ var ClientDataManager = exports.ClientDataManager = /*#__PURE__*/function () {
|
|
|
107
105
|
if (!repeat) {
|
|
108
106
|
return;
|
|
109
107
|
}
|
|
110
|
-
var
|
|
111
|
-
|
|
112
|
-
for (var i = 1; i <= count; i++) {
|
|
113
|
-
setTimeout(invalidate, interval * i);
|
|
108
|
+
for (var i = 1; i <= repeat.count; i++) {
|
|
109
|
+
setTimeout(invalidate, repeat.interval * i);
|
|
114
110
|
}
|
|
115
111
|
}
|
|
116
112
|
}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactQuery","require","_core","_interopRequireDefault","e","__esModule","default","ClientDataManager","exports","_conifg$defaultOption","_conifg$defaultOption2","conifg","arguments","length","undefined","_classCallCheck","queryClient","QueryClient","_objectSpread","defaultOptions","queries","networkMode","mutations","_createClass","key","value","invalidateTag","tag","invalidateOptions","invalidateQueries","predicate","_ref","queryKey","hasTag","invalidateTags","tags","_ref2","every","invalidateSource","dataSource","name","resetSource","resetQueries","invalidateParams","params","composeFullKey","exact","resetParams","invalidateSourceTags","slice","filters","_this","
|
|
1
|
+
{"version":3,"names":["_reactQuery","require","_core","_interopRequireDefault","e","__esModule","default","ClientDataManager","exports","_conifg$defaultOption","_conifg$defaultOption2","conifg","arguments","length","undefined","_classCallCheck","queryClient","QueryClient","_objectSpread","defaultOptions","queries","networkMode","mutations","_createClass","key","value","invalidateTag","tag","invalidateOptions","invalidateQueries","predicate","_ref","queryKey","hasTag","invalidateTags","tags","_ref2","every","invalidateSource","dataSource","name","resetSource","resetQueries","invalidateParams","params","composeFullKey","exact","resetParams","invalidateSourceTags","slice","filters","_this","invalidate","repeatInvalidate","repeat","i","count","setTimeout","interval"],"sources":["ClientDataManager.ts"],"sourcesContent":["import type {InvalidateQueryFilters, QueryClientConfig} from '@tanstack/react-query';\nimport {QueryClient} from '@tanstack/react-query';\n\nimport {\n type AnyDataSource,\n type DataManager,\n type DataSourceParams,\n type DataSourceTag,\n composeFullKey,\n hasTag,\n} from '../core';\nimport type {InvalidateOptions, InvalidateRepeatOptions} from '../core/types/DataManagerOptions';\n\nexport type ClientDataManagerConfig = QueryClientConfig;\n\nexport class ClientDataManager implements DataManager {\n readonly queryClient: QueryClient;\n\n constructor(conifg: ClientDataManagerConfig = {}) {\n this.queryClient = new QueryClient({\n ...conifg,\n defaultOptions: {\n ...conifg.defaultOptions,\n queries: {\n networkMode: 'always',\n ...conifg.defaultOptions?.queries,\n },\n mutations: {\n networkMode: 'always',\n ...conifg.defaultOptions?.mutations,\n },\n },\n });\n }\n\n invalidateTag(tag: DataSourceTag, invalidateOptions?: InvalidateOptions) {\n return this.invalidateQueries(\n {\n predicate: ({queryKey}) => hasTag(queryKey, tag),\n },\n invalidateOptions,\n );\n }\n\n invalidateTags(tags: DataSourceTag[], invalidateOptions?: InvalidateOptions) {\n return this.invalidateQueries(\n {\n predicate: ({queryKey}) => tags.every((tag) => hasTag(queryKey, tag)),\n },\n invalidateOptions,\n );\n }\n\n invalidateSource<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n invalidateOptions?: InvalidateOptions,\n ) {\n return this.invalidateQueries(\n {\n // First element is a data source name\n queryKey: [dataSource.name],\n },\n invalidateOptions,\n );\n }\n\n resetSource<TDataSource extends AnyDataSource>(dataSource: TDataSource) {\n return this.queryClient.resetQueries({\n // First element is a data source name\n queryKey: [dataSource.name],\n });\n }\n\n invalidateParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ) {\n return this.invalidateQueries(\n {\n queryKey: composeFullKey(dataSource, params),\n exact: true,\n },\n invalidateOptions,\n );\n }\n\n resetParams<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n ) {\n return this.queryClient.resetQueries({\n queryKey: composeFullKey(dataSource, params),\n exact: true,\n });\n }\n\n invalidateSourceTags<TDataSource extends AnyDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n invalidateOptions?: InvalidateOptions,\n ) {\n return this.invalidateQueries(\n {\n // Last element is a full key\n queryKey: composeFullKey(dataSource, params).slice(0, -1),\n },\n invalidateOptions,\n );\n }\n\n protected invalidateQueries(\n filters: InvalidateQueryFilters,\n invalidateOptions?: InvalidateOptions,\n ) {\n const invalidate = () => this.queryClient.invalidateQueries(filters);\n\n this.repeatInvalidate(invalidate, invalidateOptions?.repeat);\n\n return invalidate();\n }\n\n protected repeatInvalidate(invalidate: () => Promise<void>, repeat?: InvalidateRepeatOptions) {\n if (!repeat) {\n return;\n }\n\n for (let i = 1; i <= repeat.count; i++) {\n setTimeout(invalidate, repeat.interval * i);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { QueryDataSourceContext } from '../types';
|
|
1
|
+
import type { QueryDataSourceContext } from '../types/base';
|
|
2
2
|
export declare const useQueryContext: () => QueryDataSourceContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactQuery","useQueryContext","exports","queryClient","useQueryClient","queryContext","useMemo"],"sources":["useQueryContext.ts"],"sourcesContent":["import {useMemo} from 'react';\n\nimport {useQueryClient} from '@tanstack/react-query';\n\nimport type {QueryDataSourceContext} from '../types';\n\nexport const useQueryContext = (): QueryDataSourceContext => {\n const queryClient = useQueryClient();\n const queryContext = useMemo(() => ({queryClient}), [queryClient]);\n\n return queryContext;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAIO,IAAME,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,SAAlBA,eAAeA,CAAA,EAAiC;EACzD,IAAME,WAAW,GAAG,IAAAC,0BAAc,EAAC,CAAC;EACpC,IAAMC,YAAY,GAAG,IAAAC,cAAO,EAAC;IAAA,OAAO;MAACH,WAAW,EAAXA;IAAW,CAAC;EAAA,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EAElE,OAAOE,YAAY;AACvB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactQuery","useQueryContext","exports","queryClient","useQueryClient","queryContext","useMemo"],"sources":["useQueryContext.ts"],"sourcesContent":["import {useMemo} from 'react';\n\nimport {useQueryClient} from '@tanstack/react-query';\n\nimport type {QueryDataSourceContext} from '../types/base';\n\nexport const useQueryContext = (): QueryDataSourceContext => {\n const queryClient = useQueryClient();\n const queryContext = useMemo(() => ({queryClient}), [queryClient]);\n\n return queryContext;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAIO,IAAME,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,SAAlBA,eAAeA,CAAA,EAAiC;EACzD,IAAME,WAAW,GAAG,IAAAC,0BAAc,EAAC,CAAC;EACpC,IAAMC,YAAY,GAAG,IAAAC,cAAO,EAAC;IAAA,OAAO;MAACH,WAAW,EAAXA;IAAW,CAAC;EAAA,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EAElE,OAAOE,YAAY;AACvB,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { DataSourceOptions, DataSourceParams, DataSourceState } from '../../core';
|
|
2
|
-
import type { AnyQueryDataSource } from '../types';
|
|
2
|
+
import type { AnyQueryDataSource } from '../types/base';
|
|
3
3
|
export declare const useQueryData: <TDataSource extends AnyQueryDataSource>(dataSource: TDataSource, params: DataSourceParams<TDataSource>, options?: Partial<DataSourceOptions<TDataSource>>) => DataSourceState<TDataSource>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_hooks","require","_hooks2","_notReachable","_useQueryContext","useQueryData","exports","dataSource","params","options","context","useQueryContext","type","state","usePlainQueryData","useInfiniteQueryData","notReachable","concat"],"sources":["useQueryData.ts"],"sourcesContent":["import type {DataSourceOptions, DataSourceParams, DataSourceState} from '../../core';\nimport {useInfiniteQueryData} from '../impl/infinite/hooks';\nimport type {AnyInfiniteQueryDataSource} from '../impl/infinite/types';\nimport {usePlainQueryData} from '../impl/plain/hooks';\nimport type {AnyPlainQueryDataSource} from '../impl/plain/types';\nimport type {AnyQueryDataSource} from '../types';\nimport {notReachable} from '../utils/notReachable';\n\nimport {useQueryContext} from './useQueryContext';\n\nexport const useQueryData = <TDataSource extends AnyQueryDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n options?: Partial<DataSourceOptions<TDataSource>>,\n): DataSourceState<TDataSource> => {\n const context = useQueryContext();\n\n const type = dataSource.type;\n let state: DataSourceState<AnyQueryDataSource> | undefined;\n\n // Do not change data source type in the same hook call\n if (type === 'plain') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n state = usePlainQueryData(\n context,\n dataSource,\n params,\n options as Partial<DataSourceOptions<AnyPlainQueryDataSource>> | undefined,\n );\n } else if (type === 'infinite') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n state = useInfiniteQueryData(\n context,\n dataSource,\n params,\n // TS can't calculate types in this place\n options as Partial<DataSourceOptions<AnyInfiniteQueryDataSource>> | undefined,\n );\n } else {\n return notReachable(type, `Data Source type must be plain or infinite, got: ${type}`);\n }\n\n return state as DataSourceState<TDataSource>;\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAGA,IAAAE,aAAA,GAAAF,OAAA;AAEA,IAAAG,gBAAA,GAAAH,OAAA;AAEO,IAAMI,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAG,SAAfA,YAAYA,CACrBE,UAAuB,EACvBC,MAAqC,EACrCC,OAAiD,EAClB;EAC/B,IAAMC,OAAO,GAAG,IAAAC,gCAAe,EAAC,CAAC;EAEjC,IAAMC,IAAI,GAAGL,UAAU,CAACK,IAAI;EAC5B,IAAIC,KAAsD;;EAE1D;EACA,IAAID,IAAI,KAAK,OAAO,EAAE;IAClB;IACAC,KAAK,GAAG,IAAAC,yBAAiB,EACrBJ,OAAO,EACPH,UAAU,EACVC,MAAM,EACNC,OACJ,CAAC;EACL,CAAC,MAAM,IAAIG,IAAI,KAAK,UAAU,EAAE;IAC5B;IACAC,KAAK,GAAG,IAAAE,2BAAoB,EACxBL,OAAO,EACPH,UAAU,EACVC,MAAM;IACN;IACAC,OACJ,CAAC;EACL,CAAC,MAAM;IACH,OAAO,IAAAO,0BAAY,EAACJ,IAAI,sDAAAK,MAAA,CAAsDL,IAAI,CAAE,CAAC;EACzF;EAEA,OAAOC,KAAK;AAChB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_hooks","require","_hooks2","_notReachable","_useQueryContext","useQueryData","exports","dataSource","params","options","context","useQueryContext","type","state","usePlainQueryData","useInfiniteQueryData","notReachable","concat"],"sources":["useQueryData.ts"],"sourcesContent":["import type {DataSourceOptions, DataSourceParams, DataSourceState} from '../../core';\nimport {useInfiniteQueryData} from '../impl/infinite/hooks';\nimport type {AnyInfiniteQueryDataSource} from '../impl/infinite/types';\nimport {usePlainQueryData} from '../impl/plain/hooks';\nimport type {AnyPlainQueryDataSource} from '../impl/plain/types';\nimport type {AnyQueryDataSource} from '../types/base';\nimport {notReachable} from '../utils/notReachable';\n\nimport {useQueryContext} from './useQueryContext';\n\nexport const useQueryData = <TDataSource extends AnyQueryDataSource>(\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n options?: Partial<DataSourceOptions<TDataSource>>,\n): DataSourceState<TDataSource> => {\n const context = useQueryContext();\n\n const type = dataSource.type;\n let state: DataSourceState<AnyQueryDataSource> | undefined;\n\n // Do not change data source type in the same hook call\n if (type === 'plain') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n state = usePlainQueryData(\n context,\n dataSource,\n params,\n options as Partial<DataSourceOptions<AnyPlainQueryDataSource>> | undefined,\n );\n } else if (type === 'infinite') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n state = useInfiniteQueryData(\n context,\n dataSource,\n params,\n // TS can't calculate types in this place\n options as Partial<DataSourceOptions<AnyInfiniteQueryDataSource>> | undefined,\n );\n } else {\n return notReachable(type, `Data Source type must be plain or infinite, got: ${type}`);\n }\n\n return state as DataSourceState<TDataSource>;\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAGA,IAAAE,aAAA,GAAAF,OAAA;AAEA,IAAAG,gBAAA,GAAAH,OAAA;AAEO,IAAMI,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAG,SAAfA,YAAYA,CACrBE,UAAuB,EACvBC,MAAqC,EACrCC,OAAiD,EAClB;EAC/B,IAAMC,OAAO,GAAG,IAAAC,gCAAe,EAAC,CAAC;EAEjC,IAAMC,IAAI,GAAGL,UAAU,CAACK,IAAI;EAC5B,IAAIC,KAAsD;;EAE1D;EACA,IAAID,IAAI,KAAK,OAAO,EAAE;IAClB;IACAC,KAAK,GAAG,IAAAC,yBAAiB,EACrBJ,OAAO,EACPH,UAAU,EACVC,MAAM,EACNC,OACJ,CAAC;EACL,CAAC,MAAM,IAAIG,IAAI,KAAK,UAAU,EAAE;IAC5B;IACAC,KAAK,GAAG,IAAAE,2BAAoB,EACxBL,OAAO,EACPH,UAAU,EACVC,MAAM;IACN;IACAC,OACJ,CAAC;EACL,CAAC,MAAM;IACH,OAAO,IAAAO,0BAAY,EAACJ,IAAI,sDAAAK,MAAA,CAAsDL,IAAI,CAAE,CAAC;EACzF;EAEA,OAAOC,KAAK;AAChB,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Query, QueryFunction, SkipToken } from '@tanstack/react-query';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import type { DefaultError, Query, QueryFunction, QueryKey, SkipToken } from '@tanstack/react-query';
|
|
2
|
+
import type { RefetchInterval } from '../types/refetch-interval';
|
|
3
|
+
export interface UseRefetchIntervalResult<TQueryFnData = unknown, TError = DefaultError, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never> {
|
|
4
|
+
refetchInterval?: number | false | ((query: Query<TQueryFnData, TError, TQueryData, TQueryKey>) => number | false | undefined);
|
|
5
|
+
queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken;
|
|
6
|
+
}
|
|
7
|
+
export declare const useRefetchInterval: <TQueryFnData = unknown, TError = Error, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never>(refetchInterval?: RefetchInterval<TQueryFnData, TError, TQueryData, TQueryKey>, queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken) => UseRefetchIntervalResult<TQueryFnData, TError, TQueryData, TQueryKey, TPageParam>;
|
|
@@ -6,28 +6,28 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useRefetchInterval = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
var useRefetchInterval = exports.useRefetchInterval = function useRefetchInterval(
|
|
9
|
+
var useRefetchInterval = exports.useRefetchInterval = function useRefetchInterval(refetchInterval, queryFn) {
|
|
10
10
|
var count = _react.default.useRef(0);
|
|
11
|
-
var
|
|
12
|
-
if (typeof
|
|
11
|
+
var actualQueryFn = _react.default.useMemo(function () {
|
|
12
|
+
if (typeof queryFn === 'function') {
|
|
13
13
|
return function (context) {
|
|
14
|
-
count.current
|
|
15
|
-
return
|
|
14
|
+
++count.current;
|
|
15
|
+
return queryFn(context);
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
return
|
|
19
|
-
}, [
|
|
20
|
-
var
|
|
21
|
-
if (typeof
|
|
18
|
+
return queryFn;
|
|
19
|
+
}, [queryFn]);
|
|
20
|
+
var actualRefetchInterval = _react.default.useMemo(function () {
|
|
21
|
+
if (typeof refetchInterval === 'function') {
|
|
22
22
|
return function (query) {
|
|
23
|
-
return
|
|
23
|
+
return refetchInterval(query, count.current);
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
return
|
|
27
|
-
}, [
|
|
26
|
+
return refetchInterval;
|
|
27
|
+
}, [refetchInterval]);
|
|
28
28
|
return {
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
queryFn: actualQueryFn,
|
|
30
|
+
refetchInterval: actualRefetchInterval
|
|
31
31
|
};
|
|
32
32
|
};
|
|
33
33
|
// #sourceMappingURL=useRefetchInterval.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","e","__esModule","default","useRefetchInterval","exports","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","e","__esModule","default","useRefetchInterval","exports","refetchInterval","queryFn","count","React","useRef","actualQueryFn","useMemo","context","current","actualRefetchInterval","query"],"sources":["useRefetchInterval.ts"],"sourcesContent":["import React from 'react';\n\nimport type {DefaultError, Query, QueryFunction, QueryKey, SkipToken} from '@tanstack/react-query';\n\nimport type {RefetchInterval} from '../types/refetch-interval';\n\nexport interface UseRefetchIntervalResult<\n TQueryFnData = unknown,\n TError = DefaultError,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = never,\n> {\n refetchInterval?:\n | number\n | false\n | ((\n query: Query<TQueryFnData, TError, TQueryData, TQueryKey>,\n ) => number | false | undefined);\n queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken;\n}\n\nexport const useRefetchInterval = <\n TQueryFnData = unknown,\n TError = DefaultError,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = never,\n>(\n refetchInterval?: RefetchInterval<TQueryFnData, TError, TQueryData, TQueryKey>,\n queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken,\n): UseRefetchIntervalResult<TQueryFnData, TError, TQueryData, TQueryKey, TPageParam> => {\n const count = React.useRef<number>(0);\n\n const actualQueryFn = React.useMemo(() => {\n if (typeof queryFn === 'function') {\n return ((context) => {\n ++count.current;\n return queryFn(context);\n }) satisfies UseRefetchIntervalResult<\n TQueryFnData,\n TError,\n TQueryData,\n TQueryKey,\n TPageParam\n >['queryFn'];\n }\n\n return queryFn;\n }, [queryFn]);\n\n const actualRefetchInterval = React.useMemo(() => {\n if (typeof refetchInterval === 'function') {\n return ((query) => {\n return refetchInterval(query, count.current);\n }) satisfies UseRefetchIntervalResult<\n TQueryFnData,\n TError,\n TQueryData,\n TQueryKey,\n TPageParam\n >['refetchInterval'];\n }\n\n return refetchInterval;\n }, [refetchInterval]);\n\n return {queryFn: actualQueryFn, refetchInterval: actualRefetchInterval};\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAsBlB,IAAMG,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,SAArBA,kBAAkBA,CAO3BE,eAA8E,EAC9EC,OAAwE,EACY;EACpF,IAAMC,KAAK,GAAGC,cAAK,CAACC,MAAM,CAAS,CAAC,CAAC;EAErC,IAAMC,aAAa,GAAGF,cAAK,CAACG,OAAO,CAAC,YAAM;IACtC,IAAI,OAAOL,OAAO,KAAK,UAAU,EAAE;MAC/B,OAAQ,UAACM,OAAO,EAAK;QACjB,EAAEL,KAAK,CAACM,OAAO;QACf,OAAOP,OAAO,CAACM,OAAO,CAAC;MAC3B,CAAC;IAOL;IAEA,OAAON,OAAO;EAClB,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAMQ,qBAAqB,GAAGN,cAAK,CAACG,OAAO,CAAC,YAAM;IAC9C,IAAI,OAAON,eAAe,KAAK,UAAU,EAAE;MACvC,OAAQ,UAACU,KAAK,EAAK;QACf,OAAOV,eAAe,CAACU,KAAK,EAAER,KAAK,CAACM,OAAO,CAAC;MAChD,CAAC;IAOL;IAEA,OAAOR,eAAe;EAC1B,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,OAAO;IAACC,OAAO,EAAEI,aAAa;IAAEL,eAAe,EAAES;EAAqB,CAAC;AAC3E,CAAC","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { InfiniteQueryDataSource } from './types';
|
|
2
|
-
export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError>(config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>, "type">) => InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>;
|
|
2
|
+
export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError, TErrorResponse>(config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>, "type">) => InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource =
|
|
1
|
+
{"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource = <\n TParams,\n TRequest,\n TResponse,\n TData,\n TError,\n TErrorResponse,\n>(\n config: Omit<\n InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>,\n 'type'\n >,\n): InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse> => ({\n ...config,\n type: 'infinite',\n});\n"],"mappings":";;;;;;;;AAEO,IAAMA,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAG,SAA9BA,2BAA2BA,CAQpCE,MAGC;EAAA,WAAAC,sBAAA,MAAAA,sBAAA,MAEED,MAAM;IACTE,IAAI,EAAE;EAAU;AAAA,CAClB","ignoreList":[]}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
import type { AnyInfiniteQueryDataSource, AnyPageParam, InfiniteQueryObserverExtendedOptions } from './types';
|
|
1
|
+
import type { DataSourceContext, DataSourceOptions, DataSourceParams, DataSourceState } from '../../../core';
|
|
2
|
+
import type { AnyInfiniteQueryDataSource } from './types';
|
|
4
3
|
export declare const useInfiniteQueryData: <TDataSource extends AnyInfiniteQueryDataSource>(context: DataSourceContext<TDataSource>, dataSource: TDataSource, params: DataSourceParams<TDataSource>, options?: Partial<DataSourceOptions<TDataSource>>) => DataSourceState<TDataSource>;
|
|
5
|
-
export declare function useInfiniteQueryDataOptions<TDataSource extends AnyInfiniteQueryDataSource>(composedOptions: InfiniteQueryObserverExtendedOptions<DataSourceResponse<TDataSource>, DataSourceError<TDataSource>, InfiniteData<DataSourceData<TDataSource>, AnyPageParam>, DataSourceResponse<TDataSource>, DataSourceKey, AnyPageParam>): InfiniteQueryObserverOptions<DataSourceResponse<TDataSource>, DataSourceError<TDataSource>, InfiniteData<DataSourceData<TDataSource>, AnyPageParam>, DataSourceResponse<TDataSource>, DataSourceKey, AnyPageParam>;
|
|
@@ -4,42 +4,40 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useInfiniteQueryData = void 0;
|
|
7
|
-
exports.useInfiniteQueryDataOptions = useInfiniteQueryDataOptions;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
9
7
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
8
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
9
|
var _react = require("react");
|
|
11
10
|
var _reactQuery = require("@tanstack/react-query");
|
|
12
11
|
var _useRefetchInterval2 = require("../../hooks/useRefetchInterval");
|
|
13
12
|
var _normalizeStatus = require("../../utils/normalizeStatus");
|
|
14
13
|
var _utils = require("./utils");
|
|
15
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
-
var _excluded = ["
|
|
15
|
+
var _excluded = ["queryFn", "refetchInterval"];
|
|
16
|
+
var useInfiniteQueryDataOptions = function useInfiniteQueryDataOptions(composedOptions) {
|
|
17
|
+
var queryFnOption = composedOptions.queryFn,
|
|
18
|
+
refetchIntervalOption = composedOptions.refetchInterval,
|
|
19
|
+
restOptions = (0, _objectWithoutProperties2.default)(composedOptions, _excluded);
|
|
20
|
+
var _useRefetchInterval = (0, _useRefetchInterval2.useRefetchInterval)(refetchIntervalOption, queryFnOption),
|
|
21
|
+
queryFn = _useRefetchInterval.queryFn,
|
|
22
|
+
refetchInterval = _useRefetchInterval.refetchInterval;
|
|
23
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, restOptions), {}, {
|
|
24
|
+
queryFn: queryFn,
|
|
25
|
+
refetchInterval: refetchInterval
|
|
26
|
+
});
|
|
27
|
+
};
|
|
17
28
|
var useInfiniteQueryData = exports.useInfiniteQueryData = function useInfiniteQueryData(context, dataSource, params, options) {
|
|
18
|
-
var
|
|
19
|
-
var
|
|
20
|
-
var
|
|
29
|
+
var extendedOptions = (0, _utils.composeOptions)(context, dataSource, params, options);
|
|
30
|
+
var composedOptions = useInfiniteQueryDataOptions(extendedOptions);
|
|
31
|
+
var state = (0, _reactQuery.useInfiniteQuery)(composedOptions);
|
|
21
32
|
var transformedData = (0, _react.useMemo)(function () {
|
|
22
|
-
var
|
|
23
|
-
return (
|
|
24
|
-
}, [
|
|
25
|
-
return (0, _objectSpread2.default)((0, _objectSpread2.default)({},
|
|
26
|
-
status: (0, _normalizeStatus.normalizeStatus)(
|
|
33
|
+
var _state$data$pages$fla, _state$data;
|
|
34
|
+
return (_state$data$pages$fla = (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.pages.flat(1)) !== null && _state$data$pages$fla !== void 0 ? _state$data$pages$fla : [];
|
|
35
|
+
}, [state.data]);
|
|
36
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
|
|
37
|
+
status: (0, _normalizeStatus.normalizeStatus)(state.status, state.fetchStatus),
|
|
27
38
|
data: transformedData,
|
|
28
|
-
originalStatus:
|
|
29
|
-
originalData:
|
|
39
|
+
originalStatus: state.status,
|
|
40
|
+
originalData: state.data
|
|
30
41
|
});
|
|
31
42
|
};
|
|
32
|
-
function useInfiniteQueryDataOptions(composedOptions) {
|
|
33
|
-
var _ref = composedOptions || {},
|
|
34
|
-
refetchIntervalOption = _ref.refetchInterval,
|
|
35
|
-
queryFnOption = _ref.queryFn,
|
|
36
|
-
restOptions = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
37
|
-
var _useRefetchInterval = (0, _useRefetchInterval2.useRefetchInterval)(refetchIntervalOption, queryFnOption),
|
|
38
|
-
refetchInterval = _useRefetchInterval.refetchInterval,
|
|
39
|
-
queryFn = _useRefetchInterval.queryFn;
|
|
40
|
-
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, restOptions), {}, {
|
|
41
|
-
refetchInterval: refetchInterval,
|
|
42
|
-
queryFn: queryFn
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
43
|
// #sourceMappingURL=hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactQuery","_useRefetchInterval2","_normalizeStatus","_utils","_interopRequireDefault","e","__esModule","default","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactQuery","_useRefetchInterval2","_normalizeStatus","_utils","_interopRequireDefault","e","__esModule","default","useInfiniteQueryDataOptions","composedOptions","queryFnOption","queryFn","refetchIntervalOption","refetchInterval","restOptions","_objectWithoutProperties","_excluded","_useRefetchInterval","useRefetchInterval","_objectSpread","useInfiniteQueryData","exports","context","dataSource","params","options","extendedOptions","composeOptions","state","useInfiniteQuery","transformedData","useMemo","_state$data$pages$fla","_state$data","data","pages","flat","status","normalizeStatus","fetchStatus","originalStatus","originalData"],"sources":["hooks.ts"],"sourcesContent":["import {useMemo} from 'react';\n\nimport {useInfiniteQuery} from '@tanstack/react-query';\nimport type {InfiniteData, InfiniteQueryObserverOptions} from '@tanstack/react-query';\n\nimport type {\n DataSourceContext,\n DataSourceData,\n DataSourceError,\n DataSourceKey,\n DataSourceOptions,\n DataSourceParams,\n DataSourceRequest,\n DataSourceResponse,\n DataSourceState,\n} from '../../../core';\nimport {useRefetchInterval} from '../../hooks/useRefetchInterval';\nimport {normalizeStatus} from '../../utils/normalizeStatus';\n\nimport type {AnyInfiniteQueryDataSource, InfiniteQueryObserverExtendedOptions} from './types';\nimport {composeOptions} from './utils';\n\nconst useInfiniteQueryDataOptions = <TDataSource extends AnyInfiniteQueryDataSource>(\n composedOptions: InfiniteQueryObserverExtendedOptions<\n DataSourceResponse<TDataSource>,\n DataSourceError<TDataSource>,\n InfiniteData<DataSourceData<TDataSource>, Partial<DataSourceRequest<TDataSource>>>,\n DataSourceResponse<TDataSource>,\n DataSourceKey,\n Partial<DataSourceRequest<TDataSource>>\n >,\n): InfiniteQueryObserverOptions<\n DataSourceResponse<TDataSource>,\n DataSourceError<TDataSource>,\n InfiniteData<DataSourceData<TDataSource>, Partial<DataSourceRequest<TDataSource>>>,\n DataSourceResponse<TDataSource>,\n DataSourceKey,\n Partial<DataSourceRequest<TDataSource>>\n> => {\n const {\n queryFn: queryFnOption,\n refetchInterval: refetchIntervalOption,\n ...restOptions\n } = composedOptions;\n\n const {queryFn, refetchInterval} = useRefetchInterval(refetchIntervalOption, queryFnOption);\n\n return {...restOptions, queryFn, refetchInterval};\n};\n\nexport const useInfiniteQueryData = <TDataSource extends AnyInfiniteQueryDataSource>(\n context: DataSourceContext<TDataSource>,\n dataSource: TDataSource,\n params: DataSourceParams<TDataSource>,\n options?: Partial<DataSourceOptions<TDataSource>>,\n): DataSourceState<TDataSource> => {\n const extendedOptions = composeOptions(context, dataSource, params, options);\n const composedOptions = useInfiniteQueryDataOptions(extendedOptions);\n const state = useInfiniteQuery(composedOptions);\n\n const transformedData = useMemo<DataSourceState<TDataSource>['data']>(\n () => state.data?.pages.flat(1) ?? [],\n [state.data],\n );\n\n return {\n ...state,\n status: normalizeStatus(state.status, state.fetchStatus),\n data: transformedData,\n originalStatus: state.status,\n originalData: state.data,\n } as DataSourceState<TDataSource>;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAcA,IAAAE,oBAAA,GAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AAGA,IAAAI,MAAA,GAAAJ,OAAA;AAAsC,SAAAK,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;;AAEtC,IAAMG,2BAA2B,GAAG,SAA9BA,2BAA2BA,CAC7BC,eAOC,EAQA;EACD,IACaC,aAAa,GAGtBD,eAAe,CAHfE,OAAO;IACUC,qBAAqB,GAEtCH,eAAe,CAFfI,eAAe;IACZC,WAAW,OAAAC,iCAAA,EACdN,eAAe,EAAAO,SAAA;EAEnB,IAAAC,mBAAA,GAAmC,IAAAC,uCAAkB,EAACN,qBAAqB,EAAEF,aAAa,CAAC;IAApFC,OAAO,GAAAM,mBAAA,CAAPN,OAAO;IAAEE,eAAe,GAAAI,mBAAA,CAAfJ,eAAe;EAE/B,WAAAM,sBAAA,MAAAA,sBAAA,MAAWL,WAAW;IAAEH,OAAO,EAAPA,OAAO;IAAEE,eAAe,EAAfA;EAAe;AACpD,CAAC;AAEM,IAAMO,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,SAAvBA,oBAAoBA,CAC7BE,OAAuC,EACvCC,UAAuB,EACvBC,MAAqC,EACrCC,OAAiD,EAClB;EAC/B,IAAMC,eAAe,GAAG,IAAAC,qBAAc,EAACL,OAAO,EAAEC,UAAU,EAAEC,MAAM,EAAEC,OAAO,CAAC;EAC5E,IAAMhB,eAAe,GAAGD,2BAA2B,CAACkB,eAAe,CAAC;EACpE,IAAME,KAAK,GAAG,IAAAC,4BAAgB,EAACpB,eAAe,CAAC;EAE/C,IAAMqB,eAAe,GAAG,IAAAC,cAAO,EAC3B;IAAA,IAAAC,qBAAA,EAAAC,WAAA;IAAA,QAAAD,qBAAA,IAAAC,WAAA,GAAML,KAAK,CAACM,IAAI,cAAAD,WAAA,uBAAVA,WAAA,CAAYE,KAAK,CAACC,IAAI,CAAC,CAAC,CAAC,cAAAJ,qBAAA,cAAAA,qBAAA,GAAI,EAAE;EAAA,GACrC,CAACJ,KAAK,CAACM,IAAI,CACf,CAAC;EAED,WAAAf,sBAAA,MAAAA,sBAAA,MACOS,KAAK;IACRS,MAAM,EAAE,IAAAC,gCAAe,EAACV,KAAK,CAACS,MAAM,EAAET,KAAK,CAACW,WAAW,CAAC;IACxDL,IAAI,EAAEJ,eAAe;IACrBU,cAAc,EAAEZ,KAAK,CAACS,MAAM;IAC5BI,YAAY,EAAEb,KAAK,CAACM;EAAI;AAEhC,CAAC","ignoreList":[]}
|