@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.
- package/dist/components/Checkout.d.ts.map +1 -1
- package/dist/components/ShoppingCart.d.ts.map +1 -1
- package/dist/index10.mjs +57 -47
- package/dist/index100.mjs +3 -3
- package/dist/index101.mjs +1 -1
- package/dist/index102.mjs +1 -1
- package/dist/index103.mjs +1 -1
- package/dist/index104.mjs +2 -2
- package/dist/index105.mjs +2 -2
- package/dist/index106.mjs +3 -3
- package/dist/index107.mjs +1 -1
- package/dist/index108.mjs +3 -3
- package/dist/index109.mjs +2 -2
- package/dist/index110.mjs +2 -2
- package/dist/index111.mjs +1 -1
- package/dist/index112.mjs +3 -3
- package/dist/index113.mjs +1 -1
- package/dist/index114.mjs +1 -1
- package/dist/index115.mjs +3 -3
- package/dist/index116.mjs +2 -2
- package/dist/index117.mjs +4 -4
- package/dist/index118.mjs +1 -1
- package/dist/index119.mjs +3 -3
- package/dist/index12.mjs +285 -282
- package/dist/index120.mjs +4 -4
- package/dist/index121.mjs +1 -1
- package/dist/index122.mjs +1 -1
- package/dist/index123.mjs +1 -1
- package/dist/index124.mjs +1 -1
- package/dist/index125.mjs +1 -1
- package/dist/index126.mjs +1 -1
- package/dist/index127.mjs +1 -1
- package/dist/index128.mjs +2 -2
- package/dist/index129.mjs +3 -3
- package/dist/index135.mjs +21 -2
- package/dist/index136.mjs +56 -2
- package/dist/index137.mjs +29 -2
- package/dist/index138.mjs +6 -17
- package/dist/index139.mjs +50 -30
- package/dist/index140.mjs +6 -38
- package/dist/index141.mjs +11 -17
- package/dist/index142.mjs +7 -18
- package/dist/index143.mjs +28 -2
- package/dist/index144.mjs +2 -20
- package/dist/index145.mjs +68 -44
- package/dist/index146.mjs +167 -2
- package/dist/index147.mjs +2 -30
- package/dist/index148.mjs +2 -18
- package/dist/index149.mjs +2 -2
- package/dist/index150.mjs +18 -2
- package/dist/index151.mjs +32 -2
- package/dist/index152.mjs +38 -2
- package/dist/index153.mjs +13 -67
- package/dist/index154.mjs +18 -2
- package/dist/index155.mjs +2 -53
- package/dist/index156.mjs +20 -2
- package/dist/index157.mjs +39 -29
- package/dist/index158.mjs +2 -152
- package/dist/index159.mjs +30 -2
- package/dist/index160.mjs +18 -2
- package/dist/index161.mjs +2 -19
- package/dist/index162.mjs +2 -2
- package/dist/index163.mjs +2 -2
- package/dist/index164.mjs +2 -26
- package/dist/index165.mjs +72 -2
- package/dist/index166.mjs +2 -2
- package/dist/index167.mjs +49 -20
- package/dist/index168.mjs +2 -23
- package/dist/index169.mjs +36 -2
- package/dist/index170.mjs +152 -2
- package/dist/index171.mjs +2 -2
- package/dist/index172.mjs +2 -23
- package/dist/index173.mjs +19 -2
- package/dist/index174.mjs +2 -23
- package/dist/index176.mjs +26 -2
- package/dist/index177.mjs +2 -2
- package/dist/index178.mjs +2 -23
- package/dist/index179.mjs +24 -2
- package/dist/index180.mjs +15 -15
- package/dist/index181.mjs +2 -2
- package/dist/index182.mjs +2 -2
- package/dist/index183.mjs +2 -2
- package/dist/index184.mjs +23 -2
- package/dist/index185.mjs +2 -2
- package/dist/index186.mjs +23 -2
- package/dist/index187.mjs +2 -2
- package/dist/index188.mjs +2 -2
- package/dist/index189.mjs +2 -127
- package/dist/index190.mjs +23 -2
- package/dist/index191.mjs +2 -74
- package/dist/index192.mjs +20 -71
- package/dist/index193.mjs +2 -21
- package/dist/index194.mjs +2 -56
- package/dist/index195.mjs +2 -29
- package/dist/index196.mjs +2 -7
- package/dist/index197.mjs +2 -52
- package/dist/index198.mjs +2 -6
- package/dist/index199.mjs +2 -12
- package/dist/index200.mjs +2 -7
- package/dist/index201.mjs +127 -28
- package/dist/index202.mjs +2 -2
- package/dist/index203.mjs +73 -69
- package/dist/index204.mjs +71 -164
- package/dist/index211.mjs +1 -1
- package/dist/index213.mjs +2 -2
- package/dist/index214.mjs +244 -2
- package/dist/index215.mjs +2 -2
- package/dist/index216.mjs +32 -243
- package/dist/index217.mjs +65 -2
- package/dist/index218.mjs +16 -24
- package/dist/index219.mjs +2 -65
- package/dist/index220.mjs +2 -25
- package/dist/index221.mjs +2 -2
- package/dist/index222.mjs +2 -37
- package/dist/index223.mjs +37 -2
- package/dist/index224.mjs +2 -2
- package/dist/index245.mjs +3 -3
- package/dist/index248.mjs +2 -2
- package/dist/index249.mjs +2 -2
- package/dist/index250.mjs +2 -18
- package/dist/index251.mjs +2 -47
- package/dist/index252.mjs +91 -2
- package/dist/index253.mjs +2 -2
- package/dist/index254.mjs +2 -2
- package/dist/index255.mjs +18 -2
- package/dist/index256.mjs +43 -87
- package/dist/index263.mjs +1 -1
- package/dist/index264.mjs +1 -1
- package/dist/index265.mjs +2 -2
- package/dist/index267.mjs +2 -2
- package/dist/index78.mjs +5 -5
- package/dist/index80.mjs +3 -3
- package/dist/index90.mjs +1 -1
- package/dist/index91.mjs +3 -3
- package/dist/index96.mjs +1 -1
- package/dist/index97.mjs +1 -1
- package/dist/index98.mjs +6 -6
- package/dist/index99.mjs +4 -4
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/src/components/Checkout.tsx +52 -51
- 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
|
-
{
|
|
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 = '
|
|
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
|
);
|