@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,169 +0,0 @@
1
- /**
2
- * Cart 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 a cart by ID
13
- *
14
- * @param cartId - Cart UUID
15
- * @returns Cart with items, brand, and delivery zone
16
- */
17
- export async function fetchCart(cartId) {
18
- const clients = createRpcClients(API_URL);
19
- const res = await clients.carts[':id'].$get({
20
- param: { id: cartId },
21
- });
22
- if (!res.ok) {
23
- throw new Error(`Failed to fetch cart: ${res.statusText}`);
24
- }
25
- return res.json();
26
- }
27
- /**
28
- * Create a new cart
29
- *
30
- * @param brandSlug - Brand slug
31
- * @returns Newly created cart
32
- */
33
- export async function createCart(brandSlug) {
34
- const clients = createRpcClients(API_URL);
35
- const res = await clients.carts.index.$post({
36
- json: { brandSlug },
37
- });
38
- if (!res.ok) {
39
- throw new Error(`Failed to create cart: ${res.statusText}`);
40
- }
41
- return res.json();
42
- }
43
- /**
44
- * Update a cart
45
- *
46
- * @param cartId - Cart UUID
47
- * @param data - Cart update data (customer info, deliveryZoneId, etc.)
48
- * @returns Updated cart
49
- */
50
- export async function updateCart(cartId, data) {
51
- const clients = createRpcClients(API_URL);
52
- const res = await clients.carts[':id'].$patch({
53
- param: { id: cartId },
54
- json: data,
55
- });
56
- if (!res.ok) {
57
- throw new Error(`Failed to update cart: ${res.statusText}`);
58
- }
59
- return res.json();
60
- }
61
- /**
62
- * Add an item to cart
63
- *
64
- * @param cartId - Cart UUID
65
- * @param sku - Product variant SKU
66
- * @param quantity - Quantity to add
67
- * @param fbc - Facebook Click ID (optional)
68
- * @param fbp - Facebook Browser ID (optional)
69
- * @returns Updated cart
70
- */
71
- export async function addCartItem(cartId, sku, quantity, fbc, fbp) {
72
- const clients = createRpcClients(API_URL);
73
- const res = await clients.carts[':id'].items.$post({
74
- param: { id: cartId },
75
- json: { sku, quantity, fbc, fbp },
76
- });
77
- if (!res.ok) {
78
- throw new Error(`Failed to add item to cart: ${res.statusText}`);
79
- }
80
- return res.json();
81
- }
82
- /**
83
- * Update a cart item quantity
84
- *
85
- * @param cartId - Cart UUID
86
- * @param itemId - Cart item UUID
87
- * @param quantity - New quantity
88
- * @returns Updated cart
89
- */
90
- export async function updateCartItem(cartId, itemId, quantity) {
91
- const clients = createRpcClients(API_URL);
92
- const res = await clients.carts[':id'].items[':itemId'].$patch({
93
- param: { id: cartId, itemId },
94
- json: { quantity },
95
- });
96
- if (!res.ok) {
97
- throw new Error(`Failed to update cart item: ${res.statusText}`);
98
- }
99
- return res.json();
100
- }
101
- /**
102
- * Remove an item from cart
103
- *
104
- * @param cartId - Cart UUID
105
- * @param itemId - Cart item UUID
106
- * @returns Updated cart
107
- */
108
- export async function removeCartItem(cartId, itemId) {
109
- const clients = createRpcClients(API_URL);
110
- const res = await clients.carts[':id'].items[':itemId'].$delete({
111
- param: { id: cartId, itemId },
112
- });
113
- if (!res.ok) {
114
- throw new Error(`Failed to remove cart item: ${res.statusText}`);
115
- }
116
- return res.json();
117
- }
118
- /**
119
- * Apply a discount code to cart
120
- *
121
- * @param cartId - Cart UUID
122
- * @param code - Discount code
123
- * @returns Updated cart
124
- */
125
- export async function applyDiscount(cartId, code) {
126
- const clients = createRpcClients(API_URL);
127
- const res = await clients.carts[':id']['apply-discount'].$post({
128
- param: { id: cartId },
129
- json: { code },
130
- });
131
- if (!res.ok) {
132
- throw new Error(`Failed to apply discount: ${res.statusText}`);
133
- }
134
- return res.json();
135
- }
136
- /**
137
- * Remove discount from cart
138
- *
139
- * @param cartId - Cart UUID
140
- * @returns Updated cart
141
- */
142
- export async function removeDiscount(cartId) {
143
- const clients = createRpcClients(API_URL);
144
- const res = await clients.carts[':id']['remove-discount'].$post({
145
- param: { id: cartId },
146
- });
147
- if (!res.ok) {
148
- throw new Error(`Failed to remove discount: ${res.statusText}`);
149
- }
150
- return res.json();
151
- }
152
- /**
153
- * Checkout a cart
154
- *
155
- * @param cartId - Cart UUID
156
- * @param checkoutData - Checkout information (customer details, delivery, payment)
157
- * @returns Created order
158
- */
159
- export async function checkoutCart(cartId, checkoutData) {
160
- const clients = createRpcClients(API_URL);
161
- const res = await clients.carts[':id'].checkout.$post({
162
- param: { id: cartId },
163
- json: checkoutData,
164
- });
165
- if (!res.ok) {
166
- throw new Error(`Failed to checkout cart: ${res.statusText}`);
167
- }
168
- return res.json();
169
- }
@@ -1,28 +0,0 @@
1
- /**
2
- * Delivery zone 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 delivery zones
11
- *
12
- * @param brandId - Optional brand UUID to filter brand-specific zones
13
- * @returns List of delivery zones with states
14
- */
15
- export declare function fetchDeliveryZones(brandId?: string): Promise<{
16
- id: string;
17
- name: string;
18
- zones: {
19
- id: string;
20
- name: string;
21
- deliveryCost: number;
22
- freeShippingThreshold: number;
23
- allowCOD: boolean;
24
- allowOnline: boolean;
25
- waybillOnly: boolean;
26
- estimatedDays: number;
27
- }[];
28
- }[]>;
@@ -1,26 +0,0 @@
1
- /**
2
- * Delivery zone 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 delivery zones
13
- *
14
- * @param brandId - Optional brand UUID to filter brand-specific zones
15
- * @returns List of delivery zones with states
16
- */
17
- export async function fetchDeliveryZones(brandId) {
18
- const clients = createRpcClients(API_URL);
19
- const res = await clients.deliveryZones.index.$get({
20
- query: brandId ? { brandId } : {},
21
- });
22
- if (!res.ok) {
23
- throw new Error(`Failed to fetch delivery zones: ${res.statusText}`);
24
- }
25
- return res.json();
26
- }
@@ -1,22 +0,0 @@
1
- /**
2
- * Data fetcher functions for Server Components
3
- *
4
- * These functions can be used directly in Next.js Server Components
5
- * without needing React hooks. They use the same underlying logic
6
- * as the client-side hooks, ensuring no code duplication.
7
- *
8
- * @example Server Component
9
- * ```tsx
10
- * import { fetchProductBySlug, fetchCart } from '@oms/api-client/fetchers';
11
- *
12
- * export default async function ProductPage({ params }) {
13
- * const product = await fetchProductBySlug(params.slug);
14
- * return <div>{product.name}</div>;
15
- * }
16
- * ```
17
- */
18
- export * from './products';
19
- export * from './carts';
20
- export * from './orders';
21
- export * from './delivery-zones';
22
- export * from './brands';
@@ -1,22 +0,0 @@
1
- /**
2
- * Data fetcher functions for Server Components
3
- *
4
- * These functions can be used directly in Next.js Server Components
5
- * without needing React hooks. They use the same underlying logic
6
- * as the client-side hooks, ensuring no code duplication.
7
- *
8
- * @example Server Component
9
- * ```tsx
10
- * import { fetchProductBySlug, fetchCart } from '@oms/api-client/fetchers';
11
- *
12
- * export default async function ProductPage({ params }) {
13
- * const product = await fetchProductBySlug(params.slug);
14
- * return <div>{product.name}</div>;
15
- * }
16
- * ```
17
- */
18
- export * from './products';
19
- export * from './carts';
20
- export * from './orders';
21
- export * from './delivery-zones';
22
- export * from './brands';
@@ -1,283 +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<unknown>;
@@ -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
- }