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