{"version":3,"sources":["webpack:///./Scripts/actions/NorthAmerica.action.js","webpack:///./Scripts/Components/CartReseller.js","webpack:///./Scripts/Components/Cart.js"],"names":["token","window","localStorage","getItem","login","email","password","newPassword","_ref","_asyncToGenerator","regeneratorRuntime","mark","_callee","dispatch","url","requestOptions","response","res","wrap","_context","prev","next","abrupt","concat","method","headers","Content-Type","RequestVerificationToken","litium-request-context","JSON","stringify","__litium","requestContext","body","fetch","sent","ok","Error","status","json","t0","catchError","error","loadError","stop","_x","apply","this","arguments","createUser","formData","_ref3","_callee3","errorMessage","_context3","_x3","forgotPassword","_ref4","_callee4","_context4","_x4","showNorthAmericaSignIn","isShowSignIn","type","payload","isShowSignUp","isShowLoggedin","showNorthAmericaSignUp","message","displayLoader","isLoaderActive","showLoggedIn","isUserLoggedin","setLoggedInUser","user","normalizeUserResponse","setSignUpForm","form","signUpForm","setActiveErrorModal","isActive","errorModal","id","Id","Email","firstName","FirstName","lastName","LastName","address","Address1","city","City","state","State","zipCode","ZipCode","houseNumber","HouseNumber","phone","Phone","setTosAndDataPrivacy","isChecked","isTosAndDataPrivacyChecked","setIsRegisterChecked","isRegisterChecked","showNorthAmericaPayment","isActivePaymentSection","calculateTax","reqData","_ref5","_callee5","_context5","setTax","tax","_x5","num","setGrandTotalWithTax","grandTotal","setStripePaymentIntentData","data","stripePaymentIntentData","allResellers","uniqueResellers","CartReseller","React","Component","props","_this","_classCallCheck","_super","call","chosenReseller","item","map","x","push","setState","resllersIdList","tempArray","i","length","includes","reseller","systemId","orderRows","_this2","checker","order","buyProductFromReseller","getResellers","removeDuplicateresellers","artNumber","cookie","getCookie","artNumbers","abTestClassName","slice","split","pfClassName","_this3","react_default","a","createElement","react","className","checkForReseller","resellerFormUrl","Fragment","translate","href","fields","linkItem","key","_nameInvariantCulture","Object","keys","orgImage","src","alt","undefined","ImageAltTag","onClick","triggerDialog","style","display","closeDialog","open","rowSystemId","image","name","marginLeft","found","articleNumber","pfTrackingClassName","target","Cart","Cart_classCallCheck","editingQuantity","removingRow","C2B","document","getElementById","innerHTML","campaignTrigger","enableCampaignTrigger","isNorthAmerica","querySelector","getAttribute","quantity","onDeleteRequest","previousState","_objectSpread","_defineProperty","updateOrderRowQuantity","updateDeliveryCost","showDeleteButton","removeOrderRow","currentQuantity","originalQuantity","hasDiscount","onRemoveCampaignCode","setTimeout","campaignCodeButton","onSubmitCampaignCode","prevProps","prevState","classList","add","remove","naTax","deliveryCost","calculateGrandTotal","_this$props","total","discount","parseFloat","replace","currencySymbolMatch","match","currencySymbol","toFixed","hasCampaignError","errors","brand","campaignPrice","price","totalPrice","isFreeGift","handleUpdateClick","title","onQuantityChange","showCampaignField","htmlFor","placeholder","onChange","event","onCampaignCodeChange","value","data-error-for","orderTotal","Components_CartReseller","connect","northAmerica","cart","checkout"],"mappings":"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","file":"1.3c1b617e3bc24879ff02.js","sourcesContent":["import { catchError } from './Error.action';\r\nexport const SET_AUTHORIZATIONHYBRIS = \"SET_AUTHORIZATIONHYBRIS\";\r\nexport const SHOW_NORTH_AMERICA_SIGN_IN = \"SHOW_NORTH_AMERICA_SIGN_IN\";\r\nexport const NORTH_AMERICA_LOAD_ERROR = \"NORTH_AMERICA_LOAD_ERROR\";\r\nexport const DISPLAY_LOADER = \"DISPLAY_LOADER\";\r\nexport const SHOW_NORTH_AMERICA_LOGGED_IN = \"SHOW_NORTH_AMERICA_LOGGED_IN\";\r\nexport const SET_LOGGED_IN_USER = \"SET_LOGGED_IN_USER\";\r\nexport const SHOW_NORTH_AMERICA_SIGN_UP = \"SHOW_NORTH_AMERICA_SIGN_UP\";\r\nexport const SET_SIGNUP_FORM = \"SET_SIGNUP_FORM\";\r\nexport const SET_ACTIVE_ERROR_MODAL = \"SET_ACTIVE_ERROR_MODAL\";\r\nexport const SET_TOS_DATA_PRIVACY_CHECK_BOX = \"SET_TOS_DATA_PRIVACY_CHECK_BOX\";\r\nexport const SHOW_NORTH_AMERICA_SHIPPING_ADDRESS_FORM = \"SHOW_NORTH_AMERICA_SHIPPING_ADDRESS_FORM\";\r\nexport const CONTINUE_AS_GUEST = \"CONTINUE_AS_GUEST \";\r\nexport const RESET_SHIPPING_ADDRESS_FORM = \"RESET_SHIPPING_ADDRESS_FORM\";\r\nexport const SHOW_NORTH_AMERICA_PAYMENT = \"SHOW_NORTH_AMERICA_PAYMENT\";\r\nexport const SET_REGISTER_CHECK_BOX = \"SET_REGISTER_CHECK_BOX\";\r\nexport const SET_NORTH_AMERICA_TAX = \"SET_NORTH_AMERICA_TAX\";\r\nexport const SET_NORTH_AMERICA_GRAND_TOTAL = \"SET_NORTH_AMERICA_GRAND_TOTAL\";\r\nexport const SET_NORTH_AMERICA_STRIPE_PAYMENT_INTENT_DATA = \"SET_NORTH_AMERICA_STRIPE_PAYMENT_INTENT_DATA\";\r\n\r\nconst token = window.localStorage.getItem(\"requestVerificationToken\");\r\n\r\nconst rootRoute = '/api/customer';\r\n\r\nexport const setAuthorizationHybris = (authorizationHybris) => ({\r\n type: SET_AUTHORIZATIONHYBRIS,\r\n payload: {\r\n authorizationHybris: authorizationHybris\r\n }\r\n});\r\n\r\nexport const login = (email, password, newPassword) => {\r\n return async (dispatch) => {\r\n if (password === null || email === null) {\r\n return;\r\n }\r\n const url = `${rootRoute}/login`;\r\n if (email && password) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify({\r\n email: email,\r\n password: password,\r\n newPassword: newPassword\r\n }),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (!response.ok) {\r\n throw new Error(`HTTP error! status: ${response.status}`);\r\n }\r\n const res = await response.json();\r\n return res;\r\n } catch (ex) {\r\n dispatch(catchError(ex, error => loadError(error)));\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport const logout = () => {\r\n return async (dispatch) => {\r\n const url = `${rootRoute}/logout`;\r\n\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n }\r\n };\r\n\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (!response.ok) {\r\n throw new Error(`HTTP error! status: ${response.status}`);\r\n }\r\n\r\n const res = await response.text();\r\n return res;\r\n } catch (ex) {\r\n dispatch(catchError(ex, error => loadError(error)));\r\n }\r\n }\r\n}\r\n\r\nexport const createUser = (formData) => {\r\n return async (dispatch) => {\r\n const url = `${rootRoute}/signup`;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify(formData),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (!response.ok) {\r\n let errorMessage = \"An error occurred. Please try again\";\r\n if (response.status === 409) {\r\n errorMessage = \"Email already exists\";\r\n } else if (response.status === 400) {\r\n errorMessage = \"An error occurred. Please try again later\";\r\n } else if (response.status === 404) {\r\n errorMessage = \"Bad request. Please check your input\";\r\n }\r\n throw errorMessage;\r\n }\r\n const res = await response.json();\r\n return res;\r\n } catch (ex) {\r\n throw ex;\r\n }\r\n };\r\n};\r\n\r\n\r\n\r\nexport const forgotPassword = (email) => {\r\n return async (dispatch) => {\r\n if (email === null) {\r\n return;\r\n }\r\n const url = `${rootRoute}/forgotPassword`;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify(email),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n const res = await response.json();\r\n return res;\r\n } catch (ex) {\r\n dispatch(catchError(ex, error => loadError(error)));\r\n }\r\n }\r\n}\r\n\r\nexport const showNorthAmericaSignIn = (isShowSignIn) => ({\r\n type: SHOW_NORTH_AMERICA_SIGN_IN,\r\n payload: {\r\n isShowSignIn: isShowSignIn,\r\n isShowSignUp: false,\r\n isShowLoggedin: false\r\n }\r\n});\r\n\r\nexport const showNorthAmericaSignUp = (isShowSignUp) => ({\r\n type: SHOW_NORTH_AMERICA_SIGN_UP,\r\n payload: {\r\n isShowSignIn: false,\r\n isShowSignUp: isShowSignUp,\r\n isShowLoggedin: false\r\n }\r\n});\r\n\r\nexport const loadError = error => ({\r\n type: NORTH_AMERICA_LOAD_ERROR,\r\n payload: {\r\n error: error.message || 'An error occurred'\r\n }\r\n});\r\n\r\nexport const displayLoader = (isLoaderActive) => ({\r\n type: DISPLAY_LOADER,\r\n payload: {\r\n isLoaderActive: isLoaderActive\r\n }\r\n});\r\n\r\nexport const showLoggedIn = (isUserLoggedin) => ({\r\n type: SHOW_NORTH_AMERICA_LOGGED_IN,\r\n payload: {\r\n isShowSignIn: false,\r\n isShowSignUp: false,\r\n isShowLoggedin: isUserLoggedin,\r\n }\r\n});\r\n\r\nexport const setLoggedInUser = (user) => {\r\n const normalizedUser = normalizeUserResponse(user);\r\n return {\r\n type: SET_LOGGED_IN_USER,\r\n payload: normalizedUser,\r\n };\r\n};\r\nexport const setSignUpForm = (form) => ({\r\n type: SET_SIGNUP_FORM,\r\n payload: {\r\n signUpForm: form\r\n }\r\n});\r\n\r\nexport const setActiveErrorModal = (isActive) => ({\r\n type: SET_ACTIVE_ERROR_MODAL,\r\n payload: {\r\n errorModal: isActive\r\n }\r\n});\r\n\r\nconst normalizeUserResponse = (user) => {\r\n return {\r\n id: user.Id || user.id || \"\",\r\n email: user.Email || user.email || \"\",\r\n firstName: user.FirstName || user.firstName || \"\",\r\n lastName: user.LastName || user.lastName || \"\",\r\n address: user.Address1 || user.address || \"\",\r\n city: user.City || user.city || \"\",\r\n state: user.State || user.state || \"\",\r\n zipCode: user.ZipCode || user.zipCode || \"\",\r\n houseNumber: user.HouseNumber || user.houseNumber || \"\",\r\n phone: user.Phone || user.phone || \"\",\r\n };\r\n};\r\n\r\nexport const setTosAndDataPrivacy = (isChecked) => ({\r\n type: SET_TOS_DATA_PRIVACY_CHECK_BOX,\r\n payload: {\r\n isTosAndDataPrivacyChecked: isChecked\r\n }\r\n});\r\n\r\nexport const setIsRegisterChecked = (isChecked) => ({\r\n type: SET_REGISTER_CHECK_BOX,\r\n payload: {\r\n isRegisterChecked: isChecked\r\n }\r\n});\r\n\r\nexport const showShippingAddressForm = (isActive) => ({\r\n type: SHOW_NORTH_AMERICA_SHIPPING_ADDRESS_FORM,\r\n payload: {\r\n isShippingAddressFormActive: isActive\r\n }\r\n});\r\n\r\nexport const resetShippingAddressForm = () => ({\r\n type: RESET_SHIPPING_ADDRESS_FORM,\r\n});\r\n\r\nexport const showNorthAmericaPayment = (isActive) => ({\r\n type: SHOW_NORTH_AMERICA_PAYMENT,\r\n payload: {\r\n isActivePaymentSection: isActive\r\n }\r\n});\r\n\r\nexport const calculateTax = (reqData) => {\r\n return async (dispatch) => {\r\n const url = `/api/payment/tax-calculation`;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify(reqData),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (response.ok) {\r\n const res = await response.json();\r\n dispatch(setTax(res.tax));\r\n return res;\r\n } else {\r\n const error = await response.json();\r\n throw new Error(error.error || `Error: ${response.status}`);\r\n }\r\n } catch (ex) {\r\n dispatch(setTax(null));\r\n throw ex;\r\n }\r\n };\r\n};\r\n\r\nexport const setTax = (num) => ({\r\n type: SET_NORTH_AMERICA_TAX,\r\n payload: {\r\n tax: num\r\n }\r\n});\r\n\r\nexport const setGrandTotalWithTax = (num) => ({\r\n type: SET_NORTH_AMERICA_GRAND_TOTAL,\r\n payload: {\r\n grandTotal: num\r\n }\r\n});\r\n\r\nexport const setStripePaymentIntentData = (data) => ({\r\n type: SET_NORTH_AMERICA_STRIPE_PAYMENT_INTENT_DATA,\r\n payload: {\r\n stripePaymentIntentData: data\r\n }\r\n});\r\n\r\nexport const collectPayment = (paymentId) => {\r\n let stripePaymentRequest = {\r\n PaymentId: paymentId\r\n }\r\n return async (dispatch) => {\r\n const url = `/api/payment/collect-payment`;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify(stripePaymentRequest),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (response.ok) {\r\n const res = await response.json();\r\n return res;\r\n } else {\r\n const error = await response.json();\r\n throw new Error(error.error || `Error: ${response.status}`);\r\n }\r\n } catch (ex) {\r\n dispatch(setTax(null));\r\n throw ex;\r\n }\r\n };\r\n};\r\n\r\nexport const cancelPayment = (paymentId) => {\r\n let stripePaymentRequest = {\r\n PaymentId: paymentId\r\n }\r\n return async (dispatch) => {\r\n const url = `/api/payment/cancel-payment`;\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n RequestVerificationToken: token,\r\n \"litium-request-context\": JSON.stringify(window.__litium.requestContext),\r\n },\r\n body: JSON.stringify(stripePaymentRequest),\r\n };\r\n try {\r\n const response = await fetch(url, requestOptions);\r\n if (response.ok) {\r\n const res = await response.json();\r\n return res;\r\n } else {\r\n const error = await response.json();\r\n throw new Error(error.error || `Error: ${response.status}`);\r\n }\r\n } catch (ex) {\r\n dispatch(setTax(null));\r\n throw ex;\r\n }\r\n };\r\n};","import React, { Fragment } from 'react';\r\nimport { translate } from '../Services/translation';\r\nimport { getCookie } from './AB-test-read-more.js';\r\n\r\nvar allResellers = [];\r\nvar uniqueResellers = [];\r\n\r\nclass CartReseller extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n chosenReseller: null,\r\n };\r\n }\r\n getResellers(item) {\r\n item.map((x) => {\r\n allResellers.push(x);\r\n })\r\n }\r\n triggerDialog(x) {\r\n this.setState({ chosenReseller: x })\r\n }\r\n removeDuplicateresellers() {\r\n let resllersIdList = [];\r\n let tempArray = [];\r\n for (var i = 0; i < allResellers.length; i++) {\r\n if (!resllersIdList.includes(allResellers[i].reseller.systemId)) {\r\n resllersIdList.push(allResellers[i].reseller.systemId);\r\n tempArray.push(allResellers[i]);\r\n }\r\n }\r\n return tempArray;\r\n }\r\n checkForReseller(orderRows) {\r\n let checker = false;\r\n orderRows.map(order => {\r\n if (order.buyProductFromReseller && order.buyProductFromReseller.length > 0) {\r\n this.getResellers(order.buyProductFromReseller);\r\n checker = true;\r\n }\r\n })\r\n uniqueResellers = this.removeDuplicateresellers();\r\n return checker;\r\n }\r\n closeDialog() {\r\n this.setState({ chosenReseller: null })\r\n }\r\n\r\n abTestClassName(artNumber) {\r\n //This function for C2B Ab test. Checkout -> Reseller Modal -> To product Page CTA\r\n const cookie = getCookie(\"a-b-test\");\r\n const artNumbers = getCookie(\"artNumbersAbTest\");\r\n let abTestClassName = \"\";\r\n\r\n let videoUrlAbTest = getCookie(\"videoUrlAbTest\");\r\n let isButtonAbTest = false;\r\n isButtonAbTest = videoUrlAbTest.slice(-1) === \"0\";\r\n\r\n if (cookie !== \"\" && artNumbers.split(\",\").includes(artNumber)) {\r\n abTestClassName = cookie === '0' ? \"AB_test_cta_A_trustPilot\" : \"AB_test_cta_B_trustPilot\";//AB_test: Write the class name needed for the AB test. 0 for test A and 1 for test B\r\n }\r\n return abTestClassName;\r\n }\r\n\r\n pfTrackingClassName(artNumber) {\r\n //This function for C2B Product finder tracking.\r\n const cookie = getCookie(\"artNumbersPFTrackingtC2B\");\r\n let pfClassName = \"\";\r\n if (cookie !== \"\" && cookie.split(\",\").includes(artNumber)) {\r\n pfClassName = \"PF_c2b_buy_confirm\"\r\n }\r\n return pfClassName;\r\n }\r\n\r\n render() {\r\n return (\r\n <Fragment>\r\n <div className='checkout__cartReseller'>\r\n {this.checkForReseller(this.props.orderRows) &&\r\n <Fragment>\r\n <div className='cartReseller'>\r\n {window.__litium.resellerFormUrl !== \"\" && window.__litium.resellerFormUrl !== \"undefined\" ? (\r\n <><div className=\"applay-reseller-button-checkout-container\">\r\n <h1 className='applay-reseller-button-checkout-container--cartReseller__blockHeader'>{translate('click2buy.header')}</h1>\r\n <a href={window.__litium.resellerFormUrl}>\r\n {translate(\"reseller.apply.button.text\")}\r\n </a>\r\n </div>\r\n <span className=\"applay-reseller-button-checkout-container--span\"></span>\r\n </>\r\n ) : (\r\n <h1 className='cartReseller__blockHeader'>{translate('click2buy.header')}</h1>\r\n )}\r\n\r\n <div id=\"checkout-cart__resellers-con\">\r\n <div className={`checkout-cart__resellers ${uniqueResellers.length > 1 ? ' dialog__resellers-containerTwoGrid' : ' dialog__resellers-containerOneGrid'}`}>\r\n {uniqueResellers.map(x =>\r\n x.reseller && x.reseller.fields && x.linkItem &&\r\n <div className=\"checkout-cart__resellers--container\" key={x.reseller.fields._nameInvariantCulture[Object.keys(x.reseller.fields._nameInvariantCulture)[0]]}>\r\n {<div className=\"checkout-cart__resellers--container-image\">\r\n {x.orgImage !== \"\" &&\r\n <img src={x.orgImage} alt={x.reseller.fields.ImageAltTag !== undefined ? x.reseller.fields.ImageAltTag[Object.keys(x.reseller.fields.ImageAltTag)[0]] : \"\"} />\r\n }\r\n </div>}\r\n <div onClick={() => this.triggerDialog(x)} className=\"checkout-cart__resellers--container-links\">\r\n <button>{translate('click2buy.buyat')} {x.reseller.fields._nameInvariantCulture[Object.keys(x.reseller.fields._nameInvariantCulture)[0]]}</button>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </Fragment>\r\n }\r\n {this.state.chosenReseller &&\r\n <div style={{ display: \"block\" }} id=\"reseller__dialog\">\r\n <div className=\"storelocator-pop-up__backdrop\" onClick={() => this.closeDialog()}></div>\r\n <div className=\"dialog__resellersContainer\">\r\n <dialog open className=\"dialog__resellers\">\r\n <button className=\"storelocator-pop-up__exit-icon\" onClick={() => this.closeDialog()}>✕</button>\r\n <div className='cartReseller__dialog-resellerImage'>\r\n <div>\r\n <img src={this.state.chosenReseller.orgImage} alt={this.state.chosenReseller.reseller.fields.ImageAltTag !== undefined ? this.state.chosenReseller.reseller.fields.ImageAltTag[Object.keys(this.state.chosenReseller.reseller.fields.ImageAltTag)[0]] : \"\"} />\r\n </div>\r\n </div>\r\n <h2 className='cartReseller__dialog-header'>{translate('click2buy.checkout-header')} {this.state.chosenReseller.reseller.fields._nameInvariantCulture[Object.keys(this.state.chosenReseller.reseller.fields._nameInvariantCulture)[0]]}</h2>\r\n {this.props.orderRows && this.props.orderRows.map(order =>\r\n <div key={order.rowSystemId} className=\"small-12 checkout-cart__image-container cartReseller__dialog-produkt\">\r\n <div className=\"checkout-cart__image-wrapper cartReseller__dialog-produktImage\">\r\n <img className=\"checkout-cart__image\" src={order.image} alt={order.name} />\r\n </div>\r\n <div className=\"checkout-cart__image-info cartReseller__dialog-produktInfo\">\r\n <a href={order.url}>{order.name}</a>\r\n </div>\r\n {order.buyProductFromReseller.length > 0 ?\r\n <div style={{ marginLeft: \"auto\" }}>\r\n {order.found = false}\r\n {order.buyProductFromReseller.map((item) =>\r\n item.reseller.systemId === this.state.chosenReseller.reseller.systemId &&\r\n <div key={item.reseller.systemId} className=\"cartReseller__dialog-produktLink \">\r\n <a className={`${this.state.chosenReseller.reseller.fields._nameInvariantCulture[Object.keys(this.state.chosenReseller.reseller.fields._nameInvariantCulture)[0]].split('.')[0]}-checkout \r\n ${this.abTestClassName(order.articleNumber)} \r\n ${this.pfTrackingClassName(order.articleNumber)}\r\n `}\r\n target=\"_blank\" href={item.linkItem}>{translate('click2buy.checkout')} <i className=\"fa fa-external-link nav-externalLink\"></i>\r\n </a>\r\n {order.found = true}\r\n </div>\r\n )}\r\n {!order.found &&\r\n <div className=\"cartReseller__dialog-resellerNotFound\">{translate('click2buy.unavailable')}</div>\r\n }\r\n </div>\r\n :\r\n <div className=\"cartReseller__dialog-resellerNotFound\">{translate('click2buy.unavailable')}</div>\r\n }\r\n </div>\r\n )}\r\n </dialog>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </Fragment>\r\n )\r\n }\r\n}\r\n\r\nexport default CartReseller;","import React, { Component, Fragment } from 'react';\r\nimport CartReseller from './CartReseller';\r\nimport { translate } from '../Services/translation';\r\nimport { connect } from 'react-redux';\r\nimport { calculateTax, showNorthAmericaPayment, setGrandTotalWithTax } from '../actions/NorthAmerica.action';\r\nimport { updateDeliveryCost } from '../Actions/Checkout.action';\r\n\r\nclass Cart extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n editingQuantity: {},\r\n removingRow: {},\r\n C2B: document.getElementById(\"country-code\").innerHTML === \"DK\" || document.getElementById(\"country-code\").innerHTML === \"GB\",\r\n campaignTrigger: false,\r\n enableCampaignTrigger: true,\r\n isNorthAmerica: document.querySelector('meta[property=\"og:market\"]').getAttribute('content') === \"US\" || document.querySelector('meta[property=\"og:market\"]').getAttribute('content') === \"CA\",\r\n grandTotal: this.props.grandTotal\r\n };\r\n }\r\n\r\n onQuantityChange(rowSystemId, quantity) {\r\n if (quantity <= 0) {\r\n this.onDeleteRequest(rowSystemId, false);\r\n return\r\n }\r\n this.setState(previousState => ({\r\n ...previousState,\r\n editingQuantity: {\r\n ...previousState.editingQuantity,\r\n [rowSystemId]: quantity,\r\n }\r\n }));\r\n this.props.updateOrderRowQuantity(rowSystemId, quantity);\r\n this.props.updateDeliveryCost();\r\n }\r\n\r\n onDeleteRequest(rowSystemId, showDeleteButton) {\r\n this.setState(previousState => ({\r\n ...previousState,\r\n removingRow: {\r\n ...previousState.removingRow,\r\n [rowSystemId]: showDeleteButton,\r\n }\r\n }));\r\n this.props.removeOrderRow(rowSystemId);\r\n this.props.updateDeliveryCost();\r\n }\r\n\r\n handleUpdateClick(rowSystemId, currentQuantity, originalQuantity) {\r\n if (currentQuantity === originalQuantity) {\r\n return;\r\n }\r\n this.props.updateOrderRowQuantity(rowSystemId, currentQuantity);\r\n }\r\n onSubmitCampaignCode() {\r\n if (this.props.hasDiscount) {\r\n this.props.onRemoveCampaignCode();\r\n setTimeout(() => {\r\n var campaignCodeButton = document.getElementById(\"campaign-code-button\");\r\n if (campaignCodeButton) {\r\n campaignCodeButton.innerHTML = translate('checkout.usecampaigncode');\r\n }\r\n }, 1000);\r\n } else {\r\n this.props.onSubmitCampaignCode();\r\n this.setState({ enableCampaignTrigger: true })\r\n }\r\n }\r\n\r\n async componentDidUpdate(prevProps, prevState) {\r\n if (this.props.hasDiscount && this.state.enableCampaignTrigger) {\r\n var campaignCodeButton = document.getElementById(\"campaign-code-button\");\r\n if (campaignCodeButton) {\r\n campaignCodeButton.innerHTML = \"✓\";\r\n campaignCodeButton.classList.add(\"campaignCodeButtonDone\");\r\n setTimeout(() => {\r\n campaignCodeButton.innerHTML = translate('checkout.campaign-remove');\r\n campaignCodeButton.classList.remove(\"campaignCodeButtonDone\");\r\n }, 3000);\r\n }\r\n this.setState({ enableCampaignTrigger: false })\r\n }\r\n if (this.state.isNorthAmerica && (prevProps.naTax !== this.props.naTax || prevProps.deliveryCost !== this.props.deliveryCost || prevProps.hasDiscount !== this.props.hasDiscount)) {\r\n const grandTotal = this.calculateGrandTotal();\r\n this.setState({ grandTotal: grandTotal });\r\n } else if (prevProps.grandTotal != this.props.grandTotal) {\r\n this.setState({ grandTotal: this.props.grandTotal });\r\n }\r\n }\r\n calculateGrandTotal() {\r\n const { grandTotal, naTax, discount } = this.props;\r\n const { isNorthAmerica } = this.state;\r\n let total = grandTotal;\r\n if (isNorthAmerica && naTax) {\r\n let grandTotalValue = parseFloat(grandTotal.replace(/[^\\d.-]/g, ''));\r\n let naTaxValue = parseFloat(naTax.replace(/[^\\d.-]/g, ''));\r\n let discountValue = 0;// parseFloat(discount.replace(/[^\\d.-]/g, ''));\r\n total = grandTotalValue + naTaxValue - discountValue;\r\n let currencySymbolMatch = grandTotal.match(/[^\\d.-]+/);\r\n let currencySymbol = (currencySymbolMatch && currencySymbolMatch[0]) || '';\r\n this.props.setGrandTotalWithTax(total);\r\n return currencySymbol + total.toFixed(2);\r\n }\r\n this.props.setGrandTotalWithTax(total);\r\n return total;\r\n }\r\n\r\n render() {\r\n const editingQuantity = this.state.editingQuantity;\r\n const removingRow = this.state.removingRow;\r\n const hasCampaignError = this.props.errors && this.props.errors['campaignCode'] && this.props.errors['campaignCode'][0] !== undefined;\r\n return <Fragment><div className={`checkout__cartContainer ${this.state.C2B ? \"checkout__cartContainer--c2b\" : \"\"}`}><div>\r\n <h3 className=\"checkout__section-title\">{translate('checkout.cart.title')} ({this.props.quantity})</h3>\r\n <div className=\"checkout__productList\">\r\n {this.props.orderRows && this.props.orderRows.map(order => (\r\n <div className=\"checkout-cart__row\" key={order.rowSystemId}>\r\n <div className=\"checkout-cart__image\" >\r\n <img src={order.image} alt={order.name} />\r\n </div>\r\n <div className='checkout-cart__mid'>\r\n <span className=\"checkout-cart__brand-name\" >{order.brand}</span>\r\n <a className='checkout-cart__mid--data' href={order.url}>{order.name}</a>\r\n <div className='checkout-cart__mid--data'>\r\n {order.campaignPrice ?\r\n <Fragment>\r\n <div className='checkout-cart__campaign-price'>{order.campaignPrice}</div>\r\n <div className='checkout-cart__original-price'> ({order.price})</div>\r\n </Fragment>\r\n : order.totalPrice\r\n }\r\n </div>\r\n\r\n\r\n <div>\r\n {!order.isFreeGift &&\r\n <a className=\"\" onClick={() => this.handleUpdateClick(order.rowSystemId, editingQuantity[order.rowSystemId] || order.quantity, order.quantity)}></a>\r\n }\r\n </div>\r\n </div>\r\n <div className='checkout-cart__right'>\r\n {!order.isFreeGift && !removingRow[order.rowSystemId] && <a className=\"checkout-cart__delete\"\r\n onClick={() => this.onDeleteRequest(order.rowSystemId, false)} title={translate('general.remove')}>✖</a>\r\n }\r\n\r\n {order.isFreeGift ? <div>{order.quantity}</div> :\r\n <div className='checkout-cart__changeQuantity'>\r\n <button onClick={() => this.onQuantityChange(order.rowSystemId, order.quantity - 1)}>-</button>\r\n <div>{editingQuantity[order.rowSystemId] || order.quantity}</div>\r\n <button onClick={() => this.onQuantityChange(order.rowSystemId, order.quantity + 1)}>+</button>\r\n </div>\r\n }\r\n </div>\r\n {order.buyProductFromReseller.length === 0 && this.state.C2B &&\r\n <div className=\"checkout-cart__noreseller\">* {translate('click2buy.nodata')}</div>\r\n }\r\n </div>\r\n ))}\r\n\r\n </div>\r\n <div className=\"checkput-prices\">\r\n {this.props.showCampaignField &&\r\n <div className=\"checkout__campaign\">\r\n <div className=\"checkout__campaign--trigger\" onClick={() => this.setState((prev) => ({ campaignTrigger: !prev.campaignTrigger }))}>\r\n <label className=\"campaign-code\" htmlFor=\"campaign-code\">{translate('checkout.campaigncode')}</label>\r\n <div className={`arrow-down ${!this.state.campaignTrigger ? \"\" : \"rotate-180\"}`}></div>\r\n </div>\r\n <div id=\"campaign-code-input\" className={`campaign-code__parent ${!this.state.campaignTrigger ? \"displayNone\" : \"\"}`}>\r\n <div className=\"campaign-code__container\">\r\n <div className=\"campaign-code__container--inputContainer\">\r\n <input\r\n className={`campaign-code__container--input \r\n ${hasCampaignError && !this.props.hasDiscount && \"campaign-code__container--inputError\"} \r\n ${this.props.hasDiscount ? \"campaign-code__container--inputDisable\" : \"\"}\r\n `}\r\n id=\"campaign-code\"\r\n placeholder={translate('checkout.campaigncode')}\r\n onChange={(event) => this.props.onCampaignCodeChange(event.target.value)} />\r\n </div>\r\n <div className='campaig-code-button-wrapper'>\r\n <button id='campaign-code-button' className=\"checkout-info__campaign-button\" onClick={() => this.onSubmitCampaignCode()}>\r\n {translate('checkout.usecampaigncode')}\r\n </button>\r\n </div>\r\n </div>\r\n {hasCampaignError && !this.props.hasDiscount &&\r\n <span className=\"campaign-code__error\" data-error-for=\"campaign-code\">{this.props.errors['campaignCode'][0]}</span>\r\n }\r\n </div>\r\n </div>\r\n }\r\n <div className=\"checkout-prices__details\">\r\n <div>\r\n <p>{translate('checkout-cart-subtotal')}</p>\r\n <p>{this.props.orderTotal}</p>\r\n </div>\r\n {!this.state.C2B &&\r\n <div>\r\n <p>{translate('checkout-cart-shipping')}</p>\r\n <p>{this.props.deliveryCost}</p>\r\n </div>\r\n }\r\n {this.props.hasDiscount &&\r\n <div>\r\n <p>{translate('checkout.order.discount')}</p>\r\n <p>{this.props.discount}</p>\r\n </div>\r\n }\r\n {this.state.isNorthAmerica &&\r\n <div>\r\n <p>{translate('checkout.order.na.tax')}</p>\r\n <p> {this.props.naTax\r\n ? `${this.props.naTax}`\r\n : translate('checkout.order.na.tax.enter.address')}</p>\r\n </div>\r\n }\r\n </div>\r\n <div className=\"checkout-prices__total\">\r\n <h6>{translate('checkout.cart.total')}</h6>\r\n <p>{this.state.grandTotal}</p>\r\n </div>\r\n </div>\r\n {translate('product.recommended-price') !== \"product.recommended-price\" ?\r\n <div className=\"checkout-prices__recommendedPriceText\">\r\n <p>* {translate('product.recommended-price')}</p>\r\n </div>\r\n : \"\"\r\n }\r\n <div className='checkout__cartArrow'></div>\r\n </div>\r\n </div>\r\n {this.state.C2B &&\r\n <CartReseller orderRows={this.props.orderRows}></CartReseller>\r\n }\r\n </Fragment>\r\n }\r\n}\r\n\r\nconst mapStateToProps = state => {\r\n return {\r\n naTax: state.northAmerica.tax,\r\n cart: state.cart,\r\n checkout: state.checkout\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => ({\r\n calculateTax: (data) => dispatch(calculateTax(data)),\r\n showNorthAmericaPayment: (isActive) => dispatch(showNorthAmericaPayment(isActive)),\r\n setGrandTotalWithTax: (grandTotal) => dispatch(setGrandTotalWithTax(grandTotal)),\r\n updateDeliveryCost: () => dispatch(updateDeliveryCost())\r\n});\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Cart);"],"sourceRoot":""}