@codewithagents/openapi-react-query 3.5.1 → 3.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.
@@ -1,170 +0,0 @@
1
- {
2
- "openapi": "3.1.0",
3
- "info": { "title": "Task Hooks API", "version": "1.0.0" },
4
- "paths": {
5
- "/api/v1/tasks": {
6
- "get": {
7
- "operationId": "listTasks",
8
- "summary": "List all tasks",
9
- "parameters": [
10
- {
11
- "name": "status",
12
- "in": "query",
13
- "schema": { "type": "string", "enum": ["pending", "in_progress", "done"] }
14
- },
15
- {
16
- "name": "page",
17
- "in": "query",
18
- "schema": { "type": "integer", "minimum": 1 }
19
- }
20
- ],
21
- "responses": {
22
- "200": {
23
- "description": "Paginated list of tasks",
24
- "content": {
25
- "application/json": {
26
- "schema": { "$ref": "#/components/schemas/TaskPage" }
27
- }
28
- }
29
- }
30
- }
31
- },
32
- "post": {
33
- "operationId": "createTask",
34
- "summary": "Create a task",
35
- "requestBody": {
36
- "required": true,
37
- "content": {
38
- "application/json": {
39
- "schema": { "$ref": "#/components/schemas/CreateTaskRequest" }
40
- }
41
- }
42
- },
43
- "responses": {
44
- "201": {
45
- "description": "Task created",
46
- "content": {
47
- "application/json": {
48
- "schema": { "$ref": "#/components/schemas/Task" }
49
- }
50
- }
51
- }
52
- }
53
- }
54
- },
55
- "/api/v1/tasks/{id}": {
56
- "get": {
57
- "operationId": "getTask",
58
- "summary": "Get a task by ID",
59
- "parameters": [
60
- {
61
- "name": "id",
62
- "in": "path",
63
- "required": true,
64
- "schema": { "type": "string", "format": "uuid" }
65
- }
66
- ],
67
- "responses": {
68
- "200": {
69
- "description": "The task",
70
- "content": {
71
- "application/json": {
72
- "schema": { "$ref": "#/components/schemas/Task" }
73
- }
74
- }
75
- }
76
- }
77
- },
78
- "patch": {
79
- "operationId": "updateTask",
80
- "summary": "Update a task",
81
- "parameters": [
82
- {
83
- "name": "id",
84
- "in": "path",
85
- "required": true,
86
- "schema": { "type": "string", "format": "uuid" }
87
- }
88
- ],
89
- "requestBody": {
90
- "required": true,
91
- "content": {
92
- "application/json": {
93
- "schema": { "$ref": "#/components/schemas/UpdateTaskRequest" }
94
- }
95
- }
96
- },
97
- "responses": {
98
- "200": {
99
- "description": "Updated task",
100
- "content": {
101
- "application/json": {
102
- "schema": { "$ref": "#/components/schemas/Task" }
103
- }
104
- }
105
- }
106
- }
107
- },
108
- "delete": {
109
- "operationId": "deleteTask",
110
- "summary": "Delete a task",
111
- "parameters": [
112
- {
113
- "name": "id",
114
- "in": "path",
115
- "required": true,
116
- "schema": { "type": "string", "format": "uuid" }
117
- }
118
- ],
119
- "responses": {
120
- "204": { "description": "Deleted" }
121
- }
122
- }
123
- }
124
- },
125
- "components": {
126
- "schemas": {
127
- "TaskStatus": {
128
- "type": "string",
129
- "enum": ["pending", "in_progress", "done"]
130
- },
131
- "Task": {
132
- "type": "object",
133
- "required": ["id", "title", "status", "createdAt"],
134
- "properties": {
135
- "id": { "type": "string", "format": "uuid" },
136
- "title": { "type": "string" },
137
- "status": { "$ref": "#/components/schemas/TaskStatus" },
138
- "createdAt": { "type": "string", "format": "date-time" }
139
- }
140
- },
141
- "CreateTaskRequest": {
142
- "type": "object",
143
- "required": ["title"],
144
- "properties": {
145
- "title": { "type": "string" },
146
- "description": { "type": ["string", "null"] },
147
- "priority": { "type": "integer" }
148
- }
149
- },
150
- "UpdateTaskRequest": {
151
- "type": "object",
152
- "properties": {
153
- "title": { "type": "string" },
154
- "status": { "$ref": "#/components/schemas/TaskStatus" },
155
- "priority": { "type": "integer" }
156
- }
157
- },
158
- "TaskPage": {
159
- "type": "object",
160
- "required": ["items", "total", "page", "pageSize"],
161
- "properties": {
162
- "items": { "type": "array", "items": { "$ref": "#/components/schemas/Task" } },
163
- "total": { "type": "integer" },
164
- "page": { "type": "integer" },
165
- "pageSize": { "type": "integer" }
166
- }
167
- }
168
- }
169
- }
170
- }
@@ -1,457 +0,0 @@
1
- // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
-
3
- exports[`snapshot: full generated output > autoInvalidate: true — auto-invalidation wiring 1`] = `
4
- "// This file is auto-generated by @codewithagents/openapi-react-query — do not edit
5
-
6
- import { useQuery, type UseQueryOptions, useMutation, type UseMutationOptions, useQueryClient } from '@tanstack/react-query'
7
- import { createTask, deleteTask, getTask, listTasks, updateTask, type ApiError } from './client.js'
8
-
9
- // ── Query key factories ──────────────────────────────────────
10
-
11
- export const taskKeys = {
12
- all: () => ['tasks'] as const,
13
- list: (params?: Parameters<typeof listTasks>[0]) => ['tasks', 'list', params] as const,
14
- detail: (id: string) => ['tasks', id] as const,
15
- }
16
-
17
- // ── Queries ──────────────────────────────────────────────────
18
-
19
- export function useListTasks(
20
- params?: Parameters<typeof listTasks>[0],
21
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
22
- ) {
23
- return useQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
24
- queryKey: taskKeys.list(params),
25
- queryFn: () => listTasks(params),
26
- staleTime: 0,
27
- gcTime: 300000,
28
- ...options,
29
- })
30
- }
31
-
32
- export function useGetTask(
33
- id: string | undefined | null,
34
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
35
- ) {
36
- return useQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
37
- queryKey: taskKeys.detail(id!),
38
- queryFn: () => getTask(id!),
39
- staleTime: 0,
40
- gcTime: 300000,
41
- enabled: id != null && (options?.enabled ?? true),
42
- ...options,
43
- })
44
- }
45
-
46
- // ── Mutations ────────────────────────────────────────────────
47
-
48
- export function useCreateTask(
49
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>, 'mutationFn'>,
50
- ) {
51
- const queryClient = useQueryClient()
52
- return useMutation<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>({
53
- mutationFn: (vars) => createTask(vars),
54
- ...options,
55
- onSuccess: (...args) => {
56
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
57
- options?.onSuccess?.(...args)
58
- },
59
- })
60
- }
61
-
62
- export function useUpdateTask(
63
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>, 'mutationFn'>,
64
- ) {
65
- const queryClient = useQueryClient()
66
- return useMutation<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>({
67
- mutationFn: ({ id, body }) => updateTask(id, body),
68
- ...options,
69
- onSuccess: (...args) => {
70
- const [, variables] = args
71
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
72
- queryClient.invalidateQueries({ queryKey: taskKeys.detail(variables.id) })
73
- options?.onSuccess?.(...args)
74
- },
75
- })
76
- }
77
-
78
- export function useDeleteTask(
79
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>, 'mutationFn'>,
80
- ) {
81
- const queryClient = useQueryClient()
82
- return useMutation<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>({
83
- mutationFn: (id) => deleteTask(id),
84
- ...options,
85
- onSuccess: (...args) => {
86
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
87
- options?.onSuccess?.(...args)
88
- },
89
- })
90
- }
91
- "
92
- `;
93
-
94
- exports[`snapshot: full generated output > autoInvalidate: true, suspense: true, overrides: { tasks: { staleTime: 60_000 } } — all features combined 1`] = `
95
- "// This file is auto-generated by @codewithagents/openapi-react-query — do not edit
96
-
97
- import { useQuery, type UseQueryOptions, useSuspenseQuery, type UseSuspenseQueryOptions, useMutation, type UseMutationOptions, useQueryClient } from '@tanstack/react-query'
98
- import { createTask, deleteTask, getTask, listTasks, updateTask, type ApiError } from './client.js'
99
-
100
- // ── Query key factories ──────────────────────────────────────
101
-
102
- export const taskKeys = {
103
- all: () => ['tasks'] as const,
104
- list: (params?: Parameters<typeof listTasks>[0]) => ['tasks', 'list', params] as const,
105
- detail: (id: string) => ['tasks', id] as const,
106
- }
107
-
108
- // ── Queries ──────────────────────────────────────────────────
109
-
110
- export function useListTasks(
111
- params?: Parameters<typeof listTasks>[0],
112
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
113
- ) {
114
- return useQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
115
- queryKey: taskKeys.list(params),
116
- queryFn: () => listTasks(params),
117
- staleTime: 60000,
118
- gcTime: 300000,
119
- ...options,
120
- })
121
- }
122
-
123
- export function useSuspenseListTasks(
124
- params?: Parameters<typeof listTasks>[0],
125
- options?: Omit<UseSuspenseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
126
- ) {
127
- return useSuspenseQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
128
- queryKey: taskKeys.list(params),
129
- queryFn: () => listTasks(params),
130
- staleTime: 60000,
131
- gcTime: 300000,
132
- ...options,
133
- })
134
- }
135
-
136
- export function useGetTask(
137
- id: string | undefined | null,
138
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
139
- ) {
140
- return useQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
141
- queryKey: taskKeys.detail(id!),
142
- queryFn: () => getTask(id!),
143
- staleTime: 60000,
144
- gcTime: 300000,
145
- enabled: id != null && (options?.enabled ?? true),
146
- ...options,
147
- })
148
- }
149
-
150
- export function useSuspenseGetTask(
151
- id: string,
152
- options?: Omit<UseSuspenseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
153
- ) {
154
- return useSuspenseQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
155
- queryKey: taskKeys.detail(id),
156
- queryFn: () => getTask(id),
157
- staleTime: 60000,
158
- gcTime: 300000,
159
- ...options,
160
- })
161
- }
162
-
163
- // ── Mutations ────────────────────────────────────────────────
164
-
165
- export function useCreateTask(
166
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>, 'mutationFn'>,
167
- ) {
168
- const queryClient = useQueryClient()
169
- return useMutation<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>({
170
- mutationFn: (vars) => createTask(vars),
171
- ...options,
172
- onSuccess: (...args) => {
173
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
174
- options?.onSuccess?.(...args)
175
- },
176
- })
177
- }
178
-
179
- export function useUpdateTask(
180
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>, 'mutationFn'>,
181
- ) {
182
- const queryClient = useQueryClient()
183
- return useMutation<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>({
184
- mutationFn: ({ id, body }) => updateTask(id, body),
185
- ...options,
186
- onSuccess: (...args) => {
187
- const [, variables] = args
188
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
189
- queryClient.invalidateQueries({ queryKey: taskKeys.detail(variables.id) })
190
- options?.onSuccess?.(...args)
191
- },
192
- })
193
- }
194
-
195
- export function useDeleteTask(
196
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>, 'mutationFn'>,
197
- ) {
198
- const queryClient = useQueryClient()
199
- return useMutation<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>({
200
- mutationFn: (id) => deleteTask(id),
201
- ...options,
202
- onSuccess: (...args) => {
203
- queryClient.invalidateQueries({ queryKey: taskKeys.all() })
204
- options?.onSuccess?.(...args)
205
- },
206
- })
207
- }
208
- "
209
- `;
210
-
211
- exports[`snapshot: full generated output > default options (staleTime: 0, gcTime: 300_000) — baseline 1`] = `
212
- "// This file is auto-generated by @codewithagents/openapi-react-query — do not edit
213
-
214
- import { useQuery, type UseQueryOptions, useMutation, type UseMutationOptions } from '@tanstack/react-query'
215
- import { createTask, deleteTask, getTask, listTasks, updateTask, type ApiError } from './client.js'
216
-
217
- // ── Query key factories ──────────────────────────────────────
218
-
219
- export const taskKeys = {
220
- all: () => ['tasks'] as const,
221
- list: (params?: Parameters<typeof listTasks>[0]) => ['tasks', 'list', params] as const,
222
- detail: (id: string) => ['tasks', id] as const,
223
- }
224
-
225
- // ── Queries ──────────────────────────────────────────────────
226
-
227
- export function useListTasks(
228
- params?: Parameters<typeof listTasks>[0],
229
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
230
- ) {
231
- return useQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
232
- queryKey: taskKeys.list(params),
233
- queryFn: () => listTasks(params),
234
- staleTime: 0,
235
- gcTime: 300000,
236
- ...options,
237
- })
238
- }
239
-
240
- export function useGetTask(
241
- id: string | undefined | null,
242
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
243
- ) {
244
- return useQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
245
- queryKey: taskKeys.detail(id!),
246
- queryFn: () => getTask(id!),
247
- staleTime: 0,
248
- gcTime: 300000,
249
- enabled: id != null && (options?.enabled ?? true),
250
- ...options,
251
- })
252
- }
253
-
254
- // ── Mutations ────────────────────────────────────────────────
255
-
256
- export function useCreateTask(
257
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>, 'mutationFn'>,
258
- ) {
259
- return useMutation<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>({
260
- mutationFn: (vars) => createTask(vars),
261
- ...options,
262
- })
263
- }
264
-
265
- export function useUpdateTask(
266
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>, 'mutationFn'>,
267
- ) {
268
- return useMutation<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>({
269
- mutationFn: ({ id, body }) => updateTask(id, body),
270
- ...options,
271
- })
272
- }
273
-
274
- export function useDeleteTask(
275
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>, 'mutationFn'>,
276
- ) {
277
- return useMutation<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>({
278
- mutationFn: (id) => deleteTask(id),
279
- ...options,
280
- })
281
- }
282
- "
283
- `;
284
-
285
- exports[`snapshot: full generated output > overrides: { tasks: { staleTime: 60_000, gcTime: 600_000 } } — per-resource timing 1`] = `
286
- "// This file is auto-generated by @codewithagents/openapi-react-query — do not edit
287
-
288
- import { useQuery, type UseQueryOptions, useMutation, type UseMutationOptions } from '@tanstack/react-query'
289
- import { createTask, deleteTask, getTask, listTasks, updateTask, type ApiError } from './client.js'
290
-
291
- // ── Query key factories ──────────────────────────────────────
292
-
293
- export const taskKeys = {
294
- all: () => ['tasks'] as const,
295
- list: (params?: Parameters<typeof listTasks>[0]) => ['tasks', 'list', params] as const,
296
- detail: (id: string) => ['tasks', id] as const,
297
- }
298
-
299
- // ── Queries ──────────────────────────────────────────────────
300
-
301
- export function useListTasks(
302
- params?: Parameters<typeof listTasks>[0],
303
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
304
- ) {
305
- return useQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
306
- queryKey: taskKeys.list(params),
307
- queryFn: () => listTasks(params),
308
- staleTime: 60000,
309
- gcTime: 600000,
310
- ...options,
311
- })
312
- }
313
-
314
- export function useGetTask(
315
- id: string | undefined | null,
316
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
317
- ) {
318
- return useQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
319
- queryKey: taskKeys.detail(id!),
320
- queryFn: () => getTask(id!),
321
- staleTime: 60000,
322
- gcTime: 600000,
323
- enabled: id != null && (options?.enabled ?? true),
324
- ...options,
325
- })
326
- }
327
-
328
- // ── Mutations ────────────────────────────────────────────────
329
-
330
- export function useCreateTask(
331
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>, 'mutationFn'>,
332
- ) {
333
- return useMutation<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>({
334
- mutationFn: (vars) => createTask(vars),
335
- ...options,
336
- })
337
- }
338
-
339
- export function useUpdateTask(
340
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>, 'mutationFn'>,
341
- ) {
342
- return useMutation<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>({
343
- mutationFn: ({ id, body }) => updateTask(id, body),
344
- ...options,
345
- })
346
- }
347
-
348
- export function useDeleteTask(
349
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>, 'mutationFn'>,
350
- ) {
351
- return useMutation<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>({
352
- mutationFn: (id) => deleteTask(id),
353
- ...options,
354
- })
355
- }
356
- "
357
- `;
358
-
359
- exports[`snapshot: full generated output > suspense: true — suspense hook variants 1`] = `
360
- "// This file is auto-generated by @codewithagents/openapi-react-query — do not edit
361
-
362
- import { useQuery, type UseQueryOptions, useSuspenseQuery, type UseSuspenseQueryOptions, useMutation, type UseMutationOptions } from '@tanstack/react-query'
363
- import { createTask, deleteTask, getTask, listTasks, updateTask, type ApiError } from './client.js'
364
-
365
- // ── Query key factories ──────────────────────────────────────
366
-
367
- export const taskKeys = {
368
- all: () => ['tasks'] as const,
369
- list: (params?: Parameters<typeof listTasks>[0]) => ['tasks', 'list', params] as const,
370
- detail: (id: string) => ['tasks', id] as const,
371
- }
372
-
373
- // ── Queries ──────────────────────────────────────────────────
374
-
375
- export function useListTasks(
376
- params?: Parameters<typeof listTasks>[0],
377
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
378
- ) {
379
- return useQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
380
- queryKey: taskKeys.list(params),
381
- queryFn: () => listTasks(params),
382
- staleTime: 0,
383
- gcTime: 300000,
384
- ...options,
385
- })
386
- }
387
-
388
- export function useSuspenseListTasks(
389
- params?: Parameters<typeof listTasks>[0],
390
- options?: Omit<UseSuspenseQueryOptions<Awaited<ReturnType<typeof listTasks>>, ApiError>, 'queryKey' | 'queryFn'>,
391
- ) {
392
- return useSuspenseQuery<Awaited<ReturnType<typeof listTasks>>, ApiError>({
393
- queryKey: taskKeys.list(params),
394
- queryFn: () => listTasks(params),
395
- staleTime: 0,
396
- gcTime: 300000,
397
- ...options,
398
- })
399
- }
400
-
401
- export function useGetTask(
402
- id: string | undefined | null,
403
- options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
404
- ) {
405
- return useQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
406
- queryKey: taskKeys.detail(id!),
407
- queryFn: () => getTask(id!),
408
- staleTime: 0,
409
- gcTime: 300000,
410
- enabled: id != null && (options?.enabled ?? true),
411
- ...options,
412
- })
413
- }
414
-
415
- export function useSuspenseGetTask(
416
- id: string,
417
- options?: Omit<UseSuspenseQueryOptions<Awaited<ReturnType<typeof getTask>>, ApiError>, 'queryKey' | 'queryFn'>,
418
- ) {
419
- return useSuspenseQuery<Awaited<ReturnType<typeof getTask>>, ApiError>({
420
- queryKey: taskKeys.detail(id),
421
- queryFn: () => getTask(id),
422
- staleTime: 0,
423
- gcTime: 300000,
424
- ...options,
425
- })
426
- }
427
-
428
- // ── Mutations ────────────────────────────────────────────────
429
-
430
- export function useCreateTask(
431
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>, 'mutationFn'>,
432
- ) {
433
- return useMutation<Awaited<ReturnType<typeof createTask>>, ApiError, Parameters<typeof createTask>[0]>({
434
- mutationFn: (vars) => createTask(vars),
435
- ...options,
436
- })
437
- }
438
-
439
- export function useUpdateTask(
440
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>, 'mutationFn'>,
441
- ) {
442
- return useMutation<Awaited<ReturnType<typeof updateTask>>, ApiError, { id: string; body: Parameters<typeof updateTask>[1] }>({
443
- mutationFn: ({ id, body }) => updateTask(id, body),
444
- ...options,
445
- })
446
- }
447
-
448
- export function useDeleteTask(
449
- options?: Omit<UseMutationOptions<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>, 'mutationFn'>,
450
- ) {
451
- return useMutation<Awaited<ReturnType<typeof deleteTask>>, ApiError, string>({
452
- mutationFn: (id) => deleteTask(id),
453
- ...options,
454
- })
455
- }
456
- "
457
- `;
@@ -1,25 +0,0 @@
1
- // fallow-ignore-file code-duplication
2
- import { describe, it } from 'vitest'
3
- import { readdirSync, readFileSync } from 'node:fs'
4
- import { resolve } from 'node:path'
5
- import { parseSpec } from '@codewithagents/openapi-gen'
6
- import { generateHooks } from '../plugins/hooks.js'
7
-
8
- const configsDir = resolve(import.meta.dirname, '../../../../examples/configs')
9
-
10
- const cases = readdirSync(configsDir)
11
- .filter((f) => f.endsWith('.json') && !f.startsWith('_'))
12
- .map((f) => {
13
- const config = JSON.parse(readFileSync(resolve(configsDir, f), 'utf-8')) as {
14
- input_openapi: string
15
- }
16
- const specPath = resolve(configsDir, config.input_openapi)
17
- return { name: f.replace('.json', ''), specPath }
18
- })
19
-
20
- describe.each(cases)('compat — $name', ({ specPath }) => {
21
- it('generates without throwing', async () => {
22
- const spec = await parseSpec(specPath)
23
- generateHooks(spec, { staleTime: 0, gcTime: 0 })
24
- })
25
- })