@ainias42/tanstack-ids 0.0.1 → 0.0.2

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.
@@ -7,19 +7,28 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
7
7
  useMany: import("react-query-kit").ExposeMethods<Type, [IdType], Error> & ((ids: IdType[], otherAdditionalQueryOptions?: Omit<import("@tanstack/react-query").UseQueryOptions<Type, unknown, Type, [string, [IdType]]>, "fetcher" | "queryKey" | "context"> & {
8
8
  reloadWithContext?: boolean;
9
9
  }) => import("@ainias42/js-helper").URecord<IdType, import("@tanstack/react-query").UseQueryResult<Type, Error>>);
10
- useOne: import("react-query-kit").ExposeMethods<Type, [IdType], Error> & ((identifier: IdType) => import("react-query-kit").QueryHookResult<Type, Error>);
10
+ useOne: import("react-query-kit").ExposeMethods<Type, [IdType], Error> & ((identifier: IdType, otherAdditionalQueryOptions?: Omit<import("react-query-kit").QueryHookOptions<Type, unknown, Type, [IdType]>, "fetcher" | "queryKey" | "variables" | "context"> & {
11
+ reloadWithContext?: boolean;
12
+ }) => import("react-query-kit").QueryHookResult<Type, Error>);
11
13
  generateFilter: <Func extends (...args: any[]) => Type[] | Promise<Type[]>, FuncArguments extends Parameters<Func>["length"] extends 0 ? void : Parameters<Func> = Parameters<Func>["length"] extends 0 ? void : Parameters<Func>, ResultAsArray extends boolean = false>(queryClient: QueryClient, filterFunc: Func, additionalOptions?: (Omit<import("react-query-kit").CreateQueryOptions<IdType[], [FuncArguments], Error>, "fetcher" | "queryKey"> & {
12
14
  resultAsArray?: ResultAsArray | undefined;
13
15
  subKey?: string;
14
16
  }) | undefined) => import("react-query-kit").ExposeMethods<IdType[], void | (void & [filter: FuncArguments]), Error> & (<Args_1 extends FuncArguments extends void ? [] : FuncArguments>(...args: Args_1) => ResultAsArray extends true ? import("@tanstack/react-query").UseQueryResult<Type, Error>[] : import("@ainias42/js-helper").URecord<IdType, import("@tanstack/react-query").UseQueryResult<Type, Error>>);
15
- generateInfiniteQuery: <PageParams, FuncArguments extends any[]>(queryClient: QueryClient, { queryFn, ...options }: Omit<import("react-query-kit").CreateInfiniteQueryOptions<IdType[], FuncArguments, Error, PageParams>, "fetcher" | "queryKey" | "getNextPageParam" | "getPreviousPageParam"> & {
16
- queryFn: (pageParams: PageParams, args: FuncArguments, context: import("@tanstack/react-query").QueryFunctionContext<[string, FuncArguments], PageParams>) => Type[] | Promise<Type[]>;
17
+ generateInfiniteQuery: <PageParams, Meta, FuncArguments extends any[] = []>({ queryFn, ...options }: Omit<import("react-query-kit").CreateInfiniteQueryOptions<{
18
+ data: IdType[];
19
+ meta: Meta;
20
+ }, FuncArguments, Error, PageParams>, "fetcher" | "queryKey" | "getNextPageParam" | "getPreviousPageParam"> & {
21
+ queryFn: (pageParams: PageParams, args: FuncArguments, context: import("@tanstack/react-query").QueryFunctionContext<[string, FuncArguments], PageParams>) => import("@ainias42/js-helper").Awaitable<{
22
+ data: Type[];
23
+ meta: Meta;
24
+ }>;
17
25
  getNextPageParam: (options: {
18
26
  getLastPage: () => Type[];
19
27
  getAllPages: () => Type[][];
20
28
  lastPageParam: PageParams;
21
29
  allPageParams: PageParams[];
22
30
  lastPageLength: number;
31
+ lastPageMeta: Meta;
23
32
  }) => PageParams | undefined;
24
33
  getPreviousPageParam?: ((options: {
25
34
  getFirstPage: () => Type[];
@@ -27,8 +36,40 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
27
36
  firstPageParam: PageParams;
28
37
  allPageParams: PageParams[];
29
38
  firstPageLength: number;
39
+ firstPageMeta: Meta;
30
40
  }) => PageParams | undefined) | undefined;
31
- }) => import("react-query-kit").ExposeMethods<IdType[], FuncArguments, Error> & ((...args: FuncArguments) => {
41
+ }) => import("react-query-kit").ExposeMethods<{
42
+ data: IdType[];
43
+ meta: Meta;
44
+ }, FuncArguments, Error> & ((...args: FuncArguments extends symbol | {
45
+ length: 0;
46
+ } | undefined ? [] | [import("@ainias42/js-helper").Override<import("react-query-kit").InfiniteQueryHookOptions<{
47
+ data: IdType[];
48
+ meta: Meta;
49
+ }, Error, unknown, FuncArguments, PageParams> & {
50
+ select?: undefined;
51
+ }, {
52
+ initialData?: {
53
+ pages: {
54
+ data: Type[];
55
+ meta: Meta;
56
+ }[];
57
+ pageParams: PageParams[];
58
+ } | undefined;
59
+ }>] : [import("@ainias42/js-helper").Override<import("react-query-kit").InfiniteQueryHookOptions<{
60
+ data: IdType[];
61
+ meta: Meta;
62
+ }, Error, unknown, FuncArguments, PageParams> & {
63
+ select?: undefined;
64
+ }, {
65
+ initialData?: {
66
+ pages: {
67
+ data: Type[];
68
+ meta: Meta;
69
+ }[];
70
+ pageParams: PageParams[];
71
+ } | undefined;
72
+ }>]) => {
32
73
  data: {
33
74
  pages: Exclude<import("@ainias42/js-helper").URecord<IdType, Type>[IdType], undefined>[][];
34
75
  pageParams: PageParams[];
@@ -41,8 +82,14 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
41
82
  isRefetchError: true;
42
83
  isSuccess: false;
43
84
  status: "error";
44
- fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
45
- fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
85
+ fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
86
+ data: IdType[];
87
+ meta: Meta;
88
+ }, PageParams>, Error>>;
89
+ fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
90
+ data: IdType[];
91
+ meta: Meta;
92
+ }, PageParams>, Error>>;
46
93
  hasNextPage: boolean;
47
94
  hasPreviousPage: boolean;
48
95
  isFetchNextPageError: boolean;
@@ -62,7 +109,10 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
62
109
  isPlaceholderData: boolean;
63
110
  isRefetching: boolean;
64
111
  isStale: boolean;
65
- refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
112
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<{
113
+ data: IdType[];
114
+ meta: Meta;
115
+ }, PageParams>, Error>>;
66
116
  fetchStatus: import("@tanstack/react-query").FetchStatus;
67
117
  } | {
68
118
  data: {
@@ -79,8 +129,14 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
79
129
  isFetchPreviousPageError: false;
80
130
  isSuccess: true;
81
131
  status: "success";
82
- fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
83
- fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
132
+ fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
133
+ data: IdType[];
134
+ meta: Meta;
135
+ }, PageParams>, Error>>;
136
+ fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
137
+ data: IdType[];
138
+ meta: Meta;
139
+ }, PageParams>, Error>>;
84
140
  hasNextPage: boolean;
85
141
  hasPreviousPage: boolean;
86
142
  isFetchingNextPage: boolean;
@@ -98,7 +154,10 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
98
154
  isPlaceholderData: boolean;
99
155
  isRefetching: boolean;
100
156
  isStale: boolean;
101
- refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
157
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<{
158
+ data: IdType[];
159
+ meta: Meta;
160
+ }, PageParams>, Error>>;
102
161
  fetchStatus: import("@tanstack/react-query").FetchStatus;
103
162
  } | {
104
163
  data: {
@@ -115,8 +174,14 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
115
174
  isFetchPreviousPageError: false;
116
175
  isSuccess: false;
117
176
  status: "error";
118
- fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
119
- fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
177
+ fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
178
+ data: IdType[];
179
+ meta: Meta;
180
+ }, PageParams>, Error>>;
181
+ fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
182
+ data: IdType[];
183
+ meta: Meta;
184
+ }, PageParams>, Error>>;
120
185
  hasNextPage: boolean;
121
186
  hasPreviousPage: boolean;
122
187
  isFetchingNextPage: boolean;
@@ -134,7 +199,10 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
134
199
  isPlaceholderData: boolean;
135
200
  isRefetching: boolean;
136
201
  isStale: boolean;
137
- refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
202
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<{
203
+ data: IdType[];
204
+ meta: Meta;
205
+ }, PageParams>, Error>>;
138
206
  fetchStatus: import("@tanstack/react-query").FetchStatus;
139
207
  } | {
140
208
  data: {
@@ -151,8 +219,14 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
151
219
  isFetchPreviousPageError: false;
152
220
  isSuccess: false;
153
221
  status: "pending";
154
- fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
155
- fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
222
+ fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
223
+ data: IdType[];
224
+ meta: Meta;
225
+ }, PageParams>, Error>>;
226
+ fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
227
+ data: IdType[];
228
+ meta: Meta;
229
+ }, PageParams>, Error>>;
156
230
  hasNextPage: boolean;
157
231
  hasPreviousPage: boolean;
158
232
  isFetchingNextPage: boolean;
@@ -170,7 +244,10 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
170
244
  isPlaceholderData: boolean;
171
245
  isRefetching: boolean;
172
246
  isStale: boolean;
173
- refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
247
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<{
248
+ data: IdType[];
249
+ meta: Meta;
250
+ }, PageParams>, Error>>;
174
251
  fetchStatus: import("@tanstack/react-query").FetchStatus;
175
252
  } | {
176
253
  data: {
@@ -186,8 +263,14 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
186
263
  isFetchPreviousPageError: false;
187
264
  isSuccess: false;
188
265
  status: "pending";
189
- fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
190
- fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
266
+ fetchNextPage: (options?: import("@tanstack/react-query").FetchNextPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
267
+ data: IdType[];
268
+ meta: Meta;
269
+ }, PageParams>, Error>>;
270
+ fetchPreviousPage: (options?: import("@tanstack/react-query").FetchPreviousPageOptions) => Promise<import("@tanstack/react-query").InfiniteQueryObserverResult<import("@tanstack/react-query").InfiniteData<{
271
+ data: IdType[];
272
+ meta: Meta;
273
+ }, PageParams>, Error>>;
191
274
  hasNextPage: boolean;
192
275
  hasPreviousPage: boolean;
193
276
  isFetchingNextPage: boolean;
@@ -206,7 +289,10 @@ export declare function generateNestedIdQuery<IdType extends number | string | s
206
289
  isPlaceholderData: boolean;
207
290
  isRefetching: boolean;
208
291
  isStale: boolean;
209
- refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<IdType[], PageParams>, Error>>;
292
+ refetch: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("@tanstack/react-query").InfiniteData<{
293
+ data: IdType[];
294
+ meta: Meta;
295
+ }, PageParams>, Error>>;
210
296
  fetchStatus: import("@tanstack/react-query").FetchStatus;
211
297
  });
212
298
  };
@@ -0,0 +1,10 @@
1
+ export declare function formatInitialPage<Type>(data?: Type, pageParam?: any): {
2
+ initialData: {
3
+ pages: NonNullable<Type>[];
4
+ pageParams: any[];
5
+ };
6
+ initialDataUpdatedAt: number;
7
+ } | {
8
+ initialData?: undefined;
9
+ initialDataUpdatedAt?: undefined;
10
+ };
@@ -0,0 +1,13 @@
1
+ export function formatInitialPage(data, pageParam = 1) {
2
+ if (data) {
3
+ return {
4
+ initialData: {
5
+ pages: [data],
6
+ pageParams: [pageParam]
7
+ },
8
+ initialDataUpdatedAt: Date.now(),
9
+ };
10
+ }
11
+ return {};
12
+ }
13
+ //# sourceMappingURL=formatInitialPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatInitialPage.js","sourceRoot":"","sources":["../../src/hooks/formatInitialPage.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAO,IAAW,EAAE,YAAiB,CAAC;IACnE,IAAI,IAAI,EAAE,CAAC;QACP,OAAO;YACH,WAAW,EAAE;gBACT,KAAK,EAAE,CAAC,IAAI,CAAC;gBACb,UAAU,EAAE,CAAC,SAAS,CAAC;aAC1B;YACD,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE;SACnC,CAAC;IACN,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export * from './generateQuery.js';
4
4
  export * from './hoistReactQueryKitAttributes.js';
5
5
  export * from './noop.js';
6
6
  export * from './NotFoundError.js';
7
+ export * from './hooks/formatInitialPage.js';
7
8
  export * from './hooks/useArrayData.js';
8
9
  export * from './hooks/useIndexedData.js';
9
10
  export * from './QueryContext/QueriesContext.js';
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@ export * from './generateQuery.js';
4
4
  export * from './hoistReactQueryKitAttributes.js';
5
5
  export * from './noop.js';
6
6
  export * from './NotFoundError.js';
7
+ export * from './hooks/formatInitialPage.js';
7
8
  export * from './hooks/useArrayData.js';
8
9
  export * from './hooks/useIndexedData.js';
9
10
  export * from './QueryContext/QueriesContext.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qBAAqB,CAAC"}