@instockng/api-client 1.0.11 → 1.0.12

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 (169) hide show
  1. package/package.json +2 -2
  2. package/dist/apps/backend/src/http-app.d.ts +0 -40
  3. package/dist/apps/backend/src/http-app.js +0 -134
  4. package/dist/apps/backend/src/lib/brand-response.d.ts +0 -16
  5. package/dist/apps/backend/src/lib/brand-response.js +0 -8
  6. package/dist/apps/backend/src/lib/cart-helpers.d.ts +0 -286
  7. package/dist/apps/backend/src/lib/cart-helpers.js +0 -121
  8. package/dist/apps/backend/src/lib/cart-recovery.d.ts +0 -30
  9. package/dist/apps/backend/src/lib/cart-recovery.js +0 -147
  10. package/dist/apps/backend/src/lib/cart-response.d.ts +0 -123
  11. package/dist/apps/backend/src/lib/cart-response.js +0 -150
  12. package/dist/apps/backend/src/lib/clerk.d.ts +0 -18
  13. package/dist/apps/backend/src/lib/clerk.js +0 -190
  14. package/dist/apps/backend/src/lib/delivery-zone-response.d.ts +0 -66
  15. package/dist/apps/backend/src/lib/delivery-zone-response.js +0 -24
  16. package/dist/apps/backend/src/lib/discount-code-response.d.ts +0 -44
  17. package/dist/apps/backend/src/lib/discount-code-response.js +0 -19
  18. package/dist/apps/backend/src/lib/discount.d.ts +0 -20
  19. package/dist/apps/backend/src/lib/discount.js +0 -35
  20. package/dist/apps/backend/src/lib/inventory.d.ts +0 -26
  21. package/dist/apps/backend/src/lib/inventory.js +0 -160
  22. package/dist/apps/backend/src/lib/meta-capi.d.ts +0 -53
  23. package/dist/apps/backend/src/lib/meta-capi.js +0 -151
  24. package/dist/apps/backend/src/lib/openapi.d.ts +0 -36
  25. package/dist/apps/backend/src/lib/openapi.js +0 -69
  26. package/dist/apps/backend/src/lib/order-recovery.d.ts +0 -465
  27. package/dist/apps/backend/src/lib/order-recovery.js +0 -378
  28. package/dist/apps/backend/src/lib/order-response.d.ts +0 -140
  29. package/dist/apps/backend/src/lib/order-response.js +0 -61
  30. package/dist/apps/backend/src/lib/pricing.d.ts +0 -39
  31. package/dist/apps/backend/src/lib/pricing.js +0 -62
  32. package/dist/apps/backend/src/lib/prisma.d.ts +0 -9
  33. package/dist/apps/backend/src/lib/prisma.js +0 -30
  34. package/dist/apps/backend/src/lib/product-response.d.ts +0 -84
  35. package/dist/apps/backend/src/lib/product-response.js +0 -29
  36. package/dist/apps/backend/src/lib/sentry.d.ts +0 -48
  37. package/dist/apps/backend/src/lib/sentry.js +0 -180
  38. package/dist/apps/backend/src/lib/utils.d.ts +0 -32
  39. package/dist/apps/backend/src/lib/utils.js +0 -63
  40. package/dist/apps/backend/src/middleware/clerk-auth.d.ts +0 -8
  41. package/dist/apps/backend/src/middleware/clerk-auth.js +0 -89
  42. package/dist/apps/backend/src/middleware/cors.d.ts +0 -8
  43. package/dist/apps/backend/src/middleware/cors.js +0 -11
  44. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.d.ts +0 -62
  45. package/dist/apps/backend/src/notifications/producers/meta-capi-producer.js +0 -180
  46. package/dist/apps/backend/src/notifications/producers/order-notification.d.ts +0 -9
  47. package/dist/apps/backend/src/notifications/producers/order-notification.js +0 -18
  48. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.d.ts +0 -10
  49. package/dist/apps/backend/src/notifications/producers/prospect-recovery-notification.js +0 -11
  50. package/dist/apps/backend/src/routes/admin/abandoned-carts.d.ts +0 -609
  51. package/dist/apps/backend/src/routes/admin/abandoned-carts.js +0 -194
  52. package/dist/apps/backend/src/routes/admin/brands.d.ts +0 -183
  53. package/dist/apps/backend/src/routes/admin/brands.js +0 -118
  54. package/dist/apps/backend/src/routes/admin/customers.d.ts +0 -310
  55. package/dist/apps/backend/src/routes/admin/customers.js +0 -39
  56. package/dist/apps/backend/src/routes/admin/delivery-zones.d.ts +0 -454
  57. package/dist/apps/backend/src/routes/admin/delivery-zones.js +0 -300
  58. package/dist/apps/backend/src/routes/admin/discount-codes.d.ts +0 -488
  59. package/dist/apps/backend/src/routes/admin/discount-codes.js +0 -418
  60. package/dist/apps/backend/src/routes/admin/inventory.d.ts +0 -273
  61. package/dist/apps/backend/src/routes/admin/inventory.js +0 -199
  62. package/dist/apps/backend/src/routes/admin/orders.d.ts +0 -1792
  63. package/dist/apps/backend/src/routes/admin/orders.js +0 -552
  64. package/dist/apps/backend/src/routes/admin/products.d.ts +0 -868
  65. package/dist/apps/backend/src/routes/admin/products.js +0 -126
  66. package/dist/apps/backend/src/routes/admin/stats.d.ts +0 -292
  67. package/dist/apps/backend/src/routes/admin/stats.js +0 -55
  68. package/dist/apps/backend/src/routes/admin/variants.d.ts +0 -239
  69. package/dist/apps/backend/src/routes/admin/variants.js +0 -197
  70. package/dist/apps/backend/src/routes/admin/warehouses.d.ts +0 -375
  71. package/dist/apps/backend/src/routes/admin/warehouses.js +0 -123
  72. package/dist/apps/backend/src/routes/public/brands.d.ts +0 -41
  73. package/dist/apps/backend/src/routes/public/brands.js +0 -39
  74. package/dist/apps/backend/src/routes/public/carts.d.ts +0 -2675
  75. package/dist/apps/backend/src/routes/public/carts.js +0 -778
  76. package/dist/apps/backend/src/routes/public/delivery-zones.d.ts +0 -37
  77. package/dist/apps/backend/src/routes/public/delivery-zones.js +0 -64
  78. package/dist/apps/backend/src/routes/public/orders.d.ts +0 -613
  79. package/dist/apps/backend/src/routes/public/orders.js +0 -184
  80. package/dist/apps/backend/src/routes/public/products.d.ts +0 -453
  81. package/dist/apps/backend/src/routes/public/products.js +0 -133
  82. package/dist/apps/backend/src/types/index.d.ts +0 -43
  83. package/dist/apps/backend/src/types/index.js +0 -2
  84. package/dist/apps/backend/src/validators/brand.d.ts +0 -21
  85. package/dist/apps/backend/src/validators/brand.js +0 -19
  86. package/dist/apps/backend/src/validators/delivery-zone.d.ts +0 -35
  87. package/dist/apps/backend/src/validators/delivery-zone.js +0 -55
  88. package/dist/apps/backend/src/validators/discount-code.d.ts +0 -74
  89. package/dist/apps/backend/src/validators/discount-code.js +0 -50
  90. package/dist/apps/backend/src/validators/inventory.d.ts +0 -20
  91. package/dist/apps/backend/src/validators/inventory.js +0 -15
  92. package/dist/apps/backend/src/validators/order.d.ts +0 -58
  93. package/dist/apps/backend/src/validators/order.js +0 -62
  94. package/dist/apps/backend/src/validators/product.d.ts +0 -18
  95. package/dist/apps/backend/src/validators/product.js +0 -19
  96. package/dist/apps/backend/src/validators/variant.d.ts +0 -19
  97. package/dist/apps/backend/src/validators/variant.js +0 -19
  98. package/dist/apps/backend/src/validators/warehouse.d.ts +0 -15
  99. package/dist/apps/backend/src/validators/warehouse.js +0 -15
  100. /package/dist/{packages/api-client/src/backend-types.d.ts → backend-types.d.ts} +0 -0
  101. /package/dist/{packages/api-client/src/backend-types.js → backend-types.js} +0 -0
  102. /package/dist/{packages/api-client/src/client.d.ts → client.d.ts} +0 -0
  103. /package/dist/{packages/api-client/src/client.js → client.js} +0 -0
  104. /package/dist/{packages/api-client/src/enum-types.d.ts → enum-types.d.ts} +0 -0
  105. /package/dist/{packages/api-client/src/enum-types.js → enum-types.js} +0 -0
  106. /package/dist/{packages/api-client/src/fetchers → fetchers}/brands.d.ts +0 -0
  107. /package/dist/{packages/api-client/src/fetchers → fetchers}/brands.js +0 -0
  108. /package/dist/{packages/api-client/src/fetchers → fetchers}/carts.d.ts +0 -0
  109. /package/dist/{packages/api-client/src/fetchers → fetchers}/carts.js +0 -0
  110. /package/dist/{packages/api-client/src/fetchers → fetchers}/delivery-zones.d.ts +0 -0
  111. /package/dist/{packages/api-client/src/fetchers → fetchers}/delivery-zones.js +0 -0
  112. /package/dist/{packages/api-client/src/fetchers → fetchers}/index.d.ts +0 -0
  113. /package/dist/{packages/api-client/src/fetchers → fetchers}/index.js +0 -0
  114. /package/dist/{packages/api-client/src/fetchers → fetchers}/orders.d.ts +0 -0
  115. /package/dist/{packages/api-client/src/fetchers → fetchers}/orders.js +0 -0
  116. /package/dist/{packages/api-client/src/fetchers → fetchers}/products.d.ts +0 -0
  117. /package/dist/{packages/api-client/src/fetchers → fetchers}/products.js +0 -0
  118. /package/dist/{packages/api-client/src/hooks → hooks}/admin/abandoned-carts.d.ts +0 -0
  119. /package/dist/{packages/api-client/src/hooks → hooks}/admin/abandoned-carts.js +0 -0
  120. /package/dist/{packages/api-client/src/hooks → hooks}/admin/brands.d.ts +0 -0
  121. /package/dist/{packages/api-client/src/hooks → hooks}/admin/brands.js +0 -0
  122. /package/dist/{packages/api-client/src/hooks → hooks}/admin/customers.d.ts +0 -0
  123. /package/dist/{packages/api-client/src/hooks → hooks}/admin/customers.js +0 -0
  124. /package/dist/{packages/api-client/src/hooks → hooks}/admin/delivery-zones.d.ts +0 -0
  125. /package/dist/{packages/api-client/src/hooks → hooks}/admin/delivery-zones.js +0 -0
  126. /package/dist/{packages/api-client/src/hooks → hooks}/admin/discount-codes.d.ts +0 -0
  127. /package/dist/{packages/api-client/src/hooks → hooks}/admin/discount-codes.js +0 -0
  128. /package/dist/{packages/api-client/src/hooks → hooks}/admin/index.d.ts +0 -0
  129. /package/dist/{packages/api-client/src/hooks → hooks}/admin/index.js +0 -0
  130. /package/dist/{packages/api-client/src/hooks → hooks}/admin/inventory.d.ts +0 -0
  131. /package/dist/{packages/api-client/src/hooks → hooks}/admin/inventory.js +0 -0
  132. /package/dist/{packages/api-client/src/hooks → hooks}/admin/orders.d.ts +0 -0
  133. /package/dist/{packages/api-client/src/hooks → hooks}/admin/orders.js +0 -0
  134. /package/dist/{packages/api-client/src/hooks → hooks}/admin/products.d.ts +0 -0
  135. /package/dist/{packages/api-client/src/hooks → hooks}/admin/products.js +0 -0
  136. /package/dist/{packages/api-client/src/hooks → hooks}/admin/stats.d.ts +0 -0
  137. /package/dist/{packages/api-client/src/hooks → hooks}/admin/stats.js +0 -0
  138. /package/dist/{packages/api-client/src/hooks → hooks}/admin/variants.d.ts +0 -0
  139. /package/dist/{packages/api-client/src/hooks → hooks}/admin/variants.js +0 -0
  140. /package/dist/{packages/api-client/src/hooks → hooks}/admin/warehouses.d.ts +0 -0
  141. /package/dist/{packages/api-client/src/hooks → hooks}/admin/warehouses.js +0 -0
  142. /package/dist/{packages/api-client/src/hooks → hooks}/public/brands.d.ts +0 -0
  143. /package/dist/{packages/api-client/src/hooks → hooks}/public/brands.js +0 -0
  144. /package/dist/{packages/api-client/src/hooks → hooks}/public/carts.d.ts +0 -0
  145. /package/dist/{packages/api-client/src/hooks → hooks}/public/carts.js +0 -0
  146. /package/dist/{packages/api-client/src/hooks → hooks}/public/delivery-zones.d.ts +0 -0
  147. /package/dist/{packages/api-client/src/hooks → hooks}/public/delivery-zones.js +0 -0
  148. /package/dist/{packages/api-client/src/hooks → hooks}/public/index.d.ts +0 -0
  149. /package/dist/{packages/api-client/src/hooks → hooks}/public/index.js +0 -0
  150. /package/dist/{packages/api-client/src/hooks → hooks}/public/orders.d.ts +0 -0
  151. /package/dist/{packages/api-client/src/hooks → hooks}/public/orders.js +0 -0
  152. /package/dist/{packages/api-client/src/hooks → hooks}/public/products.d.ts +0 -0
  153. /package/dist/{packages/api-client/src/hooks → hooks}/public/products.js +0 -0
  154. /package/dist/{packages/api-client/src/hooks → hooks}/use-query-unwrapped.d.ts +0 -0
  155. /package/dist/{packages/api-client/src/hooks → hooks}/use-query-unwrapped.js +0 -0
  156. /package/dist/{packages/api-client/src/hooks → hooks}/useApiConfig.d.ts +0 -0
  157. /package/dist/{packages/api-client/src/hooks → hooks}/useApiConfig.js +0 -0
  158. /package/dist/{packages/api-client/src/index.d.ts → index.d.ts} +0 -0
  159. /package/dist/{packages/api-client/src/index.js → index.js} +0 -0
  160. /package/dist/{packages/api-client/src/provider.d.ts → provider.d.ts} +0 -0
  161. /package/dist/{packages/api-client/src/provider.js → provider.js} +0 -0
  162. /package/dist/{packages/api-client/src/rpc-client.d.ts → rpc-client.d.ts} +0 -0
  163. /package/dist/{packages/api-client/src/rpc-client.js → rpc-client.js} +0 -0
  164. /package/dist/{packages/api-client/src/rpc-types.d.ts → rpc-types.d.ts} +0 -0
  165. /package/dist/{packages/api-client/src/rpc-types.js → rpc-types.js} +0 -0
  166. /package/dist/{packages/api-client/src/types.d.ts → types.d.ts} +0 -0
  167. /package/dist/{packages/api-client/src/types.js → types.js} +0 -0
  168. /package/dist/{packages/api-client/src/utils → utils}/query-keys.d.ts +0 -0
  169. /package/dist/{packages/api-client/src/utils → utils}/query-keys.js +0 -0
@@ -1,180 +0,0 @@
1
- /**
2
- * Meta Conversions API Event Producer
3
- *
4
- * Queues Meta CAPI events for processing by the queue consumer.
5
- */
6
- import { generateEventId } from '../../lib/meta-capi';
7
- /**
8
- * Queue an AddToCart event
9
- */
10
- export async function enqueueAddToCartEvent(env, data) {
11
- if (!env.META_CAPI_QUEUE) {
12
- console.warn('[Meta CAPI] Queue not configured, skipping AddToCart event');
13
- return;
14
- }
15
- if (!data.pixelId) {
16
- console.log('[Meta CAPI] No pixel ID, skipping AddToCart event');
17
- return;
18
- }
19
- const message = {
20
- pixelId: data.pixelId,
21
- eventName: 'AddToCart',
22
- eventId: generateEventId('cart', data.cartId, `item_${data.itemId}`),
23
- eventTime: Math.floor(Date.now() / 1000),
24
- eventSourceUrl: `${data.brandSiteUrl}/product/${data.productSlug}`,
25
- userData: {
26
- email: data.customerEmail || undefined,
27
- phone: data.customerPhone || undefined,
28
- clientIpAddress: data.clientIpAddress,
29
- clientUserAgent: data.clientUserAgent,
30
- fbc: data.fbc,
31
- fbp: data.fbp,
32
- },
33
- customData: {
34
- value: data.price * data.quantity, // Total value
35
- currency: 'NGN',
36
- contents: [{
37
- id: data.sku,
38
- quantity: data.quantity,
39
- item_price: data.price,
40
- }],
41
- contentName: data.productName,
42
- contentType: 'product',
43
- numItems: data.quantity,
44
- },
45
- };
46
- await env.META_CAPI_QUEUE.send(message);
47
- console.log(`[Meta CAPI] Queued AddToCart event: ${message.eventId}`);
48
- }
49
- /**
50
- * Queue an InitiateCheckout event
51
- */
52
- export async function enqueueInitiateCheckoutEvent(env, data) {
53
- if (!env.META_CAPI_QUEUE) {
54
- console.warn('[Meta CAPI] Queue not configured, skipping InitiateCheckout event');
55
- return;
56
- }
57
- if (!data.pixelId) {
58
- console.log('[Meta CAPI] No pixel ID, skipping InitiateCheckout event');
59
- return;
60
- }
61
- const message = {
62
- pixelId: data.pixelId,
63
- eventName: 'InitiateCheckout',
64
- eventId: generateEventId('cart', data.cartId, 'checkout'),
65
- eventTime: Math.floor(Date.now() / 1000),
66
- eventSourceUrl: `${data.brandSiteUrl}/checkout`,
67
- userData: {
68
- email: data.customerEmail || undefined,
69
- phone: data.customerPhone || undefined,
70
- clientIpAddress: data.clientIpAddress,
71
- clientUserAgent: data.clientUserAgent,
72
- fbc: data.fbc,
73
- fbp: data.fbp,
74
- },
75
- customData: {
76
- value: data.cartTotal,
77
- currency: 'NGN',
78
- numItems: data.itemCount,
79
- },
80
- };
81
- await env.META_CAPI_QUEUE.send(message);
82
- console.log(`[Meta CAPI] Queued InitiateCheckout event: ${message.eventId}`);
83
- }
84
- /**
85
- * Queue a Purchase event from an order
86
- *
87
- * For orders with multiple products, uses the brand's homepage
88
- * since there's no single product page to reference.
89
- */
90
- export async function enqueuePurchaseEvent(env, order, options) {
91
- if (!env.META_CAPI_QUEUE) {
92
- console.warn('[Meta CAPI] Queue not configured, skipping Purchase event');
93
- return;
94
- }
95
- const pixelId = order.brand.metaPixelId;
96
- if (!pixelId) {
97
- console.log('[Meta CAPI] No pixel ID for brand, skipping Purchase event');
98
- return;
99
- }
100
- const message = {
101
- pixelId,
102
- eventName: 'Purchase',
103
- eventId: generateEventId('order', order.id),
104
- eventTime: Math.floor(Date.now() / 1000),
105
- // Use brand homepage for multi-product orders
106
- eventSourceUrl: order.brand.siteUrl,
107
- userData: {
108
- email: order.email || undefined,
109
- phone: order.phone,
110
- firstName: order.firstName,
111
- lastName: order.lastName,
112
- city: order.city,
113
- state: order.deliveryZone.state.name,
114
- country: 'ng', // Nigeria
115
- clientIpAddress: options?.clientIpAddress,
116
- clientUserAgent: options?.clientUserAgent,
117
- fbc: options?.fbc,
118
- fbp: options?.fbp,
119
- },
120
- customData: {
121
- value: Number(order.totalPrice),
122
- currency: 'NGN',
123
- contents: order.items.map((item) => ({
124
- id: item.variant.sku,
125
- quantity: item.quantity,
126
- item_price: Number(item.priceAtPurchase),
127
- })),
128
- contentType: 'product',
129
- numItems: order.items.reduce((sum, item) => sum + item.quantity, 0),
130
- },
131
- };
132
- await env.META_CAPI_QUEUE.send(message);
133
- console.log(`[Meta CAPI] Queued Purchase event: ${message.eventId}`);
134
- }
135
- /**
136
- * Queue a ConfirmedPurchase event when order is delivered & paid
137
- *
138
- * This event tracks successful order completion (delivered + paid),
139
- * which is a higher value conversion signal than initial purchase.
140
- */
141
- export async function enqueueConfirmedPurchaseEvent(env, order) {
142
- if (!env.META_CAPI_QUEUE) {
143
- console.warn('[Meta CAPI] Queue not configured, skipping ConfirmedPurchase event');
144
- return;
145
- }
146
- const pixelId = order.brand.metaPixelId;
147
- if (!pixelId) {
148
- console.log('[Meta CAPI] No pixel ID for brand, skipping ConfirmedPurchase event');
149
- return;
150
- }
151
- const message = {
152
- pixelId,
153
- eventName: 'ConfirmedPurchase',
154
- eventId: generateEventId('order', order.id, 'confirmed'),
155
- eventTime: Math.floor(Date.now() / 1000),
156
- eventSourceUrl: order.brand.siteUrl,
157
- userData: {
158
- email: order.email || undefined,
159
- phone: order.phone,
160
- firstName: order.firstName,
161
- lastName: order.lastName,
162
- city: order.city,
163
- state: order.deliveryZone.state.name,
164
- country: 'ng', // Nigeria
165
- },
166
- customData: {
167
- value: Number(order.totalPrice),
168
- currency: 'NGN',
169
- contents: order.items.map((item) => ({
170
- id: item.variant.sku,
171
- quantity: item.quantity,
172
- item_price: Number(item.priceAtPurchase),
173
- })),
174
- contentType: 'product',
175
- numItems: order.items.reduce((sum, item) => sum + item.quantity, 0),
176
- },
177
- };
178
- await env.META_CAPI_QUEUE.send(message);
179
- console.log(`[Meta CAPI] Queued ConfirmedPurchase event: ${message.eventId}`);
180
- }
@@ -1,9 +0,0 @@
1
- import type { Env } from '../../types';
2
- export type OrderNotificationType = 'order_confirmation' | 'order_shipped' | 'order_delivered' | 'order_cancelled';
3
- export type MessageType = {
4
- messageType: 'order_notification';
5
- type: OrderNotificationType;
6
- orderId: string;
7
- timestamp: string;
8
- };
9
- export declare function enqueueOrderNotification(env: Env, type: OrderNotificationType, orderId: string): Promise<void>;
@@ -1,18 +0,0 @@
1
- export async function enqueueOrderNotification(env, type, orderId) {
2
- if (env.WHATSAPP_QUEUE) {
3
- await env.WHATSAPP_QUEUE.send({
4
- messageType: 'order_notification',
5
- type,
6
- orderId,
7
- timestamp: new Date().toISOString(),
8
- });
9
- }
10
- if (env.EMAIL_QUEUE) {
11
- await env.EMAIL_QUEUE.send({
12
- messageType: 'order_notification',
13
- type,
14
- orderId,
15
- timestamp: new Date().toISOString(),
16
- });
17
- }
18
- }
@@ -1,10 +0,0 @@
1
- import type { Env } from '../../types';
2
- export type ProspectRecoveryNotificationType = 'prospect_recovery_reminder' | 'prospect_recovery' | 'prospect_recovery_final';
3
- export type MessageType = {
4
- messageType: 'prospect_recovery';
5
- type: ProspectRecoveryNotificationType;
6
- orderId: string;
7
- attemptNumber: number;
8
- timestamp: string;
9
- };
10
- export declare function enqueueProspectRecoveryNotification(env: Env, type: ProspectRecoveryNotificationType, orderId: string, attemptNumber: number): Promise<void>;
@@ -1,11 +0,0 @@
1
- export async function enqueueProspectRecoveryNotification(env, type, orderId, attemptNumber) {
2
- if (env.EMAIL_QUEUE) {
3
- await env.EMAIL_QUEUE.send({
4
- messageType: 'prospect_recovery',
5
- type,
6
- orderId,
7
- attemptNumber,
8
- timestamp: new Date().toISOString(),
9
- });
10
- }
11
- }