@instockng/api-client 1.0.9 → 1.0.11

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 (117) hide show
  1. package/dist/apps/backend/src/lib/brand-response.d.ts +2 -0
  2. package/dist/apps/backend/src/lib/cart-helpers.d.ts +4 -0
  3. package/dist/apps/backend/src/lib/cart-response.d.ts +2 -0
  4. package/dist/apps/backend/src/lib/delivery-zone-response.d.ts +2 -0
  5. package/dist/apps/backend/src/lib/discount-code-response.d.ts +2 -0
  6. package/dist/apps/backend/src/lib/order-recovery.d.ts +6 -0
  7. package/dist/apps/backend/src/lib/order-response.d.ts +2 -0
  8. package/dist/apps/backend/src/lib/product-response.d.ts +2 -0
  9. package/dist/apps/backend/src/routes/admin/abandoned-carts.d.ts +4 -8
  10. package/dist/apps/backend/src/routes/admin/brands.d.ts +8 -0
  11. package/dist/apps/backend/src/routes/admin/customers.d.ts +2 -4
  12. package/dist/apps/backend/src/routes/admin/delivery-zones.d.ts +8 -0
  13. package/dist/apps/backend/src/routes/admin/discount-codes.d.ts +10 -0
  14. package/dist/apps/backend/src/routes/admin/inventory.d.ts +0 -4
  15. package/dist/apps/backend/src/routes/admin/orders.d.ts +12 -24
  16. package/dist/apps/backend/src/routes/admin/products.d.ts +8 -16
  17. package/dist/apps/backend/src/routes/admin/stats.d.ts +2 -4
  18. package/dist/apps/backend/src/routes/admin/warehouses.d.ts +2 -4
  19. package/dist/apps/backend/src/routes/public/brands.d.ts +1 -0
  20. package/dist/apps/backend/src/routes/public/brands.js +1 -0
  21. package/dist/apps/backend/src/routes/public/carts.d.ts +18 -36
  22. package/dist/apps/backend/src/routes/public/orders.d.ts +4 -8
  23. package/dist/apps/backend/src/routes/public/products.d.ts +4 -8
  24. package/dist/apps/backend/src/validators/brand.d.ts +4 -0
  25. package/dist/apps/backend/src/validators/brand.js +4 -0
  26. package/dist/packages/api-client/src/fetchers/brands.d.ts +1 -0
  27. package/dist/packages/api-client/src/fetchers/carts.d.ts +18 -36
  28. package/dist/packages/api-client/src/fetchers/orders.d.ts +4 -8
  29. package/dist/packages/api-client/src/fetchers/products.d.ts +4 -8
  30. package/dist/packages/api-client/src/hooks/admin/abandoned-carts.d.ts +4 -8
  31. package/dist/packages/api-client/src/hooks/admin/brands.d.ts +8 -0
  32. package/dist/packages/api-client/src/hooks/admin/customers.d.ts +2 -4
  33. package/dist/packages/api-client/src/hooks/admin/delivery-zones.d.ts +8 -0
  34. package/dist/packages/api-client/src/hooks/admin/discount-codes.d.ts +10 -0
  35. package/dist/packages/api-client/src/hooks/admin/inventory.d.ts +0 -4
  36. package/dist/packages/api-client/src/hooks/admin/orders.d.ts +12 -24
  37. package/dist/packages/api-client/src/hooks/admin/products.d.ts +4 -8
  38. package/dist/packages/api-client/src/hooks/admin/stats.d.ts +2 -4
  39. package/dist/packages/api-client/src/hooks/admin/warehouses.d.ts +2 -4
  40. package/dist/packages/api-client/src/hooks/public/brands.d.ts +1 -0
  41. package/dist/packages/api-client/src/hooks/public/carts.d.ts +18 -36
  42. package/dist/packages/api-client/src/hooks/public/orders.d.ts +4 -8
  43. package/dist/packages/api-client/src/hooks/public/products.d.ts +4 -8
  44. package/dist/packages/api-client/src/rpc-client.d.ts +83 -116
  45. package/package.json +1 -1
  46. package/dist/apps/backend/src/generated/zod/index.d.ts +0 -1114
  47. package/dist/apps/backend/src/generated/zod/index.js +0 -670
  48. package/dist/backend-types.d.ts +0 -10
  49. package/dist/backend-types.js +0 -10
  50. package/dist/client.d.ts +0 -20
  51. package/dist/client.js +0 -40
  52. package/dist/enum-types.d.ts +0 -8
  53. package/dist/enum-types.js +0 -5
  54. package/dist/fetchers/brands.d.ts +0 -25
  55. package/dist/fetchers/brands.js +0 -26
  56. package/dist/fetchers/carts.d.ts +0 -2335
  57. package/dist/fetchers/carts.js +0 -174
  58. package/dist/fetchers/delivery-zones.d.ts +0 -28
  59. package/dist/fetchers/delivery-zones.js +0 -26
  60. package/dist/fetchers/index.d.ts +0 -22
  61. package/dist/fetchers/index.js +0 -22
  62. package/dist/fetchers/orders.d.ts +0 -540
  63. package/dist/fetchers/orders.js +0 -44
  64. package/dist/fetchers/products.d.ts +0 -386
  65. package/dist/fetchers/products.js +0 -42
  66. package/dist/hooks/admin/abandoned-carts.d.ts +0 -535
  67. package/dist/hooks/admin/abandoned-carts.js +0 -83
  68. package/dist/hooks/admin/brands.d.ts +0 -79
  69. package/dist/hooks/admin/brands.js +0 -108
  70. package/dist/hooks/admin/customers.d.ts +0 -278
  71. package/dist/hooks/admin/customers.js +0 -26
  72. package/dist/hooks/admin/delivery-zones.d.ts +0 -270
  73. package/dist/hooks/admin/delivery-zones.js +0 -176
  74. package/dist/hooks/admin/discount-codes.d.ts +0 -299
  75. package/dist/hooks/admin/discount-codes.js +0 -165
  76. package/dist/hooks/admin/index.d.ts +0 -16
  77. package/dist/hooks/admin/index.js +0 -16
  78. package/dist/hooks/admin/inventory.d.ts +0 -224
  79. package/dist/hooks/admin/inventory.js +0 -107
  80. package/dist/hooks/admin/orders.d.ts +0 -1662
  81. package/dist/hooks/admin/orders.js +0 -178
  82. package/dist/hooks/admin/products.d.ts +0 -374
  83. package/dist/hooks/admin/products.js +0 -89
  84. package/dist/hooks/admin/stats.d.ts +0 -277
  85. package/dist/hooks/admin/stats.js +0 -25
  86. package/dist/hooks/admin/variants.d.ts +0 -115
  87. package/dist/hooks/admin/variants.js +0 -127
  88. package/dist/hooks/admin/warehouses.d.ts +0 -277
  89. package/dist/hooks/admin/warehouses.js +0 -108
  90. package/dist/hooks/public/brands.d.ts +0 -33
  91. package/dist/hooks/public/brands.js +0 -30
  92. package/dist/hooks/public/carts.d.ts +0 -2405
  93. package/dist/hooks/public/carts.js +0 -213
  94. package/dist/hooks/public/delivery-zones.d.ts +0 -34
  95. package/dist/hooks/public/delivery-zones.js +0 -28
  96. package/dist/hooks/public/index.d.ts +0 -10
  97. package/dist/hooks/public/index.js +0 -10
  98. package/dist/hooks/public/orders.d.ts +0 -559
  99. package/dist/hooks/public/orders.js +0 -50
  100. package/dist/hooks/public/products.d.ts +0 -398
  101. package/dist/hooks/public/products.js +0 -47
  102. package/dist/hooks/use-query-unwrapped.d.ts +0 -20
  103. package/dist/hooks/use-query-unwrapped.js +0 -22
  104. package/dist/hooks/useApiConfig.d.ts +0 -12
  105. package/dist/hooks/useApiConfig.js +0 -14
  106. package/dist/index.d.ts +0 -20
  107. package/dist/index.js +0 -25
  108. package/dist/provider.d.ts +0 -36
  109. package/dist/provider.js +0 -54
  110. package/dist/rpc-client.d.ts +0 -9607
  111. package/dist/rpc-client.js +0 -78
  112. package/dist/rpc-types.d.ts +0 -76
  113. package/dist/rpc-types.js +0 -7
  114. package/dist/types.d.ts +0 -34
  115. package/dist/types.js +0 -16
  116. package/dist/utils/query-keys.d.ts +0 -106
  117. package/dist/utils/query-keys.js +0 -108
@@ -1,559 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks for order operations
3
- *
4
- * These hooks use Hono RPC client with types directly from the backend,
5
- * providing end-to-end type safety without code generation.
6
- */
7
- import { UseQueryOptions, UseMutationOptions } from '@tanstack/react-query';
8
- import { fetchOrder, confirmOrder } from '../../fetchers/orders';
9
- /**
10
- * Hook to get order by ID and token using RPC
11
- *
12
- * @param orderId - Order UUID
13
- * @param token - User action token
14
- * @param options - React Query options
15
- *
16
- * @example
17
- * ```tsx
18
- * const { data: order, isLoading } = useGetOrder('order-123', 'token-456');
19
- * console.log(order?.order.status); // Fully typed!
20
- * ```
21
- */
22
- export declare function useGetOrder(orderId: string, token: string, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchOrder>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
23
- canConfirm: boolean;
24
- confirmationMessage: string;
25
- subtotal: number;
26
- deliveryCharge: number;
27
- totalPrice: number;
28
- discountAmount: number;
29
- createdAt: string;
30
- updatedAt: string;
31
- deletedAt: string;
32
- prospectSince: string;
33
- lastRecoveryAttemptAt: string;
34
- brand: {
35
- createdAt: string;
36
- updatedAt: string;
37
- deletedAt: string;
38
- name: string;
39
- id: string;
40
- slug: string;
41
- logoUrl: string | null;
42
- siteUrl: string;
43
- domain: string;
44
- metaPixelId: string | null;
45
- };
46
- deliveryZone: {
47
- deliveryCost: number;
48
- freeShippingThreshold: number;
49
- createdAt: string;
50
- updatedAt: string;
51
- deletedAt: string;
52
- state: {
53
- createdAt: string;
54
- updatedAt: string;
55
- deletedAt: string;
56
- name: string;
57
- id: string;
58
- isActive: boolean;
59
- };
60
- name: string;
61
- id: string;
62
- brandId: string | null;
63
- stateId: string;
64
- allowCOD: boolean;
65
- allowOnline: boolean;
66
- waybillOnly: boolean;
67
- estimatedDays: number | null;
68
- isActive: boolean;
69
- };
70
- items: {
71
- priceAtPurchase: number;
72
- variant: {
73
- price: number;
74
- createdAt: string;
75
- updatedAt: string;
76
- deletedAt: string;
77
- product: {
78
- createdAt: string;
79
- updatedAt: string;
80
- deletedAt: string;
81
- name: string;
82
- id: string;
83
- slug: string;
84
- brandId: string;
85
- isActive: boolean;
86
- description: string | null;
87
- thumbnailUrl: string | null;
88
- quantityDiscounts: string | number | boolean | {
89
- [x: string]: string | number | boolean | /*elided*/ any | {
90
- [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
91
- length: number;
92
- toString: never;
93
- toLocaleString: never;
94
- pop: never;
95
- push: never;
96
- concat: never;
97
- join: never;
98
- reverse: never;
99
- shift: never;
100
- slice: never;
101
- sort: never;
102
- splice: never;
103
- unshift: never;
104
- indexOf: never;
105
- lastIndexOf: never;
106
- every: never;
107
- some: never;
108
- forEach: never;
109
- map: never;
110
- filter: never;
111
- reduce: never;
112
- reduceRight: never;
113
- find: never;
114
- findIndex: never;
115
- fill: never;
116
- copyWithin: never;
117
- entries: never;
118
- keys: never;
119
- values: never;
120
- includes: never;
121
- flatMap: never;
122
- flat: never;
123
- [Symbol.iterator]: never;
124
- readonly [Symbol.unscopables]: {
125
- [x: number]: boolean;
126
- length?: boolean;
127
- toString?: boolean;
128
- toLocaleString?: boolean;
129
- pop?: boolean;
130
- push?: boolean;
131
- concat?: boolean;
132
- join?: boolean;
133
- reverse?: boolean;
134
- shift?: boolean;
135
- slice?: boolean;
136
- sort?: boolean;
137
- splice?: boolean;
138
- unshift?: boolean;
139
- indexOf?: boolean;
140
- lastIndexOf?: boolean;
141
- every?: boolean;
142
- some?: boolean;
143
- forEach?: boolean;
144
- map?: boolean;
145
- filter?: boolean;
146
- reduce?: boolean;
147
- reduceRight?: boolean;
148
- find?: boolean;
149
- findIndex?: boolean;
150
- fill?: boolean;
151
- copyWithin?: boolean;
152
- entries?: boolean;
153
- keys?: boolean;
154
- values?: boolean;
155
- includes?: boolean;
156
- flatMap?: boolean;
157
- flat?: boolean;
158
- };
159
- };
160
- } | {
161
- [x: number]: string | number | boolean | {
162
- [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
163
- } | /*elided*/ any;
164
- length: number;
165
- toString: never;
166
- toLocaleString: never;
167
- pop: never;
168
- push: never;
169
- concat: never;
170
- join: never;
171
- reverse: never;
172
- shift: never;
173
- slice: never;
174
- sort: never;
175
- splice: never;
176
- unshift: never;
177
- indexOf: never;
178
- lastIndexOf: never;
179
- every: never;
180
- some: never;
181
- forEach: never;
182
- map: never;
183
- filter: never;
184
- reduce: never;
185
- reduceRight: never;
186
- find: never;
187
- findIndex: never;
188
- fill: never;
189
- copyWithin: never;
190
- entries: never;
191
- keys: never;
192
- values: never;
193
- includes: never;
194
- flatMap: never;
195
- flat: never;
196
- [Symbol.iterator]: never;
197
- readonly [Symbol.unscopables]: {
198
- [x: number]: boolean;
199
- length?: boolean;
200
- toString?: boolean;
201
- toLocaleString?: boolean;
202
- pop?: boolean;
203
- push?: boolean;
204
- concat?: boolean;
205
- join?: boolean;
206
- reverse?: boolean;
207
- shift?: boolean;
208
- slice?: boolean;
209
- sort?: boolean;
210
- splice?: boolean;
211
- unshift?: boolean;
212
- indexOf?: boolean;
213
- lastIndexOf?: boolean;
214
- every?: boolean;
215
- some?: boolean;
216
- forEach?: boolean;
217
- map?: boolean;
218
- filter?: boolean;
219
- reduce?: boolean;
220
- reduceRight?: boolean;
221
- find?: boolean;
222
- findIndex?: boolean;
223
- fill?: boolean;
224
- copyWithin?: boolean;
225
- entries?: boolean;
226
- keys?: boolean;
227
- values?: boolean;
228
- includes?: boolean;
229
- flatMap?: boolean;
230
- flat?: boolean;
231
- };
232
- };
233
- };
234
- name: string | null;
235
- id: string;
236
- isActive: boolean;
237
- thumbnailUrl: string | null;
238
- productId: string;
239
- sku: string;
240
- trackInventory: boolean;
241
- lowStockThreshold: number | null;
242
- };
243
- warehouse: {
244
- createdAt: string;
245
- updatedAt: string;
246
- deletedAt: string;
247
- name: string;
248
- id: string;
249
- isActive: boolean;
250
- address: string | null;
251
- city: string | null;
252
- state: string | null;
253
- };
254
- id: string;
255
- orderId: string;
256
- variantId: string;
257
- warehouseId: string | null;
258
- quantity: number;
259
- }[];
260
- id: string;
261
- email: string | null;
262
- brandId: string;
263
- deliveryZoneId: string;
264
- recoveryAttempts: number;
265
- recoveryDiscountCodeId: string | null;
266
- wasRecovered: boolean;
267
- estimatedDays: number | null;
268
- orderNumber: number;
269
- firstName: string;
270
- lastName: string;
271
- phone: string;
272
- address: string;
273
- city: string;
274
- discountCodeId: string | null;
275
- paymentMethod: import("@prisma/client").$Enums.PaymentMethod;
276
- paystackReference: string | null;
277
- status: import("@prisma/client").$Enums.OrderStatus;
278
- cancellationReason: string | null;
279
- prospectReason: import("@prisma/client").$Enums.ProspectReason | null;
280
- userActionToken: string;
281
- }, Error>;
282
- /**
283
- * Hook to confirm a prospect order using RPC
284
- *
285
- * @param options - React Query mutation options
286
- *
287
- * @example
288
- * ```tsx
289
- * const confirmOrder = useConfirmOrder();
290
- * confirmOrder.mutate({
291
- * orderId: 'order-123',
292
- * token: 'token-456'
293
- * });
294
- * ```
295
- */
296
- export declare function useConfirmOrder(options?: UseMutationOptions<Awaited<ReturnType<typeof confirmOrder>>, Error, {
297
- orderId: string;
298
- token: string;
299
- }>): import("@tanstack/react-query").UseMutationResult<{
300
- subtotal: number;
301
- deliveryCharge: number;
302
- totalPrice: number;
303
- discountAmount: number;
304
- createdAt: string;
305
- updatedAt: string;
306
- deletedAt: string;
307
- prospectSince: string;
308
- lastRecoveryAttemptAt: string;
309
- brand: {
310
- createdAt: string;
311
- updatedAt: string;
312
- deletedAt: string;
313
- name: string;
314
- id: string;
315
- slug: string;
316
- logoUrl: string | null;
317
- siteUrl: string;
318
- domain: string;
319
- metaPixelId: string | null;
320
- };
321
- deliveryZone: {
322
- deliveryCost: number;
323
- freeShippingThreshold: number;
324
- createdAt: string;
325
- updatedAt: string;
326
- deletedAt: string;
327
- state: {
328
- createdAt: string;
329
- updatedAt: string;
330
- deletedAt: string;
331
- name: string;
332
- id: string;
333
- isActive: boolean;
334
- };
335
- name: string;
336
- id: string;
337
- brandId: string | null;
338
- stateId: string;
339
- allowCOD: boolean;
340
- allowOnline: boolean;
341
- waybillOnly: boolean;
342
- estimatedDays: number | null;
343
- isActive: boolean;
344
- };
345
- items: {
346
- priceAtPurchase: number;
347
- variant: {
348
- price: number;
349
- createdAt: string;
350
- updatedAt: string;
351
- deletedAt: string;
352
- product: {
353
- createdAt: string;
354
- updatedAt: string;
355
- deletedAt: string;
356
- name: string;
357
- id: string;
358
- slug: string;
359
- brandId: string;
360
- isActive: boolean;
361
- description: string | null;
362
- thumbnailUrl: string | null;
363
- quantityDiscounts: string | number | boolean | {
364
- [x: string]: string | number | boolean | /*elided*/ any | {
365
- [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
366
- length: number;
367
- toString: never;
368
- toLocaleString: never;
369
- pop: never;
370
- push: never;
371
- concat: never;
372
- join: never;
373
- reverse: never;
374
- shift: never;
375
- slice: never;
376
- sort: never;
377
- splice: never;
378
- unshift: never;
379
- indexOf: never;
380
- lastIndexOf: never;
381
- every: never;
382
- some: never;
383
- forEach: never;
384
- map: never;
385
- filter: never;
386
- reduce: never;
387
- reduceRight: never;
388
- find: never;
389
- findIndex: never;
390
- fill: never;
391
- copyWithin: never;
392
- entries: never;
393
- keys: never;
394
- values: never;
395
- includes: never;
396
- flatMap: never;
397
- flat: never;
398
- [Symbol.iterator]: never;
399
- readonly [Symbol.unscopables]: {
400
- [x: number]: boolean;
401
- length?: boolean;
402
- toString?: boolean;
403
- toLocaleString?: boolean;
404
- pop?: boolean;
405
- push?: boolean;
406
- concat?: boolean;
407
- join?: boolean;
408
- reverse?: boolean;
409
- shift?: boolean;
410
- slice?: boolean;
411
- sort?: boolean;
412
- splice?: boolean;
413
- unshift?: boolean;
414
- indexOf?: boolean;
415
- lastIndexOf?: boolean;
416
- every?: boolean;
417
- some?: boolean;
418
- forEach?: boolean;
419
- map?: boolean;
420
- filter?: boolean;
421
- reduce?: boolean;
422
- reduceRight?: boolean;
423
- find?: boolean;
424
- findIndex?: boolean;
425
- fill?: boolean;
426
- copyWithin?: boolean;
427
- entries?: boolean;
428
- keys?: boolean;
429
- values?: boolean;
430
- includes?: boolean;
431
- flatMap?: boolean;
432
- flat?: boolean;
433
- };
434
- };
435
- } | {
436
- [x: number]: string | number | boolean | {
437
- [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
438
- } | /*elided*/ any;
439
- length: number;
440
- toString: never;
441
- toLocaleString: never;
442
- pop: never;
443
- push: never;
444
- concat: never;
445
- join: never;
446
- reverse: never;
447
- shift: never;
448
- slice: never;
449
- sort: never;
450
- splice: never;
451
- unshift: never;
452
- indexOf: never;
453
- lastIndexOf: never;
454
- every: never;
455
- some: never;
456
- forEach: never;
457
- map: never;
458
- filter: never;
459
- reduce: never;
460
- reduceRight: never;
461
- find: never;
462
- findIndex: never;
463
- fill: never;
464
- copyWithin: never;
465
- entries: never;
466
- keys: never;
467
- values: never;
468
- includes: never;
469
- flatMap: never;
470
- flat: never;
471
- [Symbol.iterator]: never;
472
- readonly [Symbol.unscopables]: {
473
- [x: number]: boolean;
474
- length?: boolean;
475
- toString?: boolean;
476
- toLocaleString?: boolean;
477
- pop?: boolean;
478
- push?: boolean;
479
- concat?: boolean;
480
- join?: boolean;
481
- reverse?: boolean;
482
- shift?: boolean;
483
- slice?: boolean;
484
- sort?: boolean;
485
- splice?: boolean;
486
- unshift?: boolean;
487
- indexOf?: boolean;
488
- lastIndexOf?: boolean;
489
- every?: boolean;
490
- some?: boolean;
491
- forEach?: boolean;
492
- map?: boolean;
493
- filter?: boolean;
494
- reduce?: boolean;
495
- reduceRight?: boolean;
496
- find?: boolean;
497
- findIndex?: boolean;
498
- fill?: boolean;
499
- copyWithin?: boolean;
500
- entries?: boolean;
501
- keys?: boolean;
502
- values?: boolean;
503
- includes?: boolean;
504
- flatMap?: boolean;
505
- flat?: boolean;
506
- };
507
- };
508
- };
509
- name: string | null;
510
- id: string;
511
- isActive: boolean;
512
- thumbnailUrl: string | null;
513
- productId: string;
514
- sku: string;
515
- trackInventory: boolean;
516
- lowStockThreshold: number | null;
517
- };
518
- warehouse: {
519
- createdAt: string;
520
- updatedAt: string;
521
- deletedAt: string;
522
- name: string;
523
- id: string;
524
- isActive: boolean;
525
- address: string | null;
526
- city: string | null;
527
- state: string | null;
528
- };
529
- id: string;
530
- orderId: string;
531
- variantId: string;
532
- warehouseId: string | null;
533
- quantity: number;
534
- }[];
535
- id: string;
536
- email: string | null;
537
- brandId: string;
538
- deliveryZoneId: string;
539
- recoveryAttempts: number;
540
- recoveryDiscountCodeId: string | null;
541
- wasRecovered: boolean;
542
- estimatedDays: number | null;
543
- orderNumber: number;
544
- firstName: string;
545
- lastName: string;
546
- phone: string;
547
- address: string;
548
- city: string;
549
- discountCodeId: string | null;
550
- paymentMethod: import("@prisma/client").$Enums.PaymentMethod;
551
- paystackReference: string | null;
552
- status: import("@prisma/client").$Enums.OrderStatus;
553
- cancellationReason: string | null;
554
- prospectReason: import("@prisma/client").$Enums.ProspectReason | null;
555
- userActionToken: string;
556
- }, Error, {
557
- orderId: string;
558
- token: string;
559
- }, unknown>;
@@ -1,50 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks for order operations
3
- *
4
- * These hooks use Hono RPC client with types directly from the backend,
5
- * providing end-to-end type safety without code generation.
6
- */
7
- import { useMutation } from '@tanstack/react-query';
8
- import { useQueryUnwrapped } from '../use-query-unwrapped';
9
- import { queryKeys } from '../../utils/query-keys';
10
- import { fetchOrder, confirmOrder } from '../../fetchers/orders';
11
- /**
12
- * Hook to get order by ID and token using RPC
13
- *
14
- * @param orderId - Order UUID
15
- * @param token - User action token
16
- * @param options - React Query options
17
- *
18
- * @example
19
- * ```tsx
20
- * const { data: order, isLoading } = useGetOrder('order-123', 'token-456');
21
- * console.log(order?.order.status); // Fully typed!
22
- * ```
23
- */
24
- export function useGetOrder(orderId, token, options) {
25
- return useQueryUnwrapped({
26
- queryKey: queryKeys.public.orders.detail(orderId, token),
27
- queryFn: () => fetchOrder(orderId, token),
28
- ...options,
29
- });
30
- }
31
- /**
32
- * Hook to confirm a prospect order using RPC
33
- *
34
- * @param options - React Query mutation options
35
- *
36
- * @example
37
- * ```tsx
38
- * const confirmOrder = useConfirmOrder();
39
- * confirmOrder.mutate({
40
- * orderId: 'order-123',
41
- * token: 'token-456'
42
- * });
43
- * ```
44
- */
45
- export function useConfirmOrder(options) {
46
- return useMutation({
47
- mutationFn: (data) => confirmOrder(data.orderId, data.token),
48
- ...options,
49
- });
50
- }