{"version":3,"file":"js/937-83d55531af89e4817f80.chunk.js","mappings":"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","sources":["webpack://checkout/./app/javascript/checkout/utils/StripePaymentRequestUtils.js","webpack://checkout/./app/javascript/checkout/components/StripePaymentRequest.js","webpack://checkout/./app/javascript/checkout/components/PickupLocationsMap.js","webpack://checkout/./app/javascript/checkout/components/InformationContent.js"],"sourcesContent":["export const allowedCountries = [\n \"AE\",\n \"AT\",\n \"AU\",\n \"BE\",\n \"BG\",\n \"BR\",\n \"CA\",\n \"CH\",\n \"CI\",\n \"CR\",\n \"CY\",\n \"CZ\",\n \"DE\",\n \"DK\",\n \"DO\",\n \"EE\",\n \"ES\",\n \"FI\",\n \"FR\",\n \"GB\",\n \"GI\",\n \"GR\",\n \"GT\",\n \"HK\",\n \"HU\",\n \"ID\",\n \"IE\",\n \"IN\",\n \"IT\",\n \"JP\",\n \"LI\",\n \"LT\",\n \"LU\",\n \"LV\",\n \"MT\",\n \"MX\",\n \"MY\",\n \"NL\",\n \"NO\",\n \"NZ\",\n \"PE\",\n \"PH\",\n \"PL\",\n \"PT\",\n \"RO\",\n \"SE\",\n \"SG\",\n \"SI\",\n \"SK\",\n \"SN\",\n \"TH\",\n \"TT\",\n \"US\",\n \"UY\",\n];\n","import { Fragment, useEffect, useState } from \"react\";\nimport {\n PaymentRequestButtonElement,\n useStripe,\n} from \"@stripe/react-stripe-js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport axios from \"axios\";\nimport { showError } from \"../actions/checkoutStore\";\nimport { allowedCountries } from \"../utils/StripePaymentRequestUtils\";\n\nexport default function StripePaymentRequest() {\n const dispatch = useDispatch();\n const state = useSelector((state) => state);\n const stripe = useStripe();\n const { t } = useTranslation();\n const [paymentRequest, setPaymentRequest] = useState(null);\n const { information, summary, urls } = state.checkoutStore;\n\n useEffect(() => {\n if (stripe) {\n if (!allowedCountries.includes(information.order_country)) return;\n let amount = parseInt(summary.raw_total * summary.subunit_to_unit);\n\n let paymentRequestConfig = {\n country: information.order_country,\n currency: information.currency_code,\n total: {\n label: t(\"summary.total\"),\n amount: amount,\n },\n requestPayerName: true,\n requestPayerEmail: true,\n requestPayerPhone: true,\n };\n\n if (!information.no_shipping_required)\n paymentRequestConfig.requestShipping = true;\n // Not all currencies are enabled for this functionality\n const pr = stripe.paymentRequest(paymentRequestConfig);\n\n // Check the availability of the Payment Request API.\n pr.canMakePayment().then((result) => {\n if (result) {\n pr.on(\"paymentmethod\", handlePaymentMethodReceived);\n\n if (!information.no_shipping_required) {\n pr.on(\"shippingaddresschange\", handleShippingAddress);\n pr.on(\"shippingoptionchange\", handleShippingOption);\n }\n\n setPaymentRequest(pr);\n }\n return;\n });\n }\n }, [stripe]);\n\n const stripeStyleOptions = {\n paymentRequest,\n style: {\n paymentRequestButton: {\n type: \"default\",\n // One of 'default', 'book', 'buy', or 'donate'\n // Defaults to 'default'\n\n theme: \"dark\",\n // One of 'dark', 'light', or 'light-outline'\n // Defaults to 'dark'\n\n height: \"30px\",\n // Defaults to '40px'. The width is always '100%'.\n },\n },\n };\n\n const handleShippingOption = async (event) => {\n await axios({\n headers: {\n common: {\n \"Content-Type\": \"application/json\",\n },\n },\n method: \"post\",\n url: urls.change_shipping_option,\n data: {\n shipping_method_id: event.shippingOption.id,\n },\n params: { recover_token: window.token },\n }).then(function (result) {\n event.updateWith({\n status: \"success\",\n total: {\n label: t(\"summary.total\"),\n amount: parseInt(result.data.amount * summary.subunit_to_unit),\n },\n });\n });\n };\n\n const handleShippingAddress = async (event) => {\n if (!allowedCountries.includes(event.shippingAddress.country)) {\n event.updateWith({ status: \"invalid_shipping_address\" });\n } else {\n // Perform server-side request to fetch shipping options\n const shippingAddress = {\n shipping: {\n name: event.shippingAddress.recipient,\n phone: event.shippingAddress.phone,\n address: {\n line1: event.shippingAddress.addressLine[0],\n city: event.shippingAddress.city,\n postal_code: event.shippingAddress.postalCode,\n state: event.shippingAddress.region,\n country: event.shippingAddress.country,\n },\n },\n };\n\n const response = await axios({\n headers: {\n common: {\n \"Content-Type\": \"application/json\",\n },\n },\n method: \"post\",\n url: urls.estimate_shipping,\n data: shippingAddress,\n params: { recover_token: window.token },\n }).then(function (result) {\n if (result.data.length > 0) {\n const shippingOptions = result.data.map((estimate) => {\n const shipping_method_id = estimate.table.shipping_method_id;\n const shipping_service_id = estimate.table.shipping_service_id\n ? estimate.table.shipping_service_id\n : \"\";\n let amount = parseInt(\n estimate.table.price * summary.subunit_to_unit,\n );\n\n return {\n id: `${shipping_method_id}-${shipping_service_id}`,\n label: estimate.table.shipping_method_name,\n detail: estimate.table.description,\n amount: amount,\n };\n });\n event.updateWith({\n status: \"success\",\n shippingOptions: shippingOptions,\n });\n } else {\n event.updateWith({\n status: \"fail\",\n });\n }\n });\n }\n };\n\n const handlePaymentMethodReceived = async (event) => {\n const paymentDetails = {\n payment_method: event.paymentMethod.id,\n billing_details: {\n name: event.paymentMethod.billing_details.name,\n email: event.paymentMethod.billing_details.email,\n address: event.paymentMethod.billing_details.address,\n phone: event.paymentMethod.billing_details.phone,\n },\n shipping_details: event.shippingAddress,\n shipping_option: event.shippingOption,\n recover_token: window.token,\n };\n\n const response = await fetch(urls.create_payment_intent, {\n method: \"post\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({ paymentDetails }),\n }).then((res) => {\n return res.json();\n });\n\n if (response.status == \"requires_confirmation\") {\n const { error, paymentIntent } = await stripe.confirmCardPayment(\n response.client_secret,\n { payment_method: event.paymentMethod.id, amount: event.amount },\n { handleActions: false },\n );\n\n if (error) {\n console.log(error);\n return;\n }\n\n if (paymentIntent.status === \"succeeded\") {\n const response = await axios({\n headers: {\n common: {\n \"Content-Type\": \"application/json\",\n },\n },\n method: \"put\",\n url: urls.fast_place_order,\n data: paymentIntent,\n params: { recover_token: window.token },\n })\n .then((_response) => {\n event.complete(\"success\");\n window.location = urls.success;\n })\n .catch((error) => {\n event.complete(\"fail\");\n dispatch(showError(error));\n });\n } else {\n console.warn(\n `Unexpected status: ${paymentIntent.status} for ${paymentIntent}`,\n );\n }\n } else if (response.status === \"succeeded\") {\n event.complete(\"success\");\n window.location = urls.success;\n } else {\n event.complete(\"fail\");\n }\n };\n\n return (\n <Fragment>\n <div className=\"col-12\">\n {paymentRequest ? (\n <fieldset className=\"mb-4\">\n <legend>{t(\"information.express-checkout\")}</legend>\n <div className=\"row\">\n <div className=\"col-6 offset-3\">\n <PaymentRequestButtonElement options={stripeStyleOptions} />\n </div>\n </div>\n </fieldset>\n ) : (\n <span></span>\n )}\n </div>\n </Fragment>\n );\n}\n","import { useEffect, useState, memo } from \"react\";\nimport L from \"leaflet\";\nimport { MapContainer, TileLayer, Marker, useMap } from \"react-leaflet\";\nimport \"leaflet/dist/leaflet.css\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { setFieldShipping } from \"../actions/checkoutStore\";\n\nconst STADIA_API_KEY = \"739e5f98-582d-490c-bd09-78511fcb2cc2\";\n\n// Component to fit the map to all markers\nfunction FitBoundsToMarkers({ markers }) {\n const map = useMap();\n\n useEffect(() => {\n if (markers.length > 0) {\n const bounds = L.latLngBounds(markers.map((marker) => marker.latlng));\n map.fitBounds(bounds, { padding: [15, 15] });\n }\n }, [markers, map]);\n\n return null;\n}\n\nconst PickupLocationsMap = memo(function PickupLocationsMap({\n pickupPoints,\n colors,\n}) {\n const dispatch = useDispatch();\n\n const [selectedMarker, setSelectedMarker] = useState(null);\n\n // Transform the pickupPoints array into the format needed for markers\n const markers = pickupPoints\n .filter((pickupPoint) => pickupPoint.location_can_fulfill_order)\n .map((pickupPoint) => ({\n id: pickupPoint.id,\n latlng: [pickupPoint.address.latitude, pickupPoint.address.longitude],\n pickupPointName: pickupPoint.name,\n }));\n\n const pickupPointId = useSelector(\n (state) => state.checkoutStore.shipping.pickup_point_id,\n );\n\n // Function to fetch the SVG content and dynamically modify its color\n function getSvgWithColor(svgContent, color) {\n const modifiedSvg = svgContent.replace(/fill=\"grey\"/g, `fill=\"${color}\"`);\n return `data:image/svg+xml;base64,${btoa(modifiedSvg)}`;\n }\n\n const Box = `<svg width=\"49\" height=\"54\" viewBox=\"0 0 49 54\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g filter=\"url(#filter0_d_1_11)\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M27.4103 42.795C37.3538 41.3818 45 32.8338 45 22.5C45 11.1782 35.8218 2 24.5 2C13.1782 2 4 11.1782 4 22.5C4 32.8338 11.6462 41.3818 21.5897 42.795C21.5975 42.9831 21.6599 43.174 21.7876 43.346L23.697 45.9183C24.0969 46.4569 24.9031 46.4569 25.303 45.9183L27.2124 43.346C27.3401 43.174 27.4025 42.9831 27.4103 42.795Z\" fill=\"white\"/>\n </g>\n <path d=\"M17.925 15.0067C18.2335 14.3897 18.8642 14 19.5544 14H23.2857L22.0714 18.8571H16L17.925 15.0067ZM26.9286 18.8571L25.7143 14H29.4444C30.135 14 30.765 14.3897 31.0761 15.0067L33 18.8571H26.9286ZM22.0714 22.5C22.0714 23.1717 22.6141 23.7143 23.2857 23.7143H25.7143C26.3859 23.7143 26.9286 23.1717 26.9286 22.5V20.0714H33V28.5714C33 29.9109 31.9109 31 30.5714 31H18.4286C17.0872 31 16 29.9109 16 28.5714V20.0714H22.0714V22.5Z\" fill=\"grey\"/>\n <defs>\n <filter id=\"filter0_d_1_11\" x=\"0\" y=\"1\" width=\"49\" height=\"52.3223\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\">\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/>\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\n <feOffset dy=\"3\"/>\n <feGaussianBlur stdDeviation=\"2\"/>\n <feComposite in2=\"hardAlpha\" operator=\"out\"/>\n <feColorMatrix type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"/>\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_1_11\"/>\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_1_11\" result=\"shape\"/>\n </filter>\n </defs>\n </svg>\n `;\n\n const faDefaultIconUrl = getSvgWithColor(Box, \"grey\");\n const faSelectedtIconUrl = getSvgWithColor(Box, colors.main_color);\n\n const defaultIcon = new L.Icon({\n iconUrl: faDefaultIconUrl,\n iconSize: [41, 41],\n iconAnchor: [12, 41],\n popupAnchor: [1, -34],\n shadowSize: [41, 41],\n });\n\n const selectedIcon = new L.Icon({\n iconUrl: faSelectedtIconUrl,\n iconSize: [50, 50],\n iconAnchor: [15, 46],\n popupAnchor: [1, -34],\n shadowSize: [41, 41],\n });\n\n const handleMarkerClick = (marker) => {\n setSelectedMarker(marker.id);\n dispatch(setFieldShipping(\"pickup_point_id\", marker.id));\n dispatch(setFieldShipping(\"pickup_point_name\", marker.pickupPointName)); // Set the pickupPointName correctly\n };\n\n useEffect(() => {\n if (pickupPointId) {\n setSelectedMarker(pickupPointId);\n }\n }, [pickupPointId]);\n\n const mapKey = `${new Date().getTime()}`;\n\n return (\n <MapContainer\n key={mapKey}\n center={[0, 0]}\n zoom={1}\n dragging={true}\n scrollWheelZoom={true}\n zoomControl={true}\n style={{ height: \"35vh\", width: \"100%\" }}\n attributionControl={false}\n >\n <TileLayer\n url={`https://tiles.stadiamaps.com/tiles/alidade_smooth/{z}/{x}/{y}{r}.png?api_key=${STADIA_API_KEY}`}\n attribution='© <a href=\"https://stadiamaps.com/\">Stadia Maps</a>, © <a href=\"https://openmaptiles.org/\">OpenMapTiles</a> © <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors'\n />\n {markers.map((marker) => (\n <Marker\n key={marker.id}\n position={marker.latlng}\n icon={selectedMarker === marker.id ? selectedIcon : defaultIcon}\n eventHandlers={{\n click: () => handleMarkerClick(marker),\n }}\n />\n ))}\n <FitBoundsToMarkers markers={markers} />\n </MapContainer>\n );\n});\n\nexport default PickupLocationsMap;\n","// Packages\nimport { Fragment, useEffect, useRef, useCallback, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport axios from \"axios\";\nimport { useTranslation } from \"react-i18next\";\nimport MailCheck from \"react-mailcheck\";\nimport DOMPurify from \"dompurify\";\nimport Select from \"react-select\";\nimport { Tooltip } from \"react-tooltip\";\nimport {\n Truck,\n Storefront,\n ArrowLeft,\n User,\n UserCircle,\n} from \"@phosphor-icons/react\";\n\n// Components\nimport LoadingIcon from \"../components/LoadingIcon\";\nimport AddressForm from \"../components/AddressForm\";\nimport CustomFieldList from \"./CustomFieldList\";\nimport Header from \"./Header\";\nimport Alert from \"./Alert\";\nimport NavigationFooter from \"./NavigationFooter\";\nimport ShowOrderSummary from \"./ShowOrderSummary\";\nimport InformationValidation from \"../validations/InformationValidation\";\nimport ValidateForm from \"../validations/ValidateForm\";\nimport addCustomFieldsValidation from \"../validations/addCustomFieldsValidation\";\nimport PhoneInput from \"./custom_fields/PhoneInput/PhoneInput\";\nimport StripePaymentRequest from \"./StripePaymentRequest\";\nimport {\n getCountryPhonePrefix,\n isPhoneNumberValid,\n getPhonePrefixCountry,\n} from \"./custom_fields/PhoneInput/helpers\";\nimport { faCircleExclamation } from \"@fortawesome/pro-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\n\n// Actions\nimport { closeAlertMessage } from \"../redux/ui\";\nimport {\n saveInformation,\n saveShippingOption,\n setFieldInformation,\n setFieldBilling,\n updateCountry,\n updateRegion,\n setFieldShipping,\n updateLocations,\n setCustomFieldInformation,\n setData,\n loadedPage,\n fetchDataInformation,\n saveEmail,\n callAddressAutofill,\n} from \"../actions/checkoutStore\";\nimport { useNavigate } from \"react-router-dom\";\nimport PickupLocationsMap from \"./PickupLocationsMap\";\nimport selectReactStyle from \"./SelectReactStyle\";\n\nconst InformationContent = (props) => {\n const dispatch = useDispatch();\n const navigate = useNavigate();\n\n const { t } = useTranslation();\n\n const [errorDiv, setErrorDiv] = useState(null);\n const [infoDiv, setInfoDiv] = useState(null);\n\n const isFirstRun = useRef(true);\n const [clickedButton, setClickedButton] = useState(false);\n\n const { information, shipping, payment, urls, system_fields, colors } =\n useSelector((state) => state.checkoutStore);\n // TODO: Remove/fix? Does customers store ever exist?\n const storeCountry = useSelector(\n (state) => state.customersStore?.storeCountry,\n );\n\n const [phoneError, setPhoneError] = useState({ value: false, message: \"\" });\n const [currentPhone, setCurrentPhone] = useState(\n (information.phone != null && information.phone) || \"\",\n );\n const [contentExceedsMaxHeight, setContentExceedsMaxHeight] = useState(false);\n const [currentPrefix, setCurrentPrefix] = useState(\n information.country != \"\"\n ? getCountryPhonePrefix(\"\", information.country)\n : information.order_country != \"\"\n ? getCountryPhonePrefix(\"\", information.order_country)\n : \"\",\n );\n\n const { doingRequest, alertMessage } = useSelector((state) => state.ui);\n\n const borderColor = \"#424242\";\n\n const defaultColor = \"#929292\";\n const defaultColorBorder = `1px solid ${defaultColor}`;\n const mainColorBorder = `1px solid ${borderColor}`;\n\n useEffect(() => {\n validatePhone();\n }, [currentPrefix, currentPhone]);\n\n const validatePhone = () => {\n let phone = currentPhone == null ? \"\" : currentPhone;\n let prefix =\n currentPrefix == null\n ? getCountryPhonePrefix(\"\", storeCountry)\n : currentPrefix;\n let isValidPhone = isPhoneNumberValid(phone, prefix);\n\n if (!isValidPhone) {\n setPhoneError({ value: true, message: t(\"information.phone-not-valid\") });\n } else {\n setPhoneError({ value: false, message: \"\" });\n changeStoreField(\"phone\", currentPhone);\n changeStoreField(\"phone_prefix\", currentPrefix);\n }\n };\n\n useEffect(() => {\n if (isFirstRun.current) {\n dispatch(loadedPage(\"checkout\"));\n window.scrollTo(0, 0);\n isFirstRun.current = false;\n return;\n }\n }, []);\n\n useEffect(() => {\n if (!information.no_shipping_required) {\n if (\n !information.has_shipping_methods &&\n shipping.pickup_points.length > 0\n ) {\n changeShippingOption(\"shipping_option\", \"store_pickup\");\n } else if (\n information.has_shipping_methods &&\n shipping.pickup_points.length == 0\n ) {\n changeShippingOption(\"shipping_option\", \"delivery\");\n }\n }\n }, []);\n\n useEffect(() => {\n const pickUpContainer = document.getElementById(\"pickUpContainer\");\n if (\n pickUpContainer &&\n pickUpContainer.scrollHeight > pickUpContainer.clientHeight\n ) {\n setContentExceedsMaxHeight(true);\n } else {\n setContentExceedsMaxHeight(false);\n }\n }, [shipping.pickup_point_id, information.shipping_option]);\n\n useEffect(() => {\n if (errorDiv != null && information.error != \"\") errorDiv.scrollIntoView();\n }, [errorDiv]);\n\n useEffect(() => {\n if (infoDiv != null && information.info_msg != \"\") infoDiv.scrollIntoView();\n }, [infoDiv]);\n\n useEffect(() => {\n if (clickedButton === true) {\n let errorsList = Object.keys(information.errors);\n if (errorsList.length > 0) {\n let currentElement = document.getElementById(errorsList[0]);\n if (currentElement != null) {\n currentElement.scrollIntoView({\n behavior: \"instant\",\n block: \"center\",\n });\n currentElement.focus();\n }\n }\n setClickedButton(false);\n return;\n }\n }, [clickedButton]);\n\n const errorMsgCallback = useCallback((node) => {\n if (node !== null) {\n setErrorDiv(node);\n }\n }, []);\n\n const setErrors = (errors) => {\n dispatch(setFieldInformation(\"errors\", errors));\n };\n\n const changePickupPointFields = (pickup_point_id, pickup_point_name) => {\n dispatch(setFieldShipping(\"pickup_point_id\", pickup_point_id));\n dispatch(setFieldShipping(\"pickup_point_name\", pickup_point_name));\n };\n\n const isValidEmail = (email) => {\n const emailRegex = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,8}$/i;\n return emailRegex.test(email);\n };\n\n const dispatchSaveEmail = (email) => {\n if (isValidEmail(email)) {\n const params = {\n email: email,\n };\n dispatch(saveEmail(urls.save_email, params));\n }\n };\n\n const changeShippingOption = (field, value) => {\n // Check if there is a shipping method already defined\n if (\n shipping &&\n shipping.shipping_ids &&\n shipping.shipping_ids.shipping_method_id &&\n value === \"store_pickup\"\n ) {\n dispatch(saveShippingOption(urls.save_shipping_option, value));\n } else {\n dispatch(setFieldInformation(field, value));\n const fulfillingPickupPoint = shipping.pickup_points.find(\n (point) => point.location_can_fulfill_order === true,\n );\n if (fulfillingPickupPoint) {\n dispatch(setFieldShipping(\"pickup_point_id\", fulfillingPickupPoint.id));\n dispatch(\n setFieldShipping(\"pickup_point_name\", fulfillingPickupPoint.name),\n );\n }\n }\n };\n\n const changeStoreField = (field, value) => {\n dispatch(setFieldInformation(field, value));\n\n if (field == \"shipping_option\") {\n setErrors({});\n changeStoreField(\"error\", \"\");\n } else if (field != \"error\") {\n let newErrors = Object.assign({}, information.errors);\n delete newErrors[field];\n setErrors(newErrors);\n }\n };\n\n const setCustomField = (elementId, custom_field_id, value, area) => {\n dispatch(setCustomFieldInformation(custom_field_id, value, area));\n let newErrors = Object.assign({}, information.errors);\n delete newErrors[elementId];\n setErrors(newErrors);\n };\n\n const callUpdateLocations = (\n country,\n region,\n municipality,\n city,\n address = null,\n postal = null,\n ) => {\n if (doingRequest) {\n return;\n }\n let newErrors = Object.assign({}, information.errors);\n delete newErrors.country;\n delete newErrors.region;\n delete newErrors.municipality;\n delete newErrors.city;\n delete newErrors.address;\n delete newErrors.postal;\n setErrors(newErrors);\n\n const url = urls.update_locations;\n const params = {\n country: country,\n region: region,\n municipality: municipality,\n city: city,\n address: address,\n postal: postal,\n shipping: true,\n };\n dispatch(updateLocations(url, params));\n };\n\n const callUpdateCountry = (value) => {\n if (doingRequest) {\n return;\n }\n let newErrors = Object.assign({}, information.errors);\n delete newErrors.country;\n setErrors(newErrors);\n const url = urls.update_country;\n const params = {\n country: value,\n shipping: true,\n };\n if (currentPhone == \"\") {\n setCurrentPrefix(getCountryPhonePrefix(\"\", value));\n }\n dispatch(updateCountry(url, params));\n };\n\n const callUpdateRegion = (value) => {\n if (doingRequest) {\n return;\n }\n let newErrors = Object.assign({}, information.errors);\n delete newErrors.region;\n setErrors(newErrors);\n const url = urls.update_region;\n const params = {\n country: information.country,\n region: value,\n shipping: true,\n };\n\n dispatch(updateRegion(url, params));\n };\n\n const addressAutofill = (country, postal) => {\n if (doingRequest) {\n return;\n }\n const url = urls.address_autofill;\n const params = {\n country: country,\n postal: postal,\n type: \"information\",\n };\n dispatch(callAddressAutofill(url, params));\n };\n\n const validate = async () => {\n let validationData;\n let allCustomFields;\n const shippingCustomFields = information.custom_fields.shipping;\n const otherCustomFields = information.custom_fields.other;\n const contactCustomFields = information.custom_fields.contact;\n\n validationData = Object.assign({}, information, system_fields);\n\n if (\n information.no_shipping_required &&\n information.show_billing_address_on_digital_products == \"1\"\n ) {\n allCustomFields = otherCustomFields.concat(contactCustomFields);\n } else {\n allCustomFields = shippingCustomFields\n .concat(otherCustomFields)\n .concat(contactCustomFields);\n }\n const { validations, updatedData } = addCustomFieldsValidation(\n allCustomFields,\n validationData,\n InformationValidation,\n );\n let results = ValidateForm(validations, updatedData);\n let emailValidationResults = await axios.get(urls.validate_email, {\n params: {\n email: information.email,\n },\n });\n\n if (!emailValidationResults.data.email_valid) {\n results = {\n errors: Object.assign({}, results.errors, {\n email: t(emailValidationResults.data.email_validation_message),\n }),\n status: false,\n };\n }\n\n setErrors(results.errors);\n\n return results.status;\n };\n\n const saveData = async () => {\n setClickedButton(true);\n const result = await validate();\n\n if (doingRequest || !result) {\n return;\n }\n\n setErrors({});\n changeStoreField(\"error\", \"\");\n\n var url = \"\";\n var params = {};\n if (information.no_shipping_required) {\n url = urls.save_information;\n params = {\n information: {\n shipping_option: information.shipping_option,\n email: information.email,\n name: information.name,\n surname: information.surname,\n country: information.country,\n custom_fields: information.custom_fields,\n accepts_marketing: information.accepts_marketing,\n additional_information: information.additional_information,\n },\n };\n } else {\n if (information.shipping_option === \"delivery\") {\n url = urls.save_information;\n params = {\n information: {\n shipping_option: information.shipping_option,\n name: information.name,\n surname: information.surname,\n email: information.email,\n phone: information.phone,\n phone_prefix: information.phone_prefix,\n address: information.address,\n city: information.city,\n postal: information.postal,\n country: information.country,\n region: information.region,\n municipality: information.municipality,\n custom_fields: information.custom_fields,\n accepts_marketing: information.accepts_marketing,\n complement: information.complement,\n additional_information: information.additional_information,\n billing_same_as_shipping: information.billing_same_as_shipping,\n },\n };\n } else {\n url = urls.save_info_pickup;\n params = {\n information: {\n shipping_option: information.shipping_option,\n email: information.email,\n name: information.name,\n surname: information.surname,\n phone: information.phone,\n phone_prefix: information.phone_prefix,\n custom_fields: information.custom_fields,\n accepts_marketing: information.accepts_marketing,\n additional_information: information.additional_information,\n },\n };\n }\n }\n\n if (\n shipping.pickup_points &&\n shipping.pickup_points.length > 0 &&\n information.shipping_option === \"store_pickup\"\n ) {\n params = {\n ...params,\n shipping: {\n pickup_point_id: shipping.pickup_point_id,\n name: information.name,\n surname: information.surname,\n },\n };\n }\n const queryParams = new URLSearchParams(window.location.search);\n const previewMode = queryParams.get(\"preview_mode\") || \"false\";\n dispatch(saveInformation(url, params, previewMode, navigate));\n };\n\n const [loginFormOpen, setLoginFormOpen] = useState(false);\n const [passwordFormOpen, setPasswordFormOpen] = useState(false);\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [loginAlertMessage, setLoginAlertMessage] = useState(\"\");\n const [resetPasswordInfoMessage, setResetPasswordInfoMessage] = useState(\"\");\n const [resetPasswordErrorMessage, setResetPasswordErrorMessage] =\n useState(\"\");\n\n const pickupLocationsHaveCoordinates = shipping.pickup_points?.every(\n (point) =>\n point.address &&\n point.address.latitude != null &&\n point.address.longitude != null &&\n point.address.latitude !== 0 &&\n point.address.longitude !== 0,\n );\n\n const customStyles = (isError) => ({\n control: (base) => ({\n ...base,\n borderRadius: \"6px\",\n height: \"44px\",\n padding: \"0 8px\",\n fontSize: \"14px\",\n border: isError ? \"2px solid #ed2c2c !important;\" : \"\",\n backgroundColor: isError ? \"#feeded !important\" : \"white\",\n }),\n placeholder: (base) => ({\n ...base,\n color: defaultColor,\n }),\n dropdownIndicator: (base) => ({\n ...base,\n color: defaultColor,\n padding: \"8px\",\n }),\n indicatorSeparator: () => ({ display: \"none\" }),\n valueContainer: (base) => ({\n ...base,\n padding: \"4px 8px\",\n }),\n option: (base, state) => ({\n ...base,\n backgroundColor: state.isSelected\n ? defaultColor\n : state.isFocused\n ? \"#f0f0f0\"\n : \"#fff\",\n color: state.isSelected ? colors.text_color : \"#000\",\n padding: \"8px 12px\",\n cursor: \"pointer\",\n }),\n });\n\n const handleKeyDown = (event, radioId) => {\n if (event.code === \"Space\") {\n event.preventDefault();\n const radio = document.getElementById(radioId);\n if (radio) {\n radio.click();\n }\n }\n };\n\n const RenderLoginForm = () => {\n return (\n <Fragment>\n <div className=\"separatedContent col-12 ps-0\">\n <div className=\"label-checkout\" style={{ paddingBottom: \"24px\" }}>\n {t(\"information.login-to-your-account\")}\n </div>\n <small\n className=\"label-checkout\"\n onClick={() => {\n setLoginFormOpen(false);\n setPasswordFormOpen(true);\n }}\n style={{ cursor: \"pointer\" }}\n >\n {t(\"information.forgot-password\")}\n </small>\n </div>\n {loginAlertMessage != \"\" && (\n <div className=\"col-12 ps-0\">\n <Alert\n type={\"error\"}\n message={loginAlertMessage}\n closeAlert={() => {\n setLoginAlertMessage(\"\");\n }}\n />\n </div>\n )}\n {resetPasswordInfoMessage != \"\" && (\n <div className=\"col-12 ps-0\">\n <Alert\n type={\"primary\"}\n message={resetPasswordInfoMessage}\n closeAlert={() => {\n setResetPasswordInfoMessage(\"\");\n }}\n />\n </div>\n )}\n <div\n className={`col-12 ${loginAlertMessage != \"\" || resetPasswordInfoMessage !== \"\" || loginFormOpen ? \"mt-1\" : \"mt-3\"} ps-0`}\n >\n <div className={`floating-label-wrap`}>\n <label htmlFor=\"email\" className=\"label-checkout\">\n {t(\"information.email\")}\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"email\"\n disabled={doingRequest}\n placeholder={t(\"information.email\")}\n onChange={(e) => setEmail(e.target.value.replace(\" \", \"\"))}\n value={email}\n />\n </div>\n </div>\n <div className=\"col-12 mt-2 ps-0\">\n <div className={`floating-label-wrap`}>\n <label htmlFor=\"name\" className=\"label-checkout\">\n {t(\"information.password\")}\n </label>\n <input\n type=\"password\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"password\"\n disabled={doingRequest}\n placeholder={t(\"information.password\")}\n onChange={(e) => setPassword(e.target.value)}\n />\n </div>\n </div>\n <div className=\"d-flex align-items-baseline\">\n <div\n className=\"col-6 mt-3 label-checkout\"\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n setLoginFormOpen(false);\n }}\n >\n <ArrowLeft size={24} weight=\"bold\" />{\" \"}\n <span>{t(\"information.back-to-guest-checkout\")}</span>\n </div>\n <div className=\"col-6 my-3\">\n <button\n className=\"btn btn-primary py-3\"\n disabled={doingRequest}\n onClick={() => {\n axios\n .post(urls.login_at_checkout, {\n params: {\n customer: {\n email: email,\n password: password,\n },\n },\n })\n .then((response) => {\n const response_json = response.data;\n const responseType = response_json.type;\n const responseMessage = response_json.message;\n\n if (responseType == \"error\") {\n setLoginAlertMessage(responseMessage);\n } else {\n setLoginFormOpen(false);\n setLoginAlertMessage(\"\");\n dispatch(fetchDataInformation());\n }\n });\n }}\n id=\"save\"\n style={{\n borderRadius: \"8px\",\n fontWeight: 700,\n backgroundColor: colors.main_color,\n color: colors.main_buttons_text_color,\n }}\n >\n {doingRequest ? (\n <LoadingIcon isInsideButton={true} />\n ) : (\n t(\"information.login\")\n )}\n </button>\n </div>\n </div>\n </Fragment>\n );\n };\n\n const RenderPasswordForm = () => {\n return (\n <Fragment>\n <div className=\"col-12 ps-0\">\n <div className=\"label-checkout\" style={{ paddingBottom: \"24px\" }}>\n {t(\"information.checkout-as-guest\")}\n </div>\n </div>\n {resetPasswordErrorMessage != \"\" && (\n <div className=\"col-12 ps-0\">\n <Alert\n type={\"error\"}\n message={resetPasswordErrorMessage}\n closeAlert={() => {\n setResetPasswordErrorMessage(\"\");\n }}\n />\n </div>\n )}\n <div\n className={`col-12 ${resetPasswordErrorMessage != \"\" ? \"mt-1\" : \"mt-3\"} ps-0`}\n >\n <div className={`floating-label-wrap`}>\n <label htmlFor=\"email\" className=\"label-checkout\">\n {t(\"information.email\")}\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"email\"\n disabled={doingRequest}\n placeholder={t(\"information.email\")}\n onChange={(e) => setEmail(e.target.value.replace(\" \", \"\"))}\n value={email}\n />\n </div>\n </div>\n <div className=\"row align-items-baseline\">\n <div\n className=\"col-6 mt-3 label-checkout\"\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n setPasswordFormOpen(false);\n }}\n >\n <ArrowLeft /> {t(\"information.back-to-guest-checkout\")}\n </div>\n <div className=\"col-6 my-3\">\n <button\n className=\"btn btn-primary py-3\"\n disabled={doingRequest}\n onClick={() => {\n axios\n .get(urls.reset_password, {\n params: {\n customer: {\n email: email,\n },\n },\n })\n .then((response) => {\n const responseType = response.data.type;\n const responseMessage = response.data.message;\n if (responseType == \"error\") {\n setResetPasswordInfoMessage(\"\");\n setResetPasswordErrorMessage(responseMessage);\n } else {\n setLoginAlertMessage(\"\");\n setResetPasswordErrorMessage(\"\");\n setPasswordFormOpen(false);\n setLoginFormOpen(true);\n setResetPasswordInfoMessage(responseMessage);\n }\n });\n }}\n id=\"reset\"\n style={{\n backgroundColor: colors.main_color,\n color: colors.main_buttons_text_color,\n }}\n >\n {doingRequest ? (\n <LoadingIcon isInsideButton={true} />\n ) : (\n t(\"information.reset-button\")\n )}\n </button>\n </div>\n </div>\n </Fragment>\n );\n };\n const AcceptsMarketing = (CustomField) => {\n const elementId = `custom_field_${CustomField.area}_${CustomField.custom_field_id}`;\n return (\n <div className=\"check col-12 mb-3 form-group\">\n <label>\n <input\n type=\"checkbox\"\n className=\"me-2 checkbox align-middle\"\n disabled={doingRequest}\n id=\"accepts_marketing\"\n onChange={(e) => {\n changeStoreField(\"accepts_marketing\", e.target.checked);\n setCustomField(\n elementId,\n CustomField.custom_field_id,\n e.target.checked,\n CustomField.area,\n );\n }}\n checked={information.accepts_marketing}\n />\n <span\n className=\"align-middle\"\n dangerouslySetInnerHTML={{\n __html: DOMPurify.sanitize(\n t(information.accepts_marketing_text) ||\n t(\"information.accepts-marketing-text-default\"),\n { ADD_ATTR: [\"target\"] },\n ),\n }}\n />\n <span></span>\n </label>\n </div>\n );\n };\n const PhoneNumber = () => {\n return (\n <div className=\"mb-n2\">\n <PhoneInput\n isInformationContent={true}\n flagId={\"prefix\"}\n flagValue={getPhonePrefixCountry(currentPrefix, information.country)}\n flagPlaceholder={t(\"information.phone-code\")}\n onFlagChange={(e) => {\n setCurrentPrefix(e.value);\n }}\n phoneValue={currentPhone || \"\"}\n phoneId={\"phone\"}\n phonePlaceholder={\n system_fields.phone_required\n ? t(\"information.phone\") + \" *\"\n : t(\"information.phone-optional\")\n }\n onNumberChange={(number) => {\n setCurrentPhone(number.replace(/ /g, \"\"));\n }}\n phoneError={t(phoneError.message)}\n phoneEmpty={t(information.errors.phone)}\n storeCountry={information.order_country}\n />\n </div>\n );\n };\n\n const ContactInformation = (\n <Fragment>\n <div\n className={`col-12 ${\n system_fields.accepts_marketing\n ? \"\"\n : information.custom_fields.contact.length > 0\n ? \"mb-3\"\n : \"mb-4\"\n }`}\n >\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n paddingBottom: \"24px\",\n }}\n className=\"checkout-section-title\"\n >\n <div className=\"d-inline-flex align-items-center\">\n {props.vertical && (\n <span\n style={{ color: colors.main_color_dark ? \"white\" : \"black\" }}\n className=\"pageNumber\"\n >\n 1\n </span>\n )}{\" \"}\n {t(\"information.contact\")}\n </div>\n {information.customers_enabled &&\n !information.logged_in &&\n !loginFormOpen &&\n !passwordFormOpen && (\n <div\n onClick={() => {\n setPasswordFormOpen(false);\n setLoginFormOpen(true);\n }}\n id=\"login\"\n className=\"checkout-sub-section-title\"\n style={{\n color: colors.text_color,\n cursor: \"pointer\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"5px\",\n }}\n >\n <UserCircle /> {t(\"information.login\")}\n </div>\n )}\n </div>\n\n {information.logged_in ? (\n <Fragment>\n <div className=\"logged-in-div\">\n <div className=\"pe-2\">\n <UserCircle size={24} weight=\"bold\" />\n </div>\n <span id=\"filledEmail\">{information.email}</span>\n <a\n href={`${urls.logout}?id=${information.customer_id}`}\n id=\"logout\"\n className=\"small\"\n style={{ color: \"#33a2db\" }}\n >\n {t(\"information.logout\")}\n </a>\n </div>\n </Fragment>\n ) : loginFormOpen ? (\n RenderLoginForm()\n ) : passwordFormOpen ? (\n RenderPasswordForm()\n ) : (\n <div className=\"contact-information-box mb-3\">\n <div className=\"checkout-guest-div\">\n <div\n className={`form-group floating-label-wrap${\n information.errors.email ? \" error-div-highlight\" : \"\"\n }`}\n >\n <MailCheck\n email={information.email || \"\"}\n domains={[\"hotmail.com\", \"gmail.com\", \"aol.com\"]}\n topLevelDomains={[\n \"com\",\n \"net\",\n \"org\",\n \"edu\",\n \"gov\",\n \"mil\",\n \"int\",\n \"co\",\n \"biz\",\n \"info\",\n \"pro\",\n \"name\",\n \"me\",\n \"mobi\",\n \"tv\",\n \"asia\", // Newer TLDs\n \"io\",\n \"tech\",\n \"dev\",\n \"app\",\n \"ai\", // Tech-related TLDs\n\n // Common country code TLDs\n \"us\",\n \"ca\",\n \"uk\",\n \"de\",\n \"fr\",\n \"es\",\n \"it\",\n \"nl\",\n \"se\",\n \"no\",\n \"fi\",\n \"pl\",\n \"ru\", // European countries\n \"au\",\n \"nz\",\n \"jp\",\n \"cn\",\n \"kr\",\n \"sg\",\n \"in\", // Asia-Pacific region\n \"br\",\n \"mx\",\n \"ar\",\n \"cl\",\n \"co\",\n \"pe\", // Latin America\n \"za\",\n \"ng\",\n \"eg\", // Africa\n\n // Some less common TLDs that still might be useful\n \"xyz\",\n \"club\",\n \"guru\",\n \"online\",\n \"site\",\n \"solutions\",\n \"store\",\n \"world\",\n \"live\",\n ]}\n >\n {(suggestion) => (\n <div>\n <label htmlFor=\"email\" className=\"label-checkout\">\n {t(\"information.email\")} *\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n name=\"email\"\n id=\"email\"\n disabled={doingRequest}\n placeholder={t(\"information.email\")}\n onChange={(e) => {\n dispatchSaveEmail(e.target.value.replace(\" \", \"\"));\n changeStoreField(\n \"email\",\n e.target.value.replace(\" \", \"\"),\n );\n }}\n value={\n (information.email != null && information.email) || \"\"\n }\n autoComplete=\"email\"\n />\n\n {suggestion && (\n <div className=\"mb-3\">\n <span className=\"form-text text-muted email-suggestion\">\n {t(\"information.did-you-mean\")}\n {\n <a\n href=\"#\"\n onClick={() =>\n changeStoreField(\"email\", suggestion.full)\n }\n style={{ color: colors.main_color }}\n >\n {suggestion.full}\n </a>\n }\n ?\n </span>\n </div>\n )}\n </div>\n )}\n </MailCheck>\n </div>\n <div\n className={`field-error ${information.errors.email ? \"\" : \"hidden-error\"}`}\n style={{\n display: information.errors.email ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n className=\"m-1\"\n fixedWidth\n />\n {t(information.errors.email)}\n </div>\n </div>\n </div>\n )}\n <div className=\"col-12\">\n <div className=\"row mx-n2\">\n {information.custom_fields.contact.length > 0 ? (\n <CustomFieldList\n customFields={information.custom_fields.contact}\n errors={information.errors}\n setCustomField={setCustomField}\n custom={2}\n PhoneNumber={system_fields.phone_enabled ? PhoneNumber : null}\n AcceptsMarketing={\n system_fields.accepts_marketing ? AcceptsMarketing : null\n }\n />\n ) : null}\n </div>\n </div>\n </div>\n </Fragment>\n );\n\n const ShippingOptions = (\n <div className=\"col-12 mb-1 mt-3\">\n <div className=\"checkout-section-title\" style={{ paddingBottom: \"24px\" }}>\n <div className=\"d-inline-flex align-items-center\">\n {props.vertical && (\n <span\n style={{ color: colors.main_color_dark ? \"white\" : \"black\" }}\n className=\"pageNumber\"\n >\n 2\n </span>\n )}\n {t(\"information.delivery\")}\n </div>\n </div>\n <div className=\"shipping-options-div row g-0 mb-2\">\n <div className=\"col-12\">\n <div\n tabIndex=\"0\"\n onKeyDown={(event) => handleKeyDown(event, \"radio_delivery\")}\n className={`delivery-div-vertical ${\n information.shipping_option === \"delivery\"\n ? \"\"\n : \"disabled-shipping-option-up\"\n }`}\n style={{\n height: \"71px\",\n backgroundColor:\n information.shipping_option === \"delivery\"\n ? `#FCFCFC`\n : `#FFFFFF`,\n border:\n information.shipping_option === \"delivery\"\n ? mainColorBorder\n : ``,\n overflow: \"hidden\",\n color: \"#505050\",\n }}\n >\n <label className=\"paymentRadioLabel\" style={{ height: \"71px\" }}>\n <input\n className=\"radioOp\"\n style={{ accentColor: colors.main_color, colorScheme: \"light\" }}\n type=\"radio\"\n value=\"delivery\"\n disabled={doingRequest}\n id=\"radio_delivery\"\n onChange={(e) =>\n changeShippingOption(\"shipping_option\", e.target.value)\n }\n checked={information.shipping_option === \"delivery\"}\n />\n <div className=\"col-md-9 col-sm-8\" style={{ lineHeight: \"17px\" }}>\n <div className=\"px-2\">\n <span style={{ fontWeight: 600 }} className=\"d-block\">\n {t(\"information.shipping\")}\n </span>\n <span style={{ fontWeight: 400 }} className=\"d-block\">\n {t(\"information.delivery-info-text-vertical\")}\n </span>\n </div>\n </div>\n </label>\n </div>\n </div>\n <div className=\"col-12\">\n <div\n tabIndex=\"0\"\n onKeyDown={(event) => handleKeyDown(event, \"radio_store_pickup\")}\n className={`pickup-div-vertical ${\n information.shipping_option === \"store_pickup\"\n ? \"\"\n : \"disabled-shipping-option-down\"\n }`}\n style={{\n height: \"71px\",\n backgroundColor:\n information.shipping_option === \"store_pickup\"\n ? `#FCFCFC`\n : `#FFFFFF`,\n border:\n information.shipping_option === \"store_pickup\"\n ? mainColorBorder\n : ``,\n overflow: \"hidden\",\n }}\n >\n <label className=\"paymentRadioLabel\" style={{ height: \"71px\" }}>\n <input\n className=\"radioOp\"\n style={{ accentColor: colors.main_color, colorScheme: \"light\" }}\n type=\"radio\"\n value=\"store_pickup\"\n disabled={doingRequest}\n id=\"radio_store_pickup\"\n onChange={(e) =>\n changeShippingOption(\"shipping_option\", e.target.value)\n }\n checked={information.shipping_option === \"store_pickup\"}\n />\n <div\n className=\"shipping-option-text col-md-9 col-sm-8\"\n style={{ lineHeight: \"17px\" }}\n >\n <div className=\"px-2\" style={{ color: \"#505050\" }}>\n <span style={{ fontWeight: 600 }} className=\"d-block\">\n {t(\"information.store-pick-up\")}\n </span>\n <span style={{ fontWeight: 400 }} className=\"d-block\">\n {t(\"information.pickup-info-text\")}\n </span>\n </div>\n </div>\n </label>\n </div>\n </div>\n </div>\n </div>\n );\n\n const ChoosePlace = (\n <Fragment>\n <div className=\"col-12\">\n <div\n className=\"checkout-sub-section-title\"\n style={{ paddingBottom: \"16px\", paddingTop: \"16px\" }}\n >\n {t(\"shipping.choose-place\")}\n </div>\n </div>\n <div className=\"col-12\">\n <div\n style={{\n borderTop: contentExceedsMaxHeight ? \"1px solid #ccc\" : \"none\",\n borderBottom: contentExceedsMaxHeight ? \"1px solid #ccc\" : \"none\",\n }}\n >\n {pickupLocationsHaveCoordinates &&\n information.shipping_option === \"store_pickup\" && (\n <div\n style={{\n borderRadius: \"10px 10px 0 0\",\n borderWidth: \"1px 1px 0 1px\",\n borderColor: defaultColor,\n overflow: \"hidden\",\n }}\n >\n <PickupLocationsMap\n pickupPoints={shipping.pickup_points}\n colors={colors}\n />\n </div>\n )}\n <div\n id=\"pickUpContainer\"\n className={`shippingBox w-100 ${\n information.errors.pick_up != \"\" ? \"error-div-highlight\" : \"\"\n }`}\n style={{\n maxHeight: \"628px\",\n overflowY: contentExceedsMaxHeight ? \"scroll\" : \"\",\n }}\n >\n {shipping.pickup_points &&\n shipping.pickup_points.map((pickup_point, i) => {\n const selected_method =\n shipping.pickup_point_id == pickup_point.id;\n const selectedMethodIndex = shipping.pickup_points.findIndex(\n (method) => method.id === shipping.pickup_point_id,\n );\n const isNextMethod = i === selectedMethodIndex + 1;\n\n const methodOptionClass =\n shipping.pickup_points.length === 1 &&\n !pickupLocationsHaveCoordinates\n ? \"10px 10px 10px 10px\"\n : (shipping.pickup_points.length === 1 &&\n pickupLocationsHaveCoordinates) ||\n i == shipping.pickup_points.length - 1\n ? \"0 0 10px 10px\"\n : shipping.pickup_points.length > 1 &&\n i === 0 &&\n !pickupLocationsHaveCoordinates\n ? \"10px 10px 0 0\"\n : \"\";\n return (\n <div\n tabIndex=\"0\"\n onKeyDown={(event) =>\n handleKeyDown(\n event,\n \"radio_pickup_point_\" + pickup_point.id,\n )\n }\n className=\"pickup-names-div\"\n key={pickup_point.id}\n data-tooltip-content={t(\"information.full-stock-needed\")}\n data-tooltip-id={\"full-stock-needed-\" + pickup_point.id}\n style={{\n borderTop: selected_method\n ? mainColorBorder\n : isNextMethod\n ? \"\"\n : defaultColorBorder,\n borderLeft: selected_method\n ? mainColorBorder\n : defaultColorBorder,\n borderRight: selected_method\n ? mainColorBorder\n : defaultColorBorder,\n borderBottom: selected_method\n ? mainColorBorder\n : shipping.pickup_points.length === i + 1 &&\n !selected_method\n ? defaultColorBorder\n : \"\",\n borderRadius: methodOptionClass,\n color: \"#505050\",\n }}\n >\n {!pickup_point.location_can_fulfill_order && (\n <Tooltip\n className=\"d-none d-sm-block\"\n id={\"full-stock-needed-\" + pickup_point.id}\n />\n )}\n\n <label\n style={{\n borderRadius: `${methodOptionClass}`,\n backgroundColor:\n shipping.pickup_point_id == pickup_point.id\n ? \"#FCFCFC\"\n : \"#FFFFFF\",\n }}\n className=\"radioPickupLabel flex-nowrap\"\n htmlFor={\"radio_pickup_point_\" + pickup_point.id}\n >\n <input\n className=\"radioOp\"\n style={{\n accentColor: colors.main_color,\n colorScheme: \"light\",\n }}\n type=\"radio\"\n disabled={\n doingRequest ||\n !pickup_point.location_can_fulfill_order\n }\n id={\"radio_pickup_point_\" + pickup_point.id}\n value={pickup_point.id}\n checked={\n shipping.pickup_point_id == pickup_point.id ||\n shipping.pickup_points.length === 1\n }\n onChange={(e) =>\n changePickupPointFields(\n parseInt(e.target.value, 10),\n pickup_point.name,\n )\n }\n />\n <div\n className=\"py-sm-0 py-2 px-2\"\n style={{ color: \"#505050\" }}\n >\n <span\n style={{\n fontWeight: 600,\n }}\n className=\"d-block\"\n >\n {pickup_point.name}\n </span>\n <span className=\"subtext d-block\">\n {[\n pickup_point.address.address,\n pickup_point.address.complement,\n pickup_point.address.municipality,\n pickup_point.address.region,\n pickup_point.address.country,\n ]\n .filter((x) => x)\n .join(\", \")}\n </span>\n </div>\n </label>\n {shipping.pickup_point_id == pickup_point.id &&\n pickup_point.description && (\n <div\n style={{\n backgroundColor: \"white\",\n borderTop:\n shipping.pickup_point_id == pickup_point.id\n ? \"1px solid #F5F5F5\"\n : \"\",\n }}\n className={`pickup_point_div ${\n i === shipping.pickup_points.length - 1\n ? \"methodOptionRoundedLabelDown\"\n : \"\"\n }`}\n >\n <span\n dangerouslySetInnerHTML={{\n __html: DOMPurify.sanitize(\n pickup_point.description,\n ),\n }}\n ></span>\n </div>\n )}\n </div>\n );\n })}\n </div>\n </div>\n </div>\n </Fragment>\n );\n\n const AdditionalInformation = (\n <div className=\"col-12 mb-3 \">\n <div\n className={`floating-label-wrap ${\n information.errors.additional_information ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"additional_information\" className=\"label-checkout\">\n {t(\"information.special-informations\")}\n </label>\n <textarea\n className=\"floating-label-field floating-label-field--s1\"\n id=\"additional_information\"\n disabled={doingRequest}\n placeholder={t(\"information.special-informations\")}\n onChange={(e) =>\n changeStoreField(\"additional_information\", e.target.value)\n }\n value={\n (information != null && information.additional_information) || \"\"\n }\n ></textarea>\n </div>\n <div\n className={`field-error ${\n information.errors.additional_information ? \"\" : \"hidden-error\"\n }`}\n style={{\n display: information.errors.additional_information ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n className=\"m-1\"\n fixedWidth\n />\n {t(information.errors.additional_information)}\n </div>\n </div>\n );\n\n const PickUp = (\n <Fragment>\n {ChoosePlace}\n <div className=\"col-12 mt-4\">\n <div className=\"separatedContent\">\n <div\n className=\"checkout-sub-section-title\"\n style={{ paddingBottom: \"8px\" }}\n >\n {t(\"information.who-picks-up-information\")}\n </div>\n </div>\n </div>\n <div className=\"col-12\">\n <div className=\"row\">\n <div className=\"col-sm-6 pe-sm-1 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.name ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"name\" className=\"label-checkout\">\n {t(\"information.name\")} *\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"name\"\n disabled={doingRequest}\n placeholder={t(\"information.name\")}\n onChange={(e) => {\n changeStoreField(\"name\", e.target.value);\n dispatch(setFieldBilling(\"name\", e.target.value));\n }}\n value={(information != null && information.name) || \"\"}\n autoComplete=\"given-name\"\n />\n </div>\n <div\n className={`field-error ${information.errors.name ? \"\" : \"hidden-error\"}`}\n style={{\n display: information.errors.name ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.name)}\n </div>\n </div>\n <div className=\"col-sm-6 ps-sm-1 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.surname ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"surname\" className=\"label-checkout\">\n {t(\"information.surname\")} *\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"surname\"\n disabled={doingRequest}\n placeholder={t(\"information.surname\")}\n onChange={(e) => {\n changeStoreField(\"surname\", e.target.value);\n dispatch(setFieldBilling(\"surname\", e.target.value));\n }}\n value={(information != null && information.surname) || \"\"}\n autoComplete=\"family-name\"\n />\n </div>\n <div\n className={`field-error ${information.errors.surname ? \"\" : \"hidden-error\"}`}\n style={{\n display: information.errors.surname ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.surname)}\n </div>\n </div>\n {(information.countries.length === 1 && information.country) ||\n !(\n information.shipping_option === \"store_pickup\" &&\n information.show_billing_address_on_store_pickup === \"0\"\n ) ? null : (\n <div className=\"col-12 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.country ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"country\" className=\"label-checkout\">\n {t(\"information.country\")} *\n </label>\n <div>\n <Select\n styles={customStyles(information.errors.country)}\n classNamePrefix=\"custom-select\"\n searchable\n id=\"country\"\n options={information.countries}\n onChange={(row) => callUpdateCountry(row.value)}\n value={\n information.countries.find(\n (current) => current.value === information.country,\n ) || \"\"\n }\n autoComplete=\"country\"\n />\n </div>\n </div>\n <div\n className={`field-error ${\n information.errors.country ? \"\" : \"hidden-error\"\n }`}\n style={{\n display: information.errors.country ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.country)}\n </div>\n </div>\n )}\n </div>\n </div>\n\n {information.custom_fields.shipping.length > 0 ? (\n <CustomFieldList\n customFields={information.custom_fields.shipping}\n errors={information.errors}\n setCustomField={setCustomField}\n AdditionalInformation={\n system_fields.additional_information ? AdditionalInformation : null\n }\n />\n ) : null}\n </Fragment>\n );\n\n const NoPickupsAndNoShippingMethods = (\n <Fragment>\n <div className=\"col-12\">\n <Alert\n message={t(\"information.need-pickup-or-shipping\")}\n type={\"error\"}\n />\n </div>\n </Fragment>\n );\n\n const Digital = (\n <Fragment>\n <div className=\"col-12\">\n <div className=\"row\">\n <div className=\"col-sm-6 pe-sm-1 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.name ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"name\" className=\"label-checkout\">\n {t(\"information.name\")} *\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"name\"\n disabled={doingRequest}\n placeholder={t(\"information.name\")}\n onChange={(e) => changeStoreField(\"name\", e.target.value)}\n value={(information != null && information.name) || \"\"}\n autoComplete=\"given-name\"\n />\n </div>\n <div\n className={`field-error ${information.errors.name ? \"\" : \"hidden-error\"}`}\n style={{\n display: information.errors.name ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.name)}\n </div>\n </div>\n <div className=\"col-sm-6 ps-sm-1 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.surname ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"surname\" className=\"label-checkout\">\n {t(\"information.surname\")} *\n </label>\n <input\n type=\"text\"\n required\n className=\"floating-label-field floating-label-field--s1\"\n id=\"surname\"\n disabled={doingRequest}\n placeholder={t(\"information.surname\")}\n onChange={(e) => changeStoreField(\"surname\", e.target.value)}\n value={(information != null && information.surname) || \"\"}\n autoComplete=\"family-name\"\n />\n </div>\n <div\n className={`field-error ${information.errors.surname ? \"\" : \"hidden-error\"}`}\n style={{\n display: information.errors.surname ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.surname)}\n </div>\n </div>\n {information.countries.length === 1 && information.country ? null : (\n <div className=\"col-12 mb-3\">\n <div\n className={`floating-label-wrap ${\n information.errors.country ? \"error-div-highlight\" : \"\"\n }`}\n >\n <label htmlFor=\"country\" className=\"label-checkout\">\n {t(\"information.country\")} *\n </label>\n <div>\n <Select\n styles={customStyles(information.errors.country)}\n classNamePrefix=\"custom-select\"\n searchable\n id=\"country\"\n options={information.countries}\n onChange={(row) => callUpdateCountry(row.value)}\n value={\n information.countries.find(\n (current) => current.value === information.country,\n ) || \"\"\n }\n autoComplete=\"country\"\n />\n </div>\n </div>\n <div\n className={`field-error ${\n information.errors.country ? \"\" : \"hidden-error\"\n }`}\n style={{\n display: information.errors.country ? \"flex\" : \"\",\n alignItems: \"center\",\n }}\n >\n <FontAwesomeIcon\n icon={faCircleExclamation}\n style={{ paddingRight: \"2px\" }}\n size=\"sm\"\n fixedWidth\n />\n {t(information.errors.country)}\n </div>\n </div>\n )}\n </div>\n </div>\n\n {information.custom_fields.shipping.length > 0 ? (\n <CustomFieldList\n customFields={information.custom_fields.shipping}\n errors={information.errors}\n setCustomField={setCustomField}\n AdditionalInformation={\n system_fields.additional_information ? AdditionalInformation : null\n }\n />\n ) : null}\n </Fragment>\n );\n\n const PhysicalProducts = (\n <Fragment>\n {information.shipping_option === \"delivery\" && (\n <Fragment>\n <div className=\"col-12\">\n <div className=\"separatedContent\">\n <div\n className=\"checkout-sub-section-title\"\n style={{ paddingBottom: \"16px\", paddingTop: \"16px\" }}\n >\n {t(\"information.shipping-address\")}\n </div>\n </div>\n </div>\n <div className=\"col-12\">\n <AddressForm\n address={information}\n countries={information.countries}\n regions={information.regions}\n municipalities={information.municipalities}\n customFields={information.custom_fields.shipping}\n type=\"shipping\"\n no_shipping_required={information.no_shipping_required}\n request_geolocation={information.request_geolocation}\n show_estimate_dates={information.show_estimate_dates}\n phone={information.phone}\n phone_prefix={information.phone_prefix}\n order_country={information.order_country}\n errors={information.errors}\n setFieldInformation={changeStoreField}\n callUpdateLocations={callUpdateLocations}\n callUpdateCountry={callUpdateCountry}\n callUpdateRegion={callUpdateRegion}\n addressAutofill={addressAutofill}\n AdditionalInformation={AdditionalInformation}\n systemFields={system_fields}\n setCustomField={setCustomField}\n colors={colors}\n country_calling_codes={information.country_calling_codes}\n />\n </div>\n </Fragment>\n )}\n {shipping.pickup_points &&\n shipping.pickup_points.length > 0 &&\n information.shipping_option === \"store_pickup\" &&\n PickUp}\n </Fragment>\n );\n\n if (props.vertical)\n return (\n <div id=\"information-page\" className=\"row\">\n {information.is_mobile && (\n <ShowOrderSummary\n is_mobile={information.is_mobile}\n type=\"information\"\n toggleSummary={changeStoreField}\n />\n )}\n {alertMessage && alertMessage.active && (\n <div className=\"col-12\" ref={errorMsgCallback}>\n <Alert\n message={alertMessage.message}\n type={alertMessage.type}\n closeAlert={() => dispatch(closeAlertMessage())}\n />\n </div>\n )}\n {information.info_msg && alertMessage && alertMessage.active && (\n <div className=\"col-12\" ref={errorMsgCallback}>\n <Alert\n message={information.info_msg}\n type=\"notice\"\n closeAlert={() => dispatch(closeAlertMessage())}\n />\n </div>\n )}\n {window.stripePubKey &&\n !information.have_custom_fields &&\n information.stripe_payment_express && <StripePaymentRequest />}\n {shipping.pickup_points &&\n shipping.pickup_points.length == 0 &&\n !information.has_shipping_methods &&\n NoPickupsAndNoShippingMethods}\n {ContactInformation}\n {!information.no_shipping_required &&\n shipping.pickup_points &&\n shipping.pickup_points.length > 0 &&\n information.has_shipping_methods &&\n ShippingOptions}\n {!information.no_shipping_required && PhysicalProducts}\n {information.no_shipping_required &&\n information.shipping_option === \"no_shipping\" &&\n information.show_billing_address_on_digital_products !== \"1\" &&\n Digital}\n {information.custom_fields.other.length > 0 ? (\n <CustomFieldList\n customFields={information.custom_fields.other}\n errors={information.errors}\n setCustomField={setCustomField}\n AdditionalInformation={\n system_fields.additional_information\n ? AdditionalInformation\n : null\n }\n />\n ) : null}\n </div>\n );\n\n return (\n <div id=\"information-page\" className=\"row\">\n {information.is_mobile && (\n <ShowOrderSummary\n is_mobile={information.is_mobile}\n type=\"information\"\n toggleSummary={changeStoreField}\n />\n )}\n <Header page=\"1\" />\n {alertMessage && alertMessage.active && (\n <div className=\"col-12\" ref={errorMsgCallback}>\n <Alert\n message={alertMessage.message}\n type={alertMessage.type}\n closeAlert={() => dispatch(closeAlertMessage())}\n />\n </div>\n )}\n {information.info_msg && alertMessage && alertMessage.active && (\n <div className=\"col-12\" ref={errorMsgCallback}>\n <Alert\n message={information.info_msg}\n type=\"notice\"\n closeAlert={() => dispatch(closeAlertMessage())}\n />\n </div>\n )}\n {window.stripePubKey &&\n !information.have_custom_fields &&\n information.stripe_payment_express && <StripePaymentRequest />}\n {shipping.pickup_points &&\n shipping.pickup_points.length == 0 &&\n !information.has_shipping_methods &&\n NoPickupsAndNoShippingMethods}\n {ContactInformation}\n {!information.no_shipping_required &&\n shipping.pickup_points &&\n shipping.pickup_points.length > 0 &&\n information.has_shipping_methods &&\n ShippingOptions}\n {!information.no_shipping_required && PhysicalProducts}\n {information.no_shipping_required &&\n information.shipping_option === \"no_shipping\" &&\n information.show_billing_address_on_digital_products !== \"1\" &&\n Digital}\n {information.custom_fields.other.length > 0 ? (\n <CustomFieldList\n customFields={information.custom_fields.other}\n errors={information.errors}\n setCustomField={setCustomField}\n AdditionalInformation={\n system_fields.additional_information ? AdditionalInformation : null\n }\n />\n ) : null}\n <NavigationFooter type=\"information\" saveData={saveData} />\n </div>\n );\n};\n\nexport default InformationContent;\n"],"names":["allowedCountries","StripePaymentRequest","dispatch","useDispatch","state","useSelector","stripe","useStripe","t","useTranslation","paymentRequest","setPaymentRequest","useState","information","summary","urls","checkoutStore","useEffect","includes","order_country","amount","parseInt","raw_total","subunit_to_unit","paymentRequestConfig","country","currency","currency_code","total","label","requestPayerName","requestPayerEmail","requestPayerPhone","no_shipping_required","requestShipping","pr","canMakePayment","then","result","on","handlePaymentMethodReceived","handleShippingAddress","handleShippingOption","stripeStyleOptions","style","paymentRequestButton","type","theme","height","async","axios","headers","common","method","url","change_shipping_option","data","shipping_method_id","event","shippingOption","id","params","recover_token","window","token","updateWith","status","shippingAddress","shipping","name","recipient","phone","address","line1","addressLine","city","postal_code","postalCode","region","estimate_shipping","length","shippingOptions","map","estimate","table","shipping_service_id","price","shipping_method_name","detail","description","paymentDetails","payment_method","paymentMethod","billing_details","email","shipping_details","shipping_option","response","fetch","create_payment_intent","body","JSON","stringify","res","json","error","paymentIntent","confirmCardPayment","client_secret","handleActions","console","log","fast_place_order","_response","complete","location","success","catch","showError","warn","_jsx","Fragment","children","className","_jsxs","PaymentRequestButtonElement","options","FitBoundsToMarkers","markers","useMap","bounds","L","marker","latlng","fitBounds","padding","memo","pickupPoints","colors","selectedMarker","setSelectedMarker","filter","pickupPoint","location_can_fulfill_order","latitude","longitude","pickupPointName","pickupPointId","pickup_point_id","getSvgWithColor","svgContent","color","modifiedSvg","replace","btoa","Box","faDefaultIconUrl","faSelectedtIconUrl","main_color","defaultIcon","iconUrl","iconSize","iconAnchor","popupAnchor","shadowSize","selectedIcon","mapKey","Date","getTime","MapContainer","center","zoom","dragging","scrollWheelZoom","zoomControl","width","attributionControl","TileLayer","attribution","Marker","position","icon","eventHandlers","click","setFieldShipping","handleMarkerClick","props","navigate","useNavigate","errorDiv","setErrorDiv","infoDiv","setInfoDiv","isFirstRun","useRef","clickedButton","setClickedButton","payment","system_fields","storeCountry","customersStore","phoneError","setPhoneError","value","message","currentPhone","setCurrentPhone","contentExceedsMaxHeight","setContentExceedsMaxHeight","currentPrefix","setCurrentPrefix","getCountryPhonePrefix","doingRequest","alertMessage","ui","defaultColor","defaultColorBorder","mainColorBorder","validatePhone","prefix","isPhoneNumberValid","changeStoreField","current","loadedPage","scrollTo","has_shipping_methods","pickup_points","changeShippingOption","pickUpContainer","document","getElementById","scrollHeight","clientHeight","scrollIntoView","info_msg","errorsList","Object","keys","errors","currentElement","behavior","block","focus","errorMsgCallback","useCallback","node","setErrors","setFieldInformation","field","shipping_ids","saveShippingOption","save_shipping_option","fulfillingPickupPoint","find","point","newErrors","assign","setCustomField","elementId","custom_field_id","area","setCustomFieldInformation","callUpdateCountry","update_country","updateCountry","loginFormOpen","setLoginFormOpen","passwordFormOpen","setPasswordFormOpen","setEmail","password","setPassword","loginAlertMessage","setLoginAlertMessage","resetPasswordInfoMessage","setResetPasswordInfoMessage","resetPasswordErrorMessage","setResetPasswordErrorMessage","pickupLocationsHaveCoordinates","every","customStyles","isError","control","base","borderRadius","fontSize","border","backgroundColor","placeholder","dropdownIndicator","indicatorSeparator","display","valueContainer","option","isSelected","isFocused","text_color","cursor","handleKeyDown","radioId","code","preventDefault","radio","ContactInformation","accepts_marketing","custom_fields","contact","justifyContent","alignItems","paddingBottom","vertical","main_color_dark","customers_enabled","logged_in","onClick","gap","UserCircle","size","weight","href","logout","customer_id","Alert","closeAlert","htmlFor","required","disabled","onChange","e","target","ArrowLeft","post","login_at_checkout","customer","response_json","responseType","responseMessage","fetchDataInformation","fontWeight","main_buttons_text_color","LoadingIcon","isInsideButton","get","reset_password","MailCheck","domains","topLevelDomains","suggestion","test","isValidEmail","saveEmail","save_email","dispatchSaveEmail","autoComplete","full","FontAwesomeIcon","faCircleExclamation","paddingRight","fixedWidth","CustomFieldList","customFields","custom","PhoneNumber","phone_enabled","PhoneInput","isInformationContent","flagId","flagValue","getPhonePrefixCountry","flagPlaceholder","onFlagChange","phoneValue","phoneId","phonePlaceholder","phone_required","onNumberChange","number","phoneEmpty","AcceptsMarketing","CustomField","checked","dangerouslySetInnerHTML","__html","DOMPurify","accepts_marketing_text","ADD_ATTR","ShippingOptions","tabIndex","onKeyDown","overflow","accentColor","colorScheme","lineHeight","ChoosePlace","paddingTop","borderTop","borderBottom","borderWidth","borderColor","PickupLocationsMap","pick_up","maxHeight","overflowY","pickup_point","i","selected_method","isNextMethod","findIndex","methodOptionClass","borderLeft","borderRight","Tooltip","changePickupPointFields","pickup_point_name","complement","municipality","x","join","AdditionalInformation","additional_information","PickUp","setFieldBilling","surname","countries","show_billing_address_on_store_pickup","Select","styles","classNamePrefix","searchable","row","NoPickupsAndNoShippingMethods","Digital","PhysicalProducts","AddressForm","regions","municipalities","request_geolocation","show_estimate_dates","phone_prefix","callUpdateLocations","postal","update_locations","updateLocations","callUpdateRegion","update_region","updateRegion","addressAutofill","address_autofill","callAddressAutofill","systemFields","country_calling_codes","is_mobile","ShowOrderSummary","toggleSummary","active","ref","closeAlertMessage","stripePubKey","have_custom_fields","stripe_payment_express","show_billing_address_on_digital_products","other","Header","page","NavigationFooter","saveData","validationData","allCustomFields","shippingCustomFields","otherCustomFields","contactCustomFields","concat","validations","updatedData","addCustomFieldsValidation","InformationValidation","results","ValidateForm","emailValidationResults","validate_email","email_valid","email_validation_message","validate","save_information","billing_same_as_shipping","save_info_pickup","previewMode","URLSearchParams","search","saveInformation"],"sourceRoot":""}