@instockng/api-client 1.0.4 → 1.0.6

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 (186) hide show
  1. package/dist/enum-types.d.ts +8 -0
  2. package/dist/enum-types.js +5 -0
  3. package/dist/fetchers/carts.js +5 -0
  4. package/dist/hooks/admin/abandoned-carts.js +12 -8
  5. package/dist/hooks/admin/brands.js +15 -10
  6. package/dist/hooks/admin/customers.js +3 -2
  7. package/dist/hooks/admin/delivery-zones.js +24 -16
  8. package/dist/hooks/admin/discount-codes.js +24 -16
  9. package/dist/hooks/admin/inventory.js +15 -10
  10. package/dist/hooks/admin/orders.js +18 -12
  11. package/dist/hooks/admin/products.js +15 -10
  12. package/dist/hooks/admin/stats.js +3 -2
  13. package/dist/hooks/admin/variants.js +18 -12
  14. package/dist/hooks/admin/warehouses.js +15 -10
  15. package/dist/hooks/useApiConfig.d.ts +2 -1
  16. package/dist/hooks/useApiConfig.js +2 -2
  17. package/dist/provider.d.ts +7 -4
  18. package/dist/provider.js +5 -3
  19. package/dist/types.d.ts +1 -0
  20. package/package.json +1 -1
  21. package/dist/apps/backend/src/generated/zod/index.d.ts +0 -1114
  22. package/dist/apps/backend/src/generated/zod/index.js +0 -670
  23. package/dist/apps/backend/src/http-app.d.ts +0 -40
  24. package/dist/apps/backend/src/http-app.js +0 -106
  25. package/dist/apps/backend/src/lib/brand-response.d.ts +0 -14
  26. package/dist/apps/backend/src/lib/brand-response.js +0 -8
  27. package/dist/apps/backend/src/lib/cart-helpers.d.ts +0 -280
  28. package/dist/apps/backend/src/lib/cart-helpers.js +0 -93
  29. package/dist/apps/backend/src/lib/cart-recovery.d.ts +0 -30
  30. package/dist/apps/backend/src/lib/cart-recovery.js +0 -147
  31. package/dist/apps/backend/src/lib/cart-response.d.ts +0 -121
  32. package/dist/apps/backend/src/lib/cart-response.js +0 -150
  33. package/dist/apps/backend/src/lib/clerk.d.ts +0 -18
  34. package/dist/apps/backend/src/lib/clerk.js +0 -167
  35. package/dist/apps/backend/src/lib/delivery-zone-response.d.ts +0 -62
  36. package/dist/apps/backend/src/lib/delivery-zone-response.js +0 -24
  37. package/dist/apps/backend/src/lib/discount-code-response.d.ts +0 -42
  38. package/dist/apps/backend/src/lib/discount-code-response.js +0 -19
  39. package/dist/apps/backend/src/lib/discount.d.ts +0 -20
  40. package/dist/apps/backend/src/lib/discount.js +0 -35
  41. package/dist/apps/backend/src/lib/inventory.d.ts +0 -26
  42. package/dist/apps/backend/src/lib/inventory.js +0 -160
  43. package/dist/apps/backend/src/lib/meta-capi.d.ts +0 -48
  44. package/dist/apps/backend/src/lib/meta-capi.js +0 -120
  45. package/dist/apps/backend/src/lib/openapi.d.ts +0 -36
  46. package/dist/apps/backend/src/lib/openapi.js +0 -69
  47. package/dist/apps/backend/src/lib/order-recovery.d.ts +0 -367
  48. package/dist/apps/backend/src/lib/order-recovery.js +0 -373
  49. package/dist/apps/backend/src/lib/order-response.d.ts +0 -136
  50. package/dist/apps/backend/src/lib/order-response.js +0 -61
  51. package/dist/apps/backend/src/lib/pricing.d.ts +0 -39
  52. package/dist/apps/backend/src/lib/pricing.js +0 -62
  53. package/dist/apps/backend/src/lib/prisma.d.ts +0 -9
  54. package/dist/apps/backend/src/lib/prisma.js +0 -30
  55. package/dist/apps/backend/src/lib/product-response.d.ts +0 -82
  56. package/dist/apps/backend/src/lib/product-response.js +0 -29
  57. package/dist/apps/backend/src/lib/utils.d.ts +0 -32
  58. package/dist/apps/backend/src/lib/utils.js +0 -63
  59. package/dist/apps/backend/src/middleware/clerk-auth.d.ts +0 -8
  60. package/dist/apps/backend/src/middleware/clerk-auth.js +0 -89
  61. package/dist/apps/backend/src/middleware/cors.d.ts +0 -8
  62. package/dist/apps/backend/src/middleware/cors.js +0 -11
  63. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.d.ts +0 -55
  64. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.js +0 -125
  65. package/dist/apps/backend/src/notifications/producers/order-notification.d.ts +0 -9
  66. package/dist/apps/backend/src/notifications/producers/order-notification.js +0 -18
  67. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.d.ts +0 -10
  68. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.js +0 -11
  69. package/dist/apps/backend/src/routes/admin/abandoned-carts.d.ts +0 -605
  70. package/dist/apps/backend/src/routes/admin/abandoned-carts.js +0 -194
  71. package/dist/apps/backend/src/routes/admin/brands.d.ts +0 -175
  72. package/dist/apps/backend/src/routes/admin/brands.js +0 -118
  73. package/dist/apps/backend/src/routes/admin/customers.d.ts +0 -306
  74. package/dist/apps/backend/src/routes/admin/customers.js +0 -39
  75. package/dist/apps/backend/src/routes/admin/delivery-zones.d.ts +0 -438
  76. package/dist/apps/backend/src/routes/admin/delivery-zones.js +0 -300
  77. package/dist/apps/backend/src/routes/admin/discount-codes.d.ts +0 -478
  78. package/dist/apps/backend/src/routes/admin/discount-codes.js +0 -418
  79. package/dist/apps/backend/src/routes/admin/inventory.d.ts +0 -273
  80. package/dist/apps/backend/src/routes/admin/inventory.js +0 -189
  81. package/dist/apps/backend/src/routes/admin/orders.d.ts +0 -1478
  82. package/dist/apps/backend/src/routes/admin/orders.js +0 -503
  83. package/dist/apps/backend/src/routes/admin/products.d.ts +0 -860
  84. package/dist/apps/backend/src/routes/admin/products.js +0 -107
  85. package/dist/apps/backend/src/routes/admin/stats.d.ts +0 -288
  86. package/dist/apps/backend/src/routes/admin/stats.js +0 -55
  87. package/dist/apps/backend/src/routes/admin/variants.d.ts +0 -239
  88. package/dist/apps/backend/src/routes/admin/variants.js +0 -173
  89. package/dist/apps/backend/src/routes/admin/warehouses.d.ts +0 -373
  90. package/dist/apps/backend/src/routes/admin/warehouses.js +0 -123
  91. package/dist/apps/backend/src/routes/public/brands.d.ts +0 -40
  92. package/dist/apps/backend/src/routes/public/brands.js +0 -38
  93. package/dist/apps/backend/src/routes/public/carts.d.ts +0 -2655
  94. package/dist/apps/backend/src/routes/public/carts.js +0 -631
  95. package/dist/apps/backend/src/routes/public/delivery-zones.d.ts +0 -35
  96. package/dist/apps/backend/src/routes/public/delivery-zones.js +0 -62
  97. package/dist/apps/backend/src/routes/public/orders.d.ts +0 -323
  98. package/dist/apps/backend/src/routes/public/orders.js +0 -160
  99. package/dist/apps/backend/src/routes/public/products.d.ts +0 -449
  100. package/dist/apps/backend/src/routes/public/products.js +0 -133
  101. package/dist/apps/backend/src/types/index.d.ts +0 -42
  102. package/dist/apps/backend/src/types/index.js +0 -2
  103. package/dist/apps/backend/src/validators/brand.d.ts +0 -17
  104. package/dist/apps/backend/src/validators/brand.js +0 -15
  105. package/dist/apps/backend/src/validators/delivery-zone.d.ts +0 -31
  106. package/dist/apps/backend/src/validators/delivery-zone.js +0 -51
  107. package/dist/apps/backend/src/validators/discount-code.d.ts +0 -74
  108. package/dist/apps/backend/src/validators/discount-code.js +0 -50
  109. package/dist/apps/backend/src/validators/inventory.d.ts +0 -20
  110. package/dist/apps/backend/src/validators/inventory.js +0 -15
  111. package/dist/apps/backend/src/validators/order.d.ts +0 -87
  112. package/dist/apps/backend/src/validators/order.js +0 -61
  113. package/dist/apps/backend/src/validators/product.d.ts +0 -18
  114. package/dist/apps/backend/src/validators/product.js +0 -19
  115. package/dist/apps/backend/src/validators/variant.d.ts +0 -19
  116. package/dist/apps/backend/src/validators/variant.js +0 -19
  117. package/dist/apps/backend/src/validators/warehouse.d.ts +0 -15
  118. package/dist/apps/backend/src/validators/warehouse.js +0 -15
  119. package/dist/packages/api-client/src/backend-types.d.ts +0 -10
  120. package/dist/packages/api-client/src/backend-types.js +0 -10
  121. package/dist/packages/api-client/src/client.d.ts +0 -20
  122. package/dist/packages/api-client/src/client.js +0 -40
  123. package/dist/packages/api-client/src/fetchers/brands.d.ts +0 -25
  124. package/dist/packages/api-client/src/fetchers/brands.js +0 -26
  125. package/dist/packages/api-client/src/fetchers/carts.d.ts +0 -2335
  126. package/dist/packages/api-client/src/fetchers/carts.js +0 -169
  127. package/dist/packages/api-client/src/fetchers/delivery-zones.d.ts +0 -28
  128. package/dist/packages/api-client/src/fetchers/delivery-zones.js +0 -26
  129. package/dist/packages/api-client/src/fetchers/index.d.ts +0 -22
  130. package/dist/packages/api-client/src/fetchers/index.js +0 -22
  131. package/dist/packages/api-client/src/fetchers/orders.d.ts +0 -283
  132. package/dist/packages/api-client/src/fetchers/orders.js +0 -44
  133. package/dist/packages/api-client/src/fetchers/products.d.ts +0 -386
  134. package/dist/packages/api-client/src/fetchers/products.js +0 -42
  135. package/dist/packages/api-client/src/hooks/admin/abandoned-carts.d.ts +0 -535
  136. package/dist/packages/api-client/src/hooks/admin/abandoned-carts.js +0 -79
  137. package/dist/packages/api-client/src/hooks/admin/brands.d.ts +0 -79
  138. package/dist/packages/api-client/src/hooks/admin/brands.js +0 -103
  139. package/dist/packages/api-client/src/hooks/admin/customers.d.ts +0 -278
  140. package/dist/packages/api-client/src/hooks/admin/customers.js +0 -25
  141. package/dist/packages/api-client/src/hooks/admin/delivery-zones.d.ts +0 -270
  142. package/dist/packages/api-client/src/hooks/admin/delivery-zones.js +0 -168
  143. package/dist/packages/api-client/src/hooks/admin/discount-codes.d.ts +0 -299
  144. package/dist/packages/api-client/src/hooks/admin/discount-codes.js +0 -157
  145. package/dist/packages/api-client/src/hooks/admin/index.d.ts +0 -16
  146. package/dist/packages/api-client/src/hooks/admin/index.js +0 -16
  147. package/dist/packages/api-client/src/hooks/admin/inventory.d.ts +0 -224
  148. package/dist/packages/api-client/src/hooks/admin/inventory.js +0 -102
  149. package/dist/packages/api-client/src/hooks/admin/orders.d.ts +0 -1380
  150. package/dist/packages/api-client/src/hooks/admin/orders.js +0 -169
  151. package/dist/packages/api-client/src/hooks/admin/products.d.ts +0 -374
  152. package/dist/packages/api-client/src/hooks/admin/products.js +0 -84
  153. package/dist/packages/api-client/src/hooks/admin/stats.d.ts +0 -277
  154. package/dist/packages/api-client/src/hooks/admin/stats.js +0 -24
  155. package/dist/packages/api-client/src/hooks/admin/variants.d.ts +0 -115
  156. package/dist/packages/api-client/src/hooks/admin/variants.js +0 -121
  157. package/dist/packages/api-client/src/hooks/admin/warehouses.d.ts +0 -277
  158. package/dist/packages/api-client/src/hooks/admin/warehouses.js +0 -103
  159. package/dist/packages/api-client/src/hooks/public/brands.d.ts +0 -33
  160. package/dist/packages/api-client/src/hooks/public/brands.js +0 -30
  161. package/dist/packages/api-client/src/hooks/public/carts.d.ts +0 -2405
  162. package/dist/packages/api-client/src/hooks/public/carts.js +0 -213
  163. package/dist/packages/api-client/src/hooks/public/delivery-zones.d.ts +0 -34
  164. package/dist/packages/api-client/src/hooks/public/delivery-zones.js +0 -28
  165. package/dist/packages/api-client/src/hooks/public/index.d.ts +0 -10
  166. package/dist/packages/api-client/src/hooks/public/index.js +0 -10
  167. package/dist/packages/api-client/src/hooks/public/orders.d.ts +0 -302
  168. package/dist/packages/api-client/src/hooks/public/orders.js +0 -50
  169. package/dist/packages/api-client/src/hooks/public/products.d.ts +0 -398
  170. package/dist/packages/api-client/src/hooks/public/products.js +0 -47
  171. package/dist/packages/api-client/src/hooks/use-query-unwrapped.d.ts +0 -20
  172. package/dist/packages/api-client/src/hooks/use-query-unwrapped.js +0 -22
  173. package/dist/packages/api-client/src/hooks/useApiConfig.d.ts +0 -11
  174. package/dist/packages/api-client/src/hooks/useApiConfig.js +0 -14
  175. package/dist/packages/api-client/src/index.d.ts +0 -20
  176. package/dist/packages/api-client/src/index.js +0 -25
  177. package/dist/packages/api-client/src/provider.d.ts +0 -33
  178. package/dist/packages/api-client/src/provider.js +0 -52
  179. package/dist/packages/api-client/src/rpc-client.d.ts +0 -9035
  180. package/dist/packages/api-client/src/rpc-client.js +0 -78
  181. package/dist/packages/api-client/src/rpc-types.d.ts +0 -76
  182. package/dist/packages/api-client/src/rpc-types.js +0 -7
  183. package/dist/packages/api-client/src/types.d.ts +0 -33
  184. package/dist/packages/api-client/src/types.js +0 -16
  185. package/dist/packages/api-client/src/utils/query-keys.d.ts +0 -106
  186. package/dist/packages/api-client/src/utils/query-keys.js +0 -108
@@ -1,213 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks for cart 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, useQueryClient } from '@tanstack/react-query';
8
- import { useQueryUnwrapped } from '../use-query-unwrapped';
9
- import { queryKeys } from '../../utils/query-keys';
10
- import { fetchCart, updateCart, createCart, addCartItem, updateCartItem, removeCartItem, applyDiscount, removeDiscount, checkoutCart, } from '../../fetchers/carts';
11
- /**
12
- * Hook to get cart by ID using RPC
13
- *
14
- * @param cartId - Cart UUID
15
- * @param options - React Query options
16
- *
17
- * @example
18
- * ```tsx
19
- * const { data: cart, isLoading } = useGetCart('cart-123');
20
- * console.log(cart?.cart.brand.name); // Fully typed!
21
- * ```
22
- */
23
- export function useGetCart(cartId, options) {
24
- return useQueryUnwrapped({
25
- queryKey: queryKeys.public.carts.detail(cartId),
26
- queryFn: () => fetchCart(cartId),
27
- ...options,
28
- });
29
- }
30
- /**
31
- * Hook to update cart using RPC
32
- *
33
- * @param cartId - Cart UUID
34
- * @param options - React Query mutation options
35
- *
36
- * @example
37
- * ```tsx
38
- * const updateCart = useUpdateCart('cart-123');
39
- * updateCart.mutate({
40
- * customerEmail: 'user@example.com',
41
- * deliveryZoneId: 'zone-123'
42
- * });
43
- * ```
44
- */
45
- export function useUpdateCart(cartId, options) {
46
- const queryClient = useQueryClient();
47
- return useMutation({
48
- mutationFn: (data) => updateCart(cartId, data),
49
- onSuccess: () => {
50
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
51
- },
52
- ...options,
53
- });
54
- }
55
- /**
56
- * Hook to create a new cart using RPC
57
- *
58
- * @param options - React Query mutation options
59
- *
60
- * @example
61
- * ```tsx
62
- * const createCart = useCreateCart();
63
- * createCart.mutate('my-brand');
64
- * ```
65
- */
66
- export function useCreateCart(options) {
67
- return useMutation({
68
- mutationFn: (brandSlug) => createCart(brandSlug),
69
- ...options,
70
- });
71
- }
72
- /**
73
- * Hook to apply discount code to cart using RPC
74
- *
75
- * @param cartId - Cart UUID
76
- * @param options - React Query mutation options
77
- *
78
- * @example
79
- * ```tsx
80
- * const applyDiscount = useApplyDiscount('cart-123');
81
- * applyDiscount.mutate({ code: 'SAVE10' });
82
- * ```
83
- */
84
- export function useApplyDiscount(cartId, options) {
85
- const queryClient = useQueryClient();
86
- return useMutation({
87
- mutationFn: (data) => applyDiscount(cartId, data.code),
88
- onSuccess: () => {
89
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
90
- },
91
- ...options,
92
- });
93
- }
94
- /**
95
- * Hook to remove discount code from cart using RPC
96
- *
97
- * @param cartId - Cart UUID
98
- * @param options - React Query mutation options
99
- *
100
- * @example
101
- * ```tsx
102
- * const removeDiscount = useRemoveDiscount('cart-123');
103
- * removeDiscount.mutate();
104
- * ```
105
- */
106
- export function useRemoveDiscount(cartId, options) {
107
- const queryClient = useQueryClient();
108
- return useMutation({
109
- mutationFn: () => removeDiscount(cartId),
110
- onSuccess: () => {
111
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
112
- },
113
- ...options,
114
- });
115
- }
116
- /**
117
- * Hook to add item to cart using RPC
118
- *
119
- * @param cartId - Cart UUID
120
- * @param options - React Query mutation options
121
- *
122
- * @example
123
- * ```tsx
124
- * const addItem = useAddCartItem('cart-123');
125
- * addItem.mutate({ sku: 'PROD-001', quantity: 2, fbc: '_fbc_cookie', fbp: '_fbp_cookie' });
126
- * ```
127
- */
128
- export function useAddCartItem(cartId, options) {
129
- const queryClient = useQueryClient();
130
- return useMutation({
131
- mutationFn: (data) => addCartItem(cartId, data.sku, data.quantity, data.fbc, data.fbp),
132
- onSuccess: () => {
133
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
134
- },
135
- ...options,
136
- });
137
- }
138
- /**
139
- * Hook to update cart item quantity using RPC
140
- *
141
- * @param cartId - Cart UUID
142
- * @param options - React Query mutation options
143
- *
144
- * @example
145
- * ```tsx
146
- * const updateItem = useUpdateCartItem('cart-123');
147
- * updateItem.mutate({ itemId: 'item-456', quantity: 3 });
148
- * ```
149
- */
150
- export function useUpdateCartItem(cartId, options) {
151
- const queryClient = useQueryClient();
152
- return useMutation({
153
- mutationFn: ({ itemId, quantity }) => updateCartItem(cartId, itemId, quantity),
154
- onSuccess: () => {
155
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
156
- },
157
- ...options,
158
- });
159
- }
160
- /**
161
- * Hook to remove item from cart using RPC
162
- *
163
- * @param cartId - Cart UUID
164
- * @param options - React Query mutation options
165
- *
166
- * @example
167
- * ```tsx
168
- * const removeItem = useRemoveCartItem('cart-123');
169
- * removeItem.mutate('item-456'); // Pass itemId in mutate call
170
- * ```
171
- */
172
- export function useRemoveCartItem(cartId, options) {
173
- const queryClient = useQueryClient();
174
- return useMutation({
175
- mutationFn: (itemId) => removeCartItem(cartId, itemId),
176
- onSuccess: () => {
177
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
178
- },
179
- ...options,
180
- });
181
- }
182
- /**
183
- * Hook to checkout a cart and create an order using RPC
184
- *
185
- * @param cartId - Cart UUID
186
- * @param options - React Query mutation options
187
- *
188
- * @example
189
- * ```tsx
190
- * const checkout = useCheckoutCart('cart-123');
191
- * checkout.mutate({
192
- * firstName: 'John',
193
- * lastName: 'Doe',
194
- * email: 'john@example.com',
195
- * phone: '+1234567890',
196
- * address: '123 Main St',
197
- * city: 'New York',
198
- * deliveryZoneId: 'zone-123',
199
- * paymentMethod: 'cod'
200
- * });
201
- * ```
202
- */
203
- export function useCheckoutCart(cartId, options) {
204
- const queryClient = useQueryClient();
205
- return useMutation({
206
- mutationFn: (data) => checkoutCart(cartId, data),
207
- onSuccess: () => {
208
- // Invalidate cart query since it's now converted to an order
209
- queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
210
- },
211
- ...options,
212
- });
213
- }
@@ -1,34 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks for delivery zone 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 } from '@tanstack/react-query';
8
- import { fetchDeliveryZones } from '../../fetchers/delivery-zones';
9
- /**
10
- * Hook to get delivery zones using RPC
11
- *
12
- * @param brandId - Optional brand UUID to filter brand-specific zones
13
- * @param options - React Query options
14
- *
15
- * @example
16
- * ```tsx
17
- * const { data: zones, isLoading } = useGetDeliveryZones(undefined);
18
- * console.log(zones?.data[0].name); // Fully typed!
19
- * ```
20
- */
21
- export declare function useGetDeliveryZones(brandId: string | undefined, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchDeliveryZones>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
22
- id: string;
23
- name: string;
24
- zones: {
25
- id: string;
26
- name: string;
27
- deliveryCost: number;
28
- freeShippingThreshold: number;
29
- allowCOD: boolean;
30
- allowOnline: boolean;
31
- waybillOnly: boolean;
32
- estimatedDays: number;
33
- }[];
34
- }[], Error>;
@@ -1,28 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks for delivery zone 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 { useQueryUnwrapped } from '../use-query-unwrapped';
8
- import { queryKeys } from '../../utils/query-keys';
9
- import { fetchDeliveryZones } from '../../fetchers/delivery-zones';
10
- /**
11
- * Hook to get delivery zones using RPC
12
- *
13
- * @param brandId - Optional brand UUID to filter brand-specific zones
14
- * @param options - React Query options
15
- *
16
- * @example
17
- * ```tsx
18
- * const { data: zones, isLoading } = useGetDeliveryZones(undefined);
19
- * console.log(zones?.data[0].name); // Fully typed!
20
- * ```
21
- */
22
- export function useGetDeliveryZones(brandId, options) {
23
- return useQueryUnwrapped({
24
- queryKey: queryKeys.public.deliveryZones.list(brandId),
25
- queryFn: () => fetchDeliveryZones(brandId),
26
- ...options,
27
- });
28
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks
3
- *
4
- * Export all RPC hooks for use in applications
5
- */
6
- export * from './carts';
7
- export * from './orders';
8
- export * from './products';
9
- export * from './delivery-zones';
10
- export * from './brands';
@@ -1,10 +0,0 @@
1
- /**
2
- * Type-safe RPC hooks
3
- *
4
- * Export all RPC hooks for use in applications
5
- */
6
- export * from './carts';
7
- export * from './orders';
8
- export * from './products';
9
- export * from './delivery-zones';
10
- export * from './brands';
@@ -1,302 +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<unknown, Error, {
300
- orderId: string;
301
- token: string;
302
- }, 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
- }