@ikas/storefront 5.0.4 → 5.0.5
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/build/components/checkout/components/adyen/adyen.module.scss.js +1 -1
- package/build/components/checkout/components/adyen/index.d.ts +1 -0
- package/build/components/checkout/components/adyen/index.js +1 -1
- package/build/components/checkout/components/button/index.d.ts +1 -0
- package/build/components/checkout/components/button/index.js +1 -1
- package/build/components/checkout/components/button/style.module.scss.js +1 -1
- package/build/components/checkout/components/cart-summary/cart-item/index.d.ts +1 -0
- package/build/components/checkout/components/cart-summary/cart-item/index.js +1 -1
- package/build/components/checkout/components/cart-summary/cart-item/style.module.scss.js +1 -1
- package/build/components/checkout/components/cart-summary/index.d.ts +1 -0
- package/build/components/checkout/components/cart-summary/index.js +1 -1
- package/build/components/checkout/components/cart-summary/style.module.scss.js +1 -1
- package/build/components/checkout/components/expandable-section/index.js +1 -1
- package/build/components/checkout/components/expandable-section/style.module.scss.js +1 -1
- package/build/components/checkout/components/form-item/index.js +1 -1
- package/build/components/checkout/components/form-item/model.d.ts +2 -0
- package/build/components/checkout/components/form-item/model.js +1 -1
- package/build/components/checkout/components/klarna/index.js +1 -1
- package/build/components/checkout/components/offer-product/index.d.ts +13 -1
- package/build/components/checkout/components/offer-product/index.js +1 -1
- package/build/components/checkout/components/offer-product/offer-arrows/index.d.ts +7 -0
- package/build/components/checkout/components/offer-product/offer-arrows/index.js +1 -0
- package/build/components/checkout/components/offer-product/offer-arrows/style.module.scss.js +1 -0
- package/build/components/checkout/components/offer-product/offer-dots/index.d.ts +10 -0
- package/build/components/checkout/components/offer-product/offer-dots/index.js +1 -0
- package/build/components/checkout/components/offer-product/offer-dots/style.module.scss.js +1 -0
- package/build/components/checkout/components/offer-product/placeholder-offer-product.d.ts +7 -0
- package/build/components/checkout/components/offer-product/placeholder-offer-product.js +1 -0
- package/build/components/checkout/components/offer-product/select/style.module.scss.js +1 -1
- package/build/components/checkout/components/offer-product/style.module.scss.js +1 -1
- package/build/components/checkout/components/offer-product/useCampaignOffer.d.ts +17 -0
- package/build/components/checkout/components/offer-product/useCampaignOffer.js +1 -0
- package/build/components/checkout/components/paypal/index.js +1 -1
- package/build/components/checkout/components/select-box/style.module.scss.js +1 -1
- package/build/components/checkout/components/stripe/checkout-form.js +1 -1
- package/build/components/checkout/components/stripe/index.js +1 -1
- package/build/components/checkout/components/svg/chevron-down.d.ts +6 -0
- package/build/components/checkout/components/svg/chevron-down.js +1 -0
- package/build/components/checkout/components/svg/offer-arrow-left.d.ts +6 -0
- package/build/components/checkout/components/svg/offer-arrow-left.js +1 -0
- package/build/components/checkout/components/svg/offer-arrow-right.d.ts +6 -0
- package/build/components/checkout/components/svg/offer-arrow-right.js +1 -0
- package/build/components/checkout/components/svg/shopping-bag.d.ts +6 -0
- package/build/components/checkout/components/svg/shopping-bag.js +1 -0
- package/build/components/checkout/index.d.ts +18 -0
- package/build/components/checkout/index.js +1 -1
- package/build/components/checkout/model.d.ts +10 -10
- package/build/components/checkout/model.js +1 -1
- package/build/components/checkout/steps/step-payment/payment-gateways/index.js +1 -1
- package/build/components/checkout/steps/step-payment/payment-gateways/style.module.scss.js +1 -1
- package/build/components/checkout/steps/step-shipping/index.js +1 -1
- package/build/components/checkout/steps/step-success/index.js +1 -1
- package/build/components/checkout/steps/step-success/style.module.scss.js +1 -1
- package/build/components/checkout/style.module.scss.js +1 -1
- package/build/components/page/head.d.ts +2 -0
- package/build/components/page/head.js +1 -1
- package/build/components/page/index.js +1 -1
- package/build/hooks/index.d.ts +1 -0
- package/build/hooks/useCustomerReviews.d.ts +1 -0
- package/build/hooks/useCustomerReviews.js +1 -1
- package/build/hooks/useDimension.d.ts +4 -0
- package/build/hooks/useDimension.js +1 -0
- package/build/index.js +1 -1
- package/build/models/data/product/index.d.ts +3 -0
- package/build/models/data/product/index.js +1 -1
- package/build/models/data/product/sales-channel/index.d.ts +11 -0
- package/build/models/data/product/sales-channel/index.js +1 -0
- package/build/models/data/product/variant/bundle-settings/bundle-product/index.js +1 -1
- package/build/models/data/product/variant/bundle-settings/index.js +1 -1
- package/build/models/data/stock-location/address/country/index.d.ts +2 -0
- package/build/models/data/stock-location/address/country/index.js +1 -1
- package/build/models/data/theme-json/index.js +1 -1
- package/build/models/ui/customer-review-list/index.d.ts +3 -0
- package/build/models/ui/customer-review-list/index.js +1 -1
- package/build/models/ui/product-list/index.js +1 -1
- package/build/models/ui/validator/form/register.js +1 -1
- package/build/page-data-init/index.d.ts +3 -1
- package/build/page-data-init/index.js +1 -1
- package/build/pages/checkout.js +1 -1
- package/build/store/cart/index.js +1 -1
- package/build/store/checkout/index.d.ts +2 -2
- package/build/store/checkout/index.js +1 -1
- package/build/store/customer/api.js +1 -1
- package/package.json +11 -11
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import CheckoutViewModel from "../../model";
|
|
3
|
+
declare const useCampaignOffer: (vm: CheckoutViewModel, _isActiveOverlay?: boolean) => {
|
|
4
|
+
showDetailPage: boolean;
|
|
5
|
+
setShowDetailPage: React.Dispatch<React.SetStateAction<boolean>>;
|
|
6
|
+
activeIndex: number;
|
|
7
|
+
setActiveIndex: React.Dispatch<React.SetStateAction<number>>;
|
|
8
|
+
setIsActiveOverlay: React.Dispatch<React.SetStateAction<boolean>>;
|
|
9
|
+
handlePrev: () => void;
|
|
10
|
+
handleNext: () => void;
|
|
11
|
+
isPopupClosedIndexPage: boolean | undefined;
|
|
12
|
+
isPopupShowIndexPage: boolean | undefined;
|
|
13
|
+
isShowSuccessPageMiddlePhase: boolean | undefined;
|
|
14
|
+
isMobile: boolean;
|
|
15
|
+
isActiveOverlay: boolean;
|
|
16
|
+
};
|
|
17
|
+
export default useCampaignOffer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"react";import a from"../../../../hooks/useDimension.js";import{CheckoutStep as i}from"../../model.js";var n=function(n,s){var t,o,f,r=a().isMobile,l=e.useState(!0),c=l[0],g=l[1],m=e.useState(0),p=m[0],u=m[1],d=e.useState(s||!1),O=d[0],h=d[1],v=e.useCallback((function(){u((function(e){return 0===e?(n.campaignOffers||[]).length-1:e-1}))}),[(n.campaignOffers||[]).length]),P=e.useCallback((function(){u((function(e){return e===(n.campaignOffers||[]).length-1?0:e+1}))}),[(n.campaignOffers||[]).length]),S=!!(null===(t=n.customizationProps)||void 0===t?void 0:t.campaignOfferIsSmallDesign)&&r&&n.campaignOffers&&!!n.campaignOffers.length&&n.isCampaignOfferLoaded&&!O,C=!!(null===(o=n.customizationProps)||void 0===o?void 0:o.campaignOfferIsSmallDesign)&&r&&n.campaignOffers&&!!n.campaignOffers.length&&n.isCampaignOfferLoaded&&O,I=n.step===i.SUCCESS&&!r&&n.campaignOffers&&!!n.campaignOffers.length&&c&&!!(null===(f=n.customizationProps)||void 0===f?void 0:f.campaignOffersEnableMiddlePhase);return{showDetailPage:c,setShowDetailPage:g,activeIndex:p,setActiveIndex:u,setIsActiveOverlay:h,handlePrev:v,handleNext:P,isPopupClosedIndexPage:S,isPopupShowIndexPage:C,isShowSuccessPageMiddlePhase:I,isMobile:r,isActiveOverlay:O}};export{n as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t}from'./../../../../ext/tslib/tslib.es6.js';import*as r from"react";import{observer as n}from"mobx-react-lite";import{ErrorType as o}from"../../model.js";import{PayPalScriptProvider as a,usePayPalScriptReducer as i,PayPalButtons as l}from"@paypal/react-paypal-js";import c from"../../../../store/checkout/index.js";import s from"./style.module.scss.js";var d=n((function(n){var d=n.vm;if(!d.payPalClientIdResponse)return null;var
|
|
1
|
+
import{__awaiter as e,__generator as t}from'./../../../../ext/tslib/tslib.es6.js';import*as r from"react";import{observer as n}from"mobx-react-lite";import{ErrorType as o}from"../../model.js";import{PayPalScriptProvider as a,usePayPalScriptReducer as i,PayPalButtons as l}from"@paypal/react-paypal-js";import c from"../../../../store/checkout/index.js";import s from"./style.module.scss.js";var d=n((function(n){var d=n.vm;if(!d.payPalClientIdResponse)return null;var p={"client-id":d.payPalClientIdResponse.clientId,currency:d.checkout.currencyCode,"merchant-id":d.payPalClientIdResponse.merchantId};return r.createElement(r.Fragment,null,r.createElement("div",null,r.createElement(a,{options:p},r.createElement((function(){return i()[0].isPending?r.createElement("div",{className:s.Main},r.createElement("div",{className:s.loader})):r.createElement(l,{style:{layout:"horizontal"},onClick:function(e,t){return d.checkPaypalButtonAvailable()?t.resolve():t.reject()},onCancel:function(e,t){d.paypalOrderResponse&&(window.location.href="".concat(d.paypalOrderResponse.failUrl)),d.isStepLoading=!1},createOrder:function(r,n){return e(void 0,void 0,void 0,(function(){var e,r,n;return t(this,(function(t){switch(t.label){case 0:return[4,d.onCompletePaymentClick()];case 1:return t.sent(),[4,c.createPayPalOrder({input:{cartId:d.checkout.id,paymentGatewayId:(null===(r=d.checkout.selectedPaymentGateway)||void 0===r?void 0:r.id)||""}})];case 2:return!(e=t.sent()).isSuccess&&e.errors.length&&(d.error={type:o.PAYMENT_ERROR,data:e.errors[0]}),e.data&&(d.paypalOrderResponse=e.data),[2,e&&(null===(n=e.data)||void 0===n?void 0:n.sessionToken)||""]}}))}))},onApprove:function(r,n){return e(void 0,void 0,void 0,(function(){return t(this,(function(e){return d.paypalOrderResponse&&(window.location.href="".concat(d.paypalOrderResponse.returnUrl)),[2]}))}))}})}),null))))}));export{d as PayPal};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from'./../../../../ext/style-inject/dist/style-inject.es.js';var o={SelectBoxContainer:"style-module_SelectBoxContainer__QRVTi",SelectBoxError:"style-module_SelectBoxError__-Ei-d",fadeInFromRight:"style-module_fadeInFromRight__DWxhH",SelectBox:"style-module_SelectBox__A1IpM",TopContent:"style-module_TopContent__-nzwg",Label:"style-module_Label__QKBWY",RightContent:"style-module_RightContent__4mFPN",BottomContent:"style-module_BottomContent__UQWJa",Selected:"style-module_Selected__RRHsP",Error:"style-module_Error__Xt7sr"};e(".style-module_SelectBoxContainer__QRVTi {\n margin-bottom: 16px;\n}\n\n.style-module_SelectBoxError__-Ei-d {\n color: var(--checkout-error-color);\n font-size: 12px;\n margin-top: 8px;\n animation-name: style-module_fadeInFromRight__DWxhH;\n animation-duration: 0.3s;\n}\n\n.style-module_SelectBox__A1IpM {\n padding: 16px;\n width: 100%;\n transition: all 0.2s;\n border-radius: 8px;\n cursor: pointer;\n border: 1px solid var(--checkout-border-color);\n box-shadow: 0 0 0 1px transparent;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg {\n display: flex;\n align-items: center;\n user-select: none;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg .style-module_Label__QKBWY {\n flex: 1 1 auto;\n margin-left: 16px;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg .style-module_RightContent__4mFPN {\n flex: 0 0 auto;\n margin-left: 16px;\n}\n.style-module_SelectBox__A1IpM .style-module_BottomContent__UQWJa {\n padding-top: 16px;\n width: 100%;\n}\n.style-module_SelectBox__A1IpM.style-module_Selected__RRHsP {\n box-shadow: 0 0 0 1px var(--checkout-button-bg-color);\n border-color: var(--checkout-button-bg-color);\n background-color: var(--checkout-card-bg-color);\n}\n.style-module_SelectBox__A1IpM.style-module_Selected__RRHsP.style-module_Error__Xt7sr {\n box-shadow: 0 0 0 1px var(--checkout-error-color);\n border-color: var(--checkout-error-color);\n}");export{o as default};
|
|
1
|
+
import e from'./../../../../ext/style-inject/dist/style-inject.es.js';var o={SelectBoxContainer:"style-module_SelectBoxContainer__QRVTi",SelectBoxError:"style-module_SelectBoxError__-Ei-d",fadeInFromRight:"style-module_fadeInFromRight__DWxhH",SelectBox:"style-module_SelectBox__A1IpM",TopContent:"style-module_TopContent__-nzwg",Label:"style-module_Label__QKBWY",RightContent:"style-module_RightContent__4mFPN",BottomContent:"style-module_BottomContent__UQWJa",Selected:"style-module_Selected__RRHsP",Error:"style-module_Error__Xt7sr",AdyenSelectBox:"style-module_AdyenSelectBox__8rI-I"};e(".style-module_SelectBoxContainer__QRVTi {\n margin-bottom: 16px;\n}\n\n.style-module_SelectBoxError__-Ei-d {\n color: var(--checkout-error-color);\n font-size: 12px;\n margin-top: 8px;\n animation-name: style-module_fadeInFromRight__DWxhH;\n animation-duration: 0.3s;\n}\n\n.style-module_SelectBox__A1IpM {\n padding: 16px;\n width: 100%;\n transition: all 0.2s;\n border-radius: 8px;\n cursor: pointer;\n border: 1px solid var(--checkout-border-color);\n box-shadow: 0 0 0 1px transparent;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg {\n display: flex;\n align-items: center;\n user-select: none;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg .style-module_Label__QKBWY {\n flex: 1 1 auto;\n margin-left: 16px;\n}\n.style-module_SelectBox__A1IpM .style-module_TopContent__-nzwg .style-module_RightContent__4mFPN {\n flex: 0 0 auto;\n margin-left: 16px;\n}\n.style-module_SelectBox__A1IpM .style-module_BottomContent__UQWJa {\n padding-top: 16px;\n width: 100%;\n}\n.style-module_SelectBox__A1IpM.style-module_Selected__RRHsP {\n box-shadow: 0 0 0 1px var(--checkout-button-bg-color);\n border-color: var(--checkout-button-bg-color);\n background-color: var(--checkout-card-bg-color);\n}\n.style-module_SelectBox__A1IpM.style-module_Selected__RRHsP.style-module_Error__Xt7sr {\n box-shadow: 0 0 0 1px var(--checkout-error-color);\n border-color: var(--checkout-error-color);\n}\n.style-module_SelectBox__A1IpM.style-module_AdyenSelectBox__8rI-I {\n border: 1px solid transparent;\n padding: 0;\n}");export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as
|
|
1
|
+
import{__awaiter as e,__generator as r}from'./../../../../ext/tslib/tslib.es6.js';import*as t from"react";import{observer as n}from"mobx-react-lite";import{ErrorType as m}from"../../model.js";import{useStripe as o,useElements as a,PaymentElement as s}from"@stripe/react-stripe-js";import i from"./style.module.scss.js";var l=n((function(n){var l=n.callbackUrl,c=n.vm,d=o(),u=a(),f=t.useState(!0),p=f[0],b=f[1];return t.createElement(t.Fragment,null,t.createElement("form",{className:i.Form,id:"stripe-form",onSubmit:function(t){return e(void 0,void 0,void 0,(function(){var e;return r(this,(function(r){switch(r.label){case 0:return t.preventDefault(),d&&u&&l?(b(!0),[4,d.confirmPayment({elements:u,confirmParams:{return_url:l}})]):[2];case 1:return(e=r.sent().error)&&(c.handlePaymentError(m.PAYMENT_ERROR,e.message),c.isStepLoading=!1,b(!1)),[2]}}))}))}},t.createElement(s,{onReady:function(){return b(!1)}}),t.createElement("button",{id:"stripe-form-btn",hidden:!0,disabled:!d}),p&&t.createElement("div",{className:i.Disabled},t.createElement("div",{className:i.loader}))))}));export{l as CheckoutForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as o,__generator as r}from'./../../../../ext/tslib/tslib.es6.js';import*as e from"react";import{observer as t}from"mobx-react-lite";import{Elements as i}from"@stripe/react-stripe-js";import{loadStripe as s}from"@stripe/stripe-js";import{CheckoutForm as n}from"./checkout-form.js";var l=t((function(t){var l,p,a,c,u,d,m,v,b,f=t.vm
|
|
1
|
+
import{__awaiter as o,__generator as r}from'./../../../../ext/tslib/tslib.es6.js';import*as e from"react";import{observer as t}from"mobx-react-lite";import{Elements as i}from"@stripe/react-stripe-js";import{loadStripe as s}from"@stripe/stripe-js";import{CheckoutForm as n}from"./checkout-form.js";var l=t((function(t){var l,p,a,c,u,d,m,v,b,f=t.vm,x=e.useState(null),E=x[0],z=x[1];if(e.useEffect((function(){!function(){o(this,void 0,void 0,(function(){var o;return r(this,(function(r){switch(r.label){case 0:return f.stripeResponse?[4,s(f.stripeResponse.apiKey,{stripeAccount:f.stripeResponse.accountId})]:[3,2];case 1:o=r.sent(),z(o),r.label=2;case 2:return[2]}}))}))}()}),[f.stripeResponse]),!f.stripeResponse)return null;var C={clientSecret:f.stripeResponse.clientSecret,appearance:{variables:{borderRadius:"8px"},labels:"floating",rules:{".Input":{lineHeight:"16px",boxShadow:"0 0 0 1px transparent",transition:"padding .1s, border-color .5s, box-shadow .5s",padding:"8px 16px",border:"1px solid ".concat((null===(l=f.customizationProps)||void 0===l?void 0:l.borderColor)||"#E5E4E9")},".Input::placeholder":{fontSize:"14px",color:(null===(p=f.customizationProps)||void 0===p?void 0:p.secondaryTextColor)||"#8A8B94"},".Input:focus":{boxShadow:"0 0 0 1px ".concat((null===(a=f.customizationProps)||void 0===a?void 0:a.buttonBgColor)||"##272727"),borderColor:(null===(c=f.customizationProps)||void 0===c?void 0:c.buttonBgColor)||"##272727"},".Input--invalid":{boxShadow:"0 0 0 1px ".concat((null===(u=f.customizationProps)||void 0===u?void 0:u.errorColor)||"#FB4E4E"),borderColor:(null===(d=f.customizationProps)||void 0===d?void 0:d.errorColor)||"#FB4E4E",color:(null===(m=f.customizationProps)||void 0===m?void 0:m.errorColor)||"#FB4E4E"},".Label":{fontSize:"14px",color:(null===(v=f.customizationProps)||void 0===v?void 0:v.secondaryTextColor)||"#8A8B94"},".Error":{fontSize:"12px",marginTop:"8px",color:(null===(b=f.customizationProps)||void 0===b?void 0:b.errorColor)||"#FB4E4E"}}}};return e.createElement(e.Fragment,null,!f.stripeError&&e.createElement(i,{key:f.stripeResponse.clientSecret,stripe:E,options:C},e.createElement(n,{callbackUrl:f.stripeResponse.callbackUrl,vm:f})))}));export{l as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"react";var t=function(t){var r=t.className;return e.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:r},e.createElement("g",{id:"chevron-down"},e.createElement("path",{id:"Icon",d:"M5 7.5L10 12.5L15 7.5",stroke:"#697586","stroke-width":"1.6","stroke-linecap":"round","stroke-linejoin":"round"})))};export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"react";var t=function(t){return t.className,e.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.createElement("g",{id:"chevron-left"},e.createElement("path",{id:"Icon",d:"M12.5 15L7.5 10L12.5 5",stroke:"#272727","stroke-width":"1.6","stroke-linecap":"round","stroke-linejoin":"round"})))};export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"react";var t=function(t){return t.className,e.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.createElement("g",{id:"chevron-right"},e.createElement("path",{id:"Icon",d:"M7.5 15L12.5 10L7.5 5",stroke:"#272727","stroke-width":"1.6","stroke-linecap":"round","stroke-linejoin":"round"})))};export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as C from"react";var e=function(e){var t=e.className;return C.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t},C.createElement("g",{id:"shopping-bag-01"},C.createElement("path",{id:"Icon",d:"M3.68 1.75967L2.64 3.14634C2.43401 3.42099 2.33102 3.55832 2.33341 3.67327C2.33549 3.7733 2.38239 3.86711 2.46117 3.92879C2.55169 3.99967 2.72335 3.99967 3.06667 3.99967H12.9333C13.2766 3.99967 13.4483 3.99967 13.5388 3.92879C13.6176 3.86711 13.6645 3.7733 13.6666 3.67327C13.669 3.55832 13.566 3.42099 13.36 3.14634L12.32 1.75967M3.68 1.75967C3.79733 1.60323 3.856 1.52501 3.93035 1.46859C3.9962 1.41862 4.07077 1.38134 4.15026 1.35864C4.24 1.33301 4.33778 1.33301 4.53333 1.33301H11.4667C11.6622 1.33301 11.76 1.33301 11.8497 1.35864C11.9292 1.38134 12.0038 1.41862 12.0697 1.46859C12.144 1.52501 12.2027 1.60323 12.32 1.75967M3.68 1.75967L2.42667 3.43078C2.26836 3.64186 2.18921 3.7474 2.133 3.86362C2.08312 3.96675 2.04675 4.07588 2.02477 4.18831C2 4.31502 2 4.44694 2 4.71078L2 12.533C2 13.2797 2 13.6531 2.14532 13.9383C2.27316 14.1892 2.47713 14.3932 2.72801 14.521C3.01323 14.6663 3.3866 14.6663 4.13333 14.6663L11.8667 14.6663C12.6134 14.6663 12.9868 14.6663 13.272 14.521C13.5229 14.3932 13.7268 14.1892 13.8547 13.9383C14 13.6531 14 13.2797 14 12.533V4.71079C14 4.44694 14 4.31502 13.9752 4.18831C13.9533 4.07588 13.9169 3.96675 13.867 3.86362C13.8108 3.7474 13.7316 3.64186 13.5733 3.43079L12.32 1.75967M10.6667 6.66634C10.6667 7.37358 10.3857 8.05186 9.88562 8.55196C9.38552 9.05206 8.70724 9.33301 8 9.33301C7.29276 9.33301 6.61448 9.05206 6.11438 8.55196C5.61428 8.05186 5.33333 7.37358 5.33333 6.66634",stroke:"#697586","stroke-width":"1.4","stroke-linecap":"round","stroke-linejoin":"round"})))};export{e as default};
|
|
@@ -15,6 +15,21 @@ export declare type IkasCheckoutPageProps = {
|
|
|
15
15
|
export declare type IkasCheckoutCustomizationProps = {
|
|
16
16
|
logo?: IkasImage;
|
|
17
17
|
showTax?: boolean;
|
|
18
|
+
showCampaignIsBiggerImage?: boolean;
|
|
19
|
+
showCampaignOffersDesign?: boolean;
|
|
20
|
+
campaignOfferIsSmallDesign?: boolean;
|
|
21
|
+
showCampaignHideDiscountBadge?: boolean;
|
|
22
|
+
campaignOfferCountdownStyleIsLine?: boolean;
|
|
23
|
+
campaignOfferCountdownStyleIsLineSuccessPage?: boolean;
|
|
24
|
+
campaignOffersEnableMiddlePhase?: boolean;
|
|
25
|
+
campaignOffersTitleColor?: string;
|
|
26
|
+
campaignOffersDescriptionColor?: string;
|
|
27
|
+
campaignOffersDiscountPercentageColor?: string;
|
|
28
|
+
campaignOffersDiscountPercentageBgColor?: string;
|
|
29
|
+
campaignOffersCountdownTextColor?: string;
|
|
30
|
+
campaignOffersCountdownTimeColor?: string;
|
|
31
|
+
campaignOffersCountdownBgColor?: string;
|
|
32
|
+
campaignOffersMiddlePhaseOverlayColor?: string;
|
|
18
33
|
buttonBgColor?: string;
|
|
19
34
|
buttonTextColor?: string;
|
|
20
35
|
buttonDisabledBgColor?: string;
|
|
@@ -31,6 +46,9 @@ export declare type IkasCheckoutCustomizationProps = {
|
|
|
31
46
|
warningLightColor?: string;
|
|
32
47
|
successColor?: string;
|
|
33
48
|
successLightColor?: string;
|
|
49
|
+
secondaryButtonBgColor?: string;
|
|
50
|
+
secondaryButtonTextColor?: string;
|
|
51
|
+
secondaryButtonBorderColor?: string;
|
|
34
52
|
};
|
|
35
53
|
declare const _default: React.FunctionComponent<IkasCheckoutPageProps>;
|
|
36
54
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t}from'./../../ext/tslib/tslib.es6.js';import*as o from"react";import{observer as i}from"mobx-react-lite";import{useRouter as r}from"next/router.js";import a from"next/link.js";import n from"react-tooltip";import s,{CheckoutStep as c}from"./model.js";import{IkasStorefrontConfig as l}from"@ikas/storefront-config";import{formatCurrency as m}from"../../utils/currency.js";import{useTranslation as d}from"../../utils/i18n.js";import p from"./steps/step-info/index.js";import{CheckoutStepShipping as u}from"./steps/step-shipping/index.js";import{CheckoutStepPayment as v}from"./steps/step-payment/index.js";import{CouponErrorCode as g,Coupon as h,CartSummary as f}from"./components/cart-summary/index.js";import"../../models/data/blog/category/index.js";import"../../models/data/blog/content/index.js";import"../../models/data/blog/meta-data/index.js";import"../../models/data/blog/tag/index.js";import"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import{IkasThemeJsonPageType as y}from"@ikas/storefront-models";import"mobx";import"../../models/data/campaign-offer/index.js";import"../../models/data/cart/campaign-offer/index.js";import"../../models/data/cart/index.js";import"../../models/data/category/path-item/index.js";import"../../models/data/category/index.js";import"../../models/data/checkout/index.js";import"../../models/data/checkout-settings/index.js";import"../../models/data/city/index.js";import"../../models/data/country/index.js";import"../../models/data/customer/address/region/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/address/ikas-localized-customer-address.js";import"../../models/data/customer/attribute/index.js";import"../../models/data/customer/review/summary/index.js";import"../../models/data/customer/review/index.js";import"../../models/data/customer/index.js";import"../../models/data/district/index.js";import"../../models/data/favorite-product/index.js";import"../../models/data/filter-category/index.js";import"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/order/address/region/index.js";import"../../models/data/order/address/index.js";import"../../models/data/order/line-item/option/value/index.js";import"../../models/data/order/line-item/variant/value/index.js";import"../../models/data/order/line-item/variant/index.js";import"../../models/data/order/line-item/index.js";import"../../models/data/order/package/index.js";import"../../models/data/order/transaction/index.js";import"../../models/data/order/index.js";import"../../models/data/payment-gateway/index.js";import"../../models/data/product/attribute-value/index.js";import"../../models/data/product/filter/index.js";import"../../models/data/product/campaign-offer/index.js";import"../../models/data/product/option-set/option/index.js";import"../../models/data/product/option-set/index.js";import"../../models/data/product/stock-location/index.js";import"../../models/data/product/variant/price/index.js";import"../../models/data/product/variant/index.js";import"../../models/data/variant-type/index.js";import"../../models/data/product/index.js";import"../../models/data/raffle/index.js";import"../../models/data/shipping-zone/state/city/district/region/index.js";import"../../models/data/state/index.js";import"../../models/data/theme-json/index.js";import"../../models/data/theme-json/component/index.js";import"../../models/data/theme-json/custom-data/index.js";import"../../models/data/variant-type/variant-value/index.js";import"@ikas/localized-address";import"../../models/ui/blog-list/index.js";import"../../models/ui/blog-category-list/index.js";import"../../models/ui/brand-list/index.js";import"../../models/ui/category-list/index.js";import"../../models/ui/product-list/index.js";import"../../models/ui/product-attribute-detail/index.js";import"../../models/ui/product-attribute-list/index.js";import"../../models/ui/customer-review-list/index.js";import"../../models/ui/customer-review-summary-list/index.js";import"../../models/ui/validator/index.js";import"../../models/ui/validator/rules/index.js";import"../../models/ui/validator/form/login.js";import"../../models/ui/validator/form/address.js";import"../../models/ui/validator/form/ikas-address.js";import"../../models/ui/validator/form/register.js";import{ContactForm as E}from"../../models/ui/validator/form/contact-form.js";import"../../models/ui/validator/form/forgot-password.js";import"../../models/ui/validator/form/recover-password.js";import"../../models/ui/validator/form/account-info.js";import"../../models/ui/validator/form/raffle-form.js";import"../../models/ui/validator/form/customer-review.js";import"../../models/ui/raffle-list/index.js";import{StepSuccess as k}from"./steps/step-success/index.js";import{Modal as x}from"./components/modal/index.js";import j from"./components/master-pass/modal-otp/index.js";import C from"./components/master-pass/modal-response/index.js";import b from"./components/master-pass/modal-success/index.js";import{Image as N}from"../image/index.js";import P,{Step as F}from"./components/step-container/index.js";import{StockError as T}from"./components/error/stock-error/index.js";import{FullscreenLoading as S}from"./components/fullscreen-loading/index.js";import M from"./components/notification-box/index.js";import{FormItem as w}from"./components/form-item/index.js";import{FormItemType as O}from"./components/form-item/model.js";import{Button as A}from"./components/button/index.js";import{IkasPageHead as I}from"../page/head.js";import B from"./components/offer-product/index.js";import L from"./components/svg/ikas.js";import U from"./style.module.scss.js";import{Analytics as V}from"../../analytics/analytics.js";import"../../analytics/head/index.js";import R from"./components/epaykolay-button/index.js";var _=i((function(i){var a,m,p,u=i.checkout,v=i.checkoutSettings,g=i.customizationProps,h=i.returnPolicy,E=i.privacyPolicy,N=i.termsOfService,P=i.imprint,F=i.shippingPolicy,M=d().t,w=r(),O=o.useState((function(){return new s(u,v,w,h,E,N,P,F,M,g||{})}))[0],A=o.useMemo((function(){return Date.now()}),[]);O.step===c.PAYMENT&&V.disableHTML();var _=function(o,i,r,a,n){return e(void 0,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return e="".concat(process.env.NEXT_PUBLIC_BASE_URL,"/os/e-pay-kolay/get-basket"),[4,fetch(e,{method:"POST",headers:{"Content-Type":"application/json","x-api-key":l.getApiKey()},body:JSON.stringify({cartId:O.checkout.id,customerNumber:o,sessionsState:A,addressDto:r,paymentType:a,totalPrice:n})})];case 1:return[2,t.sent().json()]}}))}))};o.useEffect((function(){O.checkoutSettings.isAccountRequired&&!O.checkout.hasCustomer&&w.push("/account/login?redirect="+encodeURIComponent(O.checkoutUrl)),V.beginCheckout(O.checkout),V.pageView(y.CHECKOUT)}),[]),o.useEffect((function(){O.customizationProps=g,function(e){document.documentElement.style.setProperty("--checkout-button-bg-color",(null==e?void 0:e.buttonBgColor)||"#272727"),document.documentElement.style.setProperty("--checkout-button-text-color",(null==e?void 0:e.buttonTextColor)||"#FFFFFF"),document.documentElement.style.setProperty("--checkout-button-disabled-bg-color",(null==e?void 0:e.buttonDisabledBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-button-disabled-text-color",(null==e?void 0:e.buttonDisabledTextColor)||"#8A8B94"),document.documentElement.style.setProperty("--checkout-primary-text-color",(null==e?void 0:e.primaryTextColor)||"#272727"),document.documentElement.style.setProperty("--checkout-secondary-text-color",(null==e?void 0:e.secondaryTextColor)||"#8A8B94"),document.documentElement.style.setProperty("--checkout-primary-bg-color",(null==e?void 0:e.primaryBgColor)||"#FFFFFF"),document.documentElement.style.setProperty("--checkout-secondary-bg-color",(null==e?void 0:e.secondaryBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-border-color",(null==e?void 0:e.borderColor)||"#E5E4E9"),document.documentElement.style.setProperty("--checkout-card-bg-color",(null==e?void 0:e.cardBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-error-color",(null==e?void 0:e.errorColor)||"#FB4E4E"),document.documentElement.style.setProperty("--checkout-error-light-color",(null==e?void 0:e.errorLightColor)||"#FCF3F4"),document.documentElement.style.setProperty("--checkout-warning-color",(null==e?void 0:e.warningColor)||"#FFBC1F"),document.documentElement.style.setProperty("--checkout-warning-light-color",(null==e?void 0:e.warningLightColor)||"#FFFAEE"),document.documentElement.style.setProperty("--checkout-success-color",(null==e?void 0:e.successColor)||"#2DCA73"),document.documentElement.style.setProperty("--checkout-success-light-color",(null==e?void 0:e.successLightColor)||"#F6FFED")}(g)}),[g]),o.useEffect((function(){if(O.isEPayKolayEnabled)var o=setInterval((function(){var i,r;window.setContainerService&&O.isCheckoutLoaded&&(window.setContainerService(null===(i=l.getMerchantSettings())||void 0===i?void 0:i.merchantId,_,(function(o){return e(void 0,void 0,void 0,(function(){return t(this,(function(e){switch(e.label){case 0:return[4,K(o)];case 1:return[2,e.sent()]}}))}))}),(function(){console.log("Switching to epaykolay"),O.isEPayKolayPayment=!0}),"https://cdn-epeykolay.mncdn.com/".concat((null===(r=l.getApiUrl())||void 0===r?void 0:r.includes("myikas.com"))?"epay":"epay-uat","/")),clearInterval(o))}),100)}),[]);var K=o.useCallback((function(o){return e(void 0,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return[4,fetch("".concat(process.env.NEXT_PUBLIC_BASE_URL,"/os/e-pay-kolay/complete-payment"),{method:"POST",body:JSON.stringify({data:o,cartId:O.checkout.id}),headers:{"Content-Type":"application/json","x-api-key":l.getApiKey()}})];case 1:return[4,t.sent().json()];case 2:return e=t.sent(),[2,{redirectUrl:"".concat(window.location.pathname,"?id=").concat(O.checkout.id,"&step=").concat(e.success?"success":"info"),orderId:e.orderNumber||null}]}}))}))}),[]);if(!O.isCheckoutLoaded||!O.store.customerStore.initialized)return o.createElement(S,null);if(O.checkout.hasCustomer&&(null===(a=O.store.customerStore.customer)||void 0===a?void 0:a.id)!==(null===(m=O.checkout.customer)||void 0===m?void 0:m.id))return w.push("/account/login?redirect="+encodeURIComponent(O.checkoutUrl)),null;return o.createElement(o.Fragment,null,o.createElement(I,{pageType:y.CHECKOUT,pageTitle:((null===(p=O.merchantSettings)||void 0===p?void 0:p.merchantName)||"")+" - "+M("checkout-page:securePayment"),pageDescription:M("checkout-page:securePayment")}),o.createElement("div",{id:"Checkout",className:U.CheckoutPage},o.createElement(n,{place:"top",type:"dark",effect:"solid",arrowColor:"transparent",multiline:!0,className:U.ReactTooltipWrap,globalEventOff:"touchstart"}),o.createElement("div",{className:[U.Left,O.isEPayKolayPayment?U.epaykolay:""].join(" ")},O.isEPayKolayEnabled&&o.createElement("div",{id:"plateau_ui_placeholder",style:{width:"100%"}}),!O.isEPayKolayPayment&&o.createElement("div",{className:U.LeftContent},o.createElement("div",null,o.createElement(D,{vm:O}),O.hasStockError&&o.createElement("div",{className:U.ErrorContainer},o.createElement(T,{vm:O,error:O.error})),!O.hasStockError&&o.createElement(o.Fragment,null,o.createElement(f,{vm:O,allowExpand:!0}),o.createElement("div",null,O.step!==c.SUCCESS&&O.isEPayKolayEnabled&&o.createElement(R,{onClick:function(){window.frictionless()}})),O.step===c.SUCCESS?o.createElement(k,{vm:O}):o.createElement(o.Fragment,null,O.campaignOffer&&O.isCampaignOfferLoaded&&o.createElement(B,{vm:O,campaignOffer:O.campaignOffer}),O.isCouponCodeRequirementOpen&&o.createElement(z,{vm:O}),o.createElement(H,{vm:O}))),o.createElement("div",{className:U.Space})),o.createElement(Y,{vm:O}))),o.createElement("div",{className:U.Right},o.createElement("div",{className:U.RightContent},o.createElement(f,{vm:O}),!O.isPoweredByHidden&&o.createElement("div",{className:U.PoweredBy},o.createElement("span",null,"powered by"),o.createElement("a",{href:"https://ikas.com"+("tr"===l.getCurrentLocale()?"/tr":""),target:"_blank"},o.createElement(L,null))))),!!O.policyModalText&&o.createElement(x,{title:O.policyModalTitle,modalContent:O.policyModalText,onClose:function(){O.policyModalText=""}}),O.isContactModalVisible&&o.createElement(X,{vm:O,setVisible:O.setContactModalVisible}),O.mpVM.isOtpModalVisible&&o.createElement(j,{vm:O,visible:O.mpVM.isOtpModalVisible,type:O.mpVM.otpModalType,onClose:O.mpVM.hideOtpModal}),O.mpVM.isResponseModalVisible&&o.createElement(C,{visible:O.mpVM.isResponseModalVisible,text:O.mpVM.mfsResponseModalText,onClose:O.mpVM.onResponseModalClose}),O.mpVM.isSuccessModalVisible&&o.createElement(b,{visible:O.mpVM.isSuccessModalVisible,type:O.mpVM.successModalType,onClose:O.mpVM.onSuccessModalClose})))})),D=i((function(e){var t,i,r,n,s=e.vm,c=d().t;return o.createElement("div",{className:U.Header},o.createElement(a,{href:"/",passHref:!0},o.createElement("a",null,(null===(t=s.customizationProps)||void 0===t?void 0:t.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:s.customizationProps.logo,sizes:"360px"})):(null===(i=s.merchantSettings)||void 0===i?void 0:i.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:s.merchantSettings.logo,sizes:"360px"})):(null===(r=s.merchantSettings)||void 0===r?void 0:r.merchantName)||"")),!s.checkout.hasCustomer&&o.createElement("div",{className:U.LoginText},o.createElement("span",{className:U.LoginCta},c("checkout-page:alreadyHaveAnAccount")),o.createElement(a,{href:"/account/login?redirect="+encodeURIComponent(s.checkoutUrl),passHref:!0},o.createElement("a",{className:U.LoginBtn},c("checkout-page:actions.login")))),s.checkout.hasCustomer&&o.createElement("div",{className:U.CustomerInfo},o.createElement("div",{className:U.Name},s.checkout.customerFullName),o.createElement("div",{className:U.Email},null===(n=s.checkout.customer)||void 0===n?void 0:n.email)))})),z=i((function(e){var t=e.vm,i=d().t,r=o.useState(!1),a=r[0],n=r[1],s=o.useState(null),c=s[0],l=s[1],m=o.useMemo((function(){switch(c){case g.COUPON_CODE_NOT_EXIST:return i("checkout-page:giftCodeErrorDescription");case g.COUPON_CODE_NOT_EXIST_FOR_GUESS:return i("checkout-page:mustBeSignInToApplyCampaign");default:return""}}),[c]);return o.createElement("div",{className:U.CouponContainer},a&&o.createElement("div",{className:U.NotificationContainer},o.createElement(M,{type:"warning",title:i("checkout-page:giftCodeErrorTitle"),content:m,onClose:function(){n(!1),l(null)},ignoreScroll:!0})),o.createElement("div",{style:{marginTop:a?12:0}},o.createElement(h,{vm:t,isOpenCouponCode:!0,isAddingCoupon:!0,setAddingCoupon:function(){},setCouponError:n,setCouponErrorCode:l})))})),H=i((function(e){var t=e.vm,i=d().t,r=o.useMemo((function(){switch(t.step){case c.INFO:return o.createElement(p,{vm:t});case c.SHIPPING:return o.createElement(u,{vm:t});case c.PAYMENT:return o.createElement(v,{vm:t});case c.SUCCESS:return o.createElement(k,{vm:t})}}),[t,t.step]),a=[new F(i("checkout-page:address"),t.step===c.INFO,t.step!==c.INFO,t.step!==c.INFO?o.createElement("div",{className:U.AdressStepInfo},o.createElement(K,{vm:t}),!t.isUpsellOrder&&o.createElement("div",{className:U.EditBtn,onClick:t.onBackToInfoClick},i("checkout-page:actions.edit"))):void 0,t.step!==c.INFO?o.createElement("div",{className:U.AddressStepInfoMobile},o.createElement(K,{vm:t})):void 0),new F(i("checkout-page:payment"),t.step===c.PAYMENT,!1)];return"address"!==t.deliveryMethod||t.isDigitalOnly||a.splice(1,0,new F(i("checkout-page:shipping"),t.step===c.SHIPPING,t.step===c.PAYMENT,t.step===c.PAYMENT?o.createElement("div",{className:U.AdressStepInfo},o.createElement(G,{vm:t}),!t.isUpsellOrder&&(t.checkout.availableShippingMethods&&t.checkout.availableShippingMethods.length>1||t.checkoutSettings.isGiftPackageEnabled)&&o.createElement("div",{className:U.EditBtn,onClick:t.onBackToShippingClick},i("checkout-page:actions.edit"))):void 0,t.step===c.PAYMENT?o.createElement("div",{className:U.AddressStepInfoMobile},o.createElement(G,{vm:t})):void 0)),o.createElement(P,{steps:a,stepContent:r})})),K=i((function(e){var t,i,r,a,n,s,c,l,m,p=e.vm,u=d().t,v=p.isDigitalOnly?((null===(t=p.checkout.billingAddress)||void 0===t?void 0:t.firstName)||"")+" "+((null===(i=p.checkout.billingAddress)||void 0===i?void 0:i.lastName)||""):((null===(r=p.checkout.shippingAddress)||void 0===r?void 0:r.firstName)||"")+" "+((null===(a=p.checkout.shippingAddress)||void 0===a?void 0:a.lastName)||"");return o.createElement("div",{className:U.Address},o.createElement("div",{className:[U.Text,U.WithMBottom].join(" ")},(null===(n=p.checkout.customer)||void 0===n?void 0:n.email)||""),"address"===p.deliveryMethod?o.createElement("div",{className:U.Text},v):o.createElement(o.Fragment,null,o.createElement("div",{className:U.Text},u("checkout-page:receiver")),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},v)),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},p.isDigitalOnly?null===(s=p.checkout.billingAddress)||void 0===s?void 0:s.phone:null===(c=p.checkout.shippingAddress)||void 0===c?void 0:c.phone),"in-store"===p.deliveryMethod&&o.createElement(o.Fragment,null,o.createElement("div",{className:[U.Text,U.WithMTop].join(" ")},u("checkout-page:pickUpLocation"))),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},p.isDigitalOnly?null===(l=p.checkout.billingAddress)||void 0===l?void 0:l.addressText:null===(m=p.checkout.shippingAddress)||void 0===m?void 0:m.addressText))})),G=i((function(e){var t=e.vm,i=d().t;return o.createElement("div",{className:U.Address},t.checkout.shippingLines&&t.checkout.shippingLines.length?o.createElement(o.Fragment,null,o.createElement("span",null,t.checkout.shippingLines[0].title),o.createElement("span",{className:U.LightText}," / "+(0===t.checkout.shippingLines[0].price?i("checkout-page:free"):m(t.checkout.shippingLines[0].price,t.checkout.currencyCode,t.checkout.currencySymbol)))):i("checkout-page:standartShipping"))})),Y=i((function(e){var t=e.vm,i=d().t;return o.createElement("div",{className:U.Footer},o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=i("checkout-page:returnPolicy"),t.policyModalText=t.returnPolicy}},i("checkout-page:returnPolicy")),o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=i("checkout-page:privacyPolicy"),t.policyModalText=t.privacyPolicy}},i("checkout-page:privacyPolicy")),o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=i("checkout-page:termsOfService"),t.policyModalText=t.termsOfService}},i("checkout-page:termsOfService")),t.imprint&&o.createElement(o.Fragment,null,o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=i("checkout-page:imprint"),t.policyModalText=t.imprint}},i("checkout-page:imprint"))),t.shippingPolicy&&o.createElement(o.Fragment,null,o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=i("checkout-page:shippingPolicy"),t.policyModalText=t.shippingPolicy}},i("checkout-page:shippingPolicy"))))})),X=i((function(i){var r,a,n,s=i.vm,c=i.setVisible,l=d().t,m=o.useState(!1),p=m[0],u=m[1],v=o.useState(!1),g=v[0],h=v[1],f=o.useState(new E({message:{requiredRule:"",emailRule:"",minRule:""}}))[0];f.email=(null===(r=s.checkout.customer)||void 0===r?void 0:r.email)||"",f.firstName=(null===(a=s.checkout.customer)||void 0===a?void 0:a.firstName)||"",f.lastName=(null===(n=s.checkout.customer)||void 0===n?void 0:n.lastName)||"";var y=o.useCallback((function(){return e(void 0,void 0,void 0,(function(){return t(this,(function(e){switch(e.label){case 0:return g?[2,c(!1)]:(u(!0),[4,f.saveContactForm()]);case 1:return e.sent()&&h(!0),u(!1),[2]}}))}))}),[p]);return o.createElement(x,{title:l("checkout-page:contactForm"),modalContent:o.createElement("div",null,g&&o.createElement("div",{style:{marginBottom:"12px",maxWidth:"352px"}},o.createElement(M,{type:"success",title:l("checkout-page:contactFormSent"),content:l("checkout-page:contactFormDescription")})),o.createElement(w,{type:O.TEXT_AREA,label:"",value:f.message||"",onChange:f.onMessageChange,textAreaPlaceholder:l("checkout-page:contactFormCta")}),o.createElement(A,{style:{width:"100%",marginTop:"24px"},text:l(g?"checkout-page:actions.close":"checkout-page:actions.sendMessage"),isLoading:p,isDisabled:!f.message,onClick:y})),onClose:function(){return c(!1)}})}));export{_ as default};
|
|
1
|
+
import{__awaiter as e,__generator as t}from'./../../ext/tslib/tslib.es6.js';import*as o from"react";import{observer as n}from"mobx-react-lite";import{useRouter as i}from"next/router.js";import r from"next/link.js";import a from"react-tooltip";import s,{CheckoutStep as c}from"./model.js";import{IkasStorefrontConfig as l}from"@ikas/storefront-config";import{formatCurrency as m}from"../../utils/currency.js";import{useTranslation as d}from"../../utils/i18n.js";import u from"./steps/step-info/index.js";import{CheckoutStepShipping as p}from"./steps/step-shipping/index.js";import{CheckoutStepPayment as v}from"./steps/step-payment/index.js";import{CouponErrorCode as f,Coupon as g,CartSummary as h}from"./components/cart-summary/index.js";import"../../models/data/blog/category/index.js";import"../../models/data/blog/content/index.js";import"../../models/data/blog/meta-data/index.js";import"../../models/data/blog/tag/index.js";import"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import{IkasThemeJsonPageType as E}from"@ikas/storefront-models";import"mobx";import"../../models/data/campaign-offer/index.js";import"../../models/data/cart/campaign-offer/index.js";import"../../models/data/cart/index.js";import"../../models/data/category/path-item/index.js";import"../../models/data/category/index.js";import"../../models/data/checkout/index.js";import"../../models/data/checkout-settings/index.js";import"../../models/data/city/index.js";import"../../models/data/country/index.js";import"../../models/data/customer/address/region/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/address/ikas-localized-customer-address.js";import"../../models/data/customer/attribute/index.js";import"../../models/data/customer/review/summary/index.js";import"../../models/data/customer/review/index.js";import"../../models/data/customer/index.js";import"../../models/data/district/index.js";import"../../models/data/favorite-product/index.js";import"../../models/data/filter-category/index.js";import"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/order/address/region/index.js";import"../../models/data/order/address/index.js";import"../../models/data/order/line-item/option/value/index.js";import"../../models/data/order/line-item/variant/value/index.js";import"../../models/data/order/line-item/variant/index.js";import"../../models/data/order/line-item/index.js";import"../../models/data/order/package/index.js";import"../../models/data/order/transaction/index.js";import"../../models/data/order/index.js";import"../../models/data/payment-gateway/index.js";import"../../models/data/product/attribute-value/index.js";import"../../models/data/product/filter/index.js";import"../../models/data/product/campaign-offer/index.js";import"../../models/data/product/option-set/option/index.js";import"../../models/data/product/option-set/index.js";import"../../models/data/product/stock-location/index.js";import"../../models/data/product/variant/price/index.js";import"../../models/data/product/variant/index.js";import"../../models/data/variant-type/index.js";import"../../models/data/product/index.js";import"../../models/data/raffle/index.js";import"../../models/data/shipping-zone/state/city/district/region/index.js";import"../../models/data/state/index.js";import"../../models/data/theme-json/index.js";import"../../models/data/theme-json/component/index.js";import"../../models/data/theme-json/custom-data/index.js";import"../../models/data/variant-type/variant-value/index.js";import"@ikas/localized-address";import"../../models/ui/blog-list/index.js";import"../../models/ui/blog-category-list/index.js";import"../../models/ui/brand-list/index.js";import"../../models/ui/category-list/index.js";import"../../models/ui/product-list/index.js";import"../../models/ui/product-attribute-detail/index.js";import"../../models/ui/product-attribute-list/index.js";import"../../models/ui/customer-review-list/index.js";import"../../models/ui/customer-review-summary-list/index.js";import"../../models/ui/validator/index.js";import"../../models/ui/validator/rules/index.js";import"../../models/ui/validator/form/login.js";import"../../models/ui/validator/form/address.js";import"../../models/ui/validator/form/ikas-address.js";import"../../models/ui/validator/form/register.js";import{ContactForm as y}from"../../models/ui/validator/form/contact-form.js";import"../../models/ui/validator/form/forgot-password.js";import"../../models/ui/validator/form/recover-password.js";import"../../models/ui/validator/form/account-info.js";import"../../models/ui/validator/form/raffle-form.js";import"../../models/ui/validator/form/customer-review.js";import"../../models/ui/raffle-list/index.js";import{StepSuccess as x}from"./steps/step-success/index.js";import{Modal as k}from"./components/modal/index.js";import C from"./components/master-pass/modal-otp/index.js";import j from"./components/master-pass/modal-response/index.js";import P from"./components/master-pass/modal-success/index.js";import{Image as N}from"../image/index.js";import b,{Step as S}from"./components/step-container/index.js";import{StockError as O}from"./components/error/stock-error/index.js";import{FullscreenLoading as F}from"./components/fullscreen-loading/index.js";import M from"./components/notification-box/index.js";import{FormItem as T}from"./components/form-item/index.js";import{FormItemType as w}from"./components/form-item/model.js";import{Button as I}from"./components/button/index.js";import{IkasPageHead as A}from"../page/head.js";import B from"./components/offer-product/index.js";import L from"./components/offer-product/placeholder-offer-product.js";import D from"./components/svg/ikas.js";import U from"./style.module.scss.js";import{Analytics as V}from"../../analytics/analytics.js";import"../../analytics/head/index.js";import R from"./components/epaykolay-button/index.js";import _ from"./components/svg/success-circle.js";import z from"./components/offer-product/offer-dots/index.js";import H from"./components/offer-product/offer-arrows/index.js";import K from"./components/offer-product/useCampaignOffer.js";var G=n((function(n){var r,m,u,p,v,f,g,y=n.checkout,b=n.checkoutSettings,S=n.customizationProps,M=n.returnPolicy,T=n.privacyPolicy,w=n.termsOfService,G=n.imprint,q=n.shippingPolicy,J=d().t,$=i(),ee=o.useState((function(){return new s(y,b,$,M,T,w,G,q,J,S||{})}))[0],te=K(ee),oe=te.setShowDetailPage,ne=te.setActiveIndex,ie=te.setIsActiveOverlay,re=te.handlePrev,ae=te.handleNext,se=te.isPopupClosedIndexPage,ce=te.isPopupShowIndexPage,le=te.isShowSuccessPageMiddlePhase,me=te.activeIndex,de=o.useMemo((function(){return Date.now()}),[]);ee.step===c.PAYMENT&&V.disableHTML();var ue=function(o,n,i,r,a){return e(void 0,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return e="".concat(process.env.NEXT_PUBLIC_BASE_URL,"/os/e-pay-kolay/get-basket"),[4,fetch(e,{method:"POST",headers:{"Content-Type":"application/json","x-api-key":l.getApiKey()},body:JSON.stringify({cartId:ee.checkout.id,customerNumber:o,sessionsState:de,addressDto:i,paymentType:r,totalPrice:a})})];case 1:return[2,t.sent().json()]}}))}))};o.useEffect((function(){ee.checkoutSettings.isAccountRequired&&!ee.checkout.hasCustomer&&$.push("/account/login?redirect="+encodeURIComponent(ee.checkoutUrl)),V.beginCheckout(ee.checkout),V.pageView(E.CHECKOUT)}),[]),o.useEffect((function(){ee.customizationProps=S,function(e){document.documentElement.style.setProperty("--checkout-button-bg-color",(null==e?void 0:e.buttonBgColor)||"#272727"),document.documentElement.style.setProperty("--checkout-button-text-color",(null==e?void 0:e.buttonTextColor)||"#FFFFFF"),document.documentElement.style.setProperty("--checkout-button-disabled-bg-color",(null==e?void 0:e.buttonDisabledBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-button-disabled-text-color",(null==e?void 0:e.buttonDisabledTextColor)||"#8A8B94"),document.documentElement.style.setProperty("--checkout-primary-text-color",(null==e?void 0:e.primaryTextColor)||"#272727"),document.documentElement.style.setProperty("--checkout-secondary-text-color",(null==e?void 0:e.secondaryTextColor)||"#8A8B94"),document.documentElement.style.setProperty("--checkout-primary-bg-color",(null==e?void 0:e.primaryBgColor)||"#FFFFFF"),document.documentElement.style.setProperty("--checkout-secondary-bg-color",(null==e?void 0:e.secondaryBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-border-color",(null==e?void 0:e.borderColor)||"#E5E4E9"),document.documentElement.style.setProperty("--checkout-card-bg-color",(null==e?void 0:e.cardBgColor)||"#F7F7F9"),document.documentElement.style.setProperty("--checkout-error-color",(null==e?void 0:e.errorColor)||"#FB4E4E"),document.documentElement.style.setProperty("--checkout-error-light-color",(null==e?void 0:e.errorLightColor)||"#FCF3F4"),document.documentElement.style.setProperty("--checkout-warning-color",(null==e?void 0:e.warningColor)||"#FFBC1F"),document.documentElement.style.setProperty("--checkout-warning-light-color",(null==e?void 0:e.warningLightColor)||"#FFFAEE"),document.documentElement.style.setProperty("--checkout-success-color",(null==e?void 0:e.successColor)||"#2DCA73"),document.documentElement.style.setProperty("--checkout-success-light-color",(null==e?void 0:e.successLightColor)||"#F6FFED"),document.documentElement.style.setProperty("--checkout-secondary-button-bg-color",(null==e?void 0:e.secondaryButtonBgColor)||"#ffffff0"),document.documentElement.style.setProperty("--checkout-secondary-button-text-color",(null==e?void 0:e.secondaryButtonTextColor)||"#272727"),document.documentElement.style.setProperty("--checkout-secondary-button-border-color",(null==e?void 0:e.secondaryButtonBorderColor)||"#E5E4E9"),document.documentElement.style.setProperty("--checkout-campaign-title-color",(null==e?void 0:e.campaignOffersTitleColor)||"#272727"),document.documentElement.style.setProperty("--checkout-campaign-description-color",(null==e?void 0:e.campaignOffersDescriptionColor)||"#272727"),document.documentElement.style.setProperty("--checkout-campaign-discount-percentage-color",(null==e?void 0:e.campaignOffersDiscountPercentageColor)||"#272727"),document.documentElement.style.setProperty("--checkout-campaign-discount-percentage-bg-color",(null==e?void 0:e.campaignOffersDiscountPercentageBgColor)||"#FFF1BD"),document.documentElement.style.setProperty("--checkout-campaign-countdown-text-color",(null==e?void 0:e.campaignOffersCountdownTextColor)||"#272727"),document.documentElement.style.setProperty("--checkout-campaign-countdown-time-color",(null==e?void 0:e.campaignOffersCountdownTimeColor)||"#FB4E4E"),document.documentElement.style.setProperty("--checkout-campaign-countdown-bg-color",(null==e?void 0:e.campaignOffersCountdownBgColor)||"#FFF5F6"),document.documentElement.style.setProperty("--checkout-campaign-middle-phase-overlay-color",(null==e?void 0:e.campaignOffersMiddlePhaseOverlayColor)||"#292727ad")}(S)}),[S]),o.useEffect((function(){if(ee.isEPayKolayEnabled)var o=setInterval((function(){var n,i;window.setContainerService&&ee.isCheckoutLoaded&&(window.setContainerService(null===(n=l.getMerchantSettings())||void 0===n?void 0:n.merchantId,ue,(function(o){return e(void 0,void 0,void 0,(function(){return t(this,(function(e){switch(e.label){case 0:return[4,pe(o)];case 1:return[2,e.sent()]}}))}))}),(function(){console.log("Switching to epaykolay"),ee.isEPayKolayPayment=!0}),"https://cdn-epeykolay.mncdn.com/".concat((null===(i=l.getApiUrl())||void 0===i?void 0:i.includes("myikas.com"))?"epay":"epay-uat","/")),clearInterval(o))}),100)}),[]);var pe=o.useCallback((function(o){return e(void 0,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return[4,fetch("".concat(process.env.NEXT_PUBLIC_BASE_URL,"/os/e-pay-kolay/complete-payment"),{method:"POST",body:JSON.stringify({data:o,cartId:ee.checkout.id}),headers:{"Content-Type":"application/json","x-api-key":l.getApiKey()}})];case 1:return[4,t.sent().json()];case 2:return e=t.sent(),[2,{redirectUrl:"".concat(window.location.pathname,"?id=").concat(ee.checkout.id,"&step=").concat(e.success?"success":"info"),orderId:e.orderNumber||null}]}}))}))}),[]);if(!ee.isCheckoutLoaded||!ee.store.customerStore.initialized)return o.createElement(F,null);if(ee.checkout.hasCustomer&&(null===(r=ee.store.customerStore.customer)||void 0===r?void 0:r.id)!==(null===(m=ee.checkout.customer)||void 0===m?void 0:m.id))return $.push("/account/login?redirect="+encodeURIComponent(ee.checkoutUrl)),null;return o.createElement(o.Fragment,null,o.createElement(A,{pageType:E.CHECKOUT,pageTitle:((null===(u=ee.merchantSettings)||void 0===u?void 0:u.merchantName)||"")+" - "+J("checkout-page:securePayment"),pageDescription:J("checkout-page:securePayment")}),o.createElement("div",{id:"Checkout",className:U.CheckoutPage},le?o.createElement("div",{className:U.FullPageOfferMain},o.createElement("div",{className:U.FullPageOfferContainer},o.createElement("div",{className:U.LogoMain},(null===(p=ee.customizationProps)||void 0===p?void 0:p.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:ee.customizationProps.logo,sizes:"360px"})):(null===(v=ee.merchantSettings)||void 0===v?void 0:v.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:ee.merchantSettings.logo,sizes:"360px"})):(null===(f=ee.merchantSettings)||void 0===f?void 0:f.merchantName)||""),o.createElement("div",{className:U.OfferSuccessInfo},o.createElement("div",null,o.createElement("div",{className:U.OfferSuccessHeader},o.createElement(_,{className:U.SuccessCircle}),o.createElement("span",{className:U.SuccessTitle},J("checkout-page:orderSuccessShortTitle"))),o.createElement("div",{className:U.OfferOrderInfoMain},o.createElement("div",{className:U.InfoTitle},J("checkout-page:orderNoAndDate"),":"),o.createElement("div",{className:U.InfoText},"#"+(ee.checkout.orderNumber||"")," ",ee.checkout.dateStr))),o.createElement("div",null,o.createElement(I,{classes:U.OfferButton,isLine:!0,text:J("checkout-page:actions.goOrderDetailPage"),onClick:function(){oe(!1)}}))),o.createElement("div",null,ee.campaignOffers&&!!ee.campaignOffers.length&&ee.isCampaignOfferLoaded&&o.createElement("div",{className:U.CampaignOfferMain},o.createElement("div",{className:U.OfferSlider},ee.campaignOffers.map((function(e,t){var n;return o.createElement(B,{vm:ee,campaignOffer:e,index:t,activeIndex:me,offersLength:(null===(n=ee.campaignOffers)||void 0===n?void 0:n.length)||0,handlePrev:re,handleNext:ae,setActiveIndex:function(e){return ne(e)},desktopMiddlePhase:!0,step:ee.step})}))),ee.campaignOffers.length>1&&o.createElement(H,{handlePrev:re,handleNext:ae}),ee.campaignOffers.length>1&&o.createElement(z,{vm:ee,activeIndex:me}))))):null,o.createElement(a,{place:"top",type:"dark",effect:"solid",arrowColor:"transparent",multiline:!0,className:U.ReactTooltipWrap,globalEventOff:"touchstart"}),o.createElement("div",{className:[U.Left,ee.isEPayKolayPayment?U.epaykolay:""].join(" ")},ee.isEPayKolayEnabled&&o.createElement("div",{id:"plateau_ui_placeholder",style:{width:"100%"}}),!ee.isEPayKolayPayment&&o.createElement("div",{className:U.LeftContent},o.createElement("div",null,o.createElement(Y,{vm:ee}),ee.hasStockError&&o.createElement("div",{className:U.ErrorContainer},o.createElement(O,{vm:ee,error:ee.error})),!ee.hasStockError&&o.createElement(o.Fragment,null,ee.step!==c.SUCCESS&&o.createElement(h,{vm:ee,allowExpand:!0}),o.createElement("div",null,ee.step!==c.SUCCESS&&ee.isEPayKolayEnabled&&o.createElement(R,{onClick:function(){window.frictionless()}})),ee.step===c.SUCCESS?o.createElement(x,{vm:ee}):o.createElement(o.Fragment,null,!!(null===(g=ee.customizationProps)||void 0===g?void 0:g.showCampaignOffersDesign)&&l.getIsEditor()&&o.createElement(L,{vm:ee}),ce&&o.createElement("div",{className:[U.MiddlePhaseOverlay,ce?U.MiddlePhaseOverlayPopup:""].join(" ")}),ee.campaignOffers&&!!ee.campaignOffers.length&&ee.isCampaignOfferLoaded&&o.createElement("div",{className:[U.CampaignOfferMain,ce?U.OverlayPopupMain:""].join(" ")},o.createElement("div",{className:U.OfferSlider},ee.campaignOffers.map((function(e,t){var n;return o.createElement(B,{vm:ee,campaignOffer:e,index:t,activeIndex:me,offersLength:(null===(n=ee.campaignOffers)||void 0===n?void 0:n.length)||0,handlePrev:re,handleNext:ae,setActiveIndex:function(e){return ne(e)},step:ee.step,isPopupClosed:se,isPopupShow:ce,closePopup:function(){return ie(!1)},showPopup:function(){return ie(!0)}})}))),ee.campaignOffers.length>1&&o.createElement(H,{handlePrev:re,handleNext:ae}),ee.campaignOffers.length>1&&o.createElement(z,{isPopupShow:ce,vm:ee,activeIndex:me})),ee.isCouponCodeRequirementOpen&&o.createElement(W,{vm:ee}),o.createElement(X,{vm:ee}))),o.createElement("div",{className:U.Space})),o.createElement(Q,{vm:ee}))),o.createElement("div",{className:U.Right},o.createElement("div",{className:U.RightContent},o.createElement(h,{vm:ee}),!ee.isPoweredByHidden&&o.createElement("div",{className:U.PoweredBy},o.createElement("span",null,"powered by"),o.createElement("a",{href:"https://ikas.com"+("tr"===l.getCurrentLocale()?"/tr":""),target:"_blank"},o.createElement(D,null))))),!!ee.policyModalText&&o.createElement(k,{title:ee.policyModalTitle,modalContent:ee.policyModalText,onClose:function(){ee.policyModalText=""}}),ee.isContactModalVisible&&o.createElement(Z,{vm:ee,setVisible:ee.setContactModalVisible}),ee.mpVM.isOtpModalVisible&&o.createElement(C,{vm:ee,visible:ee.mpVM.isOtpModalVisible,type:ee.mpVM.otpModalType,onClose:ee.mpVM.hideOtpModal}),ee.mpVM.isResponseModalVisible&&o.createElement(j,{visible:ee.mpVM.isResponseModalVisible,text:ee.mpVM.mfsResponseModalText,onClose:ee.mpVM.onResponseModalClose}),ee.mpVM.isSuccessModalVisible&&o.createElement(P,{visible:ee.mpVM.isSuccessModalVisible,type:ee.mpVM.successModalType,onClose:ee.mpVM.onSuccessModalClose})))})),Y=n((function(e){var t,n,i,a,s=e.vm,c=d().t;return o.createElement("div",{className:U.Header},o.createElement(r,{href:"/",passHref:!0},o.createElement("a",null,(null===(t=s.customizationProps)||void 0===t?void 0:t.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:s.customizationProps.logo,sizes:"360px"})):(null===(n=s.merchantSettings)||void 0===n?void 0:n.logo)?o.createElement("div",{className:U.Logo},o.createElement(N,{layout:"fill",image:s.merchantSettings.logo,sizes:"360px"})):(null===(i=s.merchantSettings)||void 0===i?void 0:i.merchantName)||"")),!s.checkout.hasCustomer&&o.createElement("div",{className:U.LoginText},o.createElement("span",{className:U.LoginCta},c("checkout-page:alreadyHaveAnAccount")),o.createElement(r,{href:"/account/login?redirect="+encodeURIComponent(s.checkoutUrl),passHref:!0},o.createElement("a",{className:U.LoginBtn},c("checkout-page:actions.login")))),s.checkout.hasCustomer&&o.createElement("div",{className:U.CustomerInfo},o.createElement("div",{className:U.Name},s.checkout.customerFullName),o.createElement("div",{className:U.Email},null===(a=s.checkout.customer)||void 0===a?void 0:a.email)))})),W=n((function(e){var t=e.vm,n=d().t,i=o.useState(!1),r=i[0],a=i[1],s=o.useState(null),c=s[0],l=s[1],m=o.useMemo((function(){switch(c){case f.COUPON_CODE_NOT_EXIST:return n("checkout-page:giftCodeErrorDescription");case f.COUPON_CODE_NOT_EXIST_FOR_GUESS:return n("checkout-page:mustBeSignInToApplyCampaign");default:return""}}),[c]);return o.createElement("div",{className:U.CouponContainer},r&&o.createElement("div",{className:U.NotificationContainer},o.createElement(M,{type:"warning",title:n("checkout-page:giftCodeErrorTitle"),content:m,onClose:function(){a(!1),l(null)},ignoreScroll:!0})),o.createElement("div",{style:{marginTop:r?12:0}},o.createElement(g,{vm:t,isOpenCouponCode:!0,isAddingCoupon:!0,setAddingCoupon:function(){},setCouponError:a,setCouponErrorCode:l})))})),X=n((function(e){var t=e.vm,n=d().t,i=o.useMemo((function(){switch(t.step){case c.INFO:return o.createElement(u,{vm:t});case c.SHIPPING:return o.createElement(p,{vm:t});case c.PAYMENT:return o.createElement(v,{vm:t});case c.SUCCESS:return o.createElement(x,{vm:t})}}),[t,t.step]),r=[new S(n("checkout-page:address"),t.step===c.INFO,t.step!==c.INFO,t.step!==c.INFO?o.createElement("div",{className:U.AdressStepInfo},o.createElement(q,{vm:t}),!t.isUpsellOrder&&o.createElement("div",{className:U.EditBtn,onClick:t.onBackToInfoClick},n("checkout-page:actions.edit"))):void 0,t.step!==c.INFO?o.createElement("div",{className:U.AddressStepInfoMobile},o.createElement(q,{vm:t})):void 0),new S(n("checkout-page:payment"),t.step===c.PAYMENT,!1)];return"address"!==t.deliveryMethod||t.isDigitalOnly||r.splice(1,0,new S(n("checkout-page:shipping"),t.step===c.SHIPPING,t.step===c.PAYMENT,t.step===c.PAYMENT?o.createElement("div",{className:U.AdressStepInfo},o.createElement(J,{vm:t}),!t.isUpsellOrder&&!t.isManualOrderWithShippingLines&&(t.checkout.availableShippingMethods&&t.checkout.availableShippingMethods.length>1||t.checkoutSettings.isGiftPackageEnabled)&&o.createElement("div",{className:U.EditBtn,onClick:t.onBackToShippingClick},n("checkout-page:actions.edit"))):void 0,t.step===c.PAYMENT?o.createElement("div",{className:U.AddressStepInfoMobile},o.createElement(J,{vm:t})):void 0)),o.createElement(b,{steps:r,stepContent:i})})),q=n((function(e){var t,n,i,r,a,s,c,l,m,u=e.vm,p=d().t,v=u.isDigitalOnly?((null===(t=u.checkout.billingAddress)||void 0===t?void 0:t.firstName)||"")+" "+((null===(n=u.checkout.billingAddress)||void 0===n?void 0:n.lastName)||""):((null===(i=u.checkout.shippingAddress)||void 0===i?void 0:i.firstName)||"")+" "+((null===(r=u.checkout.shippingAddress)||void 0===r?void 0:r.lastName)||"");return o.createElement("div",{className:U.Address},o.createElement("div",{className:[U.Text,U.WithMBottom].join(" ")},(null===(a=u.checkout.customer)||void 0===a?void 0:a.email)||""),"address"===u.deliveryMethod?o.createElement("div",{className:U.Text},v):o.createElement(o.Fragment,null,o.createElement("div",{className:U.Text},p("checkout-page:receiver")),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},v)),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},u.isDigitalOnly?null===(s=u.checkout.billingAddress)||void 0===s?void 0:s.phone:null===(c=u.checkout.shippingAddress)||void 0===c?void 0:c.phone),"in-store"===u.deliveryMethod&&o.createElement(o.Fragment,null,o.createElement("div",{className:[U.Text,U.WithMTop].join(" ")},p("checkout-page:pickUpLocation"))),o.createElement("div",{className:[U.Text,U.Gray].join(" ")},u.isDigitalOnly?null===(l=u.checkout.billingAddress)||void 0===l?void 0:l.addressText:null===(m=u.checkout.shippingAddress)||void 0===m?void 0:m.addressText))})),J=n((function(e){var t=e.vm,n=d().t;return o.createElement("div",{className:U.Address},t.checkout.shippingLines&&t.checkout.shippingLines.length?o.createElement(o.Fragment,null,o.createElement("span",null,t.checkout.shippingLines[0].title),o.createElement("span",{className:U.LightText}," / "+(0===t.checkout.shippingLines[0].price?n("checkout-page:free"):m(t.checkout.shippingLines[0].price,t.checkout.currencyCode,t.checkout.currencySymbol)))):n("checkout-page:standartShipping"))})),Q=n((function(e){var t=e.vm,n=d().t;return o.createElement("div",{className:U.Footer},o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=n("checkout-page:returnPolicy"),t.policyModalText=t.returnPolicy}},n("checkout-page:returnPolicy")),o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=n("checkout-page:privacyPolicy"),t.policyModalText=t.privacyPolicy}},n("checkout-page:privacyPolicy")),o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=n("checkout-page:termsOfService"),t.policyModalText=t.termsOfService}},n("checkout-page:termsOfService")),t.imprint&&o.createElement(o.Fragment,null,o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=n("checkout-page:imprint"),t.policyModalText=t.imprint}},n("checkout-page:imprint"))),t.shippingPolicy&&o.createElement(o.Fragment,null,o.createElement("div",{className:U.FooterBullet},"•"),o.createElement("div",{className:U.FooterItem,onClick:function(){t.policyModalTitle=n("checkout-page:shippingPolicy"),t.policyModalText=t.shippingPolicy}},n("checkout-page:shippingPolicy"))))})),Z=n((function(n){var i,r,a,s=n.vm,c=n.setVisible,l=d().t,m=o.useState(!1),u=m[0],p=m[1],v=o.useState(!1),f=v[0],g=v[1],h=o.useState(new y({message:{requiredRule:"",emailRule:"",minRule:""}}))[0];h.email=(null===(i=s.checkout.customer)||void 0===i?void 0:i.email)||"",h.firstName=(null===(r=s.checkout.customer)||void 0===r?void 0:r.firstName)||"",h.lastName=(null===(a=s.checkout.customer)||void 0===a?void 0:a.lastName)||"";var E=o.useCallback((function(){return e(void 0,void 0,void 0,(function(){return t(this,(function(e){switch(e.label){case 0:return f?[2,c(!1)]:(p(!0),[4,h.saveContactForm()]);case 1:return e.sent()&&g(!0),p(!1),[2]}}))}))}),[u]);return o.createElement(k,{title:l("checkout-page:contactForm"),modalContent:o.createElement("div",null,f&&o.createElement("div",{style:{marginBottom:"12px",maxWidth:"352px"}},o.createElement(M,{type:"success",title:l("checkout-page:contactFormSent"),content:l("checkout-page:contactFormDescription")})),o.createElement(T,{type:w.TEXT_AREA,label:"",value:h.message||"",onChange:h.onMessageChange,textAreaPlaceholder:l("checkout-page:contactFormCta")}),o.createElement(I,{style:{width:"100%",marginTop:"24px"},text:l(f?"checkout-page:actions.close":"checkout-page:actions.sendMessage"),isLoading:u,isDisabled:!h.message,onClick:E})),onClose:function(){return c(!1)}})}));export{G as default};
|
|
@@ -9,7 +9,7 @@ import { TFunction } from "../../utils/i18n";
|
|
|
9
9
|
import { IkasCheckoutCustomizationProps } from ".";
|
|
10
10
|
import MasterPassModel from "./modelMasterPass";
|
|
11
11
|
import { APIResponse } from "@ikas/fe-api-client";
|
|
12
|
-
import { CreateStripePaymentIntentResponse, RetrieveInstallmentInfoResponse, UpdateCartCampaignOfferInput, CreateKlarnaTokenResponse,
|
|
12
|
+
import { CreateStripePaymentIntentResponse, RetrieveInstallmentInfoResponse, UpdateCartCampaignOfferInput, CreateKlarnaTokenResponse, GetPaypalClientIdResponse, CreatePaypalOrderResponse, CreateAdyenPlatformSessionResponse } from "@ikas/storefront-api";
|
|
13
13
|
import { IkasBaseStore } from "../../store";
|
|
14
14
|
import { RetrieveInstallmentInfoQueryParams, SaveCartInput } from "@ikas/storefront-api";
|
|
15
15
|
import { LocalizedAddressModel } from "@ikas/localized-address";
|
|
@@ -45,13 +45,15 @@ export default class CheckoutViewModel {
|
|
|
45
45
|
availableStockLocations: IkasAvailableStockLocation[];
|
|
46
46
|
deliveryMethod: "address" | "in-store";
|
|
47
47
|
stripeResponse: CreateStripePaymentIntentResponse | null;
|
|
48
|
+
stripeError: CheckoutError | null;
|
|
48
49
|
klarnaResponse: CreateKlarnaTokenResponse | null;
|
|
49
50
|
isKlarnaPaymentCompleted: boolean;
|
|
50
|
-
|
|
51
|
+
klarnaError: CheckoutError | null;
|
|
52
|
+
adyenResponse: CreateAdyenPlatformSessionResponse | null;
|
|
51
53
|
adyenDropinElement: any;
|
|
52
54
|
payPalClientIdResponse: GetPaypalClientIdResponse | null;
|
|
53
55
|
paypalOrderResponse: CreatePaypalOrderResponse | null;
|
|
54
|
-
|
|
56
|
+
campaignOffers: CampaignOfferType[] | undefined;
|
|
55
57
|
isCampaignOfferLoaded: boolean;
|
|
56
58
|
countrySettings: LocalizedAddressModel;
|
|
57
59
|
shippingZones: IkasShippingZone[] | null;
|
|
@@ -90,6 +92,7 @@ export default class CheckoutViewModel {
|
|
|
90
92
|
get canProceedToInStoreDelivery(): boolean;
|
|
91
93
|
get canProceedToPayment(): boolean | "" | null | undefined;
|
|
92
94
|
get isValidShippingSettings(): boolean | "" | null | undefined;
|
|
95
|
+
get isManualOrderWithShippingLines(): boolean | 0 | undefined;
|
|
93
96
|
get isInStoreDelivery(): boolean;
|
|
94
97
|
get klarnaPaymentGateway(): IkasPaymentGateway | undefined;
|
|
95
98
|
get klarnaPaymentGatewayIndex(): number;
|
|
@@ -97,7 +100,7 @@ export default class CheckoutViewModel {
|
|
|
97
100
|
get adyenPaymentGatewayIndex(): number;
|
|
98
101
|
get payPalPaymentGateway(): IkasPaymentGateway | undefined;
|
|
99
102
|
get payPalPaymentGatewayIndex(): number;
|
|
100
|
-
get isCustomFlowStripe():
|
|
103
|
+
get isCustomFlowStripe(): boolean | null | undefined;
|
|
101
104
|
get isKlarna(): boolean | null | undefined;
|
|
102
105
|
get isAdyen(): boolean | null | undefined;
|
|
103
106
|
get isPayPal(): boolean | null | undefined;
|
|
@@ -152,6 +155,7 @@ export default class CheckoutViewModel {
|
|
|
152
155
|
onProceedToDigitalOnlyPaymentClick: () => Promise<void>;
|
|
153
156
|
onProceedToPaymentClick: () => Promise<void>;
|
|
154
157
|
checkPaypalButtonAvailable: () => boolean;
|
|
158
|
+
handlePaymentError: (type: ErrorType, data: any) => void;
|
|
155
159
|
onCompletePaymentClick: () => Promise<void>;
|
|
156
160
|
onCompleteDigitalOnlyPaymentClick: () => Promise<void>;
|
|
157
161
|
createSaleTransaction: () => Promise<void>;
|
|
@@ -165,18 +169,14 @@ export default class CheckoutViewModel {
|
|
|
165
169
|
reInitPaymentMethod: () => Promise<void>;
|
|
166
170
|
createStripePaymentIntent: (paymentGateway: IkasPaymentGateway) => Promise<void>;
|
|
167
171
|
createKlarnaClientToken: (paymentGateway: IkasPaymentGateway) => Promise<void>;
|
|
168
|
-
|
|
172
|
+
createAdyenBalancePlatformPaymentSession: (paymentGateway: IkasPaymentGateway) => Promise<void>;
|
|
169
173
|
getPayPalClientId: (paymentGateway: IkasPaymentGateway) => Promise<void>;
|
|
170
174
|
setPaymentGateway: (index: number) => Promise<void>;
|
|
171
175
|
setInstallmentCount: (count: number) => void;
|
|
172
176
|
changeStep: (step: CheckoutStep, checkoutId?: string) => Promise<void>;
|
|
173
177
|
logout: () => Promise<void>;
|
|
174
178
|
setContactModalVisible: (value: boolean) => void;
|
|
175
|
-
getCampaignOffer: (targetPage: IkasCampaignOfferTargetPageType, campaignOffers?: IkasCartCampaignOffer[] | null) => Promise<
|
|
176
|
-
product: IkasProduct;
|
|
177
|
-
offer: IkasCampaignOfferProduct;
|
|
178
|
-
campaignOffer: IkasCartCampaignOffer;
|
|
179
|
-
} | undefined>;
|
|
179
|
+
getCampaignOffer: (targetPage: IkasCampaignOfferTargetPageType, campaignOffers?: IkasCartCampaignOffer[] | null) => Promise<CampaignOfferType[]>;
|
|
180
180
|
createCampaignOffer: () => Promise<void>;
|
|
181
181
|
updateCartCampaignOffer: (input: UpdateCartCampaignOfferInput) => Promise<void>;
|
|
182
182
|
registerCustomer: (password: string) => Promise<APIResponse<{
|