{"version":3,"file":"js/9507-40af7c1f22ffb4135da1.js","mappings":"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","sources":["webpack:///./app/javascript/components/OrderForm/Buttons.jsx","webpack:///./app/javascript/components/OrderForm/ContactForm.jsx","webpack:///./app/javascript/components/OrderForm/InfoForm.jsx","webpack:///./app/javascript/components/OrderForm/ShowCaseForm.jsx","webpack:///./app/javascript/components/OrderForm/index.jsx","webpack:///./app/javascript/components/SharedComponents/TrustPilot.jsx","webpack:///./app/javascript/components/helpers/trovit_analitics.js"],"sourcesContent":["import React from 'react';\n\nimport { SvgIco } from '../SharedComponents/Icons';\nimport Loader from '../SharedComponents/Loader';\n\nimport './Buttons.sass';\n\n\nexport const ButtonCta = ({\n active,\n isDisabled,\n shouldSubmit,\n additionalClass,\n onClick,\n text,\n type,\n}) => {\n\n const buttonsTypeData = {\n infoButton: {\n mainText: I18n.t('apps.lb_showroom.detailed.order_form.info_button_one'),\n infoSentText: I18n.t('apps.lb_showroom.detailed.order_form.info_button_one_send'),\n },\n showButton: {\n mainText: I18n.t('apps.lb_showroom.detailed.order_form.info_button_two'),\n infoSentText: I18n.t('apps.lb_showroom.detailed.order_form.show_button_sent_ab_test'),\n },\n contactButton: {\n mainText: I18n.t('apps.lb_showroom.detailed.order_form.contact_button_one_ab_test'),\n infoSentText: I18n.t('apps.lb_showroom.detailed.order_form.contact_button_sent'),\n },\n };\n\n const classes = `order-form__button ${active && 'active'} ${\n additionalClass ? ' ' + additionalClass : ''\n }`;\n\n const buttonIcon =\n active\n ? <SvgIco name=\"check\" size={25} />\n : isDisabled\n ? <Loader size={18} left={7} top={15} />\n : null;\n\n const buttonText =\n text\n ? text\n : active\n ? buttonsTypeData[type].infoSentText\n : buttonsTypeData[type].mainText;\n\n return shouldSubmit ? (\n <button onClick={onClick} disabled={isDisabled} className={classes}>\n { buttonIcon }\n <span>{ buttonText }</span>\n </button>\n ) : (\n <div onClick={onClick} className={classes}>\n { buttonIcon }\n <span>{ buttonText }</span>\n </div>\n );\n};\n","import React, { Component } from 'react';\nimport { withFormik } from 'formik';\nimport Yup from 'yup';\n\nimport Client from '../../utils/Client';\nimport { validationPatterns } from '../../utils/validationPatterns';\nimport { ButtonCta } from './Buttons';\n\n// sent request when user onBlur input field in form\n// import { storeValidationFails } from '../../utils/FormHandler';\n\n\nclass Form extends Component {\n state = {\n subFormCollapsed: true,\n collapsibleWrapperFullHeight: null,\n collapsibleWrapperSubHeight: null,\n // showJeudanValidationErrorMessage: false,\n // jeudanReadMore: false,\n };\n\n componentDidMount() {\n if (this.formFields) {\n {\n /*\n todo: find a way to count this dynamically\n error block height(15px) * error blocks count(5) = 75\n */\n }\n this.setState({\n collapsibleWrapperFullHeight: 1000,\n collapsibleWrapperSubHeight:\n this.formFields.clientHeight - this.subFrom.clientHeight,\n });\n }\n }\n\n uncollapseSubForm = () => {\n this.state.subFormCollapsed && this.setState({ subFormCollapsed: false });\n };\n\n handleFieldBlur = (e) => {\n this.props.handleBlur(e);\n this.props.disableArrowWhenFocusInput\n ? this.props.disableArrowWhenFocusInput(false)\n : null;\n // storeValidationFails(this, 'provider_message');\n };\n\n // openReadMoreJeudan = () => this.setState({ jeudanReadMore: true });\n\n render() {\n const {\n values,\n touched,\n errors,\n handleChange,\n contactOrdered,\n isSubmittingOrder,\n buttonId,\n // isJeudan,\n handleSubmit,\n handleInputChange,\n setFieldValue,\n } = this.props;\n\n const {\n // jeudanReadMore,\n collapsibleWrapperSubHeight,\n collapsibleWrapperFullHeight,\n subFormCollapsed,\n } = this.state;\n\n const height = subFormCollapsed\n ? collapsibleWrapperSubHeight\n : collapsibleWrapperFullHeight;\n const submitOnBtnClick = !subFormCollapsed;\n const formHeight = { maxHeight: `${contactOrdered ? 0 : height - 5}px` };\n // const checkboxClasses = classNames('jeudan-policy-checkbox__wrapper', {\n // checked: values.jeudan_policy,\n // error: touched.jeudan_policy && errors.jeudan_policy,\n // });\n\n\n return (\n <div className=\"form-section\">\n <form onSubmit={handleSubmit} noValidate>\n {/* here we check does this field was filled by bot */}\n <input\n type=\"text\"\n name=\"fifth_element\"\n className=\"invisible\"\n value={values.fifth_element}\n onChange={handleChange}\n onFocus={this.uncollapseSubForm}\n onBlur={this.handleFieldBlur}\n />\n\n <div className=\"order-form__collapsible-wrapper form-collapsible-wrapper\">\n <div\n className=\"form-collapsible\"\n ref={(elem) => (this.formFields = elem)}\n style={formHeight}\n >\n <div className=\"input-wrapper\">\n <div className=\"form-group\">\n <input\n id=\"name\"\n type=\"text\"\n value={values.name}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.name !== '' ? 'not-empty' : 'empty'}\n ${\n touched.name\n ? errors.name\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.person_name',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.name && errors.name ? errors.name : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <input\n id=\"email\"\n type=\"email\"\n value={values.email}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n className={`form-control order-form__input\n ${values.email !== '' ? 'not-empty' : 'empty'}\n ${\n touched.email\n ? errors.email\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.email',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.email && errors.email ? errors.email : null}\n </div>\n </div>\n\n {subFormCollapsed && (\n <div className=\"form-group\">\n <textarea\n id=\"comment\"\n type=\"text\"\n resize=\"none\"\n value={values.comment}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n className={`form-control order-form__textarea\n ${values.comment !== '' ? 'not-empty' : 'empty'}\n ${\n touched.comment\n ? errors.comment\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.your_question',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.comment && errors.comment\n ? errors.comment\n : null}\n </div>\n </div>\n )}\n\n <div className=\"form-sub\" ref={(elem) => (this.subFrom = elem)}>\n <div className=\"form-group\">\n <input\n id=\"phone\"\n type=\"tel\"\n value={values.phone}\n onChange={(e) => {\n const value = e.target.value\n .trimStart()\n .replace(/\\s\\s+/g, ' ');\n setFieldValue('phone', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.phone !== '' ? 'not-empty' : 'empty'}\n ${\n touched.phone\n ? errors.phone\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.phone_number_order_form',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.phone && errors.phone ? errors.phone : null}\n </div>\n </div>\n <div className=\"form-group\">\n <input\n id=\"company\"\n type=\"text\"\n value={values.company}\n onChange={(e) => {\n const value = e.target.value\n .trimStart()\n .replace(/\\s\\s+/g, ' ');\n setFieldValue('company', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.company !== '' ? 'not-empty' : 'empty'}\n ${\n touched.company\n ? errors.company\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.company_name',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.company && errors.company\n ? errors.company\n : null}\n </div>\n </div>\n <div className=\"form-group\">\n <textarea\n id=\"comment\"\n type=\"text\"\n resize=\"none\"\n value={values.comment}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__textarea\n ${values.comment !== '' ? 'not-empty' : 'empty'}\n ${\n touched.comment\n ? errors.comment\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label disappear-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.your_question',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.comment && errors.comment\n ? errors.comment\n : null}\n </div>\n </div>\n\n {/*{ isJeudan && (*/}\n {/* <div className=\"form-group jeudan-policy-checkbox\">*/}\n {/* <div className={checkboxClasses}>*/}\n {/* <SvgIco name=\"check\" size={15} />*/}\n {/* <input*/}\n {/* name=\"jeudan_policy\"*/}\n {/* type=\"checkbox\"*/}\n {/* value={values.jeudan_policy}*/}\n {/* id=\"jeudan_policy\"*/}\n {/* onChange={handleChange}*/}\n {/* onBlur={this.handleFieldBlur}*/}\n {/* />*/}\n {/* <div className=\"jeudan-policy-checkbox__label\">*/}\n {/* {jeudanReadMore ? (*/}\n {/* <div*/}\n {/* dangerouslySetInnerHTML={{*/}\n {/* __html: I18n.t(*/}\n {/* 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_full',*/}\n {/* ),*/}\n {/* }}*/}\n {/* className=\"jeudan-policy-checkbox__label-content\"*/}\n {/* />*/}\n {/* ) : (*/}\n {/* <div>*/}\n {/* {I18n.t(*/}\n {/* 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_short',*/}\n {/* )}*/}\n {/* <span*/}\n {/* onClick={this.openReadMoreJeudan}*/}\n {/* className=\"jeudan-policy-checkbox__label-read-more-link\"*/}\n {/* >*/}\n {/* {I18n.t('generic.read_more')}.*/}\n {/* </span>*/}\n {/* </div>*/}\n {/* )}*/}\n {/* </div>*/}\n {/* </div>*/}\n {/* <div className=\"validation-message validation-message--jeudan\">*/}\n {/* {touched.jeudan_policy && errors.jeudan_policy*/}\n {/* ? errors.jeudan_policy*/}\n {/* : null}*/}\n {/* </div>*/}\n {/* </div>*/}\n {/*)}*/}\n </div>\n </div>\n </div>\n\n <div className=\"form-button-wrapper order-form__button-wrapper\">\n <ButtonCta\n active={contactOrdered}\n isDisabled={isSubmittingOrder}\n onClick={this.uncollapseSubForm}\n shouldSubmit={submitOnBtnClick}\n type={buttonId}\n />\n </div>\n </div>\n </form>\n </div>\n );\n }\n};\n\n\nconst { fifth_element, name, phone, email, company } = Client.getClientInfo();\nconst { nameI18n, emailI18n, companyI18n, phoneI18n, messageI18n } =\n Client.getI18nAttrNames();\nconst i18nRequiredKey =\n 'apps.lb_showroom.detailed.order_form.validation.field_required';\nconst i18nMinNumberKey =\n 'apps.lb_showroom.detailed.order_form.validation.min_number';\nconst i18nSymbolsLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 254 },\n);\nconst i18nSymbolsEmailLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 100 },\n);\nconst i18nAtLeast8Digits =\n 'apps.lb_showroom.detailed.order_form.validation.at_least_8_digits';\n\nconst ContactForm = withFormik({\n mapPropsToValues: (bag) => ({\n name,\n email,\n phone: phone ? phone : bag.userCountryPhoneCode,\n company,\n comment: '',\n fifth_element,\n // jeudan_policy: false,\n // isJeudan: bag.isJeudan,\n }),\n validationSchema: Yup.object().shape({\n fifth_element: Yup.string(),\n name: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.name,\n I18n.t('apps.lb_showroom.misc.scoped_form.name.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: nameI18n })),\n email: Yup.string()\n .matches(\n validationPatterns.symbolsEmailLimit,\n i18nSymbolsEmailLimitErrorMessage,\n )\n .email(\n I18n.t('apps.lb_showroom.detailed.order_form.validation.wrong_email'),\n )\n .required(I18n.t(i18nRequiredKey, { field: emailI18n })),\n company: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.company,\n I18n.t('apps.lb_showroom.misc.scoped_form.company.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: companyI18n })),\n phone: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .min(8, I18n.t(i18nMinNumberKey, { field: phoneI18n }))\n .matches(\n validationPatterns.phone,\n I18n.t('apps.lb_showroom.misc.scoped_form.phone.invalid'),\n )\n .test(\n 'minDigitsValidation',\n I18n.t(i18nAtLeast8Digits),\n function (value) {\n const { path, createError } = this;\n const phoneIsValid =\n value && value.replace(/[+\\-\\s()]/g, '').length >= 8;\n return (\n phoneIsValid ||\n !value ||\n createError({ path, message: I18n.t(i18nAtLeast8Digits) })\n );\n },\n )\n .required(I18n.t(i18nRequiredKey, { field: phoneI18n })),\n comment: Yup.string().required(\n I18n.t(i18nRequiredKey, { field: messageI18n }),\n ),\n // isJeudan: Yup.boolean(),\n // jeudan_policy: Yup.boolean().when('isJeudan', {\n // is: true,\n // then: Yup.boolean()\n // .required(\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // )\n // .oneOf(\n // [true],\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // ),\n // }),\n }),\n handleSubmit: (values, bag) => {\n Client.updateClientInfo(values);\n bag.props.submitHandler(values);\n },\n displayName: 'ContactForm', // helps with React DevTools\n})(Form);\n\nexport default ContactForm;\n","import React, { Component, Fragment } from 'react';\nimport { withFormik } from 'formik';\nimport Yup from 'yup';\n\nimport Client from '../../utils/Client';\nimport { validationPatterns } from '../../utils/validationPatterns';\nimport { SvgIco } from \"../SharedComponents/Icons\";\nimport Loader from \"../SharedComponents/Loader\";\n\n\nclass InfoForm extends Component {\n state = {\n subFormCollapsed: true,\n collapsibleWrapperFullHeight: null,\n collapsibleWrapperSubHeight: null,\n // jeudanReadMore: false,\n isShowingModal: false,\n };\n\n componentDidMount() {\n const subHeight = this.formFields.clientHeight - this.subFrom.clientHeight;\n\n this.setState({\n collapsibleWrapperFullHeight: 1000,\n collapsibleWrapperSubHeight: subHeight,\n });\n }\n\n uncollapseSubForm = () => {\n this.state.subFormCollapsed && this.setState({ subFormCollapsed: false });\n };\n\n handleFieldBlur = (e) => {\n this.props.handleBlur(e);\n this.props.disableArrowWhenFocusInput\n ? this.props.disableArrowWhenFocusInput(false)\n : null;\n // storeValidationFails(this, 'order');\n };\n\n // openReadMoreJeudan = () => this.setState({ jeudanReadMore: true });\n\n render() {\n const {\n values,\n touched,\n errors,\n handleChange,\n locationOrdered,\n isSubmittingOrder,\n // isJeudan,\n handleSubmit,\n buttonId,\n handleInputChange,\n setFieldValue,\n } = this.props;\n\n const {\n subFormCollapsed,\n collapsibleWrapperFullHeight,\n collapsibleWrapperSubHeight,\n // jeudanReadMore,\n } = this.state;\n\n const height = subFormCollapsed\n ? collapsibleWrapperSubHeight\n : collapsibleWrapperFullHeight;\n const maxHeight = { maxHeight: `${locationOrdered ? 0 : height}px` };\n // const checkboxClasses = classNames('jeudan-policy-checkbox__wrapper', {\n // checked: values.jeudan_policy,\n // error: touched.jeudan_policy && errors.jeudan_policy,\n // });\n\n\n const submitButtonContent =\n <Fragment>\n { locationOrdered && <SvgIco name=\"check\" size={25} /> }\n { isSubmittingOrder && <Loader size={18} left={7} top={15} /> }\n <span>\n { locationOrdered\n ? I18n.t('apps.lb_showroom.detailed.order_form.info_button_one_send')\n : I18n.t('apps.lb_showroom.detailed.order_form.info_button_one')\n }\n </span>\n </Fragment>;\n\n\n return (\n <div className=\"form-section\">\n <form onSubmit={handleSubmit} noValidate>\n {/* here we check does this field was filled by bot */}\n <input\n id=\"fifth_element\"\n type=\"text\"\n name=\"fifth_element\"\n className=\"invisible\"\n value={values.fifth_element}\n onPaste={handleChange}\n onChange={handleChange}\n onFocus={this.uncollapseSubForm}\n onBlur={this.handleFieldBlur}\n />\n\n <div className=\"order-form__collapsible-wrapper form-collapsible-wrapper\">\n <div\n className=\"form-collapsible\"\n ref={(elem) => (this.formFields = elem)}\n style={maxHeight}\n >\n <div className=\"input-wrapper\">\n <div className=\"form-group\">\n <input\n id=\"name\"\n type=\"text\"\n value={values.name}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => { this.uncollapseSubForm() }}\n className={`form-control order-form__input\n ${ values.name !== '' ? ' not-empty' : ' empty'}\n ${ touched.name ? (errors.name ? ' error' : ' is-valid order-input-valid') : ''}`\n }\n />\n\n <span className=\"floating-label\">\n { I18n.t('activemodel.attributes.provider_service_request.person_name') }*\n </span>\n\n <div className=\"validation-wrapper\" />\n\n <div className=\"validation-message\">\n { touched.name && errors.name ? errors.name : null }\n </div>\n </div>\n\n <div className=\"form-group\">\n <input\n id=\"email\"\n type=\"email\"\n value={values.email}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.email !== '' ? 'not-empty' : 'empty'}\n ${\n touched.email\n ? errors.email\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.email',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.email && errors.email ? errors.email : null}\n </div>\n </div>\n\n <div className=\"form-sub\" ref={(elem) => (this.subFrom = elem)}>\n <div className=\"form-group\">\n <input\n id=\"company\"\n type=\"text\"\n value={values.company}\n onChange={(e) => {\n const value = e.target.value.trimStart().replace(/\\s\\s+/g, ' ');\n\n setFieldValue('company', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.company !== '' ? 'not-empty' : 'empty'}\n ${\n touched.company\n ? errors.company\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.company_name',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.company && errors.company\n ? errors.company\n : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <input\n id=\"phone\"\n type=\"tel\"\n value={values.phone}\n onChange={(e) => {\n const value = e.target.value.trimStart().replace(/\\s\\s+/g, ' ');\n\n setFieldValue('phone', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.phone !== '' ? 'not-empty' : 'empty'}\n ${\n touched.phone\n ? errors.phone\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.phone_number_order_form',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.phone && errors.phone ? errors.phone : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <textarea\n id=\"comment\"\n type=\"text\"\n resize=\"none\"\n value={values.comment}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__textarea\n ${values.comment ? 'not-empty' : 'empty'}`}\n />\n <span className=\"floating-label disappear-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.your_question',\n )}{' '}\n (\n {I18n.t(\n 'activemodel.attributes.provider_service_request.your_option',\n )}\n )\n </span>\n <div className=\"validation-wrapper\" />\n </div>\n\n {/*{ isJeudan && (*/}\n {/* <div className=\"form-group jeudan-policy-checkbox\">*/}\n {/* <div className={checkboxClasses}>*/}\n {/* <input*/}\n {/* name=\"jeudan_policy\"*/}\n {/* type=\"checkbox\"*/}\n {/* value={values.jeudan_policy}*/}\n {/* id=\"jeudan_policy\"*/}\n {/* onChange={handleChange}*/}\n {/* onBlur={this.handleFieldBlur}*/}\n {/* />*/}\n {/* <div className=\"jeudan-policy-checkbox__label\">*/}\n {/* <SvgIco name=\"check\" size={15} />*/}\n {/* {jeudanReadMore ? (*/}\n {/* <div*/}\n {/* dangerouslySetInnerHTML={{*/}\n {/* __html: I18n.t(*/}\n {/* 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_full',*/}\n {/* ),*/}\n {/* }}*/}\n {/* className=\"jeudan-policy-checkbox__label-content\"*/}\n {/* />*/}\n {/* ) : (*/}\n {/* <div>*/}\n {/* {I18n.t(*/}\n {/* 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_short',*/}\n {/* )}*/}\n {/* <span*/}\n {/* onClick={this.openReadMoreJeudan}*/}\n {/* className=\"jeudan-policy-checkbox__label-read-more-link\"*/}\n {/* >*/}\n {/* {I18n.t('generic.read_more')}.*/}\n {/* </span>*/}\n {/* </div>*/}\n {/* )}*/}\n {/* </div>*/}\n {/* </div>*/}\n {/* <div className=\"validation-message validation-message--jeudan\">*/}\n {/* {touched.jeudan_policy && errors.jeudan_policy*/}\n {/* ? errors.jeudan_policy*/}\n {/* : null}*/}\n {/* </div>*/}\n {/* </div>*/}\n {/*)}*/}\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"form-button-wrapper order-form__button-wrapper\" id={buttonId}>\n <div>\n { !subFormCollapsed\n ?\n <button\n className={`order-form__button ${locationOrdered ? 'active' : '' }`}\n disabled={isSubmittingOrder}\n onClick={this.uncollapseSubForm}>\n { submitButtonContent }\n </button>\n :\n <div\n className={`order-form__button ${locationOrdered ? 'active' : '' }`}\n onClick={this.uncollapseSubForm}>\n { submitButtonContent }\n </div>\n }\n </div>\n </div>\n </form>\n </div>\n );\n }\n}\n\nconst { nameI18n, emailI18n, companyI18n, phoneI18n } =\n Client.getI18nAttrNames();\nconst i18nRequiredKey =\n 'apps.lb_showroom.detailed.order_form.validation.field_required';\nconst i18nMinNumberKey =\n 'apps.lb_showroom.detailed.order_form.validation.min_number';\nconst i18nSymbolsLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 254 },\n);\nconst i18nSymbolsEmailLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 100 },\n);\nconst i18nAtLeast8Digits =\n 'apps.lb_showroom.detailed.order_form.validation.at_least_8_digits';\n\nconst Form = withFormik({\n mapPropsToValues: (bag) => {\n const { fifth_element, name, phone, email, company, option_parking_lots } =\n Client.getClientInfo();\n return {\n name,\n email,\n phone: phone ? phone : bag.userCountryPhoneCode,\n company,\n option_parking_lots,\n fifth_element,\n // jeudan_policy: false,\n // isJeudan: bag.isJeudan,\n };\n },\n validationSchema: Yup.object().shape({\n fifth_element: Yup.string(),\n name: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.name,\n I18n.t('apps.lb_showroom.misc.scoped_form.name.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: nameI18n })),\n email: Yup.string()\n .matches(\n validationPatterns.symbolsEmailLimit,\n i18nSymbolsEmailLimitErrorMessage,\n )\n .email(\n I18n.t('apps.lb_showroom.detailed.order_form.validation.wrong_email'),\n )\n .required(I18n.t(i18nRequiredKey, { field: emailI18n })),\n company: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.company,\n I18n.t('apps.lb_showroom.misc.scoped_form.company.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: companyI18n })),\n phone: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .min(8, I18n.t(i18nMinNumberKey, { field: phoneI18n }))\n .matches(\n validationPatterns.phone,\n I18n.t('apps.lb_showroom.misc.scoped_form.phone.invalid'),\n )\n .test(\n 'minDigitsValidation',\n I18n.t(i18nAtLeast8Digits),\n function (value) {\n const { path, createError } = this;\n const phoneIsValid =\n value && value.replace(/[+\\-\\s()]/g, '').length >= 8;\n return (\n phoneIsValid ||\n !value ||\n createError({ path, message: I18n.t(i18nAtLeast8Digits) })\n );\n },\n )\n .required(I18n.t(i18nRequiredKey, { field: phoneI18n })),\n // isJeudan: Yup.boolean(),\n // jeudan_policy: Yup.boolean().when('isJeudan', {\n // is: true,\n // then: Yup.boolean()\n // .required(\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // )\n // .oneOf(\n // [true],\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // ),\n // }),\n }),\n handleSubmit: (values, bag) => {\n // const detailedAnalyticsLabel = 'DetailedView';\n\n // GoogleAnalytics.submitOrderAttempt(detailedAnalyticsLabel); // added analytics on form submit\n Client.updateClientInfo(values);\n bag.props.submitHandler(values);\n },\n displayName: 'InfoForm', // helps with React DevTools\n})(InfoForm);\n\nexport default Form;\n","import React, { Component } from 'react';\nimport { withFormik } from 'formik';\nimport Yup from 'yup';\nimport dayjs from 'dayjs';\n\nimport Client from '../../utils/Client';\nimport { validationPatterns } from '../../utils/validationPatterns';\nimport { ButtonCta } from './Buttons';\n\n\nclass ShowForm extends Component {\n state = {\n subFormCollapsed: true,\n collapsibleWrapperFullHeight: null,\n collapsibleWrapperSubHeight: null,\n // jeudanReadMore: false,\n };\n\n componentDidMount() {\n if (this.formFields) {\n {\n /*\n todo: find a way to count this dynamically\n error block height(15px) * error blocks count(3) = 45\n */\n }\n this.setState({\n collapsibleWrapperFullHeight: 1000,\n collapsibleWrapperSubHeight:\n this.formFields.clientHeight - this.subForm.clientHeight,\n });\n }\n }\n\n uncollapseSubForm = () => {\n this.state.subFormCollapsed && this.setState({ subFormCollapsed: false });\n };\n\n handleFieldBlur = (e) => {\n this.props.handleBlur(e);\n this.props.disableArrowWhenFocusInput\n ? this.props.disableArrowWhenFocusInput(false)\n : null;\n // storeValidationFails(this, 'book_showcase');\n };\n\n // openReadMoreJeudan = () => this.setState({ jeudanReadMore: true });\n\n render() {\n const {\n values,\n touched,\n errors,\n handleChange,\n showcaseOrdered,\n isSubmittingOrder,\n buttonId,\n // isJeudan,\n handleSubmit,\n handleInputChange,\n setFieldValue,\n } = this.props;\n\n const {\n subFormCollapsed,\n collapsibleWrapperSubHeight,\n collapsibleWrapperFullHeight,\n // jeudanReadMore,\n } = this.state;\n\n const height = subFormCollapsed\n ? collapsibleWrapperSubHeight\n : collapsibleWrapperFullHeight;\n const submitOnBtnClick = !this.state.subFormCollapsed;\n const formHeight = { maxHeight: `${showcaseOrdered ? 0 : height - 5}px` };\n // const checkboxClasses = classNames('jeudan-policy-checkbox__wrapper', {\n // checked: values.jeudan_policy,\n // error: touched.jeudan_policy && errors.jeudan_policy,\n // });\n\n\n return (\n <div className=\"form-section\">\n <form onSubmit={handleSubmit} noValidate>\n {/* here we check does this field was filled by bot */}\n <input\n type=\"text\"\n name=\"fifth_element\"\n className=\"invisible\"\n value={values.fifth_element}\n onChange={handleChange}\n onFocus={this.uncollapseSubForm}\n onBlur={this.handleFieldBlur}\n />\n\n <div className=\"order-form__collapsible-wrapper form-collapsible-wrapper\">\n <div\n className=\"form-collapsible\"\n ref={(elem) => (this.formFields = elem)}\n style={formHeight}\n >\n <div className=\"input-wrapper\">\n <div className=\"form-group\">\n <input\n id=\"name\"\n type=\"text\"\n value={values.name}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n className={`form-control order-form__input\n ${values.name !== '' ? 'not-empty' : 'empty'}\n ${\n touched.name\n ? errors.name\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.person_name',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.name && errors.name ? errors.name : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <input\n id=\"email\"\n type=\"email\"\n value={values.email}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n className={`form-control order-form__input\n ${values.email !== '' ? 'not-empty' : 'empty'}\n ${\n touched.email\n ? errors.email\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.email',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.email && errors.email ? errors.email : null}\n </div>\n </div>\n\n {this.state.subFormCollapsed ? (\n <div className=\"form-group\">\n <textarea\n id=\"comment\"\n type=\"text\"\n resize=\"none\"\n value={values.comment}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n onFocus={() => {\n this.uncollapseSubForm();\n }}\n className={`form-control order-form__textarea\n ${values.comment !== '' ? 'not-empty' : 'empty'}\n ${\n touched.comment\n ? errors.comment\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.propose_date_for_view',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.comment && errors.comment\n ? errors.comment\n : null}\n </div>\n </div>\n ) : null}\n\n <div className=\"form-sub\" ref={(elem) => (this.subForm = elem)}>\n <div className=\"form-group\">\n <input\n id=\"company\"\n type=\"text\"\n value={values.company}\n onChange={(e) => {\n const value = e.target.value\n .trimStart()\n .replace(/\\s\\s+/g, ' ');\n setFieldValue('company', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.company !== '' ? 'not-empty' : 'empty'}\n ${\n touched.company\n ? errors.company\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.company_name',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.company && errors.company\n ? errors.company\n : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <input\n id=\"phone\"\n type=\"tel\"\n value={values.phone}\n onChange={(e) => {\n const value = e.target.value\n .trimStart()\n .replace(/\\s\\s+/g, ' ');\n setFieldValue('phone', value);\n handleInputChange(e, value);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__input\n ${values.phone !== '' ? 'not-empty' : 'empty'}\n ${\n touched.phone\n ? errors.phone\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.phone_number_order_form',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.phone && errors.phone ? errors.phone : null}\n </div>\n </div>\n\n <div className=\"form-group\">\n <textarea\n id=\"comment\"\n type=\"text\"\n resize=\"none\"\n value={values.comment}\n onChange={(e) => {\n handleChange(e);\n handleInputChange(e);\n }}\n onBlur={this.handleFieldBlur}\n className={`form-control order-form__textarea\n ${values.comment !== '' ? 'not-empty' : 'empty'}\n ${\n touched.comment\n ? errors.comment\n ? 'error'\n : 'is-valid order-input-valid'\n : null\n }`}\n />\n <span className=\"floating-label disappear-label\">\n {I18n.t(\n 'activemodel.attributes.provider_service_request.propose_date_for_view',\n )}\n *\n </span>\n <div className=\"validation-wrapper\" />\n <div className=\"validation-message\">\n {touched.comment && errors.comment\n ? errors.comment\n : null}\n </div>\n </div>\n\n {/*{ isJeudan && (*/}\n {/* <div className=\"form-group jeudan-policy-checkbox\">*/}\n {/* <div className={checkboxClasses}>*/}\n {/* <SvgIco name=\"check\" size={15} />*/}\n {/* <input*/}\n {/* name=\"jeudan_policy\"*/}\n {/* type=\"checkbox\"*/}\n {/* value={values.jeudan_policy}*/}\n {/* id=\"jeudan_policy\"*/}\n {/* onChange={handleChange}*/}\n {/* onBlur={this.handleFieldBlur}*/}\n {/* />*/}\n {/* <div className=\"jeudan-policy-checkbox__label\">*/}\n {/* {jeudanReadMore*/}\n {/* ?*/}\n {/* <div className=\"jeudan-policy-checkbox__label-content\"*/}\n {/* dangerouslySetInnerHTML={{__html: I18n.t('activemodel.attributes.provider_service_request.jeudan_privacy_policy_full')}} />*/}\n {/* :*/}\n {/* <div>*/}\n {/* { I18n.t('activemodel.attributes.provider_service_request.jeudan_privacy_policy_short') }*/}\n {/* <span className=\"jeudan-policy-checkbox__label-read-more-link\"*/}\n {/* onClick={this.openReadMoreJeudan}>*/}\n {/* { I18n.t('generic.read_more') }.*/}\n {/* </span>*/}\n {/* </div>*/}\n {/* }*/}\n {/* </div>*/}\n {/* </div>*/}\n {/* <div className=\"validation-message validation-message--jeudan\">*/}\n {/* { touched.jeudan_policy && errors.jeudan_policy*/}\n {/* ? errors.jeudan_policy*/}\n {/* : null*/}\n {/* }*/}\n {/* </div>*/}\n {/* </div>*/}\n {/*)}*/}\n </div>\n </div>\n </div>\n\n <div className=\"form-button-wrapper order-form__button-wrapper\">\n <ButtonCta\n active={showcaseOrdered}\n isDisabled={isSubmittingOrder}\n onClick={this.uncollapseSubForm}\n shouldSubmit={submitOnBtnClick}\n type={buttonId}\n />\n </div>\n </div>\n </form>\n </div>\n );\n }\n}\n\nconst { fifth_element, name, email, company, phone } = Client.getClientInfo();\nconst { nameI18n, emailI18n, dateI18n, companyI18n, phoneI18n, messageI18n } =\n Client.getI18nAttrNames();\nconst i18nRequiredKey =\n 'apps.lb_showroom.detailed.order_form.validation.field_required';\nconst i18nMinNumberKey =\n 'apps.lb_showroom.detailed.order_form.validation.min_number';\nconst i18nSymbolsLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 254 },\n);\nconst i18nSymbolsEmailLimitErrorMessage = I18n.t(\n 'apps.lb_showroom.misc.scoped_form.max_symbols_limit',\n { symbols_limit: 100 },\n);\nconst i18nAtLeast8Digits =\n 'apps.lb_showroom.detailed.order_form.validation.at_least_8_digits';\n\nconst ShowCaseForm = withFormik({\n mapPropsToValues: (bag) => ({\n name,\n email,\n date: dayjs().format('DD-MM-YYYY HH:mm'),\n company,\n phone: phone ? phone : bag.userCountryPhoneCode,\n comment: '',\n fifth_element,\n // jeudan_policy: false,\n // isJeudan: bag.isJeudan,\n }),\n validationSchema: Yup.object().shape({\n fifth_element: Yup.string(),\n name: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.name,\n I18n.t('apps.lb_showroom.misc.scoped_form.name.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: nameI18n })),\n email: Yup.string()\n .matches(\n validationPatterns.symbolsEmailLimit,\n i18nSymbolsEmailLimitErrorMessage,\n )\n .email(\n I18n.t('apps.lb_showroom.detailed.order_form.validation.wrong_email'),\n )\n .required(I18n.t(i18nRequiredKey, { field: emailI18n })),\n company: Yup.string()\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.company,\n I18n.t('apps.lb_showroom.misc.scoped_form.company.invalid'),\n )\n .required(I18n.t(i18nRequiredKey, { field: companyI18n })),\n phone: Yup.string()\n .min(8, I18n.t(i18nMinNumberKey, { field: phoneI18n }))\n .matches(validationPatterns.symbolsLimit, i18nSymbolsLimitErrorMessage)\n .matches(\n validationPatterns.phone,\n I18n.t('apps.lb_showroom.misc.scoped_form.phone.invalid'),\n )\n .test(\n 'minDigitsValidation',\n I18n.t(i18nAtLeast8Digits),\n function (value) {\n const { path, createError } = this;\n const phoneIsValid =\n value && value.replace(/[+\\-\\s()]/g, '').length >= 8;\n return (\n phoneIsValid ||\n !value ||\n createError({ path, message: I18n.t(i18nAtLeast8Digits) })\n );\n },\n )\n .required(I18n.t(i18nRequiredKey, { field: phoneI18n })),\n date: Yup.string().required(I18n.t(i18nRequiredKey, { field: dateI18n })),\n comment: Yup.string().required(\n I18n.t(i18nRequiredKey, { field: messageI18n }),\n ),\n // isJeudan: Yup.boolean(),\n // jeudan_policy: Yup.boolean().when('isJeudan', {\n // is: true,\n // then: Yup.boolean()\n // .required(\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // )\n // .oneOf(\n // [true],\n // I18n.t(\n // 'activemodel.attributes.provider_service_request.jeudan_privacy_policy_error_message',\n // ),\n // ),\n // }),\n }),\n handleSubmit: (values, bag) => {\n const userInfo = { ...Client.getClientInfo(), ...values };\n\n Client.updateClientInfo(userInfo);\n bag.props.submitHandler(values);\n },\n displayName: 'ShowCaseForm', // helps with React DevTools\n})(ShowForm);\n\nexport default ShowCaseForm;\n","import React, { useContext, useEffect, useState, Fragment } from 'react';\n\nimport { Context } from \"../DetailedViewHeader\";\nimport { placeOrder, showCase, contactProvider, placeUncompletedOrder } from '../../utils/api';\nimport { camelizeName } from \"../../utils/helpers\";\nimport Storage from '../../utils/localStorage';\nimport Client from '../../utils/Client';\nimport { sendTrovitLead } from \"../helpers/trovit_analitics\";\nimport TrustBoxContainer from '../SharedComponents/TrustPilot';\nimport DataProtectionModal from '../SharedComponents/DataProtectionModal';\nimport { SvgIco } from '../SharedComponents/Icons';\nimport InfoForm from './InfoForm';\nimport ContactForm from './ContactForm';\nimport ShowCaseForm from './ShowCaseForm';\n\nimport './index.sass';\n\n\nconst OrderForm = () => {\n const {\n contactOrdered,\n contactPath,\n formAuthToken,\n // isJeudan,\n isScraped,\n locationId,\n locationOrdered,\n locationUuid,\n orderPath,\n section,\n selectedFormOption,\n setUpdateAskLandlord,\n setUpdateVirtualTourForm,\n showcaseOrdered,\n showCasePath,\n siteKey,\n setLocationOrdered,\n setContactOrdered,\n setShowcaseOrdered,\n switchSelectedOrderForm,\n trustpilotWidget,\n visitorToken,\n uncompletedOrderEnabled,\n uncompletedOrderValues,\n updateOrderForm,\n updateAskLandlord,\n userCountryPhoneCode,\n } = useContext(Context);\n\n const [isShowingModal, setIsShowingModal] = useState(false);\n const [isSubmittingInfo, setIsSubmittingInfo] = useState(false);\n const [isSubmittingContact, setIsSubmittingContact] = useState(false);\n const [isSubmittingShowCase, setIsSubmittingShowCase] = useState(false);\n const [formValuesUpd, setFormValuesUpd] = useState(false);\n const [contactInfo, setContactInfo] = useState({\n comment: '',\n company: '',\n email: '',\n name: '',\n phone: '',\n });\n\n const trustPilotLocale = siteKey === 'dk' ? 'da-DK' : 'en-US';\n\n\n useEffect(() => {\n uncompletedOrderValues && Client.updateClientInfo(uncompletedOrderValues);\n }, []);\n\n\n useEffect(() => {\n let formName = 'order';\n\n locationOrdered && !contactOrdered && (formName = 'provider_message');\n contactOrdered && locationOrdered && !showcaseOrdered && (formName = 'book_showcase');\n switchSelectedOrderForm(formName);\n\n }, [contactOrdered, locationOrdered, showcaseOrdered]);\n\n\n useEffect(() => {\n updateOrderForm && setLocationOrdered(true);\n }, [updateOrderForm]);\n\n\n useEffect(() => {\n updateAskLandlord && setContactOrdered(true);\n }, [updateAskLandlord]);\n\n\n const handleInputChange = (event, value) => {\n event.persist();\n setContactInfo(prevData => ({ ...prevData, [event.target.id]: value || event.target.value }));\n setFormValuesUpd(true);\n };\n\n const onMouseLeaveHandler = () => {\n if (uncompletedOrderEnabled && formValuesUpd) {\n setFormValuesUpd(false);\n processingUncompletedOrder();\n }\n };\n\n const processingUncompletedOrder = () => {\n const { name, email, company, phone, comment } = contactInfo;\n\n if (!uncompletedOrderValues && selectedFormOption === 'order' && name && validateEmail(email)) {\n const data = {\n name,\n company,\n email,\n phone,\n authenticity_token: formAuthToken,\n location_id: locationId,\n context: selectedFormOption,\n comment: comment || '',\n };\n\n placeUncompletedOrder('/lease/api/frontend/uncompleted_orders', data);\n }\n };\n\n const validateEmail = (email) => {\n /* eslint-disable max-len, no-useless-escape */\n const re =\n /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n /* eslint-disable max-len, no-useless-escape */\n\n return re.test(String(email).toLowerCase());\n };\n\n const placeOrderHandler = (params) => {\n params.locationId = locationUuid;\n params.user_token = visitorToken;\n params.name = camelizeName(params.name);\n setIsSubmittingInfo(true);\n\n placeOrder(orderPath, params)\n .then((response) => {\n sendTrovitLead(siteKey);\n setUpdateVirtualTourForm(true);\n Storage.updateOrderedItem();\n setLocationOrdered(true);\n setIsSubmittingInfo(false);\n window.location.href = response.data.confirmation_page_url;\n\n if (showcaseOrdered && contactOrdered) {\n switchSelectedOrderForm('order');\n return;\n }\n if (contactOrdered) {\n switchSelectedOrderForm('book_showcase');\n return;\n }\n if (isScraped) {\n switchSelectedOrderForm('order');\n return;\n }\n switchSelectedOrderForm('provider_message');\n })\n .catch((error) => console.error(error));\n };\n\n const contactFormHandler = (params) => {\n params.locationId = locationId;\n params.user_token = visitorToken;\n params.name = camelizeName(params.name);\n setIsSubmittingContact(true);\n\n contactProvider(contactPath, params)\n .then((response) => {\n sendTrovitLead(siteKey);\n setUpdateAskLandlord(true);\n Storage.updateContactItem();\n setContactOrdered(true);\n setIsSubmittingContact(false);\n window.location.href = response.data.confirmation_page_url;\n\n if (!locationOrdered || showcaseOrdered) {\n switchSelectedOrderForm('order');\n return;\n }\n switchSelectedOrderForm('book_showcase');\n })\n .catch((error) => {\n console.error(error);\n });\n };\n\n const showCaseHandle = (params) => {\n params.locationId = locationId;\n params.user_token = visitorToken;\n params.name = camelizeName(params.name);\n setIsSubmittingShowCase(true);\n\n showCase(showCasePath, params)\n .then((response) => {\n sendTrovitLead(siteKey);\n Storage.updateShowcaseItem();\n setShowcaseOrdered(true);\n setIsSubmittingShowCase(false);\n eval(response.data);\n\n if (locationOrdered && !contactOrdered) {\n switchSelectedOrderForm('provider_message');\n return;\n }\n switchSelectedOrderForm('order');\n })\n .catch((error) => {\n console.error(error);\n });\n };\n\n const handleOptionChange = (changeEvent) =>\n switchSelectedOrderForm(changeEvent.target.value);\n\n const openInfoModal = () =>\n setIsShowingModal(prevState => !prevState)\n\n\n return (\n <div className=\"order-form\">\n <div\n className=\"order-form__wrapper\"\n id=\"order-form-wrapper\"\n onMouseLeave={onMouseLeaveHandler}\n >\n <DataProtectionModal\n isShowingModal={isShowingModal}\n handleClose={() => setIsShowingModal(false)}\n title={I18n.t('apps.lb_showroom.detailed.order_form.data_protection')}\n content={I18n.t('apps.lb_showroom.detailed.order_form.modal.data_protection_body')}\n />\n\n <section className=\"order-form__section content-section\">\n <div className=\"order-form__title form-header__title\">\n { section !== 'lease'\n ? I18n.t('apps.lb_showroom.detailed.order_form.sale.heading')\n : I18n.t('apps.lb_showroom.detailed.order_form.heading')\n }\n </div>\n\n <p className=\"order-form__label\">\n { I18n.t('apps.entry_page.search_area.value_points.lease.one_full')}\n </p>\n\n <div className={`select-option-group${selectedFormOption === 'order' ? ' checked' : ''}`}>\n <input\n checked={selectedFormOption === 'order'}\n className=\"checkoption-input\"\n id=\"order\"\n name=\"react-tips\"\n onChange={handleOptionChange}\n type=\"radio\"\n value=\"order\"\n />\n <label htmlFor=\"order\" className=\"select-option\">\n <span className=\"option-checkmark\" />\n { I18n.t('apps.lb_showroom.detailed.order_form.info_button_one') }\n </label>\n </div>\n\n { !isScraped && (\n <Fragment>\n <div className={`select-option-group${ selectedFormOption === 'provider_message' ? ' checked' : ''}`}>\n <input\n checked={selectedFormOption === 'provider_message'}\n className=\"checkoption-input\"\n id=\"provider_message\"\n name=\"react-tips\"\n onChange={handleOptionChange}\n type=\"radio\"\n value=\"provider_message\"\n />\n <label htmlFor=\"provider_message\" className=\"select-option\">\n <span className=\"option-checkmark\" />\n { I18n.t('apps.lb_showroom.detailed.order_form.contact_button_one_ab_test') }\n </label>\n </div>\n\n <div className={`select-option-group${ selectedFormOption === 'book_showcase' ? ' checked' : '' }`}>\n <input\n checked={selectedFormOption === 'book_showcase'}\n className=\"checkoption-input-input\"\n id=\"book_showcase\"\n name=\"react-tips\"\n onChange={handleOptionChange}\n type=\"radio\"\n value=\"book_showcase\"\n />\n <label htmlFor=\"book_showcase\" className=\"select-option\">\n <span className=\"option-checkmark\" />\n { I18n.t('apps.lb_showroom.detailed.order_form.info_button_two_ab_test') }\n </label>\n </div>\n </Fragment>\n )}\n </section>\n\n <div id=\"contactFormScrollTarget\" />\n\n { selectedFormOption === 'order' && (\n <section className=\"order-form__section content-section\">\n <p className=\"order-form__description-under-options\">\n { section !== 'lease'\n ? I18n.t('apps.lb_showroom.detailed.order_form.sale.description_new')\n : I18n.t('apps.lb_showroom.detailed.order_form.description_new')\n }\n </p>\n </section>\n )}\n\n { selectedFormOption === 'provider_message' && (\n <section className=\"order-form__section content-section\">\n <p>\n { I18n.t('apps.lb_showroom.detailed.order_form.landlord_request') }\n </p>\n </section>\n ) }\n\n { selectedFormOption === 'book_showcase' && (\n <section className=\"order-form__section content-section\">\n <p>\n { I18n.t('apps.lb_showroom.detailed.order_form.specific_question')}\n </p>\n </section>\n )}\n\n\n { selectedFormOption === 'order' &&\n <div className=\"order-form__section-wrapper\">\n <InfoForm\n buttonId={'infoButton'}\n handleInputChange={handleInputChange}\n isSubmittingOrder={isSubmittingInfo}\n locationOrdered={locationOrdered}\n siteKey={siteKey}\n submitHandler={placeOrderHandler}\n userCountryPhoneCode={userCountryPhoneCode}\n // isJeudan={isJeudan}\n // visitorToken={visitorToken}\n />\n </div>\n }\n\n { !isScraped &&\n <div>\n { selectedFormOption === 'provider_message' &&\n <Fragment>\n <div className=\"order-form__section-wrapper\">\n <ContactForm\n buttonId={'contactButton'}\n contactOrdered={contactOrdered}\n handleInputChange={handleInputChange}\n isSubmittingOrder={isSubmittingContact}\n siteKey={siteKey}\n submitHandler={contactFormHandler}\n userCountryPhoneCode={userCountryPhoneCode}\n // isJeudan={isJeudan}\n // visitorToken={visitorToken}\n />\n </div>\n </Fragment>\n }\n\n { selectedFormOption === 'book_showcase' &&\n <div className=\"order-form__section-wrapper\">\n <ShowCaseForm\n buttonId={'showButton'}\n handleInputChange={handleInputChange}\n isSubmittingOrder={isSubmittingShowCase}\n showcaseOrdered={showcaseOrdered}\n siteKey={siteKey}\n submitHandler={showCaseHandle}\n userCountryPhoneCode={userCountryPhoneCode}\n // isJeudan={isJeudan}\n // visitorToken={visitorToken}\n />\n </div>}\n </div>\n }\n\n <div className=\"order-form__info-wrapper info-wrapper\">\n <SvgIco name=\"lock\" size={24} />\n <span className=\"info-label\" onClick={openInfoModal}>\n { I18n.t('apps.lb_showroom.detailed.order_form.data_protection') }\n </span>\n </div>\n </div>\n\n <TrustBoxContainer\n data={trustpilotWidget}\n locale={trustPilotLocale}\n />\n\n </div>\n );\n}\n\nexport default OrderForm;\n","import React, { useEffect, useState } from 'react';\n\nimport './TrustPilot.sass';\n\n\nconst TrustBoxContainer = ({ locale }) => {\n\n const [showWidget, setShowWidget] = useState(false);\n\n useEffect(() => {\n setTimeout(() => setShowWidget(true), 10000);\n }, []);\n\n const isDk = locale === 'da-DK';\n const url = `https://${ isDk ? 'dk' : 'www' }.trustpilot.com/review/www.lokalebasen.dk`;\n\n\n return (\n <div className={`trustpilot-wrapper ${showWidget ? 'visible' : ''}`}>\n <div\n id=\"trustbox\"\n className=\"trustpilot-widget\"\n data-locale={locale}\n data-template-id=\"5419b6a8b0d04a076446a9ad\"\n data-businessunit-id=\"4bdc4ef6000064000505acdd\"\n data-style-height=\"20px\"\n data-style-width=\"100%\"\n data-style-alignment=\"center\"\n data-theme=\"light\">\n <a href={url} target=\"_blank\" rel=\"noopener\">Trustpilot</a>\n </div>\n </div>\n )\n};\n\n\nexport default TrustBoxContainer;\n","export const sendTrovitLead = (siteKey) => {\n ('at ch de dk se').includes(siteKey) && ta && ta('send', 'lead');\n}\n"],"names":["ButtonCta","_ref","active","isDisabled","shouldSubmit","additionalClass","onClick","text","type","buttonsTypeData","infoButton","mainText","I18n","t","infoSentText","showButton","contactButton","classes","concat","buttonIcon","React","SvgIco","name","size","Loader","left","top","buttonText","disabled","className","Form","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","_defineProperty","_assertThisInitialized","subFormCollapsed","collapsibleWrapperFullHeight","collapsibleWrapperSubHeight","state","setState","e","props","handleBlur","disableArrowWhenFocusInput","_createClass","key","value","this","formFields","clientHeight","subFrom","_this2","_this$props","values","touched","errors","handleChange","contactOrdered","isSubmittingOrder","buttonId","handleSubmit","handleInputChange","setFieldValue","_this$state","submitOnBtnClick","formHeight","maxHeight","onSubmit","noValidate","fifth_element","onChange","onFocus","uncollapseSubForm","onBlur","handleFieldBlur","ref","elem","style","id","email","resize","comment","phone","target","trimStart","replace","company","Component","_Client$getClientInfo","Client","getClientInfo","_Client$getI18nAttrNa","getI18nAttrNames","nameI18n","emailI18n","companyI18n","phoneI18n","messageI18n","i18nRequiredKey","i18nSymbolsLimitErrorMessage","symbols_limit","i18nSymbolsEmailLimitErrorMessage","i18nAtLeast8Digits","ContactForm","withFormik","mapPropsToValues","bag","userCountryPhoneCode","validationSchema","Yup","shape","matches","validationPatterns","symbolsLimit","required","field","symbolsEmailLimit","min","test","path","createError","message","updateClientInfo","submitHandler","displayName","InfoForm","isShowingModal","subHeight","locationOrdered","submitButtonContent","Fragment","onPaste","option_parking_lots","ShowForm","subForm","showcaseOrdered","height","dateI18n","ShowCaseForm","date","dayjs","format","userInfo","_objectSpread","OrderForm","_useContext","useContext","Context","contactPath","formAuthToken","isScraped","locationId","locationUuid","orderPath","section","selectedFormOption","setUpdateAskLandlord","setUpdateVirtualTourForm","showCasePath","siteKey","setLocationOrdered","setContactOrdered","setShowcaseOrdered","switchSelectedOrderForm","trustpilotWidget","visitorToken","uncompletedOrderEnabled","uncompletedOrderValues","updateOrderForm","updateAskLandlord","_useState","useState","_useState2","_slicedToArray","setIsShowingModal","_useState3","_useState4","isSubmittingInfo","setIsSubmittingInfo","_useState5","_useState6","isSubmittingContact","setIsSubmittingContact","_useState7","_useState8","isSubmittingShowCase","setIsSubmittingShowCase","_useState9","_useState10","formValuesUpd","setFormValuesUpd","_useState11","_useState12","contactInfo","setContactInfo","trustPilotLocale","useEffect","formName","event","persist","prevData","onMouseLeaveHandler","processingUncompletedOrder","validateEmail","data","authenticity_token","location_id","context","placeUncompletedOrder","String","toLowerCase","placeOrderHandler","params","user_token","camelizeName","placeOrder","then","response","sendTrovitLead","Storage","updateOrderedItem","window","location","href","confirmation_page_url","catch","error","console","contactFormHandler","contactProvider","updateContactItem","showCaseHandle","showCase","updateShowcaseItem","eval","handleOptionChange","changeEvent","openInfoModal","prevState","onMouseLeave","DataProtectionModal","handleClose","title","content","checked","htmlFor","TrustBoxContainer","locale","showWidget","setShowWidget","setTimeout","url","rel","includes","ta"],"sourceRoot":""}