@instockng/storefront-ui 1.0.53 → 1.0.55

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 (228) hide show
  1. package/dist/components/Checkout.d.ts +2 -1
  2. package/dist/components/Checkout.d.ts.map +1 -1
  3. package/dist/components/ShoppingCart.d.ts +4 -1
  4. package/dist/components/ShoppingCart.d.ts.map +1 -1
  5. package/dist/index101.mjs +1 -1
  6. package/dist/index102.mjs +1 -1
  7. package/dist/index103.mjs +8 -8
  8. package/dist/index104.mjs +6 -6
  9. package/dist/index105.mjs +3 -3
  10. package/dist/index106.mjs +1 -1
  11. package/dist/index107.mjs +1 -1
  12. package/dist/index108.mjs +1 -1
  13. package/dist/index109.mjs +2 -2
  14. package/dist/index11.mjs +74 -67
  15. package/dist/index110.mjs +2 -2
  16. package/dist/index111.mjs +3 -3
  17. package/dist/index112.mjs +1 -1
  18. package/dist/index113.mjs +3 -3
  19. package/dist/index114.mjs +2 -2
  20. package/dist/index115.mjs +2 -2
  21. package/dist/index116.mjs +1 -1
  22. package/dist/index117.mjs +3 -3
  23. package/dist/index118.mjs +1 -1
  24. package/dist/index119.mjs +1 -1
  25. package/dist/index120.mjs +3 -3
  26. package/dist/index121.mjs +2 -2
  27. package/dist/index122.mjs +4 -4
  28. package/dist/index123.mjs +1 -1
  29. package/dist/index124.mjs +3 -3
  30. package/dist/index125.mjs +4 -4
  31. package/dist/index126.mjs +1 -1
  32. package/dist/index127.mjs +1 -1
  33. package/dist/index128.mjs +1 -1
  34. package/dist/index129.mjs +1 -1
  35. package/dist/index13.mjs +266 -238
  36. package/dist/index130.mjs +1 -1
  37. package/dist/index131.mjs +1 -1
  38. package/dist/index132.mjs +1 -1
  39. package/dist/index133.mjs +2 -2
  40. package/dist/index134.mjs +3 -3
  41. package/dist/index137.mjs +1 -1
  42. package/dist/index139.mjs +2 -21
  43. package/dist/index140.mjs +2 -56
  44. package/dist/index141.mjs +2 -29
  45. package/dist/index142.mjs +2 -7
  46. package/dist/index143.mjs +16 -50
  47. package/dist/index144.mjs +32 -6
  48. package/dist/index145.mjs +37 -11
  49. package/dist/index146.mjs +18 -7
  50. package/dist/index147.mjs +18 -28
  51. package/dist/index148.mjs +2 -2
  52. package/dist/index149.mjs +20 -70
  53. package/dist/index150.mjs +42 -163
  54. package/dist/index152.mjs +30 -2
  55. package/dist/index153.mjs +18 -2
  56. package/dist/index154.mjs +2 -2
  57. package/dist/index155.mjs +2 -18
  58. package/dist/index156.mjs +2 -32
  59. package/dist/index157.mjs +2 -38
  60. package/dist/index158.mjs +67 -13
  61. package/dist/index159.mjs +2 -18
  62. package/dist/index160.mjs +53 -2
  63. package/dist/index161.mjs +2 -20
  64. package/dist/index162.mjs +29 -39
  65. package/dist/index163.mjs +152 -2
  66. package/dist/index164.mjs +2 -30
  67. package/dist/index165.mjs +2 -18
  68. package/dist/index166.mjs +19 -2
  69. package/dist/index167.mjs +2 -2
  70. package/dist/index168.mjs +2 -2
  71. package/dist/index169.mjs +26 -2
  72. package/dist/index170.mjs +2 -72
  73. package/dist/index171.mjs +2 -2
  74. package/dist/index172.mjs +20 -49
  75. package/dist/index173.mjs +23 -2
  76. package/dist/index174.mjs +2 -36
  77. package/dist/index175.mjs +2 -152
  78. package/dist/index176.mjs +2 -2
  79. package/dist/index177.mjs +23 -2
  80. package/dist/index178.mjs +2 -19
  81. package/dist/index179.mjs +23 -2
  82. package/dist/index181.mjs +2 -26
  83. package/dist/index182.mjs +2 -2
  84. package/dist/index183.mjs +23 -2
  85. package/dist/index184.mjs +2 -24
  86. package/dist/index185.mjs +15 -15
  87. package/dist/index186.mjs +2 -2
  88. package/dist/index187.mjs +2 -2
  89. package/dist/index188.mjs +2 -2
  90. package/dist/index189.mjs +2 -23
  91. package/dist/index190.mjs +2 -2
  92. package/dist/index191.mjs +2 -23
  93. package/dist/index192.mjs +2 -2
  94. package/dist/index193.mjs +2 -2
  95. package/dist/index194.mjs +127 -2
  96. package/dist/index195.mjs +2 -23
  97. package/dist/index196.mjs +74 -2
  98. package/dist/index197.mjs +71 -20
  99. package/dist/index198.mjs +21 -2
  100. package/dist/index199.mjs +56 -2
  101. package/dist/index200.mjs +29 -2
  102. package/dist/index201.mjs +7 -2
  103. package/dist/index202.mjs +52 -2
  104. package/dist/index203.mjs +6 -2
  105. package/dist/index204.mjs +12 -2
  106. package/dist/index205.mjs +7 -2
  107. package/dist/index206.mjs +28 -127
  108. package/dist/index207.mjs +2 -2
  109. package/dist/index208.mjs +69 -73
  110. package/dist/index209.mjs +164 -71
  111. package/dist/index210.mjs +2 -31
  112. package/dist/index211.mjs +2 -11
  113. package/dist/index212.mjs +2 -4
  114. package/dist/index213.mjs +2 -4
  115. package/dist/index214.mjs +2 -13
  116. package/dist/index215.mjs +2 -7
  117. package/dist/index216.mjs +107 -11
  118. package/dist/index217.mjs +2 -5
  119. package/dist/index218.mjs +2 -33
  120. package/dist/index219.mjs +35 -29
  121. package/dist/index220.mjs +2 -28
  122. package/dist/index221.mjs +241 -58
  123. package/dist/index222.mjs +2 -2
  124. package/dist/index223.mjs +33 -2
  125. package/dist/index224.mjs +65 -2
  126. package/dist/index225.mjs +25 -2
  127. package/dist/index226.mjs +2 -2
  128. package/dist/index228.mjs +2 -2
  129. package/dist/index229.mjs +2 -2
  130. package/dist/index230.mjs +2 -108
  131. package/dist/index231.mjs +2 -2
  132. package/dist/index232.mjs +2 -2
  133. package/dist/index233.mjs +2 -37
  134. package/dist/index234.mjs +2 -2
  135. package/dist/index235.mjs +2 -2
  136. package/dist/index236.mjs +2 -244
  137. package/dist/index237.mjs +2 -2
  138. package/dist/index238.mjs +4 -33
  139. package/dist/index239.mjs +2 -65
  140. package/dist/index240.mjs +2 -25
  141. package/dist/index241.mjs +31 -2
  142. package/dist/index242.mjs +11 -2
  143. package/dist/index243.mjs +4 -2
  144. package/dist/index244.mjs +4 -2
  145. package/dist/index245.mjs +13 -2
  146. package/dist/index246.mjs +7 -2
  147. package/dist/index247.mjs +12 -2
  148. package/dist/index248.mjs +5 -2
  149. package/dist/index249.mjs +33 -2
  150. package/dist/index250.mjs +31 -4
  151. package/dist/index251.mjs +28 -2
  152. package/dist/index252.mjs +61 -2
  153. package/dist/index253.mjs +2 -3
  154. package/dist/index254.mjs +2 -2
  155. package/dist/index255.mjs +18 -2
  156. package/dist/index256.mjs +46 -16
  157. package/dist/index257.mjs +2 -13
  158. package/dist/index258.mjs +2 -6
  159. package/dist/index259.mjs +2 -30
  160. package/dist/index261.mjs +91 -2
  161. package/dist/index262.mjs +2 -18
  162. package/dist/index263.mjs +3 -47
  163. package/dist/index264.mjs +2 -2
  164. package/dist/index265.mjs +2 -2
  165. package/dist/index266.mjs +17 -2
  166. package/dist/index267.mjs +13 -2
  167. package/dist/index268.mjs +6 -91
  168. package/dist/index269.mjs +30 -2
  169. package/dist/index33.mjs +1 -1
  170. package/dist/index34.mjs +1 -1
  171. package/dist/index35.mjs +1 -1
  172. package/dist/index36.mjs +1 -1
  173. package/dist/index37.mjs +1 -1
  174. package/dist/index38.mjs +2 -2
  175. package/dist/index40.mjs +1 -1
  176. package/dist/index43.mjs +3 -3
  177. package/dist/index47.mjs +1 -1
  178. package/dist/index52.mjs +17 -17
  179. package/dist/index53.mjs +2 -2
  180. package/dist/index54.mjs +1 -1
  181. package/dist/index55.mjs +1 -1
  182. package/dist/index56.mjs +1 -1
  183. package/dist/index57.mjs +1 -1
  184. package/dist/index58.mjs +1 -1
  185. package/dist/index59.mjs +1 -1
  186. package/dist/index60.mjs +1 -1
  187. package/dist/index61.mjs +1 -1
  188. package/dist/index62.mjs +1 -1
  189. package/dist/index63.mjs +1 -1
  190. package/dist/index64.mjs +1 -1
  191. package/dist/index65.mjs +23 -4
  192. package/dist/index66.mjs +2 -24
  193. package/dist/index67.mjs +7 -7
  194. package/dist/index68.mjs +23 -2
  195. package/dist/index69.mjs +73 -21
  196. package/dist/index70.mjs +14 -74
  197. package/dist/index71.mjs +62 -14
  198. package/dist/index72.mjs +4 -62
  199. package/dist/index73.mjs +2 -34
  200. package/dist/index74.mjs +5 -42
  201. package/dist/index75.mjs +1134 -2
  202. package/dist/index76.mjs +19 -5
  203. package/dist/index77.mjs +40 -1119
  204. package/dist/index78.mjs +27 -14
  205. package/dist/index79.mjs +2 -55
  206. package/dist/index80.mjs +2 -33
  207. package/dist/index81.mjs +34 -2
  208. package/dist/index82.mjs +38 -230
  209. package/dist/index83.mjs +233 -4
  210. package/dist/index84.mjs +5 -133
  211. package/dist/index85.mjs +129 -63
  212. package/dist/index86.mjs +67 -86
  213. package/dist/index87.mjs +85 -27
  214. package/dist/index88.mjs +28 -8
  215. package/dist/index89.mjs +8 -74
  216. package/dist/index90.mjs +74 -3
  217. package/dist/index91.mjs +4 -2
  218. package/dist/index92.mjs +2 -83
  219. package/dist/index93.mjs +81 -52
  220. package/dist/index94.mjs +53 -5
  221. package/dist/index95.mjs +5 -4
  222. package/dist/index96.mjs +4 -178
  223. package/dist/index97.mjs +174 -48
  224. package/dist/index98.mjs +51 -67
  225. package/dist/index99.mjs +69 -2
  226. package/package.json +2 -2
  227. package/src/components/Checkout.tsx +36 -3
  228. package/src/components/ShoppingCart.tsx +10 -3
package/dist/index98.mjs CHANGED
@@ -1,72 +1,56 @@
1
1
  'use client';
2
- const e = {
3
- Continue: 100,
4
- SwitchingProtocols: 101,
5
- Processing: 102,
6
- EarlyHints: 103,
7
- Ok: 200,
8
- Created: 201,
9
- Accepted: 202,
10
- NonAuthoritativeInformation: 203,
11
- NoContent: 204,
12
- ResetContent: 205,
13
- PartialContent: 206,
14
- MultiStatus: 207,
15
- AlreadyReported: 208,
16
- ImUsed: 226,
17
- MultipleChoices: 300,
18
- MovedPermanently: 301,
19
- Found: 302,
20
- SeeOther: 303,
21
- NotModified: 304,
22
- UseProxy: 305,
23
- Unused: 306,
24
- TemporaryRedirect: 307,
25
- PermanentRedirect: 308,
26
- BadRequest: 400,
27
- Unauthorized: 401,
28
- PaymentRequired: 402,
29
- Forbidden: 403,
30
- NotFound: 404,
31
- MethodNotAllowed: 405,
32
- NotAcceptable: 406,
33
- ProxyAuthenticationRequired: 407,
34
- RequestTimeout: 408,
35
- Conflict: 409,
36
- Gone: 410,
37
- LengthRequired: 411,
38
- PreconditionFailed: 412,
39
- PayloadTooLarge: 413,
40
- UriTooLong: 414,
41
- UnsupportedMediaType: 415,
42
- RangeNotSatisfiable: 416,
43
- ExpectationFailed: 417,
44
- ImATeapot: 418,
45
- MisdirectedRequest: 421,
46
- UnprocessableEntity: 422,
47
- Locked: 423,
48
- FailedDependency: 424,
49
- TooEarly: 425,
50
- UpgradeRequired: 426,
51
- PreconditionRequired: 428,
52
- TooManyRequests: 429,
53
- RequestHeaderFieldsTooLarge: 431,
54
- UnavailableForLegalReasons: 451,
55
- InternalServerError: 500,
56
- NotImplemented: 501,
57
- BadGateway: 502,
58
- ServiceUnavailable: 503,
59
- GatewayTimeout: 504,
60
- HttpVersionNotSupported: 505,
61
- VariantAlsoNegotiates: 506,
62
- InsufficientStorage: 507,
63
- LoopDetected: 508,
64
- NotExtended: 510,
65
- NetworkAuthenticationRequired: 511
2
+ import s from "./index83.mjs";
3
+ import m from "./index207.mjs";
4
+ import u from "./index208.mjs";
5
+ import { getFetch as b } from "./index209.mjs";
6
+ import d from "./index94.mjs";
7
+ const p = {
8
+ http: m,
9
+ xhr: u,
10
+ fetch: {
11
+ get: b
12
+ }
66
13
  };
67
- Object.entries(e).forEach(([t, o]) => {
68
- e[o] = t;
14
+ s.forEach(p, (e, o) => {
15
+ if (e) {
16
+ try {
17
+ Object.defineProperty(e, "name", { value: o });
18
+ } catch {
19
+ }
20
+ Object.defineProperty(e, "adapterName", { value: o });
21
+ }
69
22
  });
23
+ const f = (e) => `- ${e}`, g = (e) => s.isFunction(e) || e === null || e === !1, y = {
24
+ getAdapter: (e, o) => {
25
+ e = s.isArray(e) ? e : [e];
26
+ const { length: a } = e;
27
+ let i, t;
28
+ const c = {};
29
+ for (let r = 0; r < a; r++) {
30
+ i = e[r];
31
+ let n;
32
+ if (t = i, !g(i) && (t = p[(n = String(i)).toLowerCase()], t === void 0))
33
+ throw new d(`Unknown adapter '${n}'`);
34
+ if (t && (s.isFunction(t) || (t = t.get(o))))
35
+ break;
36
+ c[n || "#" + r] = t;
37
+ }
38
+ if (!t) {
39
+ const r = Object.entries(c).map(
40
+ ([l, h]) => `adapter ${l} ` + (h === !1 ? "is not supported by the environment" : "is not available in the build")
41
+ );
42
+ let n = a ? r.length > 1 ? `since :
43
+ ` + r.map(f).join(`
44
+ `) : " " + f(r[0]) : "as no adapter specified";
45
+ throw new d(
46
+ "There is no suitable adapter to dispatch the request " + n,
47
+ "ERR_NOT_SUPPORT"
48
+ );
49
+ }
50
+ return t;
51
+ },
52
+ adapters: p
53
+ };
70
54
  export {
71
- e as default
55
+ y as default
72
56
  };
package/dist/index99.mjs CHANGED
@@ -1,5 +1,72 @@
1
1
  'use client';
2
- var o = { exports: {} };
2
+ const e = {
3
+ Continue: 100,
4
+ SwitchingProtocols: 101,
5
+ Processing: 102,
6
+ EarlyHints: 103,
7
+ Ok: 200,
8
+ Created: 201,
9
+ Accepted: 202,
10
+ NonAuthoritativeInformation: 203,
11
+ NoContent: 204,
12
+ ResetContent: 205,
13
+ PartialContent: 206,
14
+ MultiStatus: 207,
15
+ AlreadyReported: 208,
16
+ ImUsed: 226,
17
+ MultipleChoices: 300,
18
+ MovedPermanently: 301,
19
+ Found: 302,
20
+ SeeOther: 303,
21
+ NotModified: 304,
22
+ UseProxy: 305,
23
+ Unused: 306,
24
+ TemporaryRedirect: 307,
25
+ PermanentRedirect: 308,
26
+ BadRequest: 400,
27
+ Unauthorized: 401,
28
+ PaymentRequired: 402,
29
+ Forbidden: 403,
30
+ NotFound: 404,
31
+ MethodNotAllowed: 405,
32
+ NotAcceptable: 406,
33
+ ProxyAuthenticationRequired: 407,
34
+ RequestTimeout: 408,
35
+ Conflict: 409,
36
+ Gone: 410,
37
+ LengthRequired: 411,
38
+ PreconditionFailed: 412,
39
+ PayloadTooLarge: 413,
40
+ UriTooLong: 414,
41
+ UnsupportedMediaType: 415,
42
+ RangeNotSatisfiable: 416,
43
+ ExpectationFailed: 417,
44
+ ImATeapot: 418,
45
+ MisdirectedRequest: 421,
46
+ UnprocessableEntity: 422,
47
+ Locked: 423,
48
+ FailedDependency: 424,
49
+ TooEarly: 425,
50
+ UpgradeRequired: 426,
51
+ PreconditionRequired: 428,
52
+ TooManyRequests: 429,
53
+ RequestHeaderFieldsTooLarge: 431,
54
+ UnavailableForLegalReasons: 451,
55
+ InternalServerError: 500,
56
+ NotImplemented: 501,
57
+ BadGateway: 502,
58
+ ServiceUnavailable: 503,
59
+ GatewayTimeout: 504,
60
+ HttpVersionNotSupported: 505,
61
+ VariantAlsoNegotiates: 506,
62
+ InsufficientStorage: 507,
63
+ LoopDetected: 508,
64
+ NotExtended: 510,
65
+ NetworkAuthenticationRequired: 511
66
+ };
67
+ Object.entries(e).forEach(([t, o]) => {
68
+ e[o] = t;
69
+ });
3
70
  export {
4
- o as __module
71
+ e as default
5
72
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instockng/storefront-ui",
3
- "version": "1.0.53",
3
+ "version": "1.0.55",
4
4
  "description": "Pre-built UI components for OMS e-commerce sites",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -81,4 +81,4 @@
81
81
  "typescript": "^5.3.3",
82
82
  "vite": "^5.4.20"
83
83
  }
84
- }
84
+ }
@@ -117,7 +117,7 @@ export interface CheckoutProps {
117
117
  /** Initial form data */
118
118
  initialData?: Partial<CheckoutFormData>;
119
119
  /** Callback on successful checkout */
120
- onSuccess?: (orderId: string) => void;
120
+ onSuccess?: (order: Order) => void;
121
121
  /** Callback on error */
122
122
  onError?: (error: Error) => void;
123
123
  /** Submit button text */
@@ -196,7 +196,7 @@ export function Checkout({
196
196
  // Clear the cart and create a new one for next purchase
197
197
  clearAndCreateNewCart();
198
198
 
199
- onSuccess?.(order.id);
199
+ onSuccess?.(order as Order);
200
200
  } catch (error) {
201
201
  onError?.(error as Error);
202
202
  }
@@ -407,6 +407,12 @@ export function Checkout({
407
407
 
408
408
  const amountInKobo = Math.round(cart!.pricing.total * 100); // Convert to kobo
409
409
 
410
+ // Get Facebook attribution cookies for CAPI
411
+ const { fbc, fbp } = getFbCookies();
412
+
413
+ // Get TikTok attribution cookies for Events API
414
+ const { ttp, ttclid } = getTikTokCookies();
415
+
410
416
  // Initiate Paystack payment popup
411
417
  // The onSuccess callback in the hook will handle the checkout completion
412
418
  paystack.initializePayment({
@@ -415,6 +421,18 @@ export function Checkout({
415
421
  currency: 'NGN',
416
422
  metadata: {
417
423
  cartId: cart?.id,
424
+ brandSlug: cart?.brand?.slug,
425
+ address: formData.address,
426
+ city: formData.city,
427
+ delivery_zone_id: selectedDeliveryZoneId || formData.deliveryZoneId,
428
+ firstName: formData.firstName,
429
+ lastName: formData.lastName,
430
+ email: formData.email,
431
+ phone: formData.phone,
432
+ fbc,
433
+ fbp,
434
+ ttp,
435
+ ttclid,
418
436
  custom_fields: [
419
437
  {
420
438
  display_name: 'Customer Name',
@@ -426,6 +444,21 @@ export function Checkout({
426
444
  variable_name: 'phone_number',
427
445
  value: formData.phone,
428
446
  },
447
+ {
448
+ display_name: 'Address',
449
+ variable_name: 'address',
450
+ value: formData.address,
451
+ },
452
+ {
453
+ display_name: 'City',
454
+ variable_name: 'city',
455
+ value: formData.city,
456
+ },
457
+ {
458
+ display_name: 'Delivery Zone ID',
459
+ variable_name: 'delivery_zone_id',
460
+ value: selectedDeliveryZoneId || formData.deliveryZoneId,
461
+ }
429
462
  ],
430
463
  },
431
464
  });
@@ -469,7 +502,7 @@ export function Checkout({
469
502
  // Clear the cart and create a new one for next purchase
470
503
  clearAndCreateNewCart();
471
504
 
472
- onSuccess?.(order.id);
505
+ onSuccess?.(order as Order);
473
506
  } catch (error) {
474
507
  onError?.(error as Error);
475
508
  }
@@ -8,6 +8,7 @@
8
8
  */
9
9
 
10
10
  import { useEffect, useState } from 'react';
11
+ import type { Order } from '@instockng/api-client';
11
12
  import { useCart } from '../contexts/CartContext';
12
13
  import { CartItem } from './CartItem';
13
14
  import { DiscountCodeInput } from './DiscountCodeInput';
@@ -27,6 +28,8 @@ export interface ShoppingCartProps {
27
28
  onCheckout?: () => void;
28
29
  /** Callback when continue shopping is clicked */
29
30
  onContinueShopping?: () => void;
31
+ /** Callback when purchase is successfully completed */
32
+ onPurchaseSuccess?: (order: Order) => void;
30
33
  /** Custom class name */
31
34
  className?: string;
32
35
  /** Show discount code input */
@@ -52,6 +55,7 @@ export function ShoppingCart({
52
55
  onClose,
53
56
  onCheckout,
54
57
  onContinueShopping,
58
+ onPurchaseSuccess,
55
59
  className,
56
60
  showDiscountCode = true,
57
61
  showContinueShopping = true,
@@ -184,11 +188,11 @@ export function ShoppingCart({
184
188
  </div>
185
189
 
186
190
  {/* Discount Code - temporarily disabled */}
187
- {/* {showDiscountCode && (
191
+ {showDiscountCode && (
188
192
  <div className="px-4 pb-4">
189
193
  <DiscountCodeInput />
190
194
  </div>
191
- )} */}
195
+ )}
192
196
  </div>
193
197
 
194
198
  {/* Recommended Products - Outside scroll area */}
@@ -255,7 +259,10 @@ export function ShoppingCart({
255
259
  {/* Checkout Modal */}
256
260
  <Checkout
257
261
  isOpen={isCheckoutOpen}
258
- onSuccess={() => onClose()}
262
+ onSuccess={(order) => {
263
+ onPurchaseSuccess?.(order);
264
+ onClose();
265
+ }}
259
266
  onClose={() => setIsCheckoutOpen(false)}
260
267
  refundPolicy={{
261
268
  title: '🤔 Curious about Refunds?',