@instockng/api-client 1.0.2 → 1.0.4

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 (172) hide show
  1. package/dist/apps/backend/src/generated/zod/index.d.ts +1114 -0
  2. package/dist/apps/backend/src/generated/zod/index.js +670 -0
  3. package/dist/apps/backend/src/http-app.d.ts +40 -0
  4. package/dist/apps/backend/src/http-app.js +106 -0
  5. package/dist/apps/backend/src/lib/brand-response.d.ts +14 -0
  6. package/dist/apps/backend/src/lib/brand-response.js +8 -0
  7. package/dist/apps/backend/src/lib/cart-helpers.d.ts +280 -0
  8. package/dist/apps/backend/src/lib/cart-helpers.js +93 -0
  9. package/dist/apps/backend/src/lib/cart-recovery.d.ts +30 -0
  10. package/dist/apps/backend/src/lib/cart-recovery.js +147 -0
  11. package/dist/apps/backend/src/lib/cart-response.d.ts +121 -0
  12. package/dist/apps/backend/src/lib/cart-response.js +150 -0
  13. package/dist/apps/backend/src/lib/clerk.d.ts +18 -0
  14. package/dist/apps/backend/src/lib/clerk.js +167 -0
  15. package/dist/apps/backend/src/lib/delivery-zone-response.d.ts +62 -0
  16. package/dist/apps/backend/src/lib/delivery-zone-response.js +24 -0
  17. package/dist/apps/backend/src/lib/discount-code-response.d.ts +42 -0
  18. package/dist/apps/backend/src/lib/discount-code-response.js +19 -0
  19. package/dist/apps/backend/src/lib/discount.d.ts +20 -0
  20. package/dist/apps/backend/src/lib/discount.js +35 -0
  21. package/dist/apps/backend/src/lib/inventory.d.ts +26 -0
  22. package/dist/apps/backend/src/lib/inventory.js +160 -0
  23. package/dist/apps/backend/src/lib/meta-capi.d.ts +48 -0
  24. package/dist/apps/backend/src/lib/meta-capi.js +120 -0
  25. package/dist/apps/backend/src/lib/openapi.d.ts +36 -0
  26. package/dist/apps/backend/src/lib/openapi.js +69 -0
  27. package/dist/apps/backend/src/lib/order-recovery.d.ts +367 -0
  28. package/dist/apps/backend/src/lib/order-recovery.js +373 -0
  29. package/dist/apps/backend/src/lib/order-response.d.ts +136 -0
  30. package/dist/apps/backend/src/lib/order-response.js +61 -0
  31. package/dist/apps/backend/src/lib/pricing.d.ts +39 -0
  32. package/dist/apps/backend/src/lib/pricing.js +62 -0
  33. package/dist/apps/backend/src/lib/prisma.d.ts +9 -0
  34. package/dist/apps/backend/src/lib/prisma.js +30 -0
  35. package/dist/apps/backend/src/lib/product-response.d.ts +82 -0
  36. package/dist/apps/backend/src/lib/product-response.js +29 -0
  37. package/dist/apps/backend/src/lib/utils.d.ts +32 -0
  38. package/dist/apps/backend/src/lib/utils.js +63 -0
  39. package/dist/apps/backend/src/middleware/clerk-auth.d.ts +8 -0
  40. package/dist/apps/backend/src/middleware/clerk-auth.js +89 -0
  41. package/dist/apps/backend/src/middleware/cors.d.ts +8 -0
  42. package/dist/apps/backend/src/middleware/cors.js +11 -0
  43. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.d.ts +55 -0
  44. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.js +125 -0
  45. package/dist/apps/backend/src/notifications/producers/order-notification.d.ts +9 -0
  46. package/dist/apps/backend/src/notifications/producers/order-notification.js +18 -0
  47. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.d.ts +10 -0
  48. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.js +11 -0
  49. package/dist/apps/backend/src/routes/admin/abandoned-carts.d.ts +605 -0
  50. package/dist/apps/backend/src/routes/admin/abandoned-carts.js +194 -0
  51. package/dist/apps/backend/src/routes/admin/brands.d.ts +175 -0
  52. package/dist/apps/backend/src/routes/admin/brands.js +118 -0
  53. package/dist/apps/backend/src/routes/admin/customers.d.ts +306 -0
  54. package/dist/apps/backend/src/routes/admin/customers.js +39 -0
  55. package/dist/apps/backend/src/routes/admin/delivery-zones.d.ts +438 -0
  56. package/dist/apps/backend/src/routes/admin/delivery-zones.js +300 -0
  57. package/dist/apps/backend/src/routes/admin/discount-codes.d.ts +478 -0
  58. package/dist/apps/backend/src/routes/admin/discount-codes.js +418 -0
  59. package/dist/apps/backend/src/routes/admin/inventory.d.ts +273 -0
  60. package/dist/apps/backend/src/routes/admin/inventory.js +189 -0
  61. package/dist/apps/backend/src/routes/admin/orders.d.ts +1478 -0
  62. package/dist/apps/backend/src/routes/admin/orders.js +503 -0
  63. package/dist/apps/backend/src/routes/admin/products.d.ts +860 -0
  64. package/dist/apps/backend/src/routes/admin/products.js +107 -0
  65. package/dist/apps/backend/src/routes/admin/stats.d.ts +288 -0
  66. package/dist/apps/backend/src/routes/admin/stats.js +55 -0
  67. package/dist/apps/backend/src/routes/admin/variants.d.ts +239 -0
  68. package/dist/apps/backend/src/routes/admin/variants.js +173 -0
  69. package/dist/apps/backend/src/routes/admin/warehouses.d.ts +373 -0
  70. package/dist/apps/backend/src/routes/admin/warehouses.js +123 -0
  71. package/dist/apps/backend/src/routes/public/brands.d.ts +40 -0
  72. package/dist/apps/backend/src/routes/public/brands.js +38 -0
  73. package/dist/apps/backend/src/routes/public/carts.d.ts +2655 -0
  74. package/dist/apps/backend/src/routes/public/carts.js +631 -0
  75. package/dist/apps/backend/src/routes/public/delivery-zones.d.ts +35 -0
  76. package/dist/apps/backend/src/routes/public/delivery-zones.js +62 -0
  77. package/dist/apps/backend/src/routes/public/orders.d.ts +323 -0
  78. package/dist/apps/backend/src/routes/public/orders.js +160 -0
  79. package/dist/apps/backend/src/routes/public/products.d.ts +449 -0
  80. package/dist/apps/backend/src/routes/public/products.js +133 -0
  81. package/dist/apps/backend/src/types/index.d.ts +42 -0
  82. package/dist/apps/backend/src/types/index.js +2 -0
  83. package/dist/apps/backend/src/validators/brand.d.ts +17 -0
  84. package/dist/apps/backend/src/validators/brand.js +15 -0
  85. package/dist/apps/backend/src/validators/delivery-zone.d.ts +31 -0
  86. package/dist/apps/backend/src/validators/delivery-zone.js +51 -0
  87. package/dist/apps/backend/src/validators/discount-code.d.ts +74 -0
  88. package/dist/apps/backend/src/validators/discount-code.js +50 -0
  89. package/dist/apps/backend/src/validators/inventory.d.ts +20 -0
  90. package/dist/apps/backend/src/validators/inventory.js +15 -0
  91. package/dist/apps/backend/src/validators/order.d.ts +87 -0
  92. package/dist/apps/backend/src/validators/order.js +61 -0
  93. package/dist/apps/backend/src/validators/product.d.ts +18 -0
  94. package/dist/apps/backend/src/validators/product.js +19 -0
  95. package/dist/apps/backend/src/validators/variant.d.ts +19 -0
  96. package/dist/apps/backend/src/validators/variant.js +19 -0
  97. package/dist/apps/backend/src/validators/warehouse.d.ts +15 -0
  98. package/dist/apps/backend/src/validators/warehouse.js +15 -0
  99. package/dist/fetchers/carts.d.ts +751 -755
  100. package/dist/fetchers/carts.js +4 -2
  101. package/dist/hooks/public/carts.d.ts +753 -755
  102. package/dist/hooks/public/carts.js +2 -2
  103. package/dist/packages/api-client/src/backend-types.d.ts +10 -0
  104. package/dist/packages/api-client/src/backend-types.js +10 -0
  105. package/dist/packages/api-client/src/client.d.ts +20 -0
  106. package/dist/packages/api-client/src/client.js +40 -0
  107. package/dist/packages/api-client/src/fetchers/brands.d.ts +25 -0
  108. package/dist/packages/api-client/src/fetchers/brands.js +26 -0
  109. package/dist/packages/api-client/src/fetchers/carts.d.ts +2335 -0
  110. package/dist/packages/api-client/src/fetchers/carts.js +169 -0
  111. package/dist/packages/api-client/src/fetchers/delivery-zones.d.ts +28 -0
  112. package/dist/packages/api-client/src/fetchers/delivery-zones.js +26 -0
  113. package/dist/packages/api-client/src/fetchers/index.d.ts +22 -0
  114. package/dist/packages/api-client/src/fetchers/index.js +22 -0
  115. package/dist/packages/api-client/src/fetchers/orders.d.ts +283 -0
  116. package/dist/packages/api-client/src/fetchers/orders.js +44 -0
  117. package/dist/packages/api-client/src/fetchers/products.d.ts +386 -0
  118. package/dist/packages/api-client/src/fetchers/products.js +42 -0
  119. package/dist/packages/api-client/src/hooks/admin/abandoned-carts.d.ts +535 -0
  120. package/dist/packages/api-client/src/hooks/admin/abandoned-carts.js +79 -0
  121. package/dist/packages/api-client/src/hooks/admin/brands.d.ts +79 -0
  122. package/dist/packages/api-client/src/hooks/admin/brands.js +103 -0
  123. package/dist/packages/api-client/src/hooks/admin/customers.d.ts +278 -0
  124. package/dist/packages/api-client/src/hooks/admin/customers.js +25 -0
  125. package/dist/packages/api-client/src/hooks/admin/delivery-zones.d.ts +270 -0
  126. package/dist/packages/api-client/src/hooks/admin/delivery-zones.js +168 -0
  127. package/dist/packages/api-client/src/hooks/admin/discount-codes.d.ts +299 -0
  128. package/dist/packages/api-client/src/hooks/admin/discount-codes.js +157 -0
  129. package/dist/packages/api-client/src/hooks/admin/index.d.ts +16 -0
  130. package/dist/packages/api-client/src/hooks/admin/index.js +16 -0
  131. package/dist/packages/api-client/src/hooks/admin/inventory.d.ts +224 -0
  132. package/dist/packages/api-client/src/hooks/admin/inventory.js +102 -0
  133. package/dist/packages/api-client/src/hooks/admin/orders.d.ts +1380 -0
  134. package/dist/packages/api-client/src/hooks/admin/orders.js +169 -0
  135. package/dist/packages/api-client/src/hooks/admin/products.d.ts +374 -0
  136. package/dist/packages/api-client/src/hooks/admin/products.js +84 -0
  137. package/dist/packages/api-client/src/hooks/admin/stats.d.ts +277 -0
  138. package/dist/packages/api-client/src/hooks/admin/stats.js +24 -0
  139. package/dist/packages/api-client/src/hooks/admin/variants.d.ts +115 -0
  140. package/dist/packages/api-client/src/hooks/admin/variants.js +121 -0
  141. package/dist/packages/api-client/src/hooks/admin/warehouses.d.ts +277 -0
  142. package/dist/packages/api-client/src/hooks/admin/warehouses.js +103 -0
  143. package/dist/packages/api-client/src/hooks/public/brands.d.ts +33 -0
  144. package/dist/packages/api-client/src/hooks/public/brands.js +30 -0
  145. package/dist/packages/api-client/src/hooks/public/carts.d.ts +2405 -0
  146. package/dist/packages/api-client/src/hooks/public/carts.js +213 -0
  147. package/dist/packages/api-client/src/hooks/public/delivery-zones.d.ts +34 -0
  148. package/dist/packages/api-client/src/hooks/public/delivery-zones.js +28 -0
  149. package/dist/packages/api-client/src/hooks/public/index.d.ts +10 -0
  150. package/dist/packages/api-client/src/hooks/public/index.js +10 -0
  151. package/dist/packages/api-client/src/hooks/public/orders.d.ts +302 -0
  152. package/dist/packages/api-client/src/hooks/public/orders.js +50 -0
  153. package/dist/packages/api-client/src/hooks/public/products.d.ts +398 -0
  154. package/dist/packages/api-client/src/hooks/public/products.js +47 -0
  155. package/dist/packages/api-client/src/hooks/use-query-unwrapped.d.ts +20 -0
  156. package/dist/packages/api-client/src/hooks/use-query-unwrapped.js +22 -0
  157. package/dist/packages/api-client/src/hooks/useApiConfig.d.ts +11 -0
  158. package/dist/packages/api-client/src/hooks/useApiConfig.js +14 -0
  159. package/dist/packages/api-client/src/index.d.ts +20 -0
  160. package/dist/packages/api-client/src/index.js +25 -0
  161. package/dist/packages/api-client/src/provider.d.ts +33 -0
  162. package/dist/packages/api-client/src/provider.js +52 -0
  163. package/dist/packages/api-client/src/rpc-client.d.ts +9035 -0
  164. package/dist/packages/api-client/src/rpc-client.js +78 -0
  165. package/dist/packages/api-client/src/rpc-types.d.ts +76 -0
  166. package/dist/packages/api-client/src/rpc-types.js +7 -0
  167. package/dist/packages/api-client/src/types.d.ts +33 -0
  168. package/dist/packages/api-client/src/types.js +16 -0
  169. package/dist/packages/api-client/src/utils/query-keys.d.ts +106 -0
  170. package/dist/packages/api-client/src/utils/query-keys.js +108 -0
  171. package/dist/rpc-client.d.ts +685 -693
  172. package/package.json +2 -2
@@ -122,13 +122,13 @@ export function useRemoveDiscount(cartId, options) {
122
122
  * @example
123
123
  * ```tsx
124
124
  * const addItem = useAddCartItem('cart-123');
125
- * addItem.mutate({ sku: 'PROD-001', quantity: 2 });
125
+ * addItem.mutate({ sku: 'PROD-001', quantity: 2, fbc: '_fbc_cookie', fbp: '_fbp_cookie' });
126
126
  * ```
127
127
  */
128
128
  export function useAddCartItem(cartId, options) {
129
129
  const queryClient = useQueryClient();
130
130
  return useMutation({
131
- mutationFn: (data) => addCartItem(cartId, data.sku, data.quantity),
131
+ mutationFn: (data) => addCartItem(cartId, data.sku, data.quantity, data.fbc, data.fbp),
132
132
  onSuccess: () => {
133
133
  queryClient.invalidateQueries({ queryKey: queryKeys.public.carts.detail(cartId) });
134
134
  },
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Backend RPC types - AUTO-GENERATED, DO NOT EDIT MANUALLY
3
+ *
4
+ * Generated from apps/backend/src/index.ts
5
+ * Run 'pnpm run generate-types' to regenerate this file
6
+ *
7
+ * These types provide end-to-end type safety between the backend API
8
+ * and the frontend hooks/fetchers.
9
+ */
10
+ export type { CartsRPC, OrdersRPC, ProductsRPC, DeliveryZonesRPC, BrandsRPC, AdminOrdersRPC, AdminBrandsRPC, AdminProductsRPC, AdminVariantsRPC, AdminWarehousesRPC, AdminInventoryRPC, AdminCustomersRPC, AdminStatsRPC, AdminAbandonedCartsRPC, AdminDiscountCodesRPC, AdminDeliveryZonesRPC, } from '../../../apps/backend/src/http-app';
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Backend RPC types - AUTO-GENERATED, DO NOT EDIT MANUALLY
3
+ *
4
+ * Generated from apps/backend/src/index.ts
5
+ * Run 'pnpm run generate-types' to regenerate this file
6
+ *
7
+ * These types provide end-to-end type safety between the backend API
8
+ * and the frontend hooks/fetchers.
9
+ */
10
+ export {};
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Axios client configuration for OMS API
3
+ */
4
+ import { AxiosInstance, AxiosError } from 'axios';
5
+ export interface ApiClientConfig {
6
+ baseURL: string;
7
+ onError?: (error: AxiosError) => void;
8
+ }
9
+ /**
10
+ * Initialize the API client with configuration
11
+ */
12
+ export declare function initializeApiClient(config: ApiClientConfig): AxiosInstance;
13
+ /**
14
+ * Get the current API client instance
15
+ */
16
+ export declare function getApiClient(): AxiosInstance;
17
+ /**
18
+ * Reset the API client (mainly for testing)
19
+ */
20
+ export declare function resetApiClient(): void;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Axios client configuration for OMS API
3
+ */
4
+ import axios from 'axios';
5
+ let apiClient = null;
6
+ /**
7
+ * Initialize the API client with configuration
8
+ */
9
+ export function initializeApiClient(config) {
10
+ apiClient = axios.create({
11
+ baseURL: config.baseURL,
12
+ headers: {
13
+ 'Content-Type': 'application/json',
14
+ },
15
+ });
16
+ // Response interceptor for error handling
17
+ apiClient.interceptors.response.use((response) => response, (error) => {
18
+ // Call custom error handler if provided
19
+ if (config.onError) {
20
+ config.onError(error);
21
+ }
22
+ return Promise.reject(error);
23
+ });
24
+ return apiClient;
25
+ }
26
+ /**
27
+ * Get the current API client instance
28
+ */
29
+ export function getApiClient() {
30
+ if (!apiClient) {
31
+ throw new Error('API client not initialized. Make sure to wrap your app with ApiClientProvider.');
32
+ }
33
+ return apiClient;
34
+ }
35
+ /**
36
+ * Reset the API client (mainly for testing)
37
+ */
38
+ export function resetApiClient() {
39
+ apiClient = null;
40
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Brand 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 brand configuration by slug
11
+ *
12
+ * @param slug - Brand slug (e.g., 'my-brand')
13
+ * @returns Brand with metaPixelId and other configuration
14
+ */
15
+ export declare function fetchBrandBySlug(slug: string): Promise<{
16
+ name: string;
17
+ id: string;
18
+ slug: string;
19
+ logoUrl: string;
20
+ siteUrl: string;
21
+ domain: string;
22
+ metaPixelId: string;
23
+ createdAt: string;
24
+ updatedAt: string;
25
+ }>;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Brand 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 brand configuration by slug
13
+ *
14
+ * @param slug - Brand slug (e.g., 'my-brand')
15
+ * @returns Brand with metaPixelId and other configuration
16
+ */
17
+ export async function fetchBrandBySlug(slug) {
18
+ const clients = createRpcClients(API_URL);
19
+ const res = await clients.brands[':slug'].$get({
20
+ param: { slug },
21
+ });
22
+ if (!res.ok) {
23
+ throw new Error(`Failed to fetch brand: ${res.statusText}`);
24
+ }
25
+ return res.json();
26
+ }