@instockng/storefront-ui 1.0.23 → 1.0.24

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 (142) hide show
  1. package/dist/components/Checkout.d.ts.map +1 -1
  2. package/dist/components/ShoppingCart.d.ts.map +1 -1
  3. package/dist/index10.mjs +57 -47
  4. package/dist/index100.mjs +3 -3
  5. package/dist/index101.mjs +1 -1
  6. package/dist/index102.mjs +1 -1
  7. package/dist/index103.mjs +1 -1
  8. package/dist/index104.mjs +2 -2
  9. package/dist/index105.mjs +2 -2
  10. package/dist/index106.mjs +3 -3
  11. package/dist/index107.mjs +1 -1
  12. package/dist/index108.mjs +3 -3
  13. package/dist/index109.mjs +2 -2
  14. package/dist/index110.mjs +2 -2
  15. package/dist/index111.mjs +1 -1
  16. package/dist/index112.mjs +3 -3
  17. package/dist/index113.mjs +1 -1
  18. package/dist/index114.mjs +1 -1
  19. package/dist/index115.mjs +3 -3
  20. package/dist/index116.mjs +2 -2
  21. package/dist/index117.mjs +4 -4
  22. package/dist/index118.mjs +1 -1
  23. package/dist/index119.mjs +3 -3
  24. package/dist/index12.mjs +285 -282
  25. package/dist/index120.mjs +4 -4
  26. package/dist/index121.mjs +1 -1
  27. package/dist/index122.mjs +1 -1
  28. package/dist/index123.mjs +1 -1
  29. package/dist/index124.mjs +1 -1
  30. package/dist/index125.mjs +1 -1
  31. package/dist/index126.mjs +1 -1
  32. package/dist/index127.mjs +1 -1
  33. package/dist/index128.mjs +2 -2
  34. package/dist/index129.mjs +3 -3
  35. package/dist/index135.mjs +21 -2
  36. package/dist/index136.mjs +56 -2
  37. package/dist/index137.mjs +29 -2
  38. package/dist/index138.mjs +6 -17
  39. package/dist/index139.mjs +50 -30
  40. package/dist/index140.mjs +6 -38
  41. package/dist/index141.mjs +11 -17
  42. package/dist/index142.mjs +7 -18
  43. package/dist/index143.mjs +28 -2
  44. package/dist/index144.mjs +2 -20
  45. package/dist/index145.mjs +68 -44
  46. package/dist/index146.mjs +167 -2
  47. package/dist/index147.mjs +2 -30
  48. package/dist/index148.mjs +2 -18
  49. package/dist/index149.mjs +2 -2
  50. package/dist/index150.mjs +18 -2
  51. package/dist/index151.mjs +32 -2
  52. package/dist/index152.mjs +38 -2
  53. package/dist/index153.mjs +13 -67
  54. package/dist/index154.mjs +18 -2
  55. package/dist/index155.mjs +2 -53
  56. package/dist/index156.mjs +20 -2
  57. package/dist/index157.mjs +39 -29
  58. package/dist/index158.mjs +2 -152
  59. package/dist/index159.mjs +30 -2
  60. package/dist/index160.mjs +18 -2
  61. package/dist/index161.mjs +2 -19
  62. package/dist/index162.mjs +2 -2
  63. package/dist/index163.mjs +2 -2
  64. package/dist/index164.mjs +2 -26
  65. package/dist/index165.mjs +72 -2
  66. package/dist/index166.mjs +2 -2
  67. package/dist/index167.mjs +49 -20
  68. package/dist/index168.mjs +2 -23
  69. package/dist/index169.mjs +36 -2
  70. package/dist/index170.mjs +152 -2
  71. package/dist/index171.mjs +2 -2
  72. package/dist/index172.mjs +2 -23
  73. package/dist/index173.mjs +19 -2
  74. package/dist/index174.mjs +2 -23
  75. package/dist/index176.mjs +26 -2
  76. package/dist/index177.mjs +2 -2
  77. package/dist/index178.mjs +2 -23
  78. package/dist/index179.mjs +24 -2
  79. package/dist/index180.mjs +15 -15
  80. package/dist/index181.mjs +2 -2
  81. package/dist/index182.mjs +2 -2
  82. package/dist/index183.mjs +2 -2
  83. package/dist/index184.mjs +23 -2
  84. package/dist/index185.mjs +2 -2
  85. package/dist/index186.mjs +23 -2
  86. package/dist/index187.mjs +2 -2
  87. package/dist/index188.mjs +2 -2
  88. package/dist/index189.mjs +2 -127
  89. package/dist/index190.mjs +23 -2
  90. package/dist/index191.mjs +2 -74
  91. package/dist/index192.mjs +20 -71
  92. package/dist/index193.mjs +2 -21
  93. package/dist/index194.mjs +2 -56
  94. package/dist/index195.mjs +2 -29
  95. package/dist/index196.mjs +2 -7
  96. package/dist/index197.mjs +2 -52
  97. package/dist/index198.mjs +2 -6
  98. package/dist/index199.mjs +2 -12
  99. package/dist/index200.mjs +2 -7
  100. package/dist/index201.mjs +127 -28
  101. package/dist/index202.mjs +2 -2
  102. package/dist/index203.mjs +73 -69
  103. package/dist/index204.mjs +71 -164
  104. package/dist/index211.mjs +1 -1
  105. package/dist/index213.mjs +2 -2
  106. package/dist/index214.mjs +244 -2
  107. package/dist/index215.mjs +2 -2
  108. package/dist/index216.mjs +32 -243
  109. package/dist/index217.mjs +65 -2
  110. package/dist/index218.mjs +16 -24
  111. package/dist/index219.mjs +2 -65
  112. package/dist/index220.mjs +2 -25
  113. package/dist/index221.mjs +2 -2
  114. package/dist/index222.mjs +2 -37
  115. package/dist/index223.mjs +37 -2
  116. package/dist/index224.mjs +2 -2
  117. package/dist/index245.mjs +3 -3
  118. package/dist/index248.mjs +2 -2
  119. package/dist/index249.mjs +2 -2
  120. package/dist/index250.mjs +2 -18
  121. package/dist/index251.mjs +2 -47
  122. package/dist/index252.mjs +91 -2
  123. package/dist/index253.mjs +2 -2
  124. package/dist/index254.mjs +2 -2
  125. package/dist/index255.mjs +18 -2
  126. package/dist/index256.mjs +43 -87
  127. package/dist/index263.mjs +1 -1
  128. package/dist/index264.mjs +1 -1
  129. package/dist/index265.mjs +2 -2
  130. package/dist/index267.mjs +2 -2
  131. package/dist/index78.mjs +5 -5
  132. package/dist/index80.mjs +3 -3
  133. package/dist/index90.mjs +1 -1
  134. package/dist/index91.mjs +3 -3
  135. package/dist/index96.mjs +1 -1
  136. package/dist/index97.mjs +1 -1
  137. package/dist/index98.mjs +6 -6
  138. package/dist/index99.mjs +4 -4
  139. package/dist/styles.css +1 -1
  140. package/package.json +1 -1
  141. package/src/components/Checkout.tsx +52 -51
  142. package/src/components/ShoppingCart.tsx +11 -1
@@ -638,6 +638,8 @@ export function Checkout({
638
638
  );
639
639
  }
640
640
 
641
+ const shownDeliveryWarnings = selectedDeliveryZone && (currentStep === 'delivery' || currentStep === 'payment') && (selectedDeliveryZone.waybillOnly || !selectedDeliveryZone?.allowCOD);
642
+
641
643
  return (
642
644
  <Modal
643
645
  isOpen={isOpen}
@@ -656,7 +658,7 @@ export function Checkout({
656
658
  {/* Sliding Steps Container */}
657
659
  <div className="relative w-full">
658
660
  {/* Delivery Zone Notices */}
659
- {selectedDeliveryZone && (currentStep === 'delivery' || currentStep === 'payment') && (
661
+ {shownDeliveryWarnings && (
660
662
  <div className="space-y-3 p-4 pb-0">
661
663
  {/* Waybill Delivery Notice */}
662
664
  {selectedDeliveryZone.waybillOnly && (
@@ -839,6 +841,55 @@ export function Checkout({
839
841
  {/* Step 3: Payment Method */}
840
842
  <div className="w-full min-w-full flex-shrink-0 p-4">
841
843
  <div className="space-y-6">
844
+ {/* Refund Policy Accordion */}
845
+ {refundPolicy && (
846
+ <div className={`border border-gray-200 rounded-lg ${shownDeliveryWarnings ? 'mt-4' : ''}`}>
847
+ <button
848
+ type="button"
849
+ onClick={() => setIsRefundAccordionOpen(!isRefundAccordionOpen)}
850
+ className="overflow-hidden w-full flex items-center overflow-hidden rounded-lg rounded-b-none justify-between p-4 text-left hover:bg-gray-50 transition-colors"
851
+ >
852
+ <span className="text-sm font-bold text-accent-700">
853
+ {refundPolicy.title || '🤔 Curious about Refunds?'}
854
+ </span>
855
+ <ChevronDown
856
+ size={16}
857
+ className={cn(
858
+ 'transform transition-transform duration-200 text-gray-500',
859
+ isRefundAccordionOpen && 'rotate-180'
860
+ )}
861
+ />
862
+ </button>
863
+ <div
864
+ className={cn(
865
+ 'overflow-hidden transition-all duration-300 ease-in-out',
866
+ isRefundAccordionOpen
867
+ ? 'max-h-96 opacity-100'
868
+ : 'max-h-0 opacity-0'
869
+ )}
870
+ >
871
+ <div className="px-4 pb-4 border-t border-gray-100">
872
+ <div className="text-sm text-gray-600 space-y-3 pt-4">
873
+ {refundPolicy.policies && (
874
+ <div>
875
+ <h4 className="font-bold text-gray-800 mb-2">
876
+ Our Refund Policy
877
+ </h4>
878
+ <ul className="space-y-1">
879
+ {refundPolicy.policies.map((policy, idx) => (
880
+ <li key={idx} className="flex items-start">
881
+ <span className="text-green-600 mr-2">✓</span>
882
+ <span>{policy}</span>
883
+ </li>
884
+ ))}
885
+ </ul>
886
+ </div>
887
+ )}
888
+ </div>
889
+ </div>
890
+ </div>
891
+ </div>
892
+ )}
842
893
  <div className="grid grid-cols-1 sm:grid-cols-2 gap-4">
843
894
  {/* Online Payment */}
844
895
  <div className="relative">
@@ -943,56 +994,6 @@ export function Checkout({
943
994
  {formErrors.paymentMethod && (
944
995
  <p className="text-red-600 text-sm">{formErrors.paymentMethod}</p>
945
996
  )}
946
-
947
- {/* Refund Policy Accordion */}
948
- {refundPolicy && (
949
- <div className="border border-gray-200 rounded-lg">
950
- <button
951
- type="button"
952
- onClick={() => setIsRefundAccordionOpen(!isRefundAccordionOpen)}
953
- className="overflow-hidden w-full flex items-center overflow-hidden rounded-lg rounded-b-none justify-between p-4 text-left hover:bg-gray-50 transition-colors"
954
- >
955
- <span className="text-sm font-medium text-gray-700">
956
- {refundPolicy.title || '🤔 Curious about Refunds?'}
957
- </span>
958
- <ChevronDown
959
- size={16}
960
- className={cn(
961
- 'transform transition-transform duration-200 text-gray-500',
962
- isRefundAccordionOpen && 'rotate-180'
963
- )}
964
- />
965
- </button>
966
- <div
967
- className={cn(
968
- 'overflow-hidden transition-all duration-300 ease-in-out',
969
- isRefundAccordionOpen
970
- ? 'max-h-96 opacity-100'
971
- : 'max-h-0 opacity-0'
972
- )}
973
- >
974
- <div className="px-4 pb-4 border-t border-gray-100">
975
- <div className="text-sm text-gray-600 space-y-3 pt-4">
976
- {refundPolicy.policies && (
977
- <div>
978
- <h4 className="font-bold text-gray-800 mb-2">
979
- Our Refund Policy
980
- </h4>
981
- <ul className="space-y-1 ml-4">
982
- {refundPolicy.policies.map((policy, idx) => (
983
- <li key={idx} className="flex items-start">
984
- <span className="text-green-600 mr-2">✓</span>
985
- <span>{policy}</span>
986
- </li>
987
- ))}
988
- </ul>
989
- </div>
990
- )}
991
- </div>
992
- </div>
993
- </div>
994
- </div>
995
- )}
996
997
  </div>
997
998
  </div>
998
999
  </div>
@@ -50,7 +50,7 @@ export function ShoppingCart({
50
50
  onContinueShopping,
51
51
  className,
52
52
  showDiscountCode = true,
53
- checkoutButtonText = 'Checkout',
53
+ checkoutButtonText = 'Complete Purchase',
54
54
  continueShoppingText = 'Continue Shopping',
55
55
  checkoutButtonClassName,
56
56
  continueShoppingButtonClassName,
@@ -260,6 +260,16 @@ export function ShoppingCart({
260
260
  isOpen={isCheckoutOpen}
261
261
  onSuccess={() => onClose()}
262
262
  onClose={() => setIsCheckoutOpen(false)}
263
+ refundPolicy={{
264
+ title: '🤔 Curious about refunds',
265
+ policies: [
266
+ '2 day return window from delivery date',
267
+ 'Items must be unused and in original packaging',
268
+ 'Refunds processed as soon as item is received',
269
+ 'Refunds issued to original payment method',
270
+ 'Contact hello@instock.ng to initiate a refund'
271
+ ]
272
+ }}
263
273
  />
264
274
  </>
265
275
  );