@zenstackhq/tanstack-query 2.20.1 → 3.0.0-beta.16

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.
Files changed (94) hide show
  1. package/.turbo/turbo-build.log +32 -0
  2. package/.turbo/turbo-lint.log +5 -0
  3. package/LICENSE +1 -1
  4. package/dist/react.cjs +1238 -0
  5. package/dist/react.cjs.map +1 -0
  6. package/dist/react.d.cts +696 -0
  7. package/dist/react.d.ts +696 -0
  8. package/dist/react.js +1195 -0
  9. package/dist/react.js.map +1 -0
  10. package/eslint.config.js +4 -0
  11. package/package.json +56 -109
  12. package/scripts/generate.ts +27 -0
  13. package/src/react.ts +531 -0
  14. package/src/utils/common.ts +457 -0
  15. package/src/utils/mutator.ts +441 -0
  16. package/src/utils/nested-read-visitor.ts +61 -0
  17. package/src/utils/nested-write-visitor.ts +359 -0
  18. package/src/utils/query-analysis.ts +116 -0
  19. package/src/utils/serialization.ts +39 -0
  20. package/src/utils/types.ts +19 -0
  21. package/test/react-query.test.tsx +1787 -0
  22. package/test/schemas/basic/input.ts +70 -0
  23. package/test/schemas/basic/models.ts +12 -0
  24. package/test/schemas/basic/schema-lite.ts +124 -0
  25. package/test/schemas/basic/schema.zmodel +25 -0
  26. package/tsconfig.json +7 -0
  27. package/tsconfig.test.json +8 -0
  28. package/tsup.config.ts +13 -0
  29. package/vitest.config.ts +11 -0
  30. package/README.md +0 -5
  31. package/generator.d.ts +0 -6
  32. package/generator.js +0 -578
  33. package/generator.js.map +0 -1
  34. package/index.d.ts +0 -4
  35. package/index.js +0 -22
  36. package/index.js.map +0 -1
  37. package/runtime/common-CXlL7vTW.d.mts +0 -121
  38. package/runtime/common-CXlL7vTW.d.ts +0 -121
  39. package/runtime/index.d.mts +0 -20
  40. package/runtime/index.d.ts +0 -20
  41. package/runtime/index.js +0 -44
  42. package/runtime/index.js.map +0 -1
  43. package/runtime/index.mjs +0 -21
  44. package/runtime/index.mjs.map +0 -1
  45. package/runtime/react.d.mts +0 -322
  46. package/runtime/react.d.ts +0 -322
  47. package/runtime/react.js +0 -408
  48. package/runtime/react.js.map +0 -1
  49. package/runtime/react.mjs +0 -380
  50. package/runtime/react.mjs.map +0 -1
  51. package/runtime/svelte.d.mts +0 -322
  52. package/runtime/svelte.d.ts +0 -322
  53. package/runtime/svelte.js +0 -407
  54. package/runtime/svelte.js.map +0 -1
  55. package/runtime/svelte.mjs +0 -379
  56. package/runtime/svelte.mjs.map +0 -1
  57. package/runtime/vue.d.mts +0 -330
  58. package/runtime/vue.d.ts +0 -330
  59. package/runtime/vue.js +0 -418
  60. package/runtime/vue.js.map +0 -1
  61. package/runtime/vue.mjs +0 -390
  62. package/runtime/vue.mjs.map +0 -1
  63. package/runtime-v5/angular.d.mts +0 -59
  64. package/runtime-v5/angular.d.ts +0 -59
  65. package/runtime-v5/angular.js +0 -425
  66. package/runtime-v5/angular.js.map +0 -1
  67. package/runtime-v5/angular.mjs +0 -397
  68. package/runtime-v5/angular.mjs.map +0 -1
  69. package/runtime-v5/common-CXlL7vTW.d.mts +0 -121
  70. package/runtime-v5/common-CXlL7vTW.d.ts +0 -121
  71. package/runtime-v5/index.d.mts +0 -20
  72. package/runtime-v5/index.d.ts +0 -20
  73. package/runtime-v5/index.js +0 -44
  74. package/runtime-v5/index.js.map +0 -1
  75. package/runtime-v5/index.mjs +0 -21
  76. package/runtime-v5/index.mjs.map +0 -1
  77. package/runtime-v5/react.d.mts +0 -474
  78. package/runtime-v5/react.d.ts +0 -474
  79. package/runtime-v5/react.js +0 -440
  80. package/runtime-v5/react.js.map +0 -1
  81. package/runtime-v5/react.mjs +0 -412
  82. package/runtime-v5/react.mjs.map +0 -1
  83. package/runtime-v5/svelte.d.mts +0 -386
  84. package/runtime-v5/svelte.d.ts +0 -386
  85. package/runtime-v5/svelte.js +0 -436
  86. package/runtime-v5/svelte.js.map +0 -1
  87. package/runtime-v5/svelte.mjs +0 -408
  88. package/runtime-v5/svelte.mjs.map +0 -1
  89. package/runtime-v5/vue.d.mts +0 -330
  90. package/runtime-v5/vue.d.ts +0 -330
  91. package/runtime-v5/vue.js +0 -420
  92. package/runtime-v5/vue.js.map +0 -1
  93. package/runtime-v5/vue.mjs +0 -392
  94. package/runtime-v5/vue.mjs.map +0 -1
@@ -1,386 +0,0 @@
1
- import * as _tanstack_svelte_query_v5 from '@tanstack/svelte-query';
2
- import { StoreOrVal, CreateQueryOptions, CreateInfiniteQueryOptions, InfiniteData, MutationOptions } from '@tanstack/svelte-query';
3
- import { ModelMeta } from '@zenstackhq/runtime/cross';
4
- import { Readable } from 'svelte/store';
5
- import { A as APIContext, F as FetchFn, a as ExtraQueryOptions, E as ExtraMutationOptions } from './common-CXlL7vTW.mjs';
6
-
7
- /**
8
- * Key for setting and getting the global query context.
9
- */
10
- declare const SvelteQueryContextKey = "zenstack-svelte-query-context";
11
- /**
12
- * Set context for the generated TanStack Query hooks.
13
- */
14
- declare function setHooksContext(context: APIContext): void;
15
- /**
16
- * Hooks context.
17
- */
18
- declare function getHooksContext(): {
19
- fetch?: FetchFn;
20
- logging?: boolean;
21
- endpoint: string;
22
- };
23
- /**
24
- * Creates a svelte-query query.
25
- *
26
- * @param model The name of the model under query.
27
- * @param url The request URL.
28
- * @param args The request args object, URL-encoded and appended as "?q=" parameter
29
- * @param options The svelte-query options object
30
- * @param fetch The fetch function to use for sending the HTTP request
31
- * @returns useQuery hook
32
- */
33
- declare function useModelQuery<TQueryFnData, TData, TError>(model: string, url: string, args?: unknown, options?: StoreOrVal<Omit<CreateQueryOptions<TQueryFnData, TError, TData>, 'queryKey'>> & ExtraQueryOptions, fetch?: FetchFn): Readable<{
34
- data: TData;
35
- error: TError;
36
- isError: true;
37
- isPending: false;
38
- isLoading: false;
39
- isLoadingError: false;
40
- isRefetchError: true;
41
- isSuccess: false;
42
- status: "error";
43
- dataUpdatedAt: number;
44
- errorUpdatedAt: number;
45
- failureCount: number;
46
- failureReason: TError | null;
47
- errorUpdateCount: number;
48
- isFetched: boolean;
49
- isFetchedAfterMount: boolean;
50
- isFetching: boolean;
51
- isInitialLoading: boolean;
52
- isPaused: boolean;
53
- isPlaceholderData: boolean;
54
- isRefetching: boolean;
55
- isStale: boolean;
56
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<TData, TError>>;
57
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
58
- queryKey: [string, string, string, unknown, {
59
- infinite: boolean;
60
- optimisticUpdate: boolean;
61
- }];
62
- } | {
63
- data: TData;
64
- error: null;
65
- isError: false;
66
- isPending: false;
67
- isLoading: false;
68
- isLoadingError: false;
69
- isRefetchError: false;
70
- isSuccess: true;
71
- status: "success";
72
- dataUpdatedAt: number;
73
- errorUpdatedAt: number;
74
- failureCount: number;
75
- failureReason: TError | null;
76
- errorUpdateCount: number;
77
- isFetched: boolean;
78
- isFetchedAfterMount: boolean;
79
- isFetching: boolean;
80
- isInitialLoading: boolean;
81
- isPaused: boolean;
82
- isPlaceholderData: boolean;
83
- isRefetching: boolean;
84
- isStale: boolean;
85
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<TData, TError>>;
86
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
87
- queryKey: [string, string, string, unknown, {
88
- infinite: boolean;
89
- optimisticUpdate: boolean;
90
- }];
91
- } | {
92
- data: undefined;
93
- error: TError;
94
- isError: true;
95
- isPending: false;
96
- isLoading: false;
97
- isLoadingError: true;
98
- isRefetchError: false;
99
- isSuccess: false;
100
- status: "error";
101
- dataUpdatedAt: number;
102
- errorUpdatedAt: number;
103
- failureCount: number;
104
- failureReason: TError | null;
105
- errorUpdateCount: number;
106
- isFetched: boolean;
107
- isFetchedAfterMount: boolean;
108
- isFetching: boolean;
109
- isInitialLoading: boolean;
110
- isPaused: boolean;
111
- isPlaceholderData: boolean;
112
- isRefetching: boolean;
113
- isStale: boolean;
114
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<TData, TError>>;
115
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
116
- queryKey: [string, string, string, unknown, {
117
- infinite: boolean;
118
- optimisticUpdate: boolean;
119
- }];
120
- } | {
121
- data: undefined;
122
- error: null;
123
- isError: false;
124
- isPending: true;
125
- isLoading: true;
126
- isLoadingError: false;
127
- isRefetchError: false;
128
- isSuccess: false;
129
- status: "pending";
130
- dataUpdatedAt: number;
131
- errorUpdatedAt: number;
132
- failureCount: number;
133
- failureReason: TError | null;
134
- errorUpdateCount: number;
135
- isFetched: boolean;
136
- isFetchedAfterMount: boolean;
137
- isFetching: boolean;
138
- isInitialLoading: boolean;
139
- isPaused: boolean;
140
- isPlaceholderData: boolean;
141
- isRefetching: boolean;
142
- isStale: boolean;
143
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<TData, TError>>;
144
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
145
- queryKey: [string, string, string, unknown, {
146
- infinite: boolean;
147
- optimisticUpdate: boolean;
148
- }];
149
- } | {
150
- data: undefined;
151
- error: null;
152
- isError: false;
153
- isPending: true;
154
- isLoadingError: false;
155
- isRefetchError: false;
156
- isSuccess: false;
157
- status: "pending";
158
- dataUpdatedAt: number;
159
- errorUpdatedAt: number;
160
- failureCount: number;
161
- failureReason: TError | null;
162
- errorUpdateCount: number;
163
- isFetched: boolean;
164
- isFetchedAfterMount: boolean;
165
- isFetching: boolean;
166
- isLoading: boolean;
167
- isInitialLoading: boolean;
168
- isPaused: boolean;
169
- isPlaceholderData: boolean;
170
- isRefetching: boolean;
171
- isStale: boolean;
172
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<TData, TError>>;
173
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
174
- queryKey: [string, string, string, unknown, {
175
- infinite: boolean;
176
- optimisticUpdate: boolean;
177
- }];
178
- }>;
179
- /**
180
- * Creates a svelte-query infinite query.
181
- *
182
- * @param model The name of the model under query.
183
- * @param url The request URL.
184
- * @param args The initial request args object, URL-encoded and appended as "?q=" parameter
185
- * @param options The svelte-query infinite query options object
186
- * @returns useQuery hook
187
- */
188
- declare function useInfiniteModelQuery<TQueryFnData, TData, TError>(model: string, url: string, args: unknown, options: StoreOrVal<Omit<CreateInfiniteQueryOptions<TQueryFnData, TError, InfiniteData<TData>>, 'queryKey' | 'initialPageParam'>>, fetch?: FetchFn): Readable<{
189
- data: InfiniteData<TData, unknown>;
190
- error: TError;
191
- isError: true;
192
- isPending: false;
193
- isLoading: false;
194
- isLoadingError: false;
195
- isRefetchError: true;
196
- isFetchNextPageError: false;
197
- isFetchPreviousPageError: false;
198
- isSuccess: false;
199
- status: "error";
200
- fetchNextPage: (options?: _tanstack_svelte_query_v5.FetchNextPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
201
- fetchPreviousPage: (options?: _tanstack_svelte_query_v5.FetchPreviousPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
202
- hasNextPage: boolean;
203
- hasPreviousPage: boolean;
204
- isFetchingNextPage: boolean;
205
- isFetchingPreviousPage: boolean;
206
- dataUpdatedAt: number;
207
- errorUpdatedAt: number;
208
- failureCount: number;
209
- failureReason: TError | null;
210
- errorUpdateCount: number;
211
- isFetched: boolean;
212
- isFetchedAfterMount: boolean;
213
- isFetching: boolean;
214
- isInitialLoading: boolean;
215
- isPaused: boolean;
216
- isPlaceholderData: boolean;
217
- isRefetching: boolean;
218
- isStale: boolean;
219
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<InfiniteData<TData, unknown>, TError>>;
220
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
221
- queryKey: [string, string, string, unknown, {
222
- infinite: boolean;
223
- optimisticUpdate: boolean;
224
- }];
225
- } | {
226
- data: InfiniteData<TData, unknown>;
227
- error: null;
228
- isError: false;
229
- isPending: false;
230
- isLoading: false;
231
- isLoadingError: false;
232
- isRefetchError: false;
233
- isFetchNextPageError: false;
234
- isFetchPreviousPageError: false;
235
- isSuccess: true;
236
- status: "success";
237
- fetchNextPage: (options?: _tanstack_svelte_query_v5.FetchNextPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
238
- fetchPreviousPage: (options?: _tanstack_svelte_query_v5.FetchPreviousPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
239
- hasNextPage: boolean;
240
- hasPreviousPage: boolean;
241
- isFetchingNextPage: boolean;
242
- isFetchingPreviousPage: boolean;
243
- dataUpdatedAt: number;
244
- errorUpdatedAt: number;
245
- failureCount: number;
246
- failureReason: TError | null;
247
- errorUpdateCount: number;
248
- isFetched: boolean;
249
- isFetchedAfterMount: boolean;
250
- isFetching: boolean;
251
- isInitialLoading: boolean;
252
- isPaused: boolean;
253
- isPlaceholderData: boolean;
254
- isRefetching: boolean;
255
- isStale: boolean;
256
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<InfiniteData<TData, unknown>, TError>>;
257
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
258
- queryKey: [string, string, string, unknown, {
259
- infinite: boolean;
260
- optimisticUpdate: boolean;
261
- }];
262
- } | {
263
- data: undefined;
264
- error: TError;
265
- isError: true;
266
- isPending: false;
267
- isLoading: false;
268
- isLoadingError: true;
269
- isRefetchError: false;
270
- isFetchNextPageError: false;
271
- isFetchPreviousPageError: false;
272
- isSuccess: false;
273
- status: "error";
274
- fetchNextPage: (options?: _tanstack_svelte_query_v5.FetchNextPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
275
- fetchPreviousPage: (options?: _tanstack_svelte_query_v5.FetchPreviousPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
276
- hasNextPage: boolean;
277
- hasPreviousPage: boolean;
278
- isFetchingNextPage: boolean;
279
- isFetchingPreviousPage: boolean;
280
- dataUpdatedAt: number;
281
- errorUpdatedAt: number;
282
- failureCount: number;
283
- failureReason: TError | null;
284
- errorUpdateCount: number;
285
- isFetched: boolean;
286
- isFetchedAfterMount: boolean;
287
- isFetching: boolean;
288
- isInitialLoading: boolean;
289
- isPaused: boolean;
290
- isPlaceholderData: boolean;
291
- isRefetching: boolean;
292
- isStale: boolean;
293
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<InfiniteData<TData, unknown>, TError>>;
294
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
295
- queryKey: [string, string, string, unknown, {
296
- infinite: boolean;
297
- optimisticUpdate: boolean;
298
- }];
299
- } | {
300
- data: undefined;
301
- error: null;
302
- isError: false;
303
- isPending: true;
304
- isLoading: true;
305
- isLoadingError: false;
306
- isRefetchError: false;
307
- isFetchNextPageError: false;
308
- isFetchPreviousPageError: false;
309
- isSuccess: false;
310
- status: "pending";
311
- fetchNextPage: (options?: _tanstack_svelte_query_v5.FetchNextPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
312
- fetchPreviousPage: (options?: _tanstack_svelte_query_v5.FetchPreviousPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
313
- hasNextPage: boolean;
314
- hasPreviousPage: boolean;
315
- isFetchingNextPage: boolean;
316
- isFetchingPreviousPage: boolean;
317
- dataUpdatedAt: number;
318
- errorUpdatedAt: number;
319
- failureCount: number;
320
- failureReason: TError | null;
321
- errorUpdateCount: number;
322
- isFetched: boolean;
323
- isFetchedAfterMount: boolean;
324
- isFetching: boolean;
325
- isInitialLoading: boolean;
326
- isPaused: boolean;
327
- isPlaceholderData: boolean;
328
- isRefetching: boolean;
329
- isStale: boolean;
330
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<InfiniteData<TData, unknown>, TError>>;
331
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
332
- queryKey: [string, string, string, unknown, {
333
- infinite: boolean;
334
- optimisticUpdate: boolean;
335
- }];
336
- } | {
337
- data: undefined;
338
- error: null;
339
- isError: false;
340
- isPending: true;
341
- isLoadingError: false;
342
- isRefetchError: false;
343
- isFetchNextPageError: false;
344
- isFetchPreviousPageError: false;
345
- isSuccess: false;
346
- status: "pending";
347
- fetchNextPage: (options?: _tanstack_svelte_query_v5.FetchNextPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
348
- fetchPreviousPage: (options?: _tanstack_svelte_query_v5.FetchPreviousPageOptions) => Promise<_tanstack_svelte_query_v5.InfiniteQueryObserverResult<InfiniteData<TData, unknown>, TError>>;
349
- hasNextPage: boolean;
350
- hasPreviousPage: boolean;
351
- isFetchingNextPage: boolean;
352
- isFetchingPreviousPage: boolean;
353
- dataUpdatedAt: number;
354
- errorUpdatedAt: number;
355
- failureCount: number;
356
- failureReason: TError | null;
357
- errorUpdateCount: number;
358
- isFetched: boolean;
359
- isFetchedAfterMount: boolean;
360
- isFetching: boolean;
361
- isLoading: boolean;
362
- isInitialLoading: boolean;
363
- isPaused: boolean;
364
- isPlaceholderData: boolean;
365
- isRefetching: boolean;
366
- isStale: boolean;
367
- refetch: (options?: _tanstack_svelte_query_v5.RefetchOptions) => Promise<_tanstack_svelte_query_v5.QueryObserverResult<InfiniteData<TData, unknown>, TError>>;
368
- fetchStatus: _tanstack_svelte_query_v5.FetchStatus;
369
- queryKey: [string, string, string, unknown, {
370
- infinite: boolean;
371
- optimisticUpdate: boolean;
372
- }];
373
- }>;
374
- /**
375
- * Creates a POST mutation with svelte-query.
376
- *
377
- * @param model The name of the model under mutation.
378
- * @param method The HTTP method.
379
- * @param modelMeta The model metadata.
380
- * @param url The request URL.
381
- * @param options The svelte-query options.
382
- * @returns useMutation hooks
383
- */
384
- declare function useModelMutation<TArgs, TError, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, method: 'POST' | 'PUT' | 'DELETE', url: string, modelMeta: ModelMeta, options?: Omit<MutationOptions<Result, TError, TArgs>, 'mutationFn'> & ExtraMutationOptions, fetch?: FetchFn, checkReadBack?: C): _tanstack_svelte_query_v5.CreateMutationResult<Result, TError, TArgs, unknown>;
385
-
386
- export { APIContext as RequestHandlerContext, SvelteQueryContextKey, getHooksContext, setHooksContext, useInfiniteModelQuery, useModelMutation, useModelQuery };