{"version":3,"sources":["webpack:///./app/components/CarImages/styles.scss?f75d","webpack:///./app/containers/Offer/constants.js","webpack:///./app/components/Quotation/messages.js","webpack:///./app/components/OfferInfo/assets/img/notes.svg","webpack:///./app/components/HorizontalFilter/constants.js","webpack:///./app/components/OfferServices/actions.js","webpack:///./app/components/Banners/offers.scss?862c","webpack:///./app/components/OfferChilds/constants.js","webpack:///./app/components/UIKit/Select/style.scss","webpack:///./app/components/OfferValue/styles.scss?1e84","webpack:///./app/components/UIKit/Buttons/Item/styles.scss","webpack:///./app/i18n.js","webpack:///./app/containers/Admin/constants.js","webpack:///./app/components/OfferInfo/assets/img/option.svg","webpack:///./app/components/CarQuote/selectors.js","webpack:///./app/components/CustomizeOffer/reducer.js","webpack:///./app/.htaccess","webpack:///./app/components/OfferChilds/styles.scss?98c9","webpack:///./app/components/TableWidget/index.js","webpack:///./app/containers/Offer/reducer.js","webpack:///./app/components/Header/styles.scss?6e60","webpack:///./app/utils/common.js","webpack:///./app/components/CatalogSearch/selectors.js","webpack:///./app/components/Banners/sponsor.scss?a88e","webpack:///./app/components/Alert/styles.scss?e265","webpack:///./app/components/Select/selectors.js","webpack:///./app/containers/CatalogEdit/reducer.js","webpack:///./app/components/OfferChilds/selectors.js","webpack:///./app/components/CustomerForm/fields.scss?209e","webpack:///./app/components/UIKit/List/styles.scss","webpack:///./app/components/HorizontalProvidersFilter/styles.scss?8398","webpack:////\"}},/\"faqs/\":[{/\"title/\":/\"Cos’è il Noleggio a Lungo Termine","webpack:///./app/components/DataWidget/index.js","webpack:///./app/components/UIKit/Buttons/Item/styles.scss?82f6","webpack:///./app/components/CarSelector/styles.scss?8d0a","webpack:///./app/components/CustomizeOffer/styles.scss","webpack:///./app/components/Forms/assets/img/user.svg","webpack:///./app/components/UIKit/Buttons/Action/styles.scss","webpack:///./app/containers/App/saga.js","webpack:///./app/utils/auth.js","webpack:///./app/components/UIKit/Section/styles.scss","webpack:///./app/components/NavBar/styles.scss?d750","webpack:///./app/components/Footer/styles.scss?dd09","webpack:///./app/containers/CatalogEdit/constants.js","webpack:///./app/components/OfferValue/reducer.js","webpack:///./app/components/SearchFilters/assets/close.svg","webpack:///./app/components/UIKit/Input/Select/styles.scss?eda4","webpack:///./app/components/HorizontalFilter/styles.scss","webpack:///./app/components/CarSelector/constants.js","webpack:///./app/components/OfferDetails/selector.scss?09ce","webpack:///./app/components/CarItemPreview/styles.scss?b9ba","webpack:///./app/components/UIKit/List/posts.scss?adec","webpack:///./app/components/UIKit/Select/clickableItemWithSelect.scss?b7c0","webpack:///./app/components/QuotationsSort/styles.scss","webpack:///./app/components/Modal/right.scss","webpack:///./app/components/OfferServices/reducer.js","webpack:///./app/components/CarImages/constants.js","webpack:///./app/components/PrescoringTool/trafficlights.js","webpack:///./app/components/UIKit/InteractiveList/style.scss?ecc4","webpack:///./app/components/QuotationsSort/styles.scss?6d12","webpack:///./app/components/UIKit/Select/selectOptions.scss","webpack:///./app/components/PrescoringTool/selectors.js","webpack:///./app/components/UIKit/Badge/style.scss","webpack:///./app/components/HorizontalFilter/selectors.js","webpack:///./app/components/CarItemsList/styles.scss","webpack:///./app/containers/Offers/styles.scss?e6b6","webpack:///./app/components/OfferInfo/assets/img/features.svg","webpack:///./app/components/UIKit/Select/clickableItem.scss?6c3e","webpack:///./app/components/UIKit/InteractiveList/item.scss","webpack:///./app/components/Section/index.js","webpack:///./app/components/CatalogSearch/reducer.js","webpack:///./app/components/DataWidget/styles.scss","webpack:///./app/components/TableWidget/styles.scss?b72e","webpack:///./app/components/OfferDetails/styles.scss?d1a7","webpack:///./app/components/UIKit/Image/styles.scss","webpack:///./app/components/CarItemPreview/styles.scss","webpack:///./app/components/List/styles.scss?2a05","webpack:///./app/components/UIKit/ItemBox/styles.scss?7099","webpack:///./app/components/CarSelector/styles.scss","webpack:///./app/components/UIKit/Buttons/Form/styles.scss?5511","webpack:///./app/components/UIKit/List/fee.js","webpack:///./app/components/Agent/styles.scss","webpack:///./app/components/CarItem/messages.js","webpack:///./app/components/CarItem/index.js","webpack:///./app/components/Loader/styles.scss","webpack:///./app/components/Search/styles.scss","webpack:///./app/components/Section/styles.scss","webpack:///./app/components/List/styles.scss","webpack:///./app/components/CarCreator/styles.scss?f87f","webpack:///./app/components/OfferPrice/styles.scss?189e","webpack:///./app/components/CarItemButtonBoard/styles.scss?acc3","webpack:///./app/components/UIKit/InteractiveList/item.scss?142b","webpack:///./app/components/Search/styles.scss?1a5e","webpack:///./app/components/UIKit/Sticky/bottom.scss?b09b","webpack:///./app/components/HorizontalFilter/assets/sort.svg","webpack:///./app/components/OfferPrice/styles.scss","webpack:///./app/containers/Quotations/selectors.js","webpack:///./app/components/UIKit/Input/Text/styles.scss?7b8b","webpack:///./app/components/UIKit/Select/item.scss","webpack:///./app/components/UIKit/List/assets/img/remove.svg","webpack:///./app/components/OfferPrice/sticky.scss","webpack:///./app/reducers.js","webpack:///./app/components/PrescoringTool/styles.scss","webpack:///./app/containers/Offers/styles.scss","webpack:///./app/components/Banners/sponsor.scss","webpack:///./app/components/CarCreator/styles.scss","webpack:///./app/components/Forms/styles.scss?3728","webpack:///./app/components/QuotationsSearch/styles.scss?f931","webpack:///./app/components/CustomizeOffer/constants.js","webpack:///./app/components/Select/styles.scss?79e0","webpack:///./app/components/Paginator/reducer.js","webpack:///./app/components/Alert/message.js","webpack:///./app/components/Chart/doughnut.js","webpack:///./app/components/Chart/configs.js","webpack:///./app/components/Chart/line.js","webpack:///./app/components/Select/saga.js","webpack:///./app/components/Select/modal.js","webpack:///./app/components/Select/actions.js","webpack:///./app/components/Agent/constants.js","webpack:///./app/components/Agent/reducer.js","webpack:///./app/components/Agent/actions.js","webpack:///./app/components/Agent/selectors.js","webpack:///./app/components/Agent/saga.js","webpack:///./app/components/Agent/details.js","webpack:///./app/components/Agent/item.js","webpack:///./app/components/List/agents.js","webpack:///./app/components/Select/index.js","webpack:///./app/components/TableWidget/quotations.js","webpack:///./app/components/Search/saga.js","webpack:///./app/components/PrescoringTool/filter.js","webpack:///./app/components/SearchFilters/badge.js","webpack:///./app/components/HorizontalFilter/saga.js","webpack:///./app/components/SearchFilters/messages.js","webpack:///./app/components/SearchFilters/choice.js","webpack:///./app/components/SearchFilters/multiBadge.js","webpack:///./app/components/SearchFilters/multiselect.js","webpack:///./app/components/SearchFilters/multiselectWithIcon.js","webpack:///./app/components/SearchFilters/multiselectWithSwitch.js","webpack:///./app/components/SearchFilters/rangeSlider.js","webpack:///./app/components/SearchFilters/select.js","webpack:///./app/components/SearchFilters/selectCollapsible.js","webpack:///./app/components/SearchFilters/slider.js","webpack:///./app/components/Search/index.js","webpack:///./app/components/HorizontalFilter/tags.js","webpack:///./app/components/HorizontalFilter/index.js","webpack:///./app/components/CatalogSearch/actions.js","webpack:///./app/components/HorizontalCatalogFilter/actions.js","webpack:///./app/components/CatalogSearch/saga.js","webpack:///./app/components/SearchCatalogFilters/selectCollapsible.js","webpack:///./app/components/SearchCatalogFilters/multiselect.js","webpack:///./app/components/SearchCatalogFilters/multiselectWithIcon.js","webpack:///./app/components/CatalogSearch/index.js","webpack:///./app/components/HorizontalCatalogFilter/saga.js","webpack:///./app/components/HorizontalCatalogFilter/tags.js","webpack:///./app/components/HorizontalCatalogFilter/index.js","webpack:///./app/components/Paginator/saga.js","webpack:///./app/components/Paginator/index.js","webpack:///./app/components/Paginator/quotations.js","webpack:///./app/components/Skeletons/carItem.js","webpack:///./app/components/Skeletons/carItemsList.js","webpack:///./app/components/Spinner/index.js","webpack:///./app/components/Forms/messages.js","webpack:///./app/components/Forms/constants.js","webpack:///./app/components/Forms/actions.js","webpack:///./app/components/CarQuote/constants.js","webpack:///./app/components/Forms/index.js","webpack:///./app/components/Modal/constants.js","webpack:///./app/components/Modal/reducer.js","webpack:///./app/components/Modal/saga.js","webpack:///./app/components/Modal/actions.js","webpack:///./app/components/Modal/selectors.js","webpack:///./app/components/Modal/right.js","webpack:///./app/components/Forms/customer.js","webpack:///./app/components/Forms/reducer.js","webpack:///./app/components/Forms/selectors.js","webpack:///./app/components/CarQuote/actions.js","webpack:///./app/components/Forms/saga.js","webpack:///./app/components/Forms/offer.js","webpack:///./app/components/OfferInfo/messages.js","webpack:///./app/components/OfferInfo/index.js","webpack:///./app/components/OfferPrice/messages.js","webpack:///./app/components/OfferPrice/index.js","webpack:///./app/components/Quotation/initializer.js","webpack:///./app/components/OfferPrice/sticky.js","webpack:///./app/components/OfferDetails/item.js","webpack:///./app/components/OfferDetails/messages.js","webpack:///./app/components/OfferDetails/constants.js","webpack:///./app/components/OfferDetails/reducer.js","webpack:///./app/components/OfferDetails/saga.js","webpack:///./app/components/OfferDetails/actions.js","webpack:///./app/components/OfferDetails/selectors.js","webpack:///./app/components/OfferDetails/selector.js","webpack:///./app/components/OfferDetails/index.js","webpack:///./app/components/OfferPrint/messages.js","webpack:///./app/components/OfferPrint/index.js","webpack:///./app/utils/request.js","webpack:///./app/components/Quotation/reducer-sidebar.js","webpack:///./app/components/Quotation/selectors-sidebar.js","webpack:///./app/components/Quotation/saga-sidebar.js","webpack:///./app/components/Quotation/actions-sidebar.js","webpack:///./app/components/Quotation/sidebar-buttons.js","webpack:///./app/components/Quotation/sidebar-preview.js","webpack:///./app/components/Quotation/saga.js","webpack:///./app/components/Quotation/form-customer.js","webpack:///./app/components/FormCustomerWrapper/constants.js","webpack:///./app/components/FormCustomerWrapper/reducer.js","webpack:///./app/components/FormCustomerWrapper/selectors.js","webpack:///./app/components/FormCustomerWrapper/index.js","webpack:///./app/components/FormCustomerWrapper/actions.js","webpack:///./app/components/Quotation/form-confirm.js","webpack:///./app/components/Quotation/form-documents.js","webpack:///./app/components/QuotationsSearch/messages.js","webpack:///./app/components/QuotationsSearch/index.js","webpack:///./app/components/QuotationsSort/messages.js","webpack:///./app/components/QuotationsSort/index.js","webpack:///./app/components/CarItemPreview/index.js","webpack:///./app/components/CarItemButtonBoard/messages.js","webpack:///./app/components/CarItemButtonBoard/index.js","webpack:///./app/components/CarSelector/messages.js","webpack:///./app/components/CarSelector/brand.js","webpack:///./app/components/CarSelector/model.js","webpack:///./app/components/CarSelector/version.js","webpack:///./app/components/CarCreator/constants.js","webpack:///./app/components/CarCreator/messages.js","webpack:///./app/components/CarCreator/reducer.js","webpack:///./app/components/CarCreator/selectors.js","webpack:///./app/components/CarCreator/saga.js","webpack:///./app/components/CarCreator/actions.js","webpack:///./app/components/CarCreator/index.js","webpack:///./app/components/CarSelector/car.js","webpack:///./app/components/CarSelector/index.js","webpack:///./app/components/CarImages/actions.js","webpack:///./app/components/CarImages/saga.js","webpack:///./app/components/CarImages/index.js","webpack:///./app/components/OfferValue/messages.js","webpack:///./app/components/OfferValue/saga.js","webpack:///./app/containers/App/utils/validator.js","webpack:///./app/components/OfferValue/index.js","webpack:///./app/components/OfferServices/messages.js","webpack:///./app/components/OfferServices/saga.js","webpack:///./app/components/OfferServices/index.js","webpack:///./app/components/OfferChilds/saga.js","webpack:///./app/components/OfferChilds/withReducer.js","webpack:///./app/components/OfferChilds/messages.js","webpack:///./app/components/OfferChilds/item.js","webpack:///./app/components/OfferChilds/index.js","webpack:///./app/components/CustomizeOffer/messages.js","webpack:///./app/components/CustomizeOffer/index.js","webpack:///./app/components/RequestOffer/messages.js","webpack:///./app/components/RequestOffer/index.js","webpack:///./app/components/Banners/messages.js","webpack:///./app/components/Banners/sponsor.js","webpack:///./app/components/CustomerForm/messages.js","webpack:///./app/components/CustomerForm/fields.js","webpack:///./app/components/OfferForm/messages.js","webpack:///./app/components/OfferForm/fields.js","webpack:///./app/components/Tracking/index.js","webpack:///./app/components/Profile/member-item.js","webpack:///./app/components/Profile/side-column.js","webpack:///./app/components/Profile/form-profile.js","webpack:///./app/components/Profile/form-password.js","webpack:///./app/components/Profile/form-api-key.js","webpack:///./app/components/Profile/form-rebrand.js","webpack:///./app/components/HorizontalProvidersFilter/index.js","webpack:///./app/components/HorizontalProvidersFilter/constants.js","webpack:///./app/components/HorizontalProductsFilter/index.js","webpack:///./app/components/HorizontalProductsFilter/constants.js","webpack:///./app/components/Account/activation.js","webpack:///./app/components/index.js","webpack:///./app/components/UIKit/Buttons/Action/styles.scss?8cb3","webpack:///./app/components/Chart/styles.scss","webpack:///./app/components/OfferServices/styles.scss","webpack:///./app/containers/LanguageProvider/constants.js","webpack:///./app/containers/LanguageProvider/reducer.js","webpack:///./app/utils/prescoringTool.js","webpack:///./app/components/UIKit/Input/File/styles.scss?72fc","webpack:///./app/components/UIKit/Input/Slider/index.js","webpack:///./app/components/CustomizeOffer/priceMapParser.js","webpack:///./app/components/CustomizeOffer/selectors.js","webpack:///./app/components/Paginator/styles.scss?6784","webpack:///./app/containers/Offer/actions.js","webpack:///./app/containers/Quotation/saga.js","webpack:///./app/components/SearchFilters/badgeStyles.scss?0888","webpack:///./app/components/Forms/styles.scss","webpack:///./app/components/UIKit/List/simplePost.scss?f41e","webpack:///./app/containers/Offer/selectors.js","webpack:///./app/components/UIKit/List/styles.scss?6f32","webpack:///./app/components/UIKit/List/collapse.scss","webpack:///./app/components/OfferValue/styles.scss","webpack:///./app/components/UIKit/Label/styles.scss?724b","webpack:///./app/components/Forms/offer.scss","webpack:///./app/components/HorizontalCatalogFilter/styles.scss","webpack:///./app/containers/Quotations/reducer.js","webpack:///./app/components/Quotation/selectors.js","webpack:///./app/components/Forms/offer.scss?f11f","webpack:///./app/utils/history.js","webpack:///./app/components/Paginator/actions.js","webpack:///./app/components/PrescoringTool/saga.js","webpack:///./app/components/UIKit/Input/Slider/styles.scss?486d","webpack:///./app/components/CatalogSearch/styles.scss","webpack:///./app/components/Section/styles.scss?188f","webpack:///./app/components/OfferInfo/assets/img/tools.svg","webpack:///./app/components/SearchFilters/styles.scss","webpack:///./app/components/HorizontalProvidersFilter/styles.scss","webpack:///./app/components/CarItemsList/styles.scss?7e5f","webpack:///./app/components/OfferChilds/item.scss?e12d","webpack:///./app/containers/App/selectors.js","webpack:///./app/components/Select/styles.scss","webpack:///./app/components/OfferDetails/assets/img/distance.svg","webpack:///./app/components/UIKit/Image/styles.scss?bc01","webpack:///./app/components/OfferInfo/assets/img/money.svg","webpack:///./app/components/Select/constants.js","webpack:///./app/components/UIKit/Placeholders/ListItem.scss?f0e4","webpack:///./app/components/Quotation/styles.scss?d6e7","webpack:///./app/components/CarSelector/saga.js","webpack:///./app/components/CarSelector/withReducer.js","webpack:///./app/components/Skeletons/styles/carItemsList.scss","webpack:///./app/components/OfferForm/fields.scss?1df8","webpack:///./app/components/OfferPrice/sticky.scss?d40a","webpack:///./app/components/PrescoringTool/actions.js","webpack:///./app/components/RequestOffer/styles.scss?5b27","webpack:///./app/components/UIKit/Select/selectOptions.scss?6661","webpack:///./app/components/UIKit/List/messages.js","webpack:///./app/components/OfferInfo/assets/img/car.svg","webpack:///./app/components/RequestOffer/styles.scss","webpack:///./app/components/OfferPrint/styles.scss","webpack:///./app/components/CustomizeOffer/saga.js","webpack:///./app/components/CustomizeOffer/withReducer.js","webpack:///./app/containers/App/contractualCategories.js","webpack:///./app/components/Search/reducer.js","webpack:///./app/components/HorizontalCatalogFilter/reducer.js","webpack:///./app/components/UIKit/Tag/styles.scss?6a11","webpack:///./app/components/Forms/customer.scss","webpack:///./app/components/OfferDetails/assets/img/duration.svg","webpack:///./app/components/HorizontalProductsFilter/styles.scss?b3a3","webpack:///./app/components/OfferDetails/selector.scss","webpack:///./app/components/UIKit/Collapse/styles.scss","webpack:///./app/components/PrescoringTool/constants.js","webpack:///./app/components/CatalogSearch/styles.scss?e3cc","webpack:///./app/components/UIKit/Tag/styles.scss","webpack:///./app/containers/Quotations/actions.js","webpack:///./app/components/CarItem/styles.scss","webpack:///./app/components/Paginator/constants.js","webpack:///./app/components/UIKit/Badge/style.scss?5986","webpack:///./app/components/UIKit/List/simplePost.scss","webpack:///./node_modules/moment/dist/locale sync ^\\.\\/.*$","webpack:///./app/components/PrescoringTool/reducer.js","webpack:///./app/components/HorizontalFilter/reducer.js","webpack:///./app/components/Banners/offers.scss","webpack:///./app/components/SearchCatalogFilters/styles.scss","webpack:///./app/components/HorizontalFilter/actions.js","webpack:///./app/components/Skeletons/styles/carItem.scss","webpack:///./app/components/HorizontalCatalogFilter/assets/sort.svg","webpack:///./app/components/Skeletons/styles/carItemsList.scss?4aa1","webpack:///./app/components/Spinner/assets/img/lock.svg","webpack:///./app/components/OfferServices/selectors.js","webpack:///./app/containers/Account/Activate/Loadable.js","webpack:///./app/containers/Account/ActivateSso/Loadable.js","webpack:///./app/containers/LoginPage/Loadable.js","webpack:///./app/containers/Account/Sso/Loadable.js","webpack:///./app/containers/Account/ForgotPassword/Loadable.js","webpack:///./app/containers/Account/ResetPassword/Loadable.js","webpack:///./app/containers/NotFoundPage/Loadable.js","webpack:///./app/containers/WelcomePage/Loadable.js","webpack:///./app/containers/FaqPage/Loadable.js","webpack:///./app/containers/SupportPage/Loadable.js","webpack:///./app/containers/Dashboard/Loadable.js","webpack:///./app/containers/Offers/constants.js","webpack:///./app/containers/Offers/reducer.js","webpack:///./app/containers/Offers/actions.js","webpack:///./app/containers/Offers/saga.js","webpack:///./app/containers/Offers/messages.js","webpack:///./app/components/CarItemsList/index.js","webpack:///./app/containers/Offers/selectors.js","webpack:///./app/containers/Offers/index.js","webpack:///./app/containers/Offer/Loadable.js","webpack:///./app/containers/RequestOffer/Loadable.js","webpack:///./app/containers/Quotations/Loadable.js","webpack:///./app/containers/Quotation/Loadable.js","webpack:///./app/containers/Admin/Loadable.js","webpack:///./app/containers/AgentQuotations/Loadable.js","webpack:///./app/containers/Marketing/Loadable.js","webpack:///./app/containers/Customers/Loadable.js","webpack:///./app/containers/Customer/Loadable.js","webpack:///./app/containers/CatalogAdd/Loadable.js","webpack:///./app/containers/CatalogEdit/Loadable.js","webpack:///./app/components/NavBar/routes.js","webpack:///./app/containers/CatalogShow/Loadable.js","webpack:///./app/containers/ProvidersList/Loadable.js","webpack:///./app/containers/ProviderAdd/Loadable.js","webpack:///./app/containers/ProviderEdit/Loadable.js","webpack:///./app/containers/ProductsList/Loadable.js","webpack:///./app/containers/ProductAdd/Loadable.js","webpack:///./app/containers/ProductEdit/Loadable.js","webpack:///./app/containers/Profile/Loadable.js","webpack:///./app/components/NavBar/index.js","webpack:///./app/components/Header/index.js","webpack:///./app/components/Footer/messages.js","webpack:///./app/components/Footer/index.js","webpack:///./app/components/PrescoringTool/modal.js","webpack:///./app/components/PrescoringTool/widget.js","webpack:///./app/containers/App/private.js","webpack:///./app/containers/App/index.js","webpack:///./app/global-styles.js","webpack:///./app/containers/LanguageProvider/selectors.js","webpack:///./app/containers/LanguageProvider/index.js","webpack:///./app/configureStore.js","webpack:///./app/app.js","webpack:///./app/components/Paginator/styles.scss","webpack:///./app/components/Modal/right.scss?a65b","webpack:///./app/components/Forms/customer.scss?1670","webpack:///./app/components/OfferInfo/styles.scss","webpack:///./app/components/Loader/messages.js","webpack:///./app/components/Loader/index.js","webpack:///./app/components/SearchCatalogFilters/styles.scss?880f","webpack:///./app/components/OfferInfo/assets/img/engine.svg","webpack:///./app/components/UIKit/List/assets/img/add.svg","webpack:///./app/components/Quotation/actions.js","webpack:///./app/components/Profile/styles.scss","webpack:///./app/components/Search/selectors.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./app/components/CustomerForm/fields.scss","webpack:///./app/components/UIKit/Input/Slider/styles.scss","webpack:///./app/components/PrescoringTool/styles.scss?6cb2","webpack:///./app/components/UIKit/InteractiveList/assets/img/arrow.svg","webpack:///./app/components/CarSelector/brand.scss?f96a","webpack:///./app/components/UIKit/Sticky/bottom.scss","webpack:///./app/components/Agent/styles.scss?072d","webpack:///./app/containers/Quotation/reducer.js","webpack:///./app/components/CustomizeOffer/styles.scss?7ba2","webpack:///./app/components/UIKit/Select/item.scss?14f0","webpack:///./app/components/UIKit/List/posts.scss","webpack:///./app/images/favicon.ico","webpack:///./app/components/CatalogSearch/constants.js","webpack:///./app/containers/CatalogEdit/selectors.js","webpack:///./app/components/UIKit/List/collapse.scss?daac","webpack:///./app/components/UIKit/Section/styles.scss?0bf7","webpack:///./app/components/OfferChilds/reducer.js","webpack:///./app/components/UIKit/InteractiveList/style.scss","webpack:///./app/components/CarQuote/validator.js","webpack:///./app/containers/App/actions.js","webpack:///./app/containers/Quotation/selectors.js","webpack:///./app/components/SearchFilters/styles.scss?757c","webpack:///./app/components/OfferDetails/assets/img/edit.svg","webpack:///./app/components/SearchFilters/badgeStyles.scss","webpack:///./app/containers/Quotations/saga.js","webpack:///./app/containers/Quotations/withReducer.js","webpack:///./app/components/UIKit/Placeholders/ListItem.scss","webpack:///./app/components/UIKit/Input/Text/styles.scss","webpack:///./app/components/CarItemButtonBoard/styles.scss","webpack:///./app/utils/constants.js","webpack:///./app/utils/sagaInjectors.js","webpack:///./app/utils/injectSaga.js","webpack:///./app/containers/App/style.scss","webpack:///./app/components/UIKit/Select/clickableItem.scss","webpack:///./app/components/UIKit/Buttons/Action/small.js","webpack:///./app/components/UIKit/Buttons/Action/medium.js","webpack:///./app/components/UIKit/Label/offer.js","webpack:///./app/components/UIKit/ItemBox/index.js","webpack:///./app/components/UIKit/ItemBox/list.js","webpack:///./app/components/UIKit/List/index.js","webpack:///./app/components/UIKit/List/private_notes.js","webpack:///./app/components/UIKit/List/collapse.js","webpack:///./app/components/UIKit/Image/downloadable.js","webpack:///./app/components/UIKit/List/post.js","webpack:///./app/components/UIKit/List/simplePost.js","webpack:///./app/components/UIKit/InteractiveList/messages.js","webpack:///./app/components/UIKit/InteractiveList/item.js","webpack:///./app/components/UIKit/InteractiveList/items.js","webpack:///./app/components/UIKit/Placeholders/ListItem.js","webpack:///./app/components/UIKit/InteractiveList/index.js","webpack:///./app/components/UIKit/Collapse/item.js","webpack:///./app/components/UIKit/Buttons/Form/index.js","webpack:///./app/components/UIKit/Buttons/Form/submit.js","webpack:///./app/components/UIKit/Buttons/Form/cancel.js","webpack:///./app/components/UIKit/Buttons/Item/index.js","webpack:///./app/components/UIKit/Buttons/Toggle/index.js","webpack:///./app/components/UIKit/Dropdown/index.js","webpack:///./app/components/UIKit/Input/Text/index.js","webpack:///./app/components/UIKit/Input/Select/index.js","webpack:///./app/components/UIKit/Input/File/index.js","webpack:///./app/components/UIKit/Section/index.js","webpack:///./app/components/UIKit/Select/Item.js","webpack:///./app/components/UIKit/Select/SelectOption.js","webpack:///./app/components/UIKit/Select/ClickableItem.js","webpack:///./app/components/UIKit/Select/ClickableItemWithSelect.js","webpack:///./app/components/UIKit/Select/SelectOptions.js","webpack:///./app/components/UIKit/Banner/Top/index.js","webpack:///./app/components/UIKit/Badge/index.js","webpack:///./app/components/UIKit/Tag/index.js","webpack:///./app/components/UIKit/ExpiredOffer/index.js","webpack:///./app/components/UIKit/index.js","webpack:///./app/components/CarSelector/brand.scss","webpack:///./app/components/OfferDetails/assets/img/deposit.svg","webpack:///./app/components/OfferDetails/styles.scss","webpack:///./app/components/CarSelector/car.scss","webpack:///./app/components/OfferServices/constants.js","webpack:///./app/components/OfferInfo/assets/img/user.svg","webpack:///./app/components/QuotationsSort/assets/sort.svg","webpack:///./app/components/UIKit/Collapse/styles.scss?0559","webpack:///./app/components/DataWidget/styles.scss?d66e","webpack:///./app/components/CarItem/styles.scss?46d9","webpack:///./app/components/Loader/styles.scss?e3e5","webpack:///./app/components/UIKit/Input/Select/styles.scss","webpack:///./app/components/OfferChilds/styles.scss","webpack:///./app/components/OfferInfo/styles.scss?ba8b","webpack:///./app/components/CarImages/styles.scss","webpack:///./app/components/Alert/styles.scss","webpack:///./app/containers/Quotation/constants.js","webpack:///./app/components/OfferForm/fields.scss","webpack:///./app/containers/Quotation/messages.js","webpack:///./app/containers/App/reducer.js","webpack:///./app/components/UIKit/Banner/Top/styles.scss?21fe","webpack:///./app/components/Profile/messages.js","webpack:///./app/containers/Offer/saga.js","webpack:///./app/components/CustomizeOffer/actions.js","webpack:///./app/components/QuotationsSearch/styles.scss","webpack:///./app/styles/ant-components.js","webpack:///./app/components/Quotation/constants.js","webpack:///./app/utils/checkStore.js","webpack:///./app/containers/Quotations/constants.js","webpack:///./app/components/OfferServices/styles.scss?0e0b","webpack:///./app/components/HorizontalCatalogFilter/selectors.js","webpack:///./app/components/TableWidget/styles.scss","webpack:///./app/components/OfferValue/selectors.js","webpack:///./app/components/Profile/styles.scss?298d","webpack:///./app/components/UIKit/List/assets/img/check.svg","webpack:///./app/utils/FormattedMessageWithClass.js","webpack:///./app/containers/Quotation/actions.js","webpack:///./app/styles/customizations lazy ^\\.\\/.*\\/style\\.scss$ namespace object","webpack:///./app/components/Spinner/styles.scss","webpack:///./app/components/UIKit/ItemBox/styles.scss","webpack:///./app/components/CarSelector/car.scss?dc38","webpack:///./app/components/OfferPrint/assets/img/print.svg","webpack:///./app/components/HorizontalCatalogFilter/constants.js","webpack:///./app/components/Chart/styles.scss?be97","webpack:///./app/components/OfferInfo/assets/img/money-more.svg","webpack:///./app/components/NavBar/styles.scss","webpack:///./app/utils/reducerInjectors.js","webpack:///./app/utils/injectReducer.js","webpack:///./app/components/UIKit/Input/File/styles.scss","webpack:///./app/containers/Profile/constants.js","webpack:///./app/components/OfferPrint/styles.scss?0a13","webpack:///./app/components/UIKit/List/assets/img/arrow.svg","webpack:///./app/components/Search/constants.js","webpack:///./app/components/Paginator/selectors.js","webpack:///./app/components/OfferInfo/assets/img/sizes.svg","webpack:///./app/components/UIKit/Select/style.scss?d003","webpack:///./app/components/UIKit/Select/clickableItemWithSelect.scss","webpack:///./app/components/Quotation/reducer.js","webpack:///./app/components/Footer/styles.scss","webpack:///./app/components/HorizontalFilter/styles.scss?35c1","webpack:///./app/containers/App/style.scss?e44e","webpack:///./app/components/Header/styles.scss","webpack:///./app/components/UIKit/Buttons/Form/styles.scss","webpack:///./app/components/Select/reducer.js","webpack:///./app/components/CarSelector/reducer.js","webpack:///./app/components/CarSelector/actions.js","webpack:///./app/components/UIKit/Buttons/Toggle/styles.scss?4547","webpack:///./app/components/Quotation/styles.scss","webpack:///./app/components/UIKit/Banner/Top/styles.scss","webpack:///./app/components/UIKit/Label/styles.scss","webpack:///./app/components/OfferChilds/actions.js","webpack:///./app/components/OfferChilds/item.scss","webpack:///./app/components/OfferValue/actions.js","webpack:///./app/components/Search/actions.js","webpack:///./app/components/Spinner/styles.scss?d87e","webpack:///./app/components/CarSelector/selectors.js","webpack:///./app/components/HorizontalCatalogFilter/styles.scss?c034","webpack:///./app/components/Skeletons/styles/carItem.scss?1af5","webpack:///./app/containers/App/constants.js","webpack:///./app/components/HorizontalProductsFilter/styles.scss","webpack:///./app/components/UIKit/Buttons/Toggle/styles.scss","webpack:///./app/components/OfferValue/constants.js"],"names":["content","__webpack_require__","module","i","options","hmr","transform","insertInto","undefined","locals","exports","d","__webpack_exports__","GET_OFFER","GET_CHILD_OFFER","OFFER_RECEIVED","SEND_QUOTE","QUOTE_SENDED","react_intl__WEBPACK_IMPORTED_MODULE_0__","configs__WEBPACK_IMPORTED_MODULE_1__","configs__WEBPACK_IMPORTED_MODULE_1___default","n","scope","defineMessages","title","id","concat","defaultMessage","button","terms","confirm_terms","sidebar_recap_title_1","tagName","sidebar_recap_title_2","equippedOptionals","sidebar_recap_title_3","sidebar_recap_title_4","sidebar_recap_title_5","sidebar_recap_title_6","sidebar_recap_title_7","no_one","service_change_tires","service_car_replacement","service_copertura_assicurativa","service_pai","service_tutela_legale","service_assistenza_stradale","continue","ahead","back","backToOffer","alertError","serverError","contractualsCategories","firstName","lastName","fiscalCode","fiscalCodePersonal","fiscalCodeTooltip","fiscalCodeBusiness","fiscalCodeBusinessTooltip","fiscalCodeError","vatNumber","pec","sdiCode","businessName","sdi_code","phone","zipCode","city","notes","phoneNotValid","zipCodeNotValid","formConfirmDescription","documentsUploadDescription","vat","configs","messages","vatNotice","vatNoticeDescription","React","NotesIcon","props","createElement","key","defaultProps","version","x","y","viewBox","enableBackground","xmlSpace","default","SECTION_TITLE","SECTION_SINGLE_TITLE","SECTION_DESCRIPTION","SORTS_RECEIVED","UPDATE_SORT","TAGS_RECEIVED","SHOW_TAG","SHOW_ALL","HIDE_TAG","TOGGLE_TAGS_ENABLED","ADD_OPTION","REMOVE_OPTION","REMOVE_ALL","getServices","servicesLoaded","servicesError","servicesSelected","setProductServices","resetStore","_constants__WEBPACK_IMPORTED_MODULE_0__","type","GET_SERVICES","services","SERVICES_RECEIVED","error","SERVICES_ERROR","SERVICE_SELECTED","SET_OFFER_PRODUCT_SERVICES","RESET","SET_LOADING","STORE_CHILD_OFFER","UPDATE_CHILD_OFFER","EDIT_CHILD_OFFER","EDIT_CHILD_OFFER_END","ADD_CHILD_OFFER","REPLACE_CHILD_OFFER","DELETE_CHILD_OFFER","REMOVE_CHILD_OFFER","SET_CHILD_OFFERS","VALIDATE_USER_INPUT","SET_ERROR_MESSAGE","RESET_ERRORS","push","addLocaleData","require","itLocaleData","itTranslationMessages","formatTranslationMessages","locale","defaultFormattedMessages","Object","keys","reduce","formattedMessages","formattedMessage","assign","_defineProperty","translationMessages","it","appLocales","DEFAULT_LOCALE","GET_MEMBERS_STATISTICS","MEMBERS_STATISTICS_RECEIVED","SECTIONS_TITLES","TEAM_TITLE","DASHBOARD_DOUGHNUT_CHART_TITLE","ADMIN_WIDGET_TOTAL_QUOTES","ADMIN_WIDGET_NEW_CUSTOMERS","ADMIN_WIDGET_EFFECTIVE_PROFITS","AccessoriesIcon","height","width","makeSelectQuote","makeSelectQuotationCode","reselect__WEBPACK_IMPORTED_MODULE_0__","containers_Offer_reducer__WEBPACK_IMPORTED_MODULE_1__","selectQuote","state","get","initialState","createSelector","quoteState","immutable__WEBPACK_IMPORTED_MODULE_0__","_constants__WEBPACK_IMPORTED_MODULE_1__","fromJS","offer","reference","distance","duration","deposit","bundle","monthlyRate","sustainabilityIndex","sustainabilityMessage","fee","display","feesVisible","fees","accessories","colors","accessoriesCodes","colorCodes","offerSelectorReducer","arguments","length","action","OFFER_SELECTED","set","DISPLAY_OFFERS","ACCESSORIES_SELECTED","COLORS_SELECTED","ACCESSORIES_CODES_SELECTED","codes","ACCESSORIES_CODES_COLOR_SELECTED","OFFER_MONTHLY_RATE_CALCULATED","FEES_RESET","FEES_UPDATE","p","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","prop_types__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_1___default","reactstrap__WEBPACK_IMPORTED_MODULE_2__","tableWidget","thead","tbody","className","Table","map","prop","data","propTypes","PropTypes","array","isRequired","childOffer","quote","offersReducer","code","arrayContainsObj","item","filter","elem","removeObjFromArray","getObjByAttribute","attribute","value","results","removeObjByAttribute","Array","prototype","findLastIndex","callback","thisArg","this","call","makeSelectLoading","makeSelectParam","makeSelectLabels","makeSelectSelectedParams","_reducer__WEBPACK_IMPORTED_MODULE_1__","selectCatalogSearch","selectedState","toArray","name","label","obj","hasOwnProperty","makeSelectOption","makeSelectModalOption","selectOption","response","loading","redirect","catalogEditReducer","EDIT_OFFER","DELETE_OFFER","REQUEST_SUCCESS_RESPONSE","REQUEST_ERROR_RESPONSE","REDIRECT_TO_PAGE","makeSelectChildOffers","makeSelectHasError","makeSelectErrorMsg","makeSelectIsLoading","makeSelectChildEditing","selectOfferChilds","offerChildsState","alias","shortName","description","cdnHost","mainLogo","invertedLogo","footerLogo","appTitle","firstLoginNeedsConfirm","favicons","32","128","152","167","180","192","196","appUrl","prescoringService","url","auth","required","stepPDFdownloadable","pendo","enabled","chatbots","prescoring","faq","support","customer","business","finance","text","optionalsAndColors","cloneCatalogOffer","marketingSection","showRecapOfferProvider","showRecapOfferProduct","onlyGroupLeaderSections","quotationDocumentsUploadStrict","sentry","dsn","icons","style","main","secondary","gradient","from","to","darkGradient","tags","privati","piva","veichleTypes","bundlesDescription","app.components.PrescoringTool","widgetLabel","app.components.OfferPrice","price","app.components.OfferValue","app.components.OfferChilds","app.components.CarItem","app.components.CarQuote","app.components.Quotation","app.components.UIKit","feeDisclaimer","feeDisclaimerDescription","app.containers.Quotation","expiredOffer","faqs","dataWidget","unit","oldValue","_props$size","size","trend","Col","sm","md","toLocaleString","Math","round","string","any","number","UserIcon","fetchUser","_marked2","regeneratorRuntime","mark","logout","_marked3","updateProfile","_marked4","updatePassword","_marked5","requestApiKey","_marked6","addMember","_marked7","updateMember","_marked8","uploadLogo","_marked9","toggleMember","_marked10","fetchAgentMembers","_marked11","actionWatcher","_marked12","appWatcher","fetched","requestURL","parameters","_response","wrap","_context","prev","next","API_URL","method","headers","getRequestHeadersAsLogged","fetch","then","status","responseHandler","sent","put","setUser","t0","console","removeAuthToken","loginError","window","location","stop","_marked","_context2","BE_API","destroy","_ref","profile","requestBody","_response2","errors","_context3","select","selectIsLoading","setLoading","_objectSpread","body","JSON","stringify","getErrorsFromResponse","profileUpdatedError","_ref2","passwords","_response3","_context4","passwordUpdatedError","passwordUpdated","_response4","_context5","apiKeyFailed","apiKeyReceived","_ref3","agent","_response5","_context6","addMemberFailed","reload","_ref4","_response6","_context7","updateMemberFailed","_ref5","file","formData","_response7","_context8","FormData","append","getPlainRequestHeadersAsLogged","uploadLogoFailed","uploadLogoSuccess","_ref6","agentId","_response8","_context9","toggleMemberFailed","toggleMemberSuccess","_response9","_context10","loadedMembers","log","http_code","message","_context11","takeLatest","LOGOUT","LOAD_USER","UPDATE_PROFILE","UPDATE_PASSWORD","REQUEST_API_KEY","ADD_MEMBER","UPDATE_MEMBER","UPLOAD_LOGO","TOGGLE_MEMBER","GET_AGENT_MEMBERS","_context12","all","getAuthToken","parse","localStorage","getItem","setAuthToken","token","setItem","getRefreshToken","setRefreshToken","clear","getUsername","setUsername","username","setUserRole","role","hasAuthToken","Content-Type","Authorization","X-Refresh-Tkn","currentAccessToken","currentRefreshToken","responseAccessToken","responseRefreshToken","json","STORE_CHILD_OFFERS","containers_App_constants__WEBPACK_IMPORTED_MODULE_2__","DURATION_RANGE","min","DISTANCE_YEARS_RANGE","rightLabel","fastDelivery","deliveryTime","deliveryTimes","brokers","broker","products","product","hasError","errorMsg","offerValueReducer","SET_OFFER_MONTHLY_RATE","SET_OFFER_DURATION","SET_OFFER_NOTES","SET_OFFER_PRIVATE_NOTES","private_notes","SET_OFFER_REFERENCE","SET_OFFER_RIGHT_LABEL","SET_OFFER_DISTANCE","SET_OFFER_DEPOSIT","SET_OFFER_FAST_DELIVERY","SET_OFFER_DELIVERY_TIME","SET_OFFER_DELIVERY_TIMES","SET_OFFER_BROKERS","SET_OFFER_BROKER","SET_OFFER_PRODUCTS","SET_OFFER_PRODUCT","msg","CloseIcon","x1","y1","x2","y2","fill","strokeLinejoin","strokeWidth","color","stroke","cursor","GET_BRANDS","BRANDS_RECEIVED","BRANDS_ERROR","BRAND_SELECTED","MODELS_RECEIVED","MODELS_ERROR","MODEL_SELECTED","VERSIONS_RECEIVED","VERSIONS_ERROR","VERSION_SELECTED","CAR_RECEIVED","CAR_ERROR","GET_CAR_IMAGES","CAR_IMAGES_RECEIVED","CAR_IMAGES_ERROR","CAR_IMAGES_NEW","_OfferValue_constants__WEBPACK_IMPORTED_MODULE_2__","selected","productServices","UPLOAD_REQUEST","UPLOAD_SUCCESS","UPLOAD_PROGRESS","UPLOAD_FAILURE","DOWNLOAD_CAR_IMAGES_REQUEST","DOWNLOAD_CAR_IMAGES_SUCCESS","SET_MAIN","SET_MAIN_SUCCESS","DELETE","DELETE_ALL","DELETE_SUCCESS","DELETE_ALL_SUCCESS","antd__WEBPACK_IMPORTED_MODULE_1__","LightItem","onClick","disabled","visible","Rate","character","count","onChange","TrafficLights","some","selectedItem","enabledItem","makeSelectWidgetIsOpen","makeSelectModalIsOpen","makeSelectLogic","makeSelectCheckResponse","makeSelectCheckInputData","makeSelectSustainabilitySelected","makeSelectOfferLogic","makeSelectOfferCheckResponse","makeSelectOfferCheckInputData","prescoringSelector","prescoringSelectorState","toJS","logic","checkResponse","checkInput","makeSelectTags","makeSelectSelectedTags","makeSelectFiltersOption","makeSelectSort","makeSelectSelectedSort","makeSelectTagsEnabled","transformSelectedFiltersForQuesystring","selectFilters","selectedFilters","forEach","filterKey","filterValue","FeaturesIcon","section","Component","params","selectedParams","List","searchReducer","UPDATE_PARAMS","paramsList","getIn","param","_toConsumableArray","setIn","FILTERS_RECEIVED","filters","REMOVE_PARAM","paramName","RESET_PARAMS","GET_FILTERS","prescoringColors","Fee","_React$Component","_this","_classCallCheck","_possibleConstructorReturn","_getPrototypeOf","_assertThisInitialized","prevProps","_this$props","selectedFees","overCommission","setState","finalMonthlyRate","prevState","show","getTaxMultiplicationFactor","getDurationValueForStepCalculation","_this$props2","offerFees","onUpdateFees","__altered","toAddToTotalPrice","parseInt","finalPotentialProfitValue","getFinalPotentialProfitValueByFinalMonthlyRate","getValueToAddToTotalPrice","originalPotentialProfit","extraCommissionToIdeal","ceil","baseCommissionToIdeal","agentFee","originalMonthlyRate","parseFloat","toFixed","finalPotentialProfit","AwesomeDebouncePromise","onOverwriteMonthlyRateHandler","commissionDelta","extraCommission","monthlyRateLogic","monthlyRateLogicCalculation","replace","eval","getMonthlyRateLogic","newValue","_this$props3","has_extra_commission","has_over_commission","getValueToAddToMonthlyRate","getMinMonthlyRate","getMaxMonthlyRate","_this$props4","maxFeeValue","_this$props5","minFeeValue","taxMultiplicationFactor","_this$props6","has_under_commission","floor","getSliderMin","getSliderMax","multiplicationFactor","dividingFactor","_this$props7","sliderMin","sliderMax","prevCeilValue","steps","step","getStepColor","toAdd","ceilValue","stepValue","_this$props8","monthlyRateMax","depositRequired","thresholdMonthlyRateMax","sustainabilityIndexStep","getSustainabilityIndexByMonthlyRateAndDeposit","max","_this$props9","defaultFeeValue","sliderRef","createRef","_inherits","_createClass","_this$props10","icon","iconExtra","_this$state","getSliderSteps","sort","val1","val2","slice","commissioneOverwritten","baseFeeToShow","itemContent","finalPotentialProfitToShow","arrowIcon","toggle","dangerouslySetInnerHTML","__html","Fragment","FormattedMessage","Row","xl","lg","marginTop","InputSlider","range","sliderValue","onChangeOverCommissionValue","labelFormatter","tooltipVisible","withStepLabel","ref","InputNumber","marginLeft","onOverwriteMonthlyRateHandlerDebounced","suffix","bool","carValue","CarItem","secondLabel","image","brand","reference_code","model","target","suggested","highlighted","catalogSelected","tag","secondary_tag","stockAvailability","delivery_time_label","onStatusButton","onCloneButton","link","isCustom","allowedLabels","isOwned","firstLabel","find","allowedLabel","hasDropdownMenu","Card","cover","href","aria-label","src","alt","ToggleButton","dataAttribute","Tag","DropdownMenu","items","_extends","values","SortIcon","rx","ry","makeSelectQuotations","makeSelectQuotationsRequest","makeSelectQuotationsNumber","makeSelectQuotationsSort","makeSelectQuotationsFilters","makeSelectSelectedQuotationsSort","makeSelectQuotationsParameters","makeSelectPaginator","selectQuotations","quotesState","quotationsState","order","page","total","lastPage","itemsPerPage","currentPage","RemoveIcon","createReducer","injectedReducers","rootReducer","combineReducers","language","languageProviderReducer","connectRouter","history","mergeWithRouterState","paginatorReducer","SET_PAGE_NUMBER","pageNumber","UPDATE_PAGINATOR","GET_PAGE_NUMBER","GET_PAGINATOR","alertWithMessage","targetMessage","Link","doughnut","labels","chartData","numOr0","isNaN","datasets","backgroundColor","Doughnut","legend","animation","animateScale","cutoutPercentage","a","b","LineChar","dataset","scales","xAxes","ticks","fontSize","fontColor","gridLines","zeroLineColor","yAxes","beginAtZero","graphContainer","border","padding","record","year","lineTension","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","pointBorderColor","pointBackgroundColor","pointBorderWidth","pointHoverRadius","pointHoverBackgroundColor","pointHoverBorderColor","pointHoverBorderWidth","pointRadius","pointHitRadius","months","spanGaps","line","config","LineCharConfig","Line","styles","optionData","ModalSelect","_React$PureComponent","event","updateValue","PureComponent","selectedRange","marginBottom","handleChange","func","mapStateToProps","createStructuredSelector","withReducer","injectReducer","reducer","withSaga","injectSaga","saga","withConnect","connect","dispatch","option","UPDATE_MODAL_OPTION","compose","GET_AGENT","AGENT_RECEIVED","agentReducer","getAgent","selectAgent","makeSelectAgentCode","agentState","fetchAgent","agentsData","interval","request","Details","loadAgent","snapshot","featureAllowed","open","lost","won","SelectModal","DataWidget","effective_profit","previous_effective_profit","new_customers","DoughnutChart","featureSlug","Item","openModal","toggleModal","toUpperCase","Modal","isOpen","textTransform","toLowerCase","aria-hidden","ModalBody","AgentItemDetails","agents","roleName","AgentAsListItem","business_name","object","Select","htmlFor","UPDATE_OPTION","statusTypeMap","OPEN","WON","LOST","statusTextMap","quotationWidget","quotations","box","index","sustainability","qualified","category","crm_id","e","hasAssistant","quotationStep","hasAttachments","answers","isArray","proposal_id","toString","padStart","stepTitleIndex","stepTitle","stillValid","ExpiredTooltip","AlertIcon","agent_name","date","customer_name","car_name","commission","Steps","current","Step","FormattedMessageWithClass","step2_title","classnames","d-none d-xl-block","step2_title_short","d-none d-xl-none","d-lg-block","step3_title","step3_title_short","step4_title","step4_title_short","step5_title","print","printQuotation","fetchFilters","source","ownKeys","getOwnPropertySymbols","apply","sym","getOwnPropertyDescriptor","enumerable","arg","input","hint","_typeof","prim","Symbol","toPrimitive","res","TypeError","String","Number","_toPrimitive","_toPropertyKey","defineProperty","configurable","writable","requestParams","requestTags","resp","filtersLoaded","tagsLoaded","sortsLoaded","orders","unsetLoading","takeEvery","PrescoringFilter","sustainabilitySelected","updateSustainabilitySelected","newSustainabilitySelected","isSelected","sustainabilitySelectedItem","_","uniqueId","_this2","prescoringResponse","chance","onClickHandler","Badge","active","showIcon","chip","confirmMessageEdit","confirmMessageReset","Choice","hasConfirmMessage","confirm","removeOption","showTag","addOption","hideTag","selectedTags","isEnabled","Set","add","componentId","has","handleOnClick","MultiBadge","Multiselect","checked","delete","handleOnShow","float","Checkbox","handeOnChange","updateParam","MultiselectWithIcon","handeOnSelect","data-value","MultiselectWithSwitch","CustomInput","RangeSlider","_values","_slicedToArray","start","end","formatValueLabel","_values2","_this$getNumericValue2","getNumericValuesFromString","onAfterChangePending","_this$minMax","minMax","_value","selectedStart","selectedEnd","_current$value","_Object$values2","_this$props$value","blur","startValue","_this$minMax2","additionalSteps","onAfterChange","onStartChange","endValue","_this$minMax3","_this$state2","onEndChange","_props$value","_this$getNumericValue4","labelShort","withInput","addOn","_this$state3","_this$minMax4","aria-labelledby","formatter","parser","onStartChangeDebounced","onEndChangeDebounced","ariaLabel","handeOnClick","SelectCollapsible","Slider","currentValues","Search","contractualCategory","contractualCategoryFound","CONTRACTUAL_CATEGORIES","contractualCategoryItem","loadFilters","FILTERS_LABELS","fast_delivery","removeParam","qsFiltersSetted","activeFilters","qsFilters","queryString","search","arrayFormat","_arr","entries","_i","_arr$_i","FILTERS_ALLOWED","indexOf","FILTERS_AS_TAG","transformedParams","qs","qs2","cleanSearch","prescoringInputData","customerType","getCustomerTypeByContractualCategory","selectedParam","selectedTag","needFetchFilters","currentCustomerTypePrivati","currentCustomerTypePiva","monthlyRateMin","currentMonthlyRate","currentParam","monthly_rates","monthly_rate","depositMax","currentDeposit","deposits","newurl","protocol","host","pathname","pushState","path","Loader","brands","categories","distances","durations","fuels","gear","delivery_times","kwh_range","stocks","areas","getSelectedParamValue","paramValuesName","fastDeliverySelected","ChoiceFilter","RangeSliderFilter","onRangeChange","delivery_time","FILTERS_LABELS_SHORT","onFastDeliveryChange","MultiselectFilter","MultiselectWithIconFilter","SelectCollapsibleFilter","MultiselectWithSwitchFilter","noviceDriver","catalogo","getFilters","prescoringLabelTags","Tags","tagsNameWithBooleanValue","itemValues","itemValue","el","join","_itemValues","valueFrom","valueTo","includes","HorizontalFilter","clearParams","clearFilters","showTags","orderBy","filterDrawerIsOpen","selectedSort","onOrderChange","Button","openFilterDrawer","ghost","Drawer","placement","closable","onClose","closeFilterDrawer","onCancelClick","removeAllOptions","resetParams","showAllTags","sorts","valueName","valueLabel","gears","downloadOffers","handleDownloadList","DOWNLOAD_LIST","DOWNLOAD_OFFERS","Paginator","originalElement","setPage","paginator","Pagination","itemRender","pageItemRender","showTitle","pageSize","defaultCurrent","withQuotationReducer","SkeletonCarItem","Skeleton","CardBody","CardImg","carsTpl","xs","CarItemSkeletron","PRINT_OFFER","SEARCH_CUSTOMER","CUSTOMER_RECEIVED","RESET_RECEIVED","customerLoaded","CONTRACTUAL_CATEGORIES_TYPE_BUSINESS","CONTRACTUAL_CATEGORIES_TYPE_PRIVATE","CONTRACTUAL_CATEGORIES_TYPES_TAG_MAP","P.IVA","Privati","secondaryType","PrintForm","employee_category","newMonthlyRate","preventDefault","firstNameRef","Input","placeholder","onNameChange","autoComplete","categoryRef","onEmployeeCategoryChange","handelOnPrint","makeSelectOfferSelector","makeSelectMonthlyRateSelector","makeSelectServicesSelector","makeSelectAccessoriesCodesSelector","makeSelectColorCodesSelector","printOffer","OPEN_MODAL","CLOSE_MODAL","right","modalReducer","close","selectModal","rightSideModal","WrappedComponent","_class","closeModal","element","function","modalState","CustomerForm","first_name","last_name","email","trim","fiscal_code","zip_code","vat_number","selectedIndex","employee_type","employeetype","employee_secondary_type","secondaryemployeetype","note","isValid","Validator","condition","field","selectedOffer","submitting","selectedPrice","company_name","upload_documents","sendQuote","displayAssistant","scrollToValidate","scrollIntoView","behavior","scrollTo","lastNameRef","emailRef","phoneRef","postalRef","fiscalRef","vatRef","franchise_kasko","franchise_insurance","isComplete","submitted","redirectTo","valid","quotationCode","_this3","invalid","onFirstNameChange","onBlur","validate","onLastNameChange","onEmailChange","onPhoneChange","validatePhone","onFiscalCodeChange","onPostalCodeChange","data-employeetype","data-secondaryemployeetype","onBusinessNameChange","onVatNumberChange","notesRef","rows","onNotesChange","handleOnSendClick","resetCustomer","RightSideModal","withRouter","customerCode","formsReducer","selectForms","makeSelectPrintFrom","formState","makeSelectCustomerCode","quoteSended","searchCustomer","sendQuoteData","formsData","printer","process","blob","Date","download","getTime","fork","OfferForm","fiscalCodeHasError","isSearching","hasCustomer","FormGroup","carSpecs","engine","sizes","features","seller","equippedAccessories","optionalAccessories","info","OfferInfo","activeTab","serviceRef","techRef","accessoriesRef","financeRef","selectedOptions","selectedColor","bind","convertToGroupedList","handleOnOptionClick","handleOnColorClick","selectedColors","split","colorItem","selectedOption","setTimeout","optionItem","result","group","group_code","list","selectedAccessoriesCodes","selectAccessoriesCodes","selectAccessories","selectColorCodes","selectColors","selectMonthlyRate","updateFees","accessoriesList","_prescoringResponse","Tabs","animated","TabPane","forceRender","tab","ServicesIcon","ItemBoxList","CarIcon","EngineIcon","SizesIcon","SellerIcon","PrivateNotes","FeeList","MoneyIcon","MoneyMoreIcon","selectedAccessories","makeSelectAccessoriesSelector","selectedColorCodes","makeSelectFeesVisibileSelector","makeSelectFeesSelector","withOfferSelectorReducer","withOfferSelectorSaga","details","offerPrice","QuotationInitializer","storeOfferConfiguration","originalOffer","car","images","secondaryTag","objToStorage","selectedServices","makeSelectOriginalOffer","offerStickyPrice","Icon","AlertWithMessage","MAPPED_FIELDS","getAlertType","iconComponent","changeOfferTitle","changeDuration","changeDeposit","changeDistance","displayOffers","selectOfferSelector","OfferDetailsSelector","selectOffer","offers","_handleOnClick","_callee","newSelected","searchSelectedOffer","_x","_x2","_x3","DurationIcon","DepositIcon","DistanceIcon","OfferPrice","handleOnSaveClick","offerSelectorState","offerSelected","OfferDetails","childOffers","hasChildOffers","SmallActionButton","EditIcon","OfferPrint","onPrintClick","carName","MediumActionButton","Print","ModalHeader","quotation","quotationReducer","PRINT_QUOTATION","selectQuotation","quotationState","printQuote","quotationData","quoteId","proposal","currentStep","_useState2","useState","updatedProposal","setProposal","useEffect","has_pdf","eventSource","addedHeaders","EventSourcePolyfill","requestSSE","addEventListener","block","Tooltip","CardTitle","proposalId","isExpired","SidebarPreview","printAllowed","feeAllowed","car_features","fuel","descrizione_cambio","cilindrata","posti","porte","larghezza","lunghezza","altezza","bagagliaio","hp","kw","descrizione_trazione","consumo_medio","emissioni_co2","quotation_features","offer_color","carImage","quotationFee","originalCommissionToShow","original_commission","commissionToShow","Affix","descrizione_modello","bordered","bodyStyle","Meta","allestimento","avatar","Avatar","shape","Divider","price-description d-none d-md-none d-xl-none","text-left pl-2 d-xl-block","d-lg-none","SidebarButtons","Collapse","expandIconPosition","Panel","header","car_title","dataSource","renderItem","feature","service","min_quantity","max_quantity","quantity","theme","equippedOptional","accessory","saveProposal","updateQuotation","searchCustomerByFiscalCode","searchCustomerByVatNumber","makeSelectProposalId","saveProposalError","saveQuotationError","saveQuotationSuccess","setUpdated","makeSelectCustomerContractualCategory","makeSelectCustomer","customerFound","makeSelectCustomerVat","SAVE_PROPOSAL","UPDATE_QUOTATION","SEARCH_CUSTOMER_BY_FISCAL","SEARCH_CUSTOMER_BY_VAT","onNext","prescoringData","offerData","quotationExists","_this$props$customer","address","consent","inputData","additionalServices","searchCustomerByFiscal","vatNumberHasError","searchCustomerByVat","onInputChange","offerContractualCategoryType","contractualCategoryTypeSelected","selectContractualCategoryType","contractualCategories","mappedType","isBusinessEmployee","inputChanged","_CONTRACTUAL_CATEGORI","_CONTRACTUAL_CATEGORI2","_CONTRACTUAL_CATEGORI3","getContractualCategoriesByOfferTag","disabledSubmit","canSubmit","proposalErrors","hasErrors","proposalExists","contractualCategoriesSelectIsDisabled","contractualCategorySelected","criticalError","offerCustomUrl","Form","layout","Alert","gutter","onContractualCategoryTypeChange","validateStatus","defaultValue","FiscalCodeInput","disabledFields","Option","maxLength","TextArea","onConsentChange","defaultChecked","txt","handleSubmit","selectedContractualCategory","_this$props$customer2","leftLabel","contractual_category","help","makeSelectContractualCategoryTypeSelected","selectHasErrors","selectErrors","contractualCategoryType","SAVE_QUOTATION_SUCCESS","SAVE_QUOTATION_ERROR","SAVE_PROPOSAL_SUCCESS","SAVE_PROPOSAL_ERROR","CUSTOMER_FOUND","UPDATE_CUSTOMER_INPUT","RESET_CUSTOMER","SET_UPDATED","attachments","customerUpdatedInput","updated","found","QUOTATION_RECEIVED","CustomerFormWrapper","updateCustomerInput","customerToRender","ConfirmForm","isUpdated","resetUpdated","onPrev","handelSubmit","selectUpdated","DocumentsForm","uploadInfo","attachmentsGroupTarget","setUploadingPercent","percent","attachmentsGroupState","findIndex","attachmentsGroupItem","files","fileUploaded","filename","isUploading","quotationAttachments","attachment","uploadError","accordion","attachmentsGroup","showArrow","twoToneColor","Upload","accept","listType","multiple","showUploadList","file_type","handleUploadChange","isUploadingTarget","Progress","strokeColor","0%","100%","hasUploadedAttachments","attachmentGroup","makeSelectQuotattionAttachments","customer_field_label","customer_field_placeholder","fiscal_code_field_placeholder","quotation_id_field_placeholder","agent_id_field_placeholder","moment","monthsShort","weekdays","weekdaysShort","weekdaysMin","week","dow","doy","dateFormat","QuotationsSearch","canSearch","currentTarget","statusValue","startDate","format","endDate","datePickerEndOpen","valueOf","nextProps","query","quotation_id","agent_id","onSubmit","xxl","DatePicker","setStartDate","onOpenChange","handleStartOpenChange","disabledDate","disabledStartDate","allowClear","setEndDate","handleEndOpenChange","disabledEndDate","handleOnChange","handleSelectChange","Group","QuotationStatusFilterButton","statusFilter","handleSetStatusFilter","htmlType","searchQuotations","title_short","remove","download_list","download_list_short","QuotationsSort","filterName","removeFilter","downloadQuotations","showFiltersBadge","parameterName","parameterValue","onRemoveFilter","removeAll","offerCode","childs","preview","submit","cancel","clone","linkToOffer","ButtonBoard","onSave","canSave","onCancel","onDelete","onClone","models","versions","newCar","editCar","showCar","Brand","brandSelected","photo","FlexSection","children","SelectSearch","selectBrand","renderOption","renderBrand","makeSelectSelectedBrand","brandSlug","Model","modelSelected","endProductionYear","isLoading","selectModel","renderModel","makeSelectSelectedModel","modelName","modelYear","Version","versionSelected","selectVersion","resetCar","displayValue","position","top","renderVersion","renderValue","renderSelectedVersion","makeSelectSelectedVersion","carLoaded","UPDATE_DATA","SAVE_DATA","SAVE_SUCCESS_RESPONSE","SAVE_ERROR_RESPONSE","modello","neo_patentati","segmento","cavalli_fiscali","desc_motore","euro","carCreatorReducer","selectCarCreator","makeSelectCarCreator","carCreatorState","storeCar","carsData","carDefaultValues","carFields","CarCreator","modal","handleOnSubmit","handleOnCancel","handleOnInputChange","updateCar","existentCar","creatingCar","isCustomCar","carId","canEdit","ItemButton","osIcon","InputItem","carField","inputHasError","ModalFooter","FromCancelButton","FromSubmitButton","every","requiredFilled","_ref2$type","_ref2$options","_ref2$required","PropType","makeSelectCar","Car","buttonText","selectedBrand","selectedModel","is_custom","CarSelector","loadBrands","selectedModelName","isBrandSelected","isModelSelected","makeSelectBrands","makeSelectModels","makeSelectVersions","makeSelectSelectedModelName","getBrands","withCarSelectorReducer","withCarSelectorSaga","uploadSuccess","downloadImages","carBrand","carModel","imagesType","downloadImagesSuccess","setMain","imageId","setMainSuccess","deleteImage","deleteAll","deleteSuccess","deleteAllSuccess","imageIds","upload","deleteAllImage","carImages","idx","carImagesNew","newType","CarImages","photos","custom","mainImage","img","whichImagesSelected","customMainSelected","photoIndex","imgId","inputOpenFileRef","handleOnAddClick","onWhichImagesChange","onCustomMainChange","onDeleteClick","click","dataTransfer","offerId","downloadLoading","Radio","handleOnDownloadClick","inline-profile-tiles","mt-3","Lightbox","mainSrc","nextSrc","prevSrc","onCloseRequest","handleOnMoreImageClick","onMovePrevRequest","onMoveNextRequest","onChangeFile","bottom","buttonStyle","makeSelectImages","makeSelectOfferId","makeSelectDownloadIsLoading","uploadRequest","errorMessage","MONTHLY_RATE_RANGE","DEPOSIT_RANGE","fetchDeliveryTimes","fetchBrokers","fetchProducts","offerValueData","setDeliveryTimes","setBrokers","selectedBroker","makeSelectBroker","setProducts","LOAD_DELIVERY_TIMES","LOAD_BROKERS","LOAD_PRODUCTS","isInputNumberValid","OfferValue","monthlyRateError","depositError","durationError","distanceError","brokerError","handleOnMonthlyRateChange","handleOnDepositChange","handleOnDurationChange","handleOnDistanceChange","handleOnRightLabelChange","handleOnDeliveryTimeChange","handleOnBrokerChange","handleOnProductChange","handleOnFastDeliveryChange","handleOnNotesChange","handleOnPrivateNotesChange","handleOnReferenceChange","loadDeliveryTimes","loadBrokers","loadProducts","setMonthlyRate","validateInputs","setDeposit","_this4","setDuration","_this5","setDistance","setNotes","setPrivateNotes","setRightLabel","setDeliveryTime","setBroker","setProduct","_ref7","setFastDelivery","_ref8","setReference","right_label","referenceCode","_ref9","_ref10","labelCol","span","wrapperCol","brokersError","brokerCode","productsError","productId","minLength","monthYear","makeSelectMonthlyRate","makeSelectDistance","makeSelectDuration","makeSelectDeposit","makeSelectRightLabel","makeSelectFastDelivery","makeSelectDeliveryTime","makeSelectDeliveryTimes","makeSelectBrokers","makeSelectProducts","makeSelectProduct","makeSelectReference","makeSelectNotes","makeSelectPrivateNotes","fetchServices","fetchProductServices","servicesData","selectedProduct","OfferServices","loadServices","selectServices","serviceId","serviceIdx","selectedService","selectedSet","servicesPrices","servicesFranchises","franchise","has_price_map","servicePrice","servicesPrice","servicesFranchise","serviceTitle","serviceDescription","ItemBox","handelOnClick","included","handelOnPriceChange","stopPropagation","makeSelectServices","makeSelectSelectedServices","makeSelectProductServices","storeChildToOffer","updateChildOffer","deleteChildToOffer","catalogEditData","parentCode","_response$data$child","web_monthly_rate","makeSelectOfferCode","child","addChildOffer","setErrorMsg","newDeposit","newDuration","newDistance","replaceChildOffer","unsetEditMode","removeChildOffer","withOfferChildsReducer","withOfferChildsSaga","childsDisabled","unitDescription","actions","ChildItem","editMode","handleOnPriceChange","handleOnEditToggle","handleOnUpdate","handleOnDelete","handleOnAddChild","storeChildOffer","isCloningRow","resetErrors","setEditMode","deleteChildOffer","mainDeposit","mainDistance","mainDuration","mainMonthlyRate","canClone","inputClassName","inputHasErrors","autoFocus","oneOfType","OfferChilds","cloningId","cloning","clonedIdx","splice","cloningIdx","handleOnCloneToggle","makeSelectMainMonthlyRate","makeSelectMainDeposit","makeSelectMainDuration","makeSelectMainDistance","optionalsAndColorsLabel","optionalsAndColorsDescription","optionalsAndColorsBtn","fixed","CustomizeOffer","modalVisible","QuotationInitializerRef","bundles","selectedAdditionalServices","handleOnDurationClick","handleOnDistanceClick","handleOnDepositClick","handleOnBundleClick","handleOnServiceClick","handleOnRemoveAllClick","handleOnItemClick","initOffers","selectDepositsFromChilds","calculateFinalPrice","selectDurationsFromChilds","selectDistancesFromChilds","selectBundlesFromChilds","findChildOffer","durationsObj","distancesObj","bundlesLight","bundlesNotLight","bundlesObj","totAdditionalServicesCost","prevValue","additionalService","depositsObj","special_rate","special_price","_this6","resetFees","updateSustainabilityIndexesAfterHandlers","_this7","_this8","_this9","_this10","selectedAdditionalService","getSustainabilityMessageByMonthlyRateAndDeposit","_this11","sum","accessoriesPrice","colorsPrice","calculateNewMonthlyRate","selectedColorsCodes","short_description","standard_description","_this12","carType","hasVariations","getServicePriceByOfferParams","selectedOfferDerived","_prescoringResponse2","offerSustainabilityIndexOriginal","offerSustainabilityMessageOriginal","newIndex","convertToList","optionalsAndColorsSelected","selectedBundle","bundleDescriptionVehicleTypeIndex","offsetTop","OfferStickyPrice","SelectOption","withBorder","colSize","SelectOptions","InteractiveList","withPlaceholder","removeAllCallback","itemCallback","showModal","handleModalOk","footer","optionalAndColorGroup","carPower","makeSelectColorsSelector","RequestOffer","anchorTarget","anchorMessage","sponsor","bannerMsg","html","TopBanner","postalCode","CustomerFields","selectedMapped","contractualeCateogries","showInput","requiredData","pi","rs","Label","for","handleOnContractualCategoryChange","fiscalCodeLabel","isBusinessCategory","hidden","vehicleTypeLabel","vehicleTypeCar","vehicleTypeBusiness","vehicleTypeMinicar","OfferFields","fieldName","vehicleType","veichleType","fieldIsInvalid","showDynamicSelectors","inputNumberCallback","Tracking","creationDate","groupCode","groupName","groupType","apiKey","o","v","w","z","_q","m","async","getElementsByTagName","parentNode","insertBefore","document","getElementById","initialize","visitor","full_name","account","MemberItem","member","onOpenModal","onToggleMember","parent_id","logo","ACTIVATED","SUSPENDED","PENDING_ACTIVATION","SideColumn","isModalOpen","members","otherMembers","otherMember","_ref$target","fee_type","prevMembers","hasNetwork","_this$props$errors$me","membersCount","subAgentFeature","slug","limit","membersCountResume","feeTypes","FIXED_VALUE","FLAT_PERCENTAGE","HIERARCHICAL_PERCENTAGE","group_fee_type","onCreate","addMemberHanlder","onOk","submitMember","okText","cancelText","destroyOnClose","onChangeMemberFieldValue","onChangeFeeType","feeTypeValue","feeTypeLabel","fee_value","addonAfter","onChangeParentValue","otherMemmber","selectMembers","agentData","FormProfile","sendUpdateProfile","profileHasErrors","updateErrors","afterClose","onAlertDismiss","onKeyUp","contact_info","errorDomain","FormPassword","password","new_password","confirm_password","sendUpdatePassword","passwordHasErrors","FormApiKey","alertDismiss","sendRequestApiKey","alertIsVisible","navigator","clipboard","writeText","copied","apikeyHasErrors","compact","onCopyButton","requestNewApiKey","FormRebrand","userTheme","uploading","isImage","startsWith","isLt2M","logoErrors","rebrandHasErrors","rebrandErrors","rebrand","beforeUpload","selectTheme","AccountActivationTerms","acceptTerms","Alert_message","Chart_doughnut","Chart_line","List_agents","Section","components_Select","TableWidget","TableWidget_quotations","components_Search","components_HorizontalFilter","CatalogSearch","HorizontalCatalogFilter","components_Paginator","Paginator_quotations","components_OfferInfo","sidebar_preview","FormCustomerWrapper","form_confirm","form_documents","components_QuotationsSearch","components_QuotationsSort","CarItemButtonBoard","components_CarSelector","components_CarImages","components_OfferValue","components_OfferServices","components_OfferChilds","components_CustomizeOffer","components_RequestOffer","components_Banners_sponsor","components_OfferForm_fields","components_Tracking","side_column","form_profile","form_password","form_api_key","form_rebrand","HorizontalProvidersFilter","HorizontalProductsFilter","activation","CHANGE_LOCALE","offerMonthlyRate","offerDeposit","antd__WEBPACK_IMPORTED_MODULE_2__","inputSlider","forwardRef","fontWeight","marks","getTooltipPopupContainer","node","tipFormatter","evaluateCondition","evalString","Function","dependencyElementExists","dependencyPath","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","iterator","done","err","return","selectors_makeSelectMonthlyRateSelector","selectors_makeSelectOfferSelector","selectors_makeSelectServicesSelector","selectors_makeSelectAccessoriesSelector","selectors_makeSelectColorsSelector","selectors_makeSelectAccessoriesCodesSelector","selectors_makeSelectColorCodesSelector","selectors_makeSelectFeesVisibileSelector","selectors_makeSelectFeesSelector","selectors_getServicePriceByOfferParams","price_map","priceMapped","priceMap","_loop","dependencies","dep","conditions","_condition","conditionPath","conditionOperator","conditionValue","conditionFound","multipliedBy","getPriceFromMap","getOffer","selectChildOffer","offerLoaded","fetchQuotes","updateStatus","quotationLoaded","newStatus","makeSelectQuotationStatus","GET_QUOTATION","UPDATE_QUOTATION_STATUS","makeSelectOffer","makeSelectChildOfferCode","offerState","moment__WEBPACK_IMPORTED_MODULE_2__","startOfMonth","startOf","endOfMonth","endOf","selectedOrder","quotationsReducer","GET_QUOTATIONS","QUOTATIONS_RECEIVED","SEARCH_QUOTATIONS","REMOVE_FILTER","offersState","history_createBrowserHistory__WEBPACK_IMPORTED_MODULE_0__","createHistory","updatePaginator","fetchLogic","fetchLogicOffer","requestCheck","requestOfferCheck","updateProposal","saveQuotation","user","makeSelectUser","PRESCORING_URL","toggleLoading","PRESCORING_AUTH","X-Agent-Id","X-Agent-Email","receiveLogic","alert","receiveOfferLogic","encodedInputData","currentSelectedParams","currentParams","success","receiveSustainabilityResponse","RegExp","test","parsePrescoringParamsToFilters","errorCode","receiveSustainabilityOfferResponse","SET_CONTRACTUAL_CATEGORY","SET_CONTRACTUAL_CATEGORY_OFFER","CHECK_SUSTAINABILITY_REQUEST","CHECK_SUSTAINABILITY_OFFER_REQUEST","UPDATE_PROPOSAL","SAVE_QUOTATION","makeSelectTokenValidation","selectUser","userState","preference","fetchBrands","fetchModels","fetchVersions","fetchCar","fetchImages","brandsLoaded","modelsLoaded","makeSelectSelectedModelYear","versionsLoaded","_selected$split","_selected$split2","codiceMotornet","codiceEurotax","makeSelectCarCode","carImagesLoaded","openWidget","closeWidget","setContractualCategory","setContractualCategoryOffer","setInputData","setInputDataOffer","sendCheckSustainability","sendCheckSustainabilityOffer","resetData","resetOfferData","query_string__WEBPACK_IMPORTED_MODULE_1__","query_string__WEBPACK_IMPORTED_MODULE_1___default","TOGGLE_WIDGET","TOGGLE_MODAL","SET_INPUT_DATA","SET_INPUT_DATA_OFFER","TOGGLE_LOADING","logicData","GET_LOGIC_RESPONSE","GET_LOGIC_OFFER_RESPONSE","responseData","CHECK_SUSTAINABILITY_RESPONSE","CHECK_SUSTAINABILITY_OFFER_RESPONSE","SET_SUSTAINABILITY_SELECTED","RESET_DATA","RESET_OFFER_DATA","verticalAlign","overflow","UNSET_LOADING","updateTagStatus","filtersReducer","updateIn","elems","tagShowList","tagHideList","tagsList","q","TRIAL_PERIOD_END","MONTHLY_REVENUE","AMOUNT_OTHER_EXPENSES","HAVE_GUARANTOR","HAVE_GUARANTOR_IF_NEEDED","CRIF","IS_GREATER_THAN_AGE","HOW_OLD_COMPANY","YEARLY_REVENUE","SHARE_CAPITAL","CHOICE_LESS_2_YEARS_NO_TAX_FILLINGS","CHOICE_LESS_2_YEARS_ONE_TAX_FILLING","CHOICE_MORE_2_YEARS_TWO_TAX_FILLINGS","CHOICE_LESS_2_YEARS_NO_BALANCE","CHOICE_LESS_2_YEARS_ONE_BALANCE","CHOICE_MORE_2_YEARS_TWO_BALANCES","CONGRATULATIONS_OFFERS","CONGRATULATIONS_THIS_OFFER","TRIAL_PERIOD_END_NO","IN_CRIF","INSUFFICIENT_REVENUE","NEED_GUARANTEES","NEED_MORE_DEPOSIT_OR_RATES","NEED_MORE_DEPOSIT_OR_RATES_OR_GUARANTEE","NEED_DEPOSIT_GUARANTEE","EXCEED_AGE","NEED_DEPOSIT","MONTHLY_RATE_TRASHOLD","TOO_MUCH_MONTHLY_RATE","getQuotations","quotationsLoaded","LOAD_FILTERS","DOWNLOAD_QUOTATIONS","SET_ITEMS_PER_PAGE","GET_ITEMS_PER_PAGE","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn-bd","./bn-bd.js","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-mx","./es-mx.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","Error","resolve","checkInputDefaultData","prescoringStorage","itemStr","expiry","removeItem","updateLocalStorage","getFromLocalStorage","clientAnswers","offerSustainability","widgetIsOpen","modalIsOpen","storageData","responseChance","isTagsEnabled","enableTags","Lock","servicesState","loadable","Promise","GET_OFFERS","OFFERS_RECEIVED","getOffers","fetchOffers","offersData","requestSort","makeSelectCurrentPage","makeSelectItemsPerPage","noOfferFound","cars","isCatalogoFilterSelected","selectedFilter","isHighlighted","isSuggested","selectOffers","OffersPage","loadOffers","SponsorBanner","CarItemList","FormattedHTMLMessage","routes","component","WelcomePage","OfferPage","RequestOfferPage","QuotationsPage","QuotationPage","hasFaqSalesBot","Dashboard","AgentQuotationsPage","AdminPage","CatalogAddPage","CatalogEditPage","CustomersPage","CustomerPage","MarketingPage","FaqPage","SupportPage","NavBar","route","roleNum","propsagentProfile","match","agentProfile","isGroupLeader","NavLink","activeClassName","isActive","Header","ev","keyCode","visibility","opacity","dropdownOpen","chatbotLoaded","dropdownToggle","documentElement","classList","refs","sidebarToggle","innerWidth","hideChatWindow","_this$props$user","__be","be","s","userAttributes","default_name","default_username","sessionAttributes","isInitialized","isChatWindowHidden","resetSession","onChatWindowOpen","setSessionAttributes","setUserAttributes","onSessionReset","currentRoute","initChatBot","updateColor","routeChanged","_this$props$user2","Favicon","APP_MAIN_LOGO","tabIndex","onKeyDown","handleKeyboard","onLogOut","isTokenInvalid","powered","disclaimer","Footer","PrescoringModal","inputName","inputValue","handleInputChange","inputHasChanged","inputIsChanging","updateFiltersFromResponse","resetPrescoringFilters","lastLogicIndex","logicStep","oldFilteredInputDataAnswers","newInputData","handleCancel","handleReset","handleContractualCategoryChange","inputDataPrev","responsePrev","setDefaultAnswerForCurrentStep","resetCustomerTypeFilter","canReset","logicSteps","logicField","LogicField","onChangeSubmit","hasSubmitButton","ResponseFeedback","alertType","responseDescription","lastAnswer","lastLogicStep","logicStep2","lastLogicAnswer","LogicFieldBool","LogicFieldInput","LogicFieldChoice","PrescoringWidget","notification","handleOpen","hasPrescoringResponse","handleGo","openNotification","PrivateRoute","authentication","getUserInfo","_this$props$hasFaqSal","rest","_objectWithoutProperties","termsAccepted","Sentry","Route","render","hasPrescoringWidget","group_type","created_at","group_name","Redirect","regex","getUser","isLoggedIn","App","querySelector","innerText","Switch","exact","SsoPage","LoginPage","AccountActivatePage","AccountActivationSsoPage","ForgotPassword","ResetPassword","RouteComponent","NotFoundPage","GlobalStyle","createGlobalStyle","_templateObject","selectLanguage","LanguageProvider","IntlProvider","onError","handleError","Children","only","languageState","sagaMiddleware","createSagaMiddleware","store","middlewares","routerMiddleware","enhancers","applyMiddleware","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","createStore","runSaga","run","injectedSagas","MOUNT_NODE","integrations","BrowserTracing","environment","SENTRY_ENVIRONMENT","tracesSampleRate","TagManager","gtmId","ReactDOM","Provider","ConnectedRouter","Intl","t","catch","loader","BounceLoader","AddIcon","SET_CONTRACTUAL_CATEGORY_TYPE","FILE_UPLOADED","selectSearch","Arrow","components_Quotation_constants__WEBPACK_IMPORTED_MODULE_2__","quotationPageReducer","DISPLAY_QUOTATION_ASSISTANT","makeSelectRedirect","selectCatalogEdit","catalogEditState","childOffersReducer","update","isChild","offerIdx","validateFiscalCode","validateVatNumber","validateEmail","validatePostalCode","getMembers","_Profile_constants__WEBPACK_IMPORTED_MODULE_1__","LOAD_USER_SUCCESS","LOAD_USER_ERROR","PROFILE_UPDATED_ERROR","REQUEST_API_KEY_SUCCEED","REQUEST_API_KEY_ERROR","TOGGLE_MEMBER_SUCCEED","TOGGLE_MEMBER_ERROR","ADD_MEMBER_ERROR","UPDATE_MEMBER_ERROR","UPLOAD_LOGO_SUCCEED","UPLOAD_LOGO_ERROR","PASSWORD_UPDATED","PASSWORD_UPDATED_ERROR","AGENT_MEMBERS_LOADED","makeSelectQuotation","makeSelectDispalyAssistant","makeSelectQuotationLoaded","selectCustomizeOfferSelector","fetchQuotations","quotationsData","withQuotationSaga","RESTART_ON_REMOUNT","DAEMON","ONCE_TILL_UNMOUNT","allowedModes","checkKey","invariant","isString","isEmpty","checkDescriptor","descriptor","isFunction","mode","conformsTo","getInjectors","checkStore","args","newDescriptor","hasSaga","Reflect","oldDescriptor","task","injectSagaFactory","ejectSaga","ejectSagaFactory","InjectSaga","_getPrototypeOf2","_len","_key","context","injectors","displayName","hoistNonReactStatics","small","medium","itemBox","item-box","clickable","itemBoxList","textDecoration","withAction","findDOMNode","minHeight","hover","itemCode","onActionClick","closeOnAction","showPrice","priceMessage","hasGroups","elemKey","handleOnActionClick","Check","Downloadable","binary","Post","textArea","execCommand","hasAttachment","copyCodeToClipboard","textarea","readOnly","DownloadableImage","image_binary","image_name","simplePost","placeholderTitle","placeholderDescription","hide","symbol","showButton","showAll","onShowClick","arrayOf","handleOnShowAllClick","hasItems","hasManyItems","visibleItems","PlaceholderListItem","CollapseItem","togglePanel","withSpace","hasHtml","FormButton","btnClass","data-attribute","ThreeVerticalDots","triggerEvents","trigger","Dropdown","overlay","Menu","inputText","InputGroup","ReactstrapInput","InputGroupAddon","addonType","InputGroupText","unshift","setFiles","_useDropzone","useDropzone","onDrop","acceptedFiles","URL","createObjectURL","getRootProps","getInputProps","thumb","borderRadius","marginRight","boxSizing","thumbInner","minWidth","thumbs","revokeObjectURL","flexDirection","flexWrap","flexSection","data-key","isValidElement","subtitle","clickableItem","additionalText","descriptionText","clickableItemWithSelect","optionSelected","setOptionSelected","_useState4","totPrice","setTotPrice","optionValue","calculatedPrice","selectOptions","ClickableItemWithSelect","additional_text","ClickableItem","badge","typeColors","AntTag","Action_small","Action_medium","Label_offer","ItemBox_list","post","UIKit_List_simplePost","UIKit_InteractiveList","Collapse_item","Form_submit","Form_cancel","Toggle","Top","UIKit_Tag","ExpiredOffer","ExpiredOffer_AlertIcon","step1_title","step1_title_short","step5_result_info","step5_result_info_description","step5_result_won","step5_result_won_description","step5_result_lost","step5_result_lost_description","btnSetToLost","btnSetToWon","preferences","appReducer","ADD_MEMBER_SUCCEED","UPDATE_MEMBER_SUCCEED","memberIdx","currentMember","api","apiInputLabel","landingpage","rebrandThemeLabel","rebrandLogoLabel","rebrandSubmit","alertSuccess","requiredField","contactInfo","currentPassword","currentPasswordErrorEmpty","newPassword","newPasswordErrorMinLength","confirmPassword","confirmPasswordErrorNotEqual","fetchOffer","searchChild","selectedChild","lodash__WEBPACK_IMPORTED_MODULE_0__","invariant__WEBPACK_IMPORTED_MODULE_1__","invariant__WEBPACK_IMPORTED_MODULE_1___default","subscribe","getState","replaceReducer","isObject","makeIsOfferValueComplete","selectOfferValue","offerValueState","react_intl__WEBPACK_IMPORTED_MODULE_1__","getQuotation","./default/style.scss","./generali/style.scss","webpackAsyncContext","ids","injectReducerFactory","ReducerInjector","kwh","selectPaginator","points","customerVat","fileData","modalOption","selectReducer","selectedModelYear","selectedVersion","carSelectorReducer","receivedImages","currentStateImages","imagesToSet","currentImages","newCustomImages","setChildOffers","selectCarSelector","carSelectorState","makeIsCarSelectorComplete","AREA_TITLES","configs__WEBPACK_IMPORTED_MODULE_0__","configs__WEBPACK_IMPORTED_MODULE_0___default","DASHBOARD_NEW","DASHBOARD_WIDGET_NEW_QUOTES","DASHBOARD_WIDGET_NEW_CUSTOMERS","DASHBOARD_WIDGET_PROFITS","DASHBOARD_WIDGET_EFFECTIVE_PROFITS","DASHBOARD_TITLE"],"mappings":"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CAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,QAAA,uBACAC,WAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,gBAAA,uBACAC,aAAA,uBACAC,gBAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,u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AAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,QAAA,uBACAC,WAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,gBAAA,uBACAC,aAAA,uBACAC,gBAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,aAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC,UAAA,uBACAC,OAAA,uBACAC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","file":"main.c72e1ad98cf6fe7f7ce7.chunk.js","sourcesContent":["\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n * OfferConstants\n * Each action has a corresponding type, which the reducer knows and picks up on.\n * To avoid weird typos between the reducer and the actions, we save them as\n * constants here. We prefix them with 'yourproject/YourComponent' so we avoid\n * reducers accidentally picking up actions they shouldn't.\n *\n * Follow this format:\n * export const YOUR_ACTION_CONSTANT = 'yourproject/YourContainer/YOUR_ACTION_CONSTANT';\n */\n\nexport const GET_OFFER = 'ideal/Offers/GET_OFFER';\nexport const GET_CHILD_OFFER = 'ideal/Offers/GET_CHILD_OFFER';\nexport const OFFER_RECEIVED = 'ideal/Offers/OFFER_RECEIVED';\nexport const SEND_QUOTE = 'ideal/Offers/SEND_QUOTE';\nexport const QUOTE_SENDED = 'ideal/Offers/QUOTE_SENDED';\n","import { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.components.Quotation';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Stampa questa offerta',\n },\n button: {\n id: `${scope}.button`,\n defaultMessage: 'Configura e procedi',\n },\n terms: {\n id: `${scope}.terms`,\n defaultMessage:\n 'Il prezzo del canone mensile è soggetto a variazioni. Offerta economica limitata valida fino ad esaurimento scorte.',\n },\n confirm_terms: {\n id: `${scope}.confirm_terms`,\n defaultMessage:\n \"Confermo di essere a conoscenza che il prezzo del canone mensile è soggetto a variazioni e che l'offerta economica è limitata e valida fino ad esaurimento scorte\",\n },\n sidebar_recap_title_1: {\n id: `${scope}.sidebar_recap_title_1`,\n defaultMessage: \"Cosa c'è da sapere su questa {car_title}\",\n tagName: 'strong',\n },\n sidebar_recap_title_2: {\n id: `${scope}.sidebar_recap_title_2`,\n defaultMessage: 'Dati preventivo',\n tagName: 'strong',\n },\n equippedOptionals: {\n id: `${scope}.equippedOptionals`,\n defaultMessage: 'Optional inclusi',\n tagName: 'strong',\n },\n sidebar_recap_title_3: {\n id: `${scope}.sidebar_recap_title_3`,\n defaultMessage: 'Servizi inclusi',\n tagName: 'strong',\n },\n sidebar_recap_title_4: {\n id: `${scope}.sidebar_recap_title_4`,\n defaultMessage: 'Optional aggiuntivi',\n tagName: 'strong',\n },\n sidebar_recap_title_5: {\n id: `${scope}.sidebar_recap_title_5`,\n defaultMessage: 'Note preventivo',\n tagName: 'strong',\n },\n sidebar_recap_title_6: {\n id: `${scope}.sidebar_recap_title_6`,\n defaultMessage: 'Termini e condizioni',\n tagName: 'strong',\n },\n sidebar_recap_title_7: {\n id: `${scope}.sidebar_recap_title_7`,\n defaultMessage: 'Dati venditore',\n tagName: 'strong',\n },\n no_one: {\n id: `${scope}.no_one`,\n defaultMessage: 'Nessuno',\n tagName: 'em',\n },\n service_change_tires: {\n id: `${scope}.service_change_tires`,\n defaultMessage: 'Pneumatici',\n },\n service_car_replacement: {\n id: `${scope}.service_car_replacement`,\n defaultMessage: 'Vettura sostitutiva',\n },\n service_copertura_assicurativa: {\n id: `${scope}.copertura_assicurativa`,\n defaultMessage: 'Copertura Assicurativa Totale',\n },\n service_pai: {\n id: `${scope}.service_pai`,\n defaultMessage: 'Pai Totale',\n },\n service_tutela_legale: {\n id: `${scope}.service_tutela_legale`,\n defaultMessage: 'Tutela Legale',\n },\n service_assistenza_stradale: {\n id: `${scope}.service_assistenza_stradale`,\n defaultMessage: 'Assistenza Stradale',\n },\n continue: {\n id: `${scope}.continue`,\n defaultMessage: 'Prosegui',\n },\n ahead: {\n id: `${scope}.ahead`,\n defaultMessage: 'Avanti',\n },\n back: {\n id: `${scope}.back`,\n defaultMessage: 'Indietro',\n },\n backToOffer: {\n id: `${scope}.backToOffer`,\n defaultMessage: \"Torna all'offerta\",\n },\n alertError: {\n id: `${scope}.alertError`,\n defaultMessage:\n 'Si sono verificati degli errori, controllare i dati inseriti',\n },\n serverError: {\n id: `${scope}.serverError`,\n defaultMessage:\n \"Si è verificato un problema durante l'operazione, si prega di riprovare\",\n },\n contractualsCategories: {\n id: `${scope}.contractualsCategories`,\n defaultMessage: 'Categoria contrattuale',\n },\n firstName: {\n id: `${scope}.firstName`,\n defaultMessage: 'Nome',\n },\n lastName: {\n id: `${scope}.lastName`,\n defaultMessage: 'Cognome',\n },\n fiscalCode: {\n id: `${scope}.fiscalCode`,\n defaultMessage: 'Codice fiscale',\n },\n fiscalCodePersonal: {\n id: `${scope}.fiscalCodePersonal`,\n defaultMessage: 'CF personale',\n },\n fiscalCodeTooltip: {\n id: `${scope}.fiscalCodeTooltip`,\n defaultMessage:\n 'Indicare il codice fiscale della persona intestataria del contratto di noleggio a lungo termine',\n },\n fiscalCodeBusiness: {\n id: `${scope}.fiscalCodeBusiness`,\n defaultMessage: 'Codice fiscale attività',\n },\n fiscalCodeBusinessTooltip: {\n id: `${scope}.fiscalCodeBusinessTooltip`,\n defaultMessage:\n 'Indicare il codice fiscale dell\\'attività a cui verrà intestato il contratto di noleggio a lungo termine',\n },\n fiscalCodeError: {\n id: `${scope}.fiscalCodeError`,\n defaultMessage: 'Il codice fiscale indicato non è valido',\n },\n vatNumber: {\n id: `${scope}.vatNumber`,\n defaultMessage: 'Partita IVA',\n },\n pec: {\n id: `${scope}.pec`,\n defaultMessage: 'Indirizzo PEC',\n },\n sdiCode: {\n id: `${scope}.sdiCode`,\n defaultMessage: 'Codice SDI',\n },\n businessName: {\n id: `${scope}.businessName`,\n defaultMessage: 'Ragione sociale',\n },\n sdi_code: {\n id: `${scope}.sdi_code`,\n defaultMessage: 'SDI',\n },\n phone: {\n id: `${scope}.phone`,\n defaultMessage: 'Telefono',\n },\n zipCode: {\n id: `${scope}.zipCode`,\n defaultMessage: 'Cap',\n },\n city: {\n id: `${scope}.city`,\n defaultMessage: 'Comune',\n },\n notes: {\n id: `${scope}.notes`,\n defaultMessage: 'Note',\n },\n phoneNotValid: {\n id: `${scope}.phoneNotValid`,\n defaultMessage: 'Indicare un numero di telefono valido',\n },\n zipCodeNotValid: {\n id: `${scope}.zipCodeNotValid`,\n defaultMessage: 'Indicare un CAP valido',\n },\n formConfirmDescription: {\n id: `${scope}.formConfirmDescription`,\n defaultMessage:\n 'Verifica la correttezza dei dati inseriti per procedere con la richiesta. Clicca su Indietro per modificarli. Una volta confermati non saranno più modificabili. Dalla sezione riepilogo a destra puoi anche scaricare il preventivo.',\n },\n documentsUploadDescription: {\n id: `${scope}.documentsUploadDescription`,\n defaultMessage:\n 'Carica tutti i documenti richiesti per finalizzare la richiesta di preventivo',\n },\n vat: {\n id: `${scope}.vat`,\n defaultMessage: configs.messages[scope].vat,\n },\n vatNotice: {\n id: `${scope}.vatNotice`,\n defaultMessage: configs.messages[scope].vatNotice,\n },\n vatNoticeDescription: {\n id: `${scope}.vatNoticeDescription`,\n defaultMessage: configs.messages[scope].vatNoticeDescription,\n }\n\n});\n","var React = require('react');\n\nfunction NotesIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"g\",null,[React.createElement(\"path\",{\"d\":\"M191.5,150.4h472c50,0,95.3,20.4,128.2,53.3C824.6,236.6,845,282,845,331.9v20.4h-64.2v-20.4c0-32.2-13.2-61.6-34.5-82.8c-21.3-21.3-50.6-34.5-82.9-34.5h-472c-31.5,0-60.2,12.6-81.4,32.9c-0.5,0.5-1,1.1-1.5,1.6v0c-21.3,21.3-34.5,50.6-34.5,82.8v336.2c0,31.5,12.6,60.3,33,81.4c0.5,0.5,1,0.9,1.5,1.4l-0.1,0.1l0,0c21.3,21.2,50.6,34.4,82.9,34.4h472c32.1,0,61.4-13.1,82.7-34.3l0.2-0.2h0l0,0.1c21.2-21.3,34.4-50.6,34.4-82.9v-20.4H845v20.4c0,49.9-20.4,95.2-53.3,128.1L769,773.6l22.7,22.7l-0.6,0.6c-32.8,32.5-78,52.7-127.6,52.7h-472c-49.8,0-95.2-20.4-128.1-53.3L86,773.6l-22.7,22.7c-0.6-0.6-1.2-1.3-1.8-2C29.7,761.6,10,717,10,668.1V331.9c0-49.9,20.4-95.3,53.3-128.2v0c0.7-0.6,1.3-1.3,2-1.9C98,170.1,142.6,150.4,191.5,150.4L191.5,150.4L191.5,150.4z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M222.1,333.8c-17.7,0-32.1,14.4-32.1,32.1c0,17.7,14.4,32.1,32.1,32.1h382c17.7,0,32.1-14.4,32.1-32.1c0-17.7-14.4-32.1-32.1-32.1H222.1L222.1,333.8L222.1,333.8z\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M218.6,469.6c-17.7,0-32.1,14.4-32.1,32.1c0,17.7,14.4,32.1,32.1,32.1h271.7c17.7,0,32.1-14.4,32.1-32.1c0-17.7-14.4-32.1-32.1-32.1H218.6L218.6,469.6L218.6,469.6z\",\"key\":2}),React.createElement(\"path\",{\"d\":\"M220.4,607.1c-17.7,0-32.1,14.4-32.1,32.1c0,17.7,14.4,32.1,32.1,32.1h157.9c17.7,0,32.1-14.4,32.1-32.1c0-17.7-14.4-32.1-32.1-32.1H220.4L220.4,607.1L220.4,607.1z\",\"key\":3}),React.createElement(\"path\",{\"d\":\"M611.1,563l319.2-229.2l59.7,83L670.8,646L611.1,563z\",\"key\":4}),React.createElement(\"path\",{\"d\":\"M594.8,574.8l59.4,83.3l-120,23.5L594.8,574.8z\",\"key\":5}),React.createElement(\"path\",{\"d\":\"M643.2,523.7\",\"key\":6})]));\n}\n\nNotesIcon.defaultProps = {\"version\":\"1.1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 1000 1000\",\"enableBackground\":\"new 0 0 1000 1000\",\"xmlSpace\":\"preserve\"};\n\nmodule.exports = NotesIcon;\n\nNotesIcon.default = NotesIcon;\n","export const SECTION_TITLE = 'Auto Trovate';\nexport const SECTION_SINGLE_TITLE = 'Auto Trovata';\nexport const SECTION_DESCRIPTION = 'Ordina per: ';\n\n/**\n * Order constants\n * @type {string}\n */\n\nexport const SORTS_RECEIVED = 'ideal/components/HorizontalFilter/SORTS_RECEIVED';\nexport const UPDATE_SORT = 'ideal/components/HorizontalFilter/UPDATE_SORT';\n\n/**\n * Available filters constants\n * @type {string}\n */\nexport const TAGS_RECEIVED = 'ideal/components/HorizontalFilter/TAGS_RECEIVED';\nexport const SHOW_TAG = 'ideal/components/HorizontalFilter/SHOW_TAG';\nexport const SHOW_ALL = 'ideal/components/HorizontalFilter/SHOW_ALL';\nexport const HIDE_TAG = 'ideal/components/HorizontalFilter/HIDE_TAG';\nexport const TOGGLE_TAGS_ENABLED = 'ideal/components/HorizontalFilter/TOGGLE_TAGS_ENABLED';\n\n/**\n * Active filters constants\n * @type {string}\n */\nexport const ADD_OPTION = 'ideal/components/HorizontalFilter/ADD_OPTION';\nexport const REMOVE_OPTION = 'ideal/components/HorizontalFilter/REMOVE_OPTION';\nexport const REMOVE_ALL = 'ideal/components/HorizontalFilter/REMOVE_ALL';\n","import {\n GET_SERVICES,\n SERVICES_ERROR,\n SERVICES_RECEIVED,\n SERVICE_SELECTED,\n SET_OFFER_PRODUCT_SERVICES,\n RESET,\n} from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getServices = () => ({\n type: GET_SERVICES,\n});\n\n/**\n *\n * @param services\n * @returns {{services: *, type: *}}\n */\nexport function servicesLoaded(services) {\n return {\n type: SERVICES_RECEIVED,\n services,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function servicesError(error) {\n return {\n type: SERVICES_ERROR,\n error,\n };\n}\n\n/**\n *\n * @param services\n * @returns {{services: *, type: *}}\n */\nexport function servicesSelected(services) {\n return {\n type: SERVICE_SELECTED,\n services,\n };\n}\n\n/**\n *\n * @param services\n * @returns {{services: *, type: *}}\n */\nexport function setProductServices(services) {\n return {\n type: SET_OFFER_PRODUCT_SERVICES,\n services,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport function resetStore() {\n return {\n type: RESET,\n };\n}\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offers.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offers.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offers.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n * OfferChilds Constants\n */\n\nexport const SET_OFFER_MONTHLY_RATE =\n 'ideal/OfferChilds/SET_OFFER_MONTHLY_RATE';\nexport const SET_CHILDS_DEPOSIT = 'ideal/OfferChilds/SET_OFFER_DEPOSIT';\nexport const SET_CHILDS_DURATION = 'ideal/OfferChilds/SET_OFFER_DURATION';\nexport const SET_CHILDS_MONTHLY_RATE =\n 'ideal/OfferChilds/SET_CHILDS_MONTHLY_RATE';\nexport const SET_CHILDS_DISTANCE =\n 'ideal/OfferChilds/SET_CHILDS_DISTANCE';\nexport const SET_CHILDS_SECOND_DISTANCE =\n 'ideal/OfferChilds/SET_CHILDS_SECOND_DISTANCE';\nexport const SET_CHILDS_THIRD_DISTANCE =\n 'ideal/OfferChilds/SET_CHILDS_THIRD_DISTANCE';\n\nexport const SET_LOADING = 'ideal/OfferChilds/SET_LOADING';\nexport const STORE_CHILD_OFFER = 'ideal/OfferChilds/STORE_CHILD_OFFER';\nexport const UPDATE_CHILD_OFFER = 'ideal/OfferChilds/UPDATE_CHILD_OFFER';\nexport const EDIT_CHILD_OFFER = 'ideal/OfferChilds/EDIT_CHILD_OFFER';\nexport const EDIT_CHILD_OFFER_END = 'ideal/OfferChilds/EDIT_CHILD_OFFER_END';\nexport const ADD_CHILD_OFFER = 'ideal/OfferChilds/ADD_CHILD_OFFER';\nexport const REPLACE_CHILD_OFFER = 'ideal/OfferChilds/REPLACE_CHILD_OFFER';\n\nexport const DELETE_CHILD_OFFER = 'ideal/OfferChilds/DELETE_CHILD_OFFER';\nexport const REMOVE_CHILD_OFFER = 'ideal/OfferChilds/REMOVE_CHILD_OFFER';\n\nexport const SET_CHILD_OFFERS = 'ideal/OfferChilds/SET_CHILD_OFFERS';\n\nexport const VALIDATE_USER_INPUT = 'ideal/OfferChilds/VALIDATE_USER_INPUT';\nexport const SET_ERROR_MESSAGE = 'ideal/OfferChilds/SET_ERROR_MESSAGE';\n\nexport const RESET = 'ideal/OfferChilds/RESET';\nexport const RESET_ERRORS = 'ideal/OfferChilds/RESET_ERRORS';\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Select-Option {\\n margin-bottom: 10px; }\\n .Select-Option .row {\\n margin-left: -6px;\\n margin-right: -6px; }\\n .Select-Option .selector-column {\\n padding-left: 6px;\\n padding-right: 6px; }\\n .Select-Option h6 {\\n word-wrap: break-word !important;\\n font-size: 16px !important;\\n font-weight: 600 !important;\\n line-height: 1.33em !important;\\n color: #404950 !important;\\n display: block;\\n margin-top: 5px; }\\n .Select-Option.with-border {\\n border-top: 1px solid #e4e4e4;\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n padding-top: 5px; }\\n .Select-Option.disabled {\\n pointer-events: none;\\n opacity: .3; }\\n .Select-Option .iDEAL-Form-Badge {\\n display: inline;\\n background-color: #1f855f;\\n color: white;\\n font-weight: 400; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ideal-item-button {\\n font-weight: 400;\\n outline: none;\\n line-height: 1;\\n padding: 0.25rem 0.5rem;\\n font-size: 0.775rem;\\n border: 2px solid #dde2ec;\\n color: #484848;\\n border-radius: .5rem; }\\n\", \"\"]);\n\n// exports\n","/**\n * i18n.js\n *\n * This will setup the i18n language files and locale data for your app.\n *\n * IMPORTANT: This file is used by the internal build\n * script `extract-intl`, and must use CommonJS module syntax\n * You CANNOT use import/export in this file.\n */\nconst addLocaleData = require('react-intl').addLocaleData; //eslint-disable-line\nconst itLocaleData = require('react-intl/locale-data/it');\n\nconst itTranslationMessages = require('./translations/it.json');\n\naddLocaleData(itLocaleData);\n\nconst DEFAULT_LOCALE = 'it';\n\n// prettier-ignore\nconst appLocales = [\n 'it',\n];\n\nconst formatTranslationMessages = (locale, messages) => {\n const defaultFormattedMessages =\n locale !== DEFAULT_LOCALE\n ? formatTranslationMessages(DEFAULT_LOCALE, itTranslationMessages)\n : {};\n const flattenFormattedMessages = (formattedMessages, key) => {\n const formattedMessage =\n !messages[key] && locale !== DEFAULT_LOCALE\n ? defaultFormattedMessages[key]\n : messages[key];\n return Object.assign(formattedMessages, { [key]: formattedMessage });\n };\n return Object.keys(messages).reduce(flattenFormattedMessages, {});\n};\n\nconst translationMessages = {\n it: formatTranslationMessages('it', itTranslationMessages),\n};\n\nexports.appLocales = appLocales;\nexports.formatTranslationMessages = formatTranslationMessages;\nexports.translationMessages = translationMessages;\nexports.DEFAULT_LOCALE = DEFAULT_LOCALE;\n","/*\n * AdminConstants\n */\n\nexport const GET_MEMBERS_STATISTICS = 'ideal/Admin/GET_MEMBERS_STATISTICS';\nexport const MEMBERS_STATISTICS_RECEIVED = 'ideal/Admin/MEMBERS_STATISTICS_RECEIVED';\n\nexport const SECTIONS_TITLES = {\n TEAM_TITLE: 'Team',\n DASHBOARD_DOUGHNUT_CHART_TITLE: 'Stato dei preventivi',\n ADMIN_WIDGET_TOTAL_QUOTES: 'Contratti totali',\n ADMIN_WIDGET_NEW_CUSTOMERS: 'Nuovi clienti',\n ADMIN_WIDGET_EFFECTIVE_PROFITS: 'Profitto',\n};\n","var React = require('react');\n\nfunction AccessoriesIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"path\",{\"d\":\"m9 10c-2.757 0-5-2.243-5-5s2.243-5 5-5 5 2.243 5 5-2.243 5-5 5zm0-9c-2.206 0-4 1.794-4 4s1.794 4 4 4 4-1.794 4-4-1.794-4-4-4z\"})),React.createElement(\"g\",{\"key\":1},React.createElement(\"path\",{\"d\":\"m8.5 21h-8c-.276 0-.5-.224-.5-.5v-4c0-2.481 2.019-4.5 4.5-4.5h6c.276 0 .5.224.5.5s-.224.5-.5.5h-6c-1.93 0-3.5 1.57-3.5 3.5v3.5h7.5c.276 0 .5.224.5.5s-.224.5-.5.5z\"})),React.createElement(\"g\",{\"key\":2},[React.createElement(\"g\",{\"key\":0},React.createElement(\"path\",{\"d\":\"m17 20c-1.378 0-2.5-1.122-2.5-2.5s1.122-2.5 2.5-2.5 2.5 1.122 2.5 2.5-1.122 2.5-2.5 2.5zm0-4c-.827 0-1.5.673-1.5 1.5s.673 1.5 1.5 1.5 1.5-.673 1.5-1.5-.673-1.5-1.5-1.5z\"})),React.createElement(\"g\",{\"key\":1},React.createElement(\"path\",{\"d\":\"m17.797 24h-1.595c-.516 0-.944-.387-.995-.901l-.127-1.271c-.303-.135-.592-.303-.865-.503l-1.168.527c-.469.214-1.02.035-1.277-.412l-.797-1.381c-.258-.447-.136-1.011.282-1.312l1.029-.74c-.02-.155-.034-.327-.034-.507s.014-.353.034-.507l-1.029-.74c-.418-.301-.54-.865-.282-1.312l.797-1.381c.258-.447.806-.624 1.277-.412l1.168.527c.273-.2.562-.368.865-.503l.127-1.271c.051-.513.479-.9.995-.9h1.595c.516 0 .944.387.995.901l.127 1.271c.304.135.593.304.865.503l1.168-.527c.471-.211 1.02-.034 1.277.412l.797 1.381c.258.447.136 1.011-.282 1.312l-1.029.74c.02.155.034.327.034.507s-.014.353-.034.507l1.029.74c.418.301.54.865.282 1.312l-.796 1.38c-.258.446-.805.625-1.277.412l-1.168-.527c-.273.2-.562.368-.865.503l-.128 1.272c-.051.513-.479.9-.995.9zm-3.512-3.755c.115 0 .229.04.321.117.339.284.714.501 1.113.647.18.066.307.229.326.42l.158 1.571h1.595l.157-1.571c.019-.191.146-.354.326-.42.399-.146.774-.364 1.113-.647.148-.123.352-.151.526-.072l1.444.652.797-1.381-1.278-.918c-.156-.112-.233-.304-.201-.493.037-.211.067-.426.067-.648s-.03-.437-.067-.648c-.033-.189.045-.38.201-.493l1.278-.918-.797-1.381-1.444.651c-.175.079-.379.051-.527-.072-.338-.284-.712-.501-1.113-.647-.18-.066-.307-.229-.326-.42l-.157-1.574h-1.595l-.157 1.571c-.019.191-.146.354-.326.42-.399.146-.774.364-1.113.647-.147.123-.351.152-.526.072l-1.444-.652-.797 1.381 1.278.918c.156.112.233.304.201.493-.037.211-.067.426-.067.648s.03.437.067.648c.033.189-.045.38-.201.493l-1.278.918.797 1.381 1.444-.651c.066-.028.135-.042.205-.042z\"}))])]);\n}\n\nAccessoriesIcon.defaultProps = {\"id\":\"Layer_1\",\"enableBackground\":\"new 0 0 24 24\",\"height\":\"512\",\"viewBox\":\"0 0 24 24\",\"width\":\"512\"};\n\nmodule.exports = AccessoriesIcon;\n\nAccessoriesIcon.default = AccessoriesIcon;\n","import { createSelector } from 'reselect';\nimport { initialState } from 'containers/Offer/reducer';\n\nconst selectQuote = state => state.get('offer', initialState);\n\nconst makeSelectQuote = () =>\n createSelector(selectQuote, quoteState => quoteState.get('quote'));\n\nconst makeSelectQuotationCode = () =>\n createSelector(selectQuote, quoteState => quoteState.get('quotationCode'));\n\nexport { selectQuote, makeSelectQuote, makeSelectQuotationCode };\n","/*\n* FormsReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n OFFER_SELECTED,\n DISPLAY_OFFERS,\n SERVICE_SELECTED,\n ACCESSORIES_SELECTED,\n COLORS_SELECTED,\n ACCESSORIES_CODES_SELECTED,\n OFFER_MONTHLY_RATE_CALCULATED,\n ACCESSORIES_CODES_COLOR_SELECTED,\n FEES_UPDATE,\n FEES_RESET,\n} from './constants';\n\n// The initial state of forms\nexport const initialState = fromJS({\n offer: {\n reference: null,\n distance: 0,\n duration: 0,\n deposit: 0,\n bundle: '',\n monthlyRate: 0,\n sustainabilityIndex: null,\n sustainabilityMessage: '',\n fee: 0,\n },\n display: false,\n monthlyRate: 0,\n feesVisible: true,\n fees: {},\n services: [],\n accessories: [],\n colors: [],\n accessoriesCodes: [],\n colorCodes: [],\n});\n\nfunction offerSelectorReducer(state = initialState, action) {\n switch (action.type) {\n case OFFER_SELECTED:\n return state.set('offer', action.offer);\n case DISPLAY_OFFERS:\n return state.set('display', action.display);\n case SERVICE_SELECTED:\n return state.set('services', action.services);\n case ACCESSORIES_SELECTED:\n return state.set('accessories', action.accessories);\n case COLORS_SELECTED:\n return state.set('colors', action.colors);\n case ACCESSORIES_CODES_SELECTED:\n return state.set('accessoriesCodes', action.codes);\n case ACCESSORIES_CODES_COLOR_SELECTED:\n return state.set('colorCodes', action.codes);\n case OFFER_MONTHLY_RATE_CALCULATED:\n return state.set('monthlyRate', action.monthlyRate).set('feesVisible', true);\n case FEES_RESET:\n return state.set('feesVisible', false).set('fees', fromJS({}));\n case FEES_UPDATE:\n return state.set('feesVisible', true).set('fees', action.fees);\n default:\n return state;\n }\n}\n\nexport default offerSelectorReducer;\n","module.exports = __webpack_public_path__ + \".htaccess\";","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Table } from 'reactstrap';\nimport './styles.scss';\n\nconst tableWidget = props => {\n const { thead, tbody } = props;\n\n return (\n
\n \n \n \n {thead.map((prop, key) => {\n if (key === thead.length - 1)\n return (\n \n );\n return ;\n })}\n \n \n \n {tbody.map((prop, key) => (\n \n {prop.data.map((prop, key) => {\n if (key === thead.length - 1) return ;\n return ;\n })}\n \n ))}\n \n
\n {prop}\n {prop}
{prop}{prop}
\n
\n );\n};\n\ntableWidget.propTypes = {\n thead: PropTypes.array.isRequired,\n tbody: PropTypes.array.isRequired,\n};\n\nexport default tableWidget;\n","/*\n* OfferReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n GET_OFFER,\n GET_CHILD_OFFER,\n OFFER_RECEIVED,\n SEND_QUOTE,\n QUOTE_SENDED,\n} from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n offer: [],\n childOffer: {},\n quote: {},\n});\n\nfunction offersReducer(state = initialState, action) {\n switch (action.type) {\n case GET_OFFER:\n return state.set('code', action.code).set('loading', true);\n case GET_CHILD_OFFER:\n return state.set('childOffer', action.childOffer);\n case OFFER_RECEIVED:\n return state.set('offer', action.offer).set('loading', false);\n case SEND_QUOTE:\n return state.set('quote', action.quote).set('sending', true);\n case QUOTE_SENDED:\n return state\n .set('quotationCode', action.quote.code)\n .set('submitted', true)\n .set('sending', false);\n default:\n return state;\n }\n}\n\nexport default offersReducer;\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/**\n * @param array\n * @param item Object\n * @param key Object key\n * @returns {boolean}\n */\nexport function arrayContainsObj(array, item, key) {\n return array.filter(elem => elem[key] === item[key]).length > 0;\n}\n\n/**\n *\n * @param array\n * @param item\n * @param key\n * @returns {*}\n */\nexport function removeObjFromArray(array, item, key) {\n return array.filter(elem => elem[key] !== item[key]);\n}\n\n/**\n *\n * @param array\n * @param attribute\n * @param value\n * @returns {*}\n */\nexport function getObjByAttribute(array, attribute, value) {\n const results = array.filter(elem => elem[attribute] === value);\n return results.length > 0 ? results[0] : null;\n}\n\n/**\n *\n * @param array\n * @param attribute\n * @param value\n */\nexport function removeObjByAttribute(array, attribute, value) {\n return array.filter(elem => elem[attribute] !== value);\n}\n\n\nif (!Array.prototype.findLastIndex) {\n Array.prototype.findLastIndex = function (callback, thisArg) {\n for (let i = this.length - 1; i >= 0; i--) {\n if (callback.call(thisArg, this[i], i, this)) return i;\n }\n return -1;\n };\n}\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectCatalogSearch = state => state.get('catalogSearch', initialState);\n\nconst makeSelectParam = () =>\n createSelector(selectCatalogSearch, selectedState => selectedState.get('params'));\n\nconst makeSelectLoading = () =>\n createSelector(selectCatalogSearch, selectedState => selectedState.get('loading'));\n\nconst makeSelectSelectedParams = () =>\n createSelector(selectCatalogSearch, selectedState =>\n selectedState.get('selectedParams').toArray(),\n );\n\nconst makeSelectLabels = () =>\n createSelector(selectCatalogSearch, selectedState => {\n const params = selectedState.get('selectedParams').toArray();\n return params\n .map(item => {\n if (\n item.value !== undefined &&\n item.value !== null &&\n item.value.length > 0\n )\n return {\n value: item.value,\n name: item.name,\n label: item.label,\n };\n return false;\n })\n .filter(obj => obj.hasOwnProperty('value'));\n });\n\nexport {\n selectCatalogSearch,\n makeSelectLoading,\n makeSelectParam,\n makeSelectLabels,\n makeSelectSelectedParams,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sponsor.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sponsor.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sponsor.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOption = state => state.get('select', initialState);\n\nconst makeSelectOption = () =>\n createSelector(selectOption, selectedState => selectedState.get('option'));\n\nconst makeSelectModalOption = () =>\n createSelector(selectOption, selectedState =>\n selectedState.get('modalOption'),\n );\n\nexport { selectOption, makeSelectOption, makeSelectModalOption };\n","/*\n* CatalogEditReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n SET_LOADING,\n EDIT_OFFER,\n DELETE_OFFER,\n REQUEST_SUCCESS_RESPONSE,\n REQUEST_ERROR_RESPONSE,\n GET_OFFER,\n OFFER_RECEIVED,\n REDIRECT_TO_PAGE,\n RESET,\n} from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n response: null,\n code: null,\n id: null,\n loading: false,\n redirect: false,\n error: null,\n});\n\nfunction catalogEditReducer(state = initialState, action) {\n switch (action.type) {\n case SET_LOADING:\n return state.set('loading', action.loading);\n case EDIT_OFFER:\n case DELETE_OFFER:\n return state.set('loading', true);\n case GET_OFFER:\n return state.set('code', action.code).set('loading', true);\n case OFFER_RECEIVED:\n return state.set('id', action.id).set('loading', false);\n case REQUEST_SUCCESS_RESPONSE:\n return state\n .set('loading', false)\n .set('response', action.response)\n .set('code', action.response.code || null);\n case REQUEST_ERROR_RESPONSE:\n return state.set('loading', false).set('error', action.response);\n case REDIRECT_TO_PAGE:\n return state.set('redirect', action.redirect);\n case RESET:\n return initialState;\n default:\n return state;\n }\n}\n\nexport default catalogEditReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOfferChilds = state => state.get('offerChilds', initialState);\n\nconst makeSelectMonthlyRate = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('monthlyRate'),\n );\n\nconst makeSelectDuration = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('duration'),\n );\n\nconst makeSelectDeposit = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('deposit'),\n );\n\nconst makeSelectDistance = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('distance'),\n );\n\nconst makeSelectSecondDistance = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('secondDistance'),\n );\n\nconst makeSelectThirdDistance = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('thirdDistance'),\n );\n\nconst makeSelectChildOffers = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('offers'),\n );\n\nconst makeSelectHasError = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('hasError'),\n );\n\nconst makeSelectErrorMsg = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('errorMsg'),\n );\n\nconst makeSelectIsLoading = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('loading'),\n );\n\nconst makeSelectChildEditing = () =>\n createSelector(selectOfferChilds, offerChildsState =>\n offerChildsState.get('editMode'),\n );\n\nexport {\n selectOfferChilds,\n makeSelectMonthlyRate,\n makeSelectDuration,\n makeSelectDeposit,\n makeSelectDistance,\n makeSelectSecondDistance,\n makeSelectThirdDistance,\n makeSelectChildOffers,\n makeSelectHasError,\n makeSelectErrorMsg,\n makeSelectIsLoading,\n makeSelectChildEditing,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#show-extra-commission-cta {\\n margin-top: .9rem;\\n font-size: 12px;\\n text-decoration: underline;\\n cursor: pointer; }\\n\\n.over-commission-config-container {\\n margin-top: 35px; }\\n .over-commission-config-container .input-slider-container {\\n width: 86%;\\n height: 25px;\\n padding: 0 15px; }\\n .over-commission-config-container .InputSlider {\\n margin-top: inherit !important; }\\n .over-commission-config-container .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\\n margin-left: -1px;\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0; }\\n\\n.ui-list {\\n margin-top: 1rem;\\n width: 100%;\\n color: #484848; }\\n .ui-list .icon {\\n display: inline;\\n width: 20px;\\n height: 15px; }\\n .ui-list .icon svg {\\n width: 20px;\\n height: auto;\\n margin-bottom: .4rem;\\n margin-right: .4rem;\\n vertical-align: middle;\\n fill: #484848; }\\n .ui-list .title {\\n width: 100%;\\n display: inline;\\n font-size: 16px;\\n font-weight: 600;\\n line-height: 1.375em;\\n color: #484848; }\\n .ui-list .title .fa {\\n color: #047bf8; }\\n .ui-list .items-hide {\\n display: none; }\\n .ui-list ul {\\n border-top: 1px solid rgba(0, 0, 0, 0.05);\\n padding: 0;\\n list-style-type: none;\\n margin-left: 1.9rem; }\\n .ui-list .item {\\n font-size: 16px;\\n font-weight: 400;\\n line-height: 1.375em;\\n color: #484848; }\\n .ui-list .item:first-child {\\n margin-top: .3em; }\\n .ui-list .item strong {\\n font-weight: 500; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","module.exports = {\"name\":\"iDEAL\",\"alias\":\"iDEAL\",\"shortName\":\"iDEAL\",\"description\":\"Accelera le tue vendite nel Noleggio a Lungo Termine\",\"cdnHost\":\"https://static.ideal-rent.com\",\"mainLogo\":\"https://static.ideal-rent.com/logos/ideal-rent-logo.png\",\"invertedLogo\":\"https://static.ideal-rent.com/logos/ideal-rent-logo-inverted.png\",\"footerLogo\":\"https://static.ideal-rent.com/logos/ideal-blu.png\",\"appTitle\":\"iDEAL - Accelera le tue vendite nel Noleggio a Lungo Termine\",\"firstLoginNeedsConfirm\":false,\"favicons\":{\"32\":\"https://cdn1.carplanner.com/ideal/icons/icon-32x32.ico\",\"128\":\"https://cdn1.carplanner.com/ideal/icons/icon-128x128.png\",\"152\":\"https://cdn1.carplanner.com/ideal/icons/icon-152x152.png\",\"167\":\"https://cdn1.carplanner.com/ideal/icons/icon-167x167.png\",\"180\":\"https://cdn1.carplanner.com/ideal/icons/icon-180x180.png\",\"192\":\"https://cdn1.carplanner.com/ideal/icons/icon-192x192.png\",\"196\":\"https://cdn1.carplanner.com/ideal/icons/icon-196x196.png\"},\"appUrl\":\"https://app.ideal-rent.com\",\"prescoringService\":{\"url\":\"prescoring/\",\"auth\":null,\"required\":true},\"stepPDFdownloadable\":2,\"pendo\":{\"enabled\":true,\"key\":\"87d97c3b-b0bb-462c-60c1-087a62831359\"},\"chatbots\":{\"prescoring\":\"5d76789bef5b482c42911a88\",\"faq\":\"64a6a2109a9a020007b9aa1c\"},\"support\":{\"customer\":\"Teresa

+39 389 523 0903

servizioclienti@ideal-rent.com\",\"business\":\"Carlo

+39 388 456 9375

salesnlt@ideal-rent.com\",\"finance\":\"Mariangela

+39 328 542 5496

scoring@ideal-rent.com\",\"text\":\"

Per richieste specifiche relative a un contratto attivo ti invitiamo a contattare la società di Noleggio:

Ayvens 800 426 426

Alphabet 800 591 591

Arval 800 900 467 (per cliente privato) oppure 800 185 493 (per p.iva)

Athlon 800 531 929

Leasys 800 334 422

UnipolRental 800 936 603

\"},\"optionalsAndColors\":false,\"accessories\":true,\"cloneCatalogOffer\":true,\"marketingSection\":true,\"showRecapOfferProvider\":true,\"showRecapOfferProduct\":true,\"onlyGroupLeaderSections\":[\"/admin\"],\"quotationDocumentsUploadStrict\":true,\"sentry\":{\"enabled\":true,\"dsn\":\"https://19c86feac3e94e2890091ad136a5be38@o524854.ingest.sentry.io/6327553\"},\"icons\":[],\"style\":\"default\",\"colors\":{\"main\":\"#047bf8\",\"secondary\":\"#1f855f\",\"gradient\":{\"from\":\"#65A8F1\",\"to\":\"#007bff\"},\"darkGradient\":{\"from\":\"#65A8F1\",\"to\":\"#007bff\"}},\"tags\":{\"privati\":\"Privati\",\"piva\":\"P.IVA\"},\"veichleTypes\":[{\"key\":\"vehicleTypeCar\",\"value\":\"car\"},{\"key\":\"vehicleTypeBusiness\",\"value\":\"business\"},{\"key\":\"vehicleTypeMinicar\",\"value\":\"minicar\"}],\"bundlesDescription\":{},\"messages\":{\"app.components.PrescoringTool\":{\"widgetLabel\":\"credit check\"},\"app.components.OfferPrice\":{\"price\":\"IVA esclusa\"},\"app.components.OfferValue\":{\"price\":\"Inserisci l'importo del canone mensile dell'offerta senza IVA\",\"deposit\":\"Inserisci l'importo da versare alla firma del contratto senza IVA\"},\"app.components.OfferChilds\":{\"price\":\"Inserisci l'importo del canone mensile dell'offerta senza IVA\",\"deposit\":\"Inserisci un secondo anticipo senza IVA per generare le variazioni\"},\"app.components.CarItem\":{\"vat\":\"iva escl.\",\"deposit\":\"Anticipo € {deposit} iva escl.\"},\"app.components.CarQuote\":{\"price\":\"{monthly_rate} € al mese IVA esclusa,\"},\"app.components.Quotation\":{\"vat\":\"IVA esclusa\",\"vatNotice\":\"IVA esclusa ed al netto di eventuali ritenute d’acconto.\",\"vatNoticeDescription\":\"L’importo è indicativo e rappresenta esclusivamente una stima del compenso a cui il Procacciatore avrà diritto ai termini e alle condizioni del contratto di procacciamento. L’importo potrebbe variare in funzione di eventuali optional sulla vettura o eventuali modifiche al contratto (es. riduzioni di franchigie). L’importo si riferisce alla conclusione di un contratto per un’auto singola: per flotte aziendali l’importo potrebbe ridursi in relazione alla trattativa commerciale.\"},\"app.components.UIKit\":{\"feeDisclaimer\":\"IVA esclusa ed al netto di eventuali ritenute d’acconto.\",\"feeDisclaimerDescription\":\"L’importo è indicativo e rappresenta esclusivamente una stima del compenso a cui il Procacciatore avrà diritto ai termini e alle condizioni del contratto di procacciamento. L’importo potrebbe variare in funzione di eventuali optional sulla vettura o eventuali modifiche al contratto (es. riduzioni di franchigie). L’importo si riferisce alla conclusione di un contratto per un’auto singola: per flotte aziendali l’importo potrebbe ridursi in relazione alla trattativa commerciale.\"},\"app.containers.Quotation\":{\"expiredOffer\":\"L'offerta collegata a questo preventivo ha subìto delle variazioni, crea un nuovo preventivo nella sezione offerte!\"}},\"faqs\":[{\"title\":\"Cos’è il Noleggio a Lungo Termine?\",\"content\":\"

Il Noleggio a Lungo Termine è una soluzione di mobilità innovativa per privati e partite Iva. A fronte del pagamento di un canone fisso il cliente ha a disposizione un’auto o un veicolo commerciale sempre nuovo.

Durata del contratto, chilometraggio e anticipo sono personalizzabili.

\"},{\"title\":\"Quali sono i parametri del contratto?\",\"content\":\"\"},{\"title\":\"Che differenza c’è tra anticipo e deposito?\",\"content\":\"

L’anticipo va ad abbassare la rata mensile, non è obbligatorio ma potrebbe essere necessario per superare la fase di valutazione finanziaria.

' +

Il deposito è una forma di garanzia che potrebbe essere richiesta dalla casa di noleggio, il suo importo non impatta sul canone e verrà restituito al termine del contratto.

\"},{\"title\":\"Quali sono i servizi inclusi nel Noleggio a Lungo Termine?\",\"content\":\"\"},{\"title\":\"Quali sono i servizi aggiuntivi a pagamento?\",\"content\":\"\"},{\"title\":\"Le franchigie assicurative\",\"content\":\"

Le vetture presenti in piattaforma hanno valori standard (RCA 250€, Danni 500€, Furto 10% o 500€) ma è possibile richiedere la modifica al nostro commerciale, questo impatterà sul canone.

\"},{\"title\":\"Quali sono i vantaggi del Noleggio a Lungo termine?\",\"content\":\"\"},{\"title\":\"Cosa succede se il cliente supera i km previsti nel contratto o ne percorre di meno?\",\"content\":\"

In caso di eccedenza chilometrica si pagherà la differenza secondo ciò che è indicato nel contratto, in caso contrario si otterrà un rimborso.

\"},{\"title\":\"È possibile modificare il contratto?\",\"content\":\"

Sì, c’è la possibilità di ridefinire i parametri di durata, percorrenza e i servizi.

\"},{\"title\":\"Chi può guidare il veicolo?\",\"content\":\"

L’intestatario del contratto, i familiari e tutte le persone autorizzate in forma scritta.

Per le società è autorizzato chiunque ne faccia parte.

\"},{\"title\":\"Si può restituire anticipatamente la vettura?\",\"content\":\"

Sì, pagando una penale di recesso anticipato secondo le condizioni indicate nel contratto.

\"},{\"title\":\"È possibile guidare all’estero?\",\"content\":\"

Sì, nei paesi in cui è valida la carta verde per la copertura assicurativa.

\"},{\"title\":\"Si può trasformare un veicolo in N1?\",\"content\":\"

Sì, se previsto dalla casa madre.

\"}]};","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Col } from 'reactstrap';\nimport './styles.scss';\n\nconst dataWidget = props => {\n const { title, value, unit, oldValue, size = 4 } = props;\n const trend = oldValue > value === true ? 'up' : 'down';\n return (\n \n
\n
{title}
\n
{unit}{value.toLocaleString('it')}
\n {oldValue > 0 && (\n
\n { Math.round(value / oldValue * 100) }%\n {oldValue >= value ? (\n \n ) : (\n \n )}\n
\n )}\n\n
\n \n );\n};\n\ndataWidget.defaultProps = {\n value: 0,\n oldValue: 0,\n unit: '€',\n};\n\ndataWidget.propTypes = {\n title: PropTypes.string.isRequired,\n value: PropTypes.any,\n unit: PropTypes.string,\n oldValue: PropTypes.number,\n size: PropTypes.number,\n};\n\nexport default dataWidget;\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferDetails {\\n color: #404950; }\\n #OfferDetails .detail-title {\\n font-size: 18px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem; }\\n #OfferDetails .detail-title .action-button.small {\\n margin-top: -.2rem; }\\n #OfferDetails .detail-description {\\n font-size: 14px;\\n line-height: 1;\\n padding: .5rem;\\n padding-top: unset;\\n margin-bottom: .5rem; }\\n #OfferDetails .detail-items {\\n border-radius: 6px;\\n background-color: #fff;\\n margin-bottom: 16px;\\n padding: 1rem;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12); }\\n #OfferDetails .detail-actions {\\n padding: 1rem;\\n margin-top: .5rem;\\n margin-bottom: .5rem; }\\n #OfferDetails .detail-terms {\\n text-align: left;\\n font-weight: normal;\\n font-size: 13px;\\n line-height: 18px; }\\n #OfferDetails .OfferDetails-Sticky .ant-affix {\\n z-index: 1; }\\n\\n.ant-form-item .ant-form-item-label label,\\n.ant-form-item .ant-checkbox-wrapper span {\\n font-size: 16px;\\n font-weight: 400;\\n line-height: 1.375em;\\n color: #484848; }\\n\\n.offer-optionals-colors .ant-modal-close-x {\\n width: 64px;\\n height: 64px;\\n line-height: 62px; }\\n\\n.offer-optionals-colors .ant-modal-title h6 {\\n margin-bottom: 5px; }\\n\\n.offer-optionals-colors .ant-modal-body {\\n overflow: auto;\\n max-height: calc(100vh - 325px); }\\n\\n.offer-optionals-colors .ant-modal-title h6 {\\n word-wrap: break-word !important;\\n font-size: 16px !important;\\n font-weight: 600 !important;\\n line-height: 1.33em !important;\\n color: #404950 !important;\\n display: block;\\n margin-top: 5px; }\\n\\n.offer-optionals-colors ul {\\n border-top: none;\\n margin-left: .9rem; }\\n\\n.offer-optionals-colors .ui-list {\\n margin-top: 2rem; }\\n .offer-optionals-colors .ui-list .item {\\n line-height: 2em; }\\n .offer-optionals-colors .ui-list:first-of-type {\\n margin-top: 0; }\\n\\n.offer-optionals-colors .ant-radio-group, .offer-optionals-colors .ant-checkbox-wrapper {\\n display: block;\\n margin-top: 8px;\\n margin-bottom: 4px; }\\n\\n.offer-optionals-colors .ant-checkbox-wrapper, .offer-optionals-colors .ant-radio-wrapper {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\\n padding-bottom: 8px; }\\n\\n.offer-optionals-colors .ant-checkbox-wrapper {\\n margin-right: 8px; }\\n\\n.offer-optionals-colors .ant-radio-wrapper {\\n display: block;\\n line-height: 2em; }\\n\\n.text-underline {\\n text-decoration: underline; }\\n .text-underline > * {\\n text-decoration: underline; }\\n\\n.btn-link-no-padding {\\n padding: 0; }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction UserIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},[React.createElement(\"path\",{\"d\":\"M58.741,56.809l-5.969-6.244c1.746-1.919,2.82-4.458,2.82-7.25c0-5.953-4.843-10.796-10.796-10.796S34,37.361,34,43.314\\n\\t\\tS38.843,54.11,44.796,54.11c2.441,0,4.688-0.824,6.499-2.196l6.001,6.277c0.196,0.205,0.459,0.309,0.723,0.309\\n\\t\\tc0.249,0,0.497-0.092,0.691-0.277C59.108,57.841,59.123,57.208,58.741,56.809z M36,43.314c0-4.85,3.946-8.796,8.796-8.796\\n\\t\\ts8.796,3.946,8.796,8.796s-3.946,8.796-8.796,8.796S36,48.164,36,43.314z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M27.5,53.518c-0.634,0-1.266-0.031-1.895-0.078c-0.109-0.008-0.218-0.015-0.326-0.025c-0.634-0.056-1.265-0.131-1.89-0.233\\n\\t\\tc-0.028-0.005-0.056-0.01-0.084-0.015c-1.322-0.221-2.623-0.546-3.89-0.971c-0.039-0.013-0.079-0.026-0.118-0.04\\n\\t\\tc-0.629-0.214-1.251-0.45-1.862-0.713c-0.004-0.002-0.009-0.004-0.013-0.006c-0.578-0.249-1.145-0.525-1.705-0.816\\n\\t\\tc-0.073-0.038-0.147-0.074-0.219-0.113c-0.511-0.273-1.011-0.568-1.504-0.876c-0.146-0.092-0.291-0.185-0.435-0.279\\n\\t\\tc-0.454-0.297-0.902-0.606-1.338-0.933c-0.045-0.034-0.088-0.07-0.133-0.104c0.032-0.018,0.064-0.036,0.096-0.054l7.907-4.313\\n\\t\\tc1.36-0.742,2.205-2.165,2.205-3.714l-0.001-3.602l-0.23-0.278c-0.022-0.025-2.184-2.655-3.001-6.216l-0.091-0.396l-0.341-0.221\\n\\t\\tc-0.481-0.311-0.769-0.831-0.769-1.392v-3.545c0-0.465,0.197-0.898,0.557-1.223l0.33-0.298v-5.57l-0.009-0.131\\n\\t\\tc-0.003-0.024-0.298-2.429,1.396-4.36c1.446-1.649,3.924-2.486,7.363-2.486c3.426,0,5.896,0.83,7.346,2.466\\n\\t\\tc1.692,1.911,1.415,4.361,1.413,4.381l-0.009,5.701l0.33,0.298c0.359,0.324,0.557,0.758,0.557,1.223v3.545\\n\\t\\tc0,0.713-0.485,1.36-1.181,1.575c-0.527,0.162-0.823,0.723-0.66,1.25c0.162,0.527,0.721,0.821,1.25,0.66\\n\\t\\tc1.55-0.478,2.591-1.879,2.591-3.485v-3.545c0-0.867-0.318-1.708-0.887-2.369v-4.667c0.052-0.52,0.236-3.448-1.883-5.864\\n\\t\\tc-1.843-2.103-4.826-3.168-8.867-3.168s-7.024,1.065-8.867,3.168c-2.119,2.416-1.935,5.346-1.883,5.864v4.667\\n\\t\\tc-0.568,0.661-0.887,1.502-0.887,2.369v3.545c0,1.101,0.494,2.128,1.34,2.821c0.81,3.173,2.477,5.575,3.093,6.389v2.894\\n\\t\\tc0,0.816-0.445,1.566-1.162,1.958l-7.907,4.313c-0.252,0.137-0.502,0.297-0.752,0.476C5.276,42.31,2,35.541,2,28.018\\n\\t\\tc0-14.061,11.439-25.5,25.5-25.5S53,13.958,53,28.018c0,0.553,0.447,1,1,1s1-0.447,1-1c0-15.163-12.337-27.5-27.5-27.5\\n\\t\\tS0,12.855,0,28.018c0,8.009,3.444,15.228,8.926,20.258L8.899,48.3l0.892,0.752c0.058,0.049,0.121,0.089,0.178,0.137\\n\\t\\tc0.474,0.393,0.965,0.766,1.465,1.127c0.162,0.117,0.324,0.235,0.489,0.348c0.534,0.368,1.082,0.717,1.642,1.048\\n\\t\\tc0.122,0.072,0.245,0.142,0.368,0.212c0.613,0.349,1.239,0.678,1.88,0.98c0.047,0.022,0.094,0.042,0.142,0.064\\n\\t\\tc2.089,0.971,4.319,1.684,6.651,2.105c0.061,0.011,0.122,0.022,0.184,0.033c0.724,0.125,1.456,0.225,2.197,0.292\\n\\t\\tc0.09,0.008,0.181,0.013,0.271,0.021c0.741,0.06,1.487,0.099,2.243,0.099c0.553,0,1-0.447,1-1S28.053,53.518,27.5,53.518z\",\"key\":1})]),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nUserIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 59.018 59.018\",\"style\":{\"enableBackground\":\"new 0 0 59.018 59.018\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = UserIcon;\n\nUserIcon.default = UserIcon;\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".action-button {\\n font-weight: 600; }\\n .action-button.small {\\n cursor: pointer;\\n float: right;\\n font-size: 10px;\\n line-height: 1.2;\\n text-align: center;\\n width: 8.5rem;\\n height: 1.5rem;\\n padding: .4rem;\\n padding-left: .5rem;\\n border-radius: 6px; }\\n .action-button.small svg {\\n width: 13px;\\n display: inline;\\n margin-right: .1rem; }\\n .action-button.medium {\\n display: inline;\\n background-color: #f2f5fe;\\n border: 1px solid #f2f5fe;\\n color: #484848;\\n line-height: 1em;\\n height: 2.2em;\\n width: 100%;\\n border-radius: 6px;\\n font-size: 14px;\\n padding: 6px; }\\n .action-button.medium svg {\\n font-size: 10px;\\n width: 15px;\\n height: 15px;\\n margin-right: .3rem;\\n fill: #484848; }\\n .action-button.medium:hover {\\n border: 1px solid #047bf8; }\\n .action-button:hover {\\n background-color: #f2f5fe;\\n color: #047bf8; }\\n .action-button:hover svg {\\n fill: #047bf8; }\\n\", \"\"]);\n\n// exports\n","import {put, takeLatest, all, select} from 'redux-saga/effects';\nimport {\n LOGOUT,\n API_URL,\n LOAD_USER,\n UPDATE_PROFILE,\n UPDATE_PASSWORD,\n REQUEST_API_KEY,\n TOGGLE_MEMBER,\n ADD_MEMBER,\n UPDATE_MEMBER,\n UPLOAD_LOGO,\n} from './constants';\nimport {GET_AGENT_MEMBERS} from \"../Profile/constants\";\nimport {\n setUser,\n loginError,\n profileUpdatedError,\n passwordUpdated,\n passwordUpdatedError,\n setLoading,\n apiKeyReceived,\n apiKeyFailed,\n addMemberFailed,\n updateMemberFailed,\n uploadLogoSuccess,\n uploadLogoFailed,\n toggleMemberFailed,\n toggleMemberSuccess,\n loadedMembers,\n} from './actions';\nimport { selectIsLoading } from './selectors';\nimport {\n removeAuthToken,\n getPlainRequestHeadersAsLogged,\n getRequestHeadersAsLogged,\n responseHandler\n} from '../../utils/auth';\n\nvar fetched = false;\n\nfunction* fetchUser() {\n if (!fetched) {\n fetched = true;\n const requestURL = `${API_URL}agent/profile`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response => {\n if (response.status >= 400 && response.status < 500) {\n throw response.status;\n }\n return responseHandler(response);\n });\n\n yield put(setUser(response.data));\n } catch (err) {\n console.error('errore', err)\n removeAuthToken();\n yield put(loginError());\n window.location = '/login';\n }\n }\n}\n\nfunction* logout() {\n const requestURL = `${API_URL}logout`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n };\n\n yield fetch(requestURL, parameters).then(response => {\n if (response.status >= 400 && response.status < 500) {\n throw response.status;\n }\n return responseHandler(response);\n });\n\n if (window.BE_API) {\n window.BE_API.destroy();\n }\n\n removeAuthToken();\n\n if (response.status === 302) {\n window.location = response.headers.get('Location');\n } else {\n window.location = '/login';\n }\n } catch (err) {\n removeAuthToken();\n yield put(loginError());\n }\n}\n\nfunction* updateProfile({profile}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent/profile`;\n const requestBody = {...profile};\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'profile');\n\n if (errors !== false) {\n yield put(profileUpdatedError(errors));\n } else {\n yield put(setUser(response.data));\n }\n } catch (e) {\n }\n }\n}\n\nfunction* updatePassword({passwords}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}password`;\n const requestBody = {...passwords};\n\n try {\n const parameters = {\n method: 'PATCH',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'password');\n\n if (errors !== false) {\n yield put(passwordUpdatedError(errors));\n } else {\n yield put(passwordUpdated(response.data));\n }\n } catch (e) {\n }\n }\n}\n\nfunction* requestApiKey() {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent/service/api`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'apiKey');\n\n if (errors !== false) {\n yield put(apiKeyFailed(errors));\n } else {\n yield put(apiKeyReceived(response.data));\n }\n } catch (e) {\n console.error(e)\n yield put(apiKeyFailed('Si sono verificati errori, si prega di riprovare'));\n }\n }\n}\n\nfunction* addMember({agent}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(agent),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'member');\n\n if (errors !== false) {\n yield put(addMemberFailed(errors));\n yield put(setLoading(false));\n } else {\n // yield put(addMemberSuccess(response.data));\n window.location.reload();\n }\n } catch (e) {\n }\n }\n}\n\nfunction* updateMember({agent}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent/${agent.code}`;\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(agent),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'member');\n\n if (errors !== false) {\n yield put(updateMemberFailed(errors));\n yield put(setLoading(false));\n } else {\n // yield put(updateMemberSuccess(response.data));\n window.location.reload();\n }\n } catch (e) {\n }\n }\n}\n\nfunction* uploadLogo({file}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent/logo`;\n\n const formData = new FormData();\n formData.append('logo', file);\n\n try {\n const parameters = {\n method: 'POST',\n headers: getPlainRequestHeadersAsLogged(),\n body: formData,\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'rebrand');\n\n if (errors !== false) {\n yield put(uploadLogoFailed(errors));\n } else {\n yield put(uploadLogoSuccess(response.data));\n }\n } catch (e) {\n }\n }\n}\n\nfunction* toggleMember({agentId}) {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const requestURL = `${API_URL}agent/${agentId}/toggle`;\n\n try {\n const parameters = {\n method: 'PATCH',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const errors = getErrorsFromResponse(response, 'toggleMember');\n\n if (errors !== false) {\n yield put(toggleMemberFailed(errors));\n } else {\n yield put(toggleMemberSuccess(response.data));\n }\n } catch (e) {\n }\n }\n}\n\nfunction* fetchAgentMembers() {\n const isLoading = yield select(selectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n const requestURL = `${API_URL}agent/members`;\n\n try {\n yield put(setLoading(true));\n\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(loadedMembers(response.data));\n } catch (e) {\n console.log('error', e);\n }\n }\n}\n\nfunction getErrorsFromResponse(response, key) {\n if (typeof response.errors !== 'undefined' || typeof response.error !== 'undefined') {\n if (response.error && response.error.http_code) {\n response.errors = response.errors || {};\n response.errors[key] = response.error.http_code < 500 ? [response.error.message || 'Richiesta non valida'] : ['Si sono verificati errori, si prega di riprovare'];\n }\n return {[key]: {...response.errors || {}}};\n }\n\n return false;\n}\n\nfunction* actionWatcher() {\n yield takeLatest(LOGOUT, logout);\n yield takeLatest(LOAD_USER, fetchUser);\n yield takeLatest(UPDATE_PROFILE, updateProfile);\n yield takeLatest(UPDATE_PASSWORD, updatePassword);\n yield takeLatest(REQUEST_API_KEY, requestApiKey);\n yield takeLatest(ADD_MEMBER, addMember);\n yield takeLatest(UPDATE_MEMBER, updateMember);\n yield takeLatest(UPLOAD_LOGO, uploadLogo);\n yield takeLatest(TOGGLE_MEMBER, toggleMember);\n yield takeLatest(GET_AGENT_MEMBERS, fetchAgentMembers);\n\n}\n\nexport default function* appWatcher() {\n yield all([actionWatcher()]);\n}\n","export function getAuthToken() {\n return JSON.parse(window.localStorage.getItem('access_token'));\n}\n\nexport function setAuthToken(token) {\n window.localStorage.setItem('access_token', JSON.stringify(token));\n}\n\nexport function getRefreshToken() {\n return window.localStorage.getItem('refresh_token');\n}\n\nexport function setRefreshToken(token) {\n window.localStorage.setItem('refresh_token', JSON.stringify(token));\n}\n\nexport function removeAuthToken() {\n window.localStorage.clear();\n return true;\n}\n\nexport function getUsername() {\n return JSON.parse(window.localStorage.getItem('username'));\n}\n\nexport function setUsername(username) {\n window.localStorage.setItem('username', JSON.stringify(username));\n}\n\nexport function setUserRole(role) {\n window.localStorage.setItem('role', role);\n}\n\nexport function getUserRole() {\n return window.localStorage.getItem('role');\n}\n\n/**\n *\n * @returns {boolean}\n */\nexport function hasAuthToken() {\n if (localStorage.getItem('access_token')) {\n return true;\n }\n return false;\n}\n\nexport function getRequestHeadersAsLogged() {\n return {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${getAuthToken()}`,\n 'X-Refresh-Tkn': getRefreshToken() || null,\n };\n}\n\nexport function getPlainRequestHeadersAsLogged() {\n return {\n 'Authorization': `Bearer ${getAuthToken()}`,\n 'X-Refresh-Tkn': getRefreshToken() || null,\n };\n}\n\nexport function responseHandler(response) {\n if (response.status === 503){\n window.location = '/login';\n return;\n }\n\n const currentAccessToken = getAuthToken();\n const currentRefreshToken = getRefreshToken();\n const responseAccessToken = response.headers.get('X-Access-Tkn');\n const responseRefreshToken = response.headers.get('X-Refresh-Tkn');\n\n if (currentAccessToken !== responseAccessToken && responseAccessToken) {\n setAuthToken(responseAccessToken);\n }\n\n if (currentRefreshToken !== responseRefreshToken) {\n setRefreshToken(responseRefreshToken);\n }\n\n return response.json();\n}\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".flex-section {\\n display: flex;\\n margin-top: 1rem;\\n margin-bottom: 2rem;\\n width: 100%; }\\n .flex-section .flex-section-header {\\n min-width: 30%;\\n display: flex;\\n flex-grow: 1;\\n font-size: 1em;\\n font-weight: 400;\\n line-height: 1.375em;\\n color: #484848; }\\n .flex-section .flex-section-content {\\n flex-grow: 1;\\n display: flex;\\n width: 100%;\\n flex-flow: row wrap; }\\n .flex-section .flex-section-content .flex-section-description {\\n display: block;\\n font-weight: 400;\\n word-wrap: break-word;\\n font-size: .8em;\\n line-height: 1.375em;\\n opacity: 0.54;\\n width: 100%; }\\n .flex-section:last-child {\\n margin-bottom: 0; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n * CatalogEditConstants\n */\n\nexport const SET_LOADING = 'ideal/CatalogEdit/SET_LOADING';\nexport const GET_OFFER = 'ideal/CatalogEdit/GET_OFFER';\nexport const DELETE_OFFER = 'ideal/CatalogEdit/DELETE_OFFER';\nexport const OFFER_RECEIVED = 'ideal/CatalogEdit/OFFER_RECEIVED';\nexport const EDIT_OFFER = 'ideal/CatalogEdit/EDIT_OFFER';\nexport const STORE_CHILD_OFFERS = 'ideal/CatalogEdit/STORE_CHILD_OFFERS';\nexport const REQUEST_SUCCESS_RESPONSE = 'ideal/CatalogEdit/REQUEST_SUCCESS_RESPONSE';\nexport const REQUEST_ERROR_RESPONSE = 'ideal/CatalogEdit/REQUEST_ERROR_RESPONSE';\nexport const REDIRECT_TO_PAGE = 'ideal/CatalogEdit/REDIRECT_TO_PAGE';\nexport const RESET = 'ideal/CatalogEdit/RESET';\n","/*\n* OfferValuesReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n SET_OFFER_DEPOSIT,\n SET_OFFER_DISTANCE,\n SET_OFFER_DURATION,\n SET_OFFER_NOTES,\n SET_OFFER_PRIVATE_NOTES,\n SET_OFFER_REFERENCE,\n SET_OFFER_RIGHT_LABEL,\n SET_OFFER_MONTHLY_RATE,\n SET_OFFER_FAST_DELIVERY,\n SET_OFFER_DELIVERY_TIME,\n SET_OFFER_DELIVERY_TIMES,\n SET_OFFER_BROKERS,\n SET_OFFER_BROKER,\n SET_OFFER_PRODUCTS,\n SET_OFFER_PRODUCT,\n VALIDATE_USER_INPUT,\n SET_ERROR_MESSAGE,\n RESET,\n} from './constants';\nimport {\n DISTANCE_YEARS_RANGE,\n DURATION_RANGE,\n} from 'containers/App/constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n monthlyRate: null,\n duration: DURATION_RANGE.min * 3,\n distance: DISTANCE_YEARS_RANGE.min * 15,\n deposit: null,\n rightLabel: {},\n fastDelivery: false,\n deliveryTime: '',\n deliveryTimes: [],\n brokers: [],\n broker: null,\n products: [],\n product: null,\n hasError: false,\n errorMsg: '',\n});\n\nfunction offerValueReducer(state = initialState, action) {\n switch (action.type) {\n case SET_OFFER_MONTHLY_RATE:\n return state.set('monthlyRate', action.monthlyRate);\n case SET_OFFER_DURATION:\n return state.set('duration', action.duration);\n case SET_OFFER_NOTES:\n return state.set('notes', action.notes);\n case SET_OFFER_PRIVATE_NOTES:\n return state.set('private_notes', action.private_notes);\n case SET_OFFER_REFERENCE:\n return state.set('reference_code', action.reference);\n case SET_OFFER_RIGHT_LABEL:\n return state.set('rightLabel', {key: action.key, label: action.label});\n case SET_OFFER_DISTANCE:\n return state.set('distance', action.distance);\n case SET_OFFER_DEPOSIT:\n return state.set('deposit', action.deposit);\n case SET_OFFER_FAST_DELIVERY:\n return state.set('fastDelivery', action.fastDelivery);\n case SET_OFFER_DELIVERY_TIME:\n return state.set('deliveryTime', action.deliveryTime);\n case SET_OFFER_DELIVERY_TIMES:\n return state.set('deliveryTimes', action.deliveryTimes);\n case SET_OFFER_BROKERS:\n return state.set('brokers', action.brokers);\n case SET_OFFER_BROKER:\n return state.set('broker', action.broker).set('product', null);\n case SET_OFFER_PRODUCTS:\n return state.set('products', action.products);\n case SET_OFFER_PRODUCT:\n return state.set('product', action.product);\n case VALIDATE_USER_INPUT:\n return state.set('hasError', action.hasError);\n case SET_ERROR_MESSAGE:\n return state.set('errorMsg', action.msg);\n case RESET:\n return initialState;\n default:\n return state;\n }\n}\n\nexport default offerValueReducer;\n","var React = require('react');\n\nfunction CloseIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"title\",{\"className\":\"sc-CtfFt efFpcB\",\"key\":0},\"drover_ui_cross_icon\"),React.createElement(\"g\",{\"id\":\"Layer_4\",\"className\":\"sc-laTMn fJphvA\",\"key\":1},[React.createElement(\"line\",{\"x1\":\"34\",\"y1\":\"34\",\"x2\":\"6\",\"y2\":\"6\",\"className\":\"sc-fjmCvl jmdDbZ\",\"style\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"4px\"},\"key\":0}),React.createElement(\"line\",{\"x1\":\"34\",\"y1\":\"6\",\"x2\":\"6\",\"y2\":\"34\",\"className\":\"sc-fjmCvl jmdDbZ\",\"style\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"4px\"},\"key\":1})])]);\n}\n\nCloseIcon.defaultProps = {\"color\":\"#ffffff\",\"height\":\"17px\",\"viewBox\":\"0 0 40 40\",\"width\":\"17px\",\"className\":\"sc-hGoxap irFVct styles__CloseIcon-sc-51od27-2 fagkbJ\",\"stroke\":\"#ffffff\",\"style\":{\"cursor\":\"pointer\"}};\n\nmodule.exports = CloseIcon;\n\nCloseIcon.default = CloseIcon;\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#HorizontalFilter .open-filters-mobile-button {\\n vertical-align: 0.02em;\\n color: rgba(0, 0, 0, 0.85); }\\n\\n#HorizontalFilter .element-wrapper .element-header {\\n margin-bottom: 0.5rem !important;\\n padding-bottom: .5rem; }\\n\\n#HorizontalFilter .element-wrapper {\\n padding-bottom: 1rem; }\\n\\n#HorizontalFilter .clear {\\n cursor: pointer;\\n font-size: 16px;\\n font-weight: 500;\\n color: #1b55e2;\\n text-decoration: underline;\\n display: inline; }\\n\\n#HorizontalFilter .sort-label {\\n font-size: .875rem;\\n font-weight: 500;\\n display: inline;\\n margin-right: .5rem; }\\n #HorizontalFilter .sort-label svg {\\n transform: scale(1, -1);\\n width: 20px;\\n height: 20px; }\\n\", \"\"]);\n\n// exports\n","/*\n * CarSelectConstants\n */\n\nexport const GET_BRANDS = 'ideal/CarSelector/GET_BRANDS';\nexport const BRANDS_RECEIVED = 'ideal/CarSelector/BRANDS_RECEIVED';\nexport const BRANDS_ERROR = 'ideal/CarSelector/BRANDS_ERROR';\nexport const BRAND_SELECTED = 'ideal/CarSelector/BRAND_SELECTED';\n\nexport const MODELS_RECEIVED = 'ideal/CarSelector/MODELS_RECEIVED';\nexport const MODELS_ERROR = 'ideal/CarSelector/MODELS_ERROR';\nexport const MODEL_SELECTED = 'ideal/CarSelector/MODEL_SELECTED';\n\nexport const VERSIONS_RECEIVED = 'ideal/CarSelector/VERSIONS_RECEIVED';\nexport const VERSIONS_ERROR = 'ideal/CarSelector/VERSIONS_ERROR';\nexport const VERSION_SELECTED = 'ideal/CarSelector/VERSION_SELECTED';\n\nexport const CAR_RECEIVED = 'ideal/CarSelector/CAR_RECEIVED';\nexport const CAR_ERROR = 'ideal/CarSelector/CAR_ERROR';\n\nexport const GET_CAR_IMAGES = 'ideal/CarSelector/GET_CAR_IMAGES';\nexport const CAR_IMAGES_RECEIVED = 'ideal/CarSelector/CAR_IMAGES_RECEIVED';\nexport const CAR_IMAGES_ERROR = 'ideal/CarSelector/CAR_IMAGES_ERROR';\nexport const CAR_IMAGES_NEW = 'ideal/CarSelector/CAR_IMAGES_NEW';\n\nexport const RESET = 'ideal/CarSelector/RESET';\n\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./selector.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./selector.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./selector.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./posts.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./posts.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./posts.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItemWithSelect.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItemWithSelect.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItemWithSelect.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#QuotationsSort .element-wrapper .element-header {\\n margin-bottom: 0.5rem !important;\\n padding-bottom: .5rem; }\\n\\n#QuotationsSort .element-wrapper {\\n padding-bottom: 1rem; }\\n\\n#QuotationsSort .clear {\\n cursor: pointer;\\n font-size: 16px;\\n font-weight: 500;\\n color: #1b55e2;\\n text-decoration: underline;\\n display: inline; }\\n\\n#QuotationsSort .sort-label {\\n font-size: .875rem;\\n font-weight: 500;\\n display: inline;\\n margin-right: .5rem; }\\n #QuotationsSort .sort-label svg {\\n transform: scale(1, -1);\\n width: 20px;\\n height: 20px; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".right-side-modal {\\n float: right;\\n min-width: 38%;\\n margin-right: 5.2rem;\\n color: #404950;\\n border-radius: 6px;\\n background-color: #fff;\\n padding: .5rem;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12); }\\n .right-side-modal .modal-header {\\n border-bottom: unset !important;\\n color: #404950;\\n margin-top: .5rem;\\n margin-bottom: .5rem; }\\n .right-side-modal .modal-header span {\\n color: #404950; }\\n .right-side-modal .modal-title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n color: #404950; }\\n .right-side-modal .modal-content {\\n box-shadow: unset;\\n border: unset; }\\n .right-side-modal .modal-body, .right-side-modal .modal-header {\\n padding: unset; }\\n .right-side-modal .title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n .right-side-modal .title .action-button.small {\\n margin-top: -.2rem; }\\n .right-side-modal .btn-action {\\n width: 96%;\\n border-radius: .5rem;\\n background-color: #ff4a50;\\n text-align: center;\\n font-size: 1.2vw;\\n font-weight: 600;\\n line-height: 1em;\\n color: white;\\n padding: .8rem;\\n border: 1px solid #f2f5fe; }\\n .right-side-modal .detail-item {\\n text-align: left;\\n padding: .5rem; }\\n .right-side-modal .detail-item .item {\\n cursor: pointer;\\n height: 100%;\\n border-radius: .5rem;\\n background-color: #f2f5fe;\\n display: inline-block;\\n width: 30%;\\n text-align: center;\\n margin: .3rem;\\n color: #404950;\\n padding: .8rem;\\n border: 1px solid #f2f5fe; }\\n .right-side-modal .detail-item .item:hover {\\n color: #047bf8;\\n border-color: #047bf8; }\\n .right-side-modal .detail-item .item:hover svg {\\n fill: #047bf8; }\\n .right-side-modal .detail-item .item .value {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 700;\\n line-height: 1em; }\\n .right-side-modal .detail-item .item .description {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 400;\\n line-height: 1em; }\\n .right-side-modal .detail-item .item svg {\\n width: 25px;\\n height: 25px;\\n margin-bottom: .4rem;\\n vertical-align: middle;\\n fill: #404950; }\\n\", \"\"]);\n\n// exports\n","/*\n* OfferServicesReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n GET_SERVICES,\n SERVICES_ERROR,\n SERVICES_RECEIVED,\n SERVICE_SELECTED,\n SET_OFFER_PRODUCT_SERVICES,\n RESET,\n} from './constants';\nimport { SET_OFFER_PRODUCT } from '../OfferValue/constants'\n\n// The initial state of the App\nexport const initialState = fromJS({\n services: [],\n selected: {},\n productServices: [],\n error: null,\n loading: false,\n});\n\nfunction offersReducer(state = initialState, action) {\n switch (action.type) {\n case GET_SERVICES:\n return state.set('loading', true);\n case SERVICES_RECEIVED:\n return state.set('services', action.services).set('loading', false);\n case SERVICE_SELECTED:\n return state.set('selected', action.services);\n case SET_OFFER_PRODUCT_SERVICES:\n return state.set('productServices', action.services);\n case SET_OFFER_PRODUCT:\n return state.set('productServices', []).set('selected', []);\n case SERVICES_ERROR:\n return state\n .set('error', action.error)\n .set('services', [])\n .set('loading', false);\n case RESET:\n return initialState;\n default:\n return state;\n }\n}\n\nexport default offersReducer;\n","/*\n * CarImagesConstants\n */\n\nexport const UPLOAD_REQUEST = 'ideal/CarImages/UPLOAD_REQUEST';\nexport const UPLOAD_SUCCESS = 'ideal/CarImages/UPLOAD_SUCCESS';\nexport const UPLOAD_PROGRESS = 'ideal/CarImages/UPLOAD_PROGRESS';\nexport const UPLOAD_FAILURE = 'ideal/CarImages/UPLOAD_FAILURE';\nexport const DOWNLOAD_CAR_IMAGES_REQUEST = 'ideal/CarImages/DOWNLOAD_CAR_IMAGES_REQUEST';\nexport const DOWNLOAD_CAR_IMAGES_SUCCESS = 'ideal/CarImages/DOWNLOAD_CAR_IMAGES_SUCCESS';\nexport const SET_MAIN = 'ideal/CarImages/SET_MAIN';\nexport const SET_MAIN_SUCCESS = 'ideal/CarImages/SET_MAIN_SUCCESS';\nexport const DELETE = 'ideal/CarImages/DELETE';\nexport const DELETE_ALL = 'ideal/CarImages/DELETE_ALL';\nexport const DELETE_SUCCESS = 'ideal/CarImages/DELETE_SUCCESS';\nexport const DELETE_ALL_SUCCESS = 'ideal/CarImages/DELETE_ALL_SUCCESS';\n","import React from 'react';\nimport { Rate } from 'antd';\n\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nconst TrafficLights = ({ className, onClick, selected, enabled }) => {\n return \n selectedItem === 2) : false}\n onClick={onClick ? () => onClick(2) : null}\n disabled={typeof onClick !== 'function'}\n visible={enabled && enabled.length ? enabled.some(enabledItem => enabledItem === 2) : true}\n />\n selectedItem === 1) : false}\n onClick={onClick ? () => onClick(1) : null}\n disabled={typeof onClick !== 'function'}\n visible={enabled && enabled.length ? enabled.some(enabledItem => enabledItem === 1) : true}\n />\n selectedItem === 0) : false}\n onClick={onClick ? () => onClick(0) : null}\n disabled={typeof onClick !== 'function'}\n visible={enabled && enabled.length ? enabled.some(enabledItem => enabledItem === 0) : true}\n />\n \n}\n\nconst LightItem = ({ selected, onClick, disabled, visible }) => \n\nexport default TrafficLights;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Select-Options {\\n margin-bottom: 10px; }\\n .Select-Options .row {\\n margin-left: -6px;\\n margin-right: -6px; }\\n .Select-Options .selector-column {\\n padding-left: 6px;\\n padding-right: 6px; }\\n .Select-Options > .description {\\n font-size: 15px; }\\n .Select-Options h6 {\\n word-wrap: break-word !important;\\n font-size: 16px !important;\\n font-weight: 600 !important;\\n line-height: 1.33em !important;\\n color: #404950 !important;\\n display: block;\\n margin-top: 5px; }\\n .Select-Options.with-border {\\n border-top: 1px solid #e4e4e4;\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n padding-top: 5px; }\\n .Select-Options.disabled {\\n pointer-events: none;\\n opacity: .3; }\\n .Select-Options .iDEAL-Form-Badge {\\n display: inline;\\n background-color: #ff4a50;\\n font-weight: 400; }\\n\", \"\"]);\n\n// exports\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst prescoringSelector = state =>\n state.get('prescoring', initialState);\n\nconst makeSelectIsLoading = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('loading')\n );\n\nconst makeSelectWidgetIsOpen = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('widgetIsOpen')\n );\n\nconst makeSelectModalIsOpen = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('modalIsOpen')\n );\n\nconst makeSelectLogic = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('logic'),\n );\n\nconst makeSelectCheckResponse = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('checkResponse')\n );\n\nconst makeSelectChance = () =>\ncreateSelector(prescoringSelector, prescoringSelectorState => {\n const chance = prescoringSelectorState.get('checkResponse').chance;\n\n return typeof chance === 'undefined' ? null : chance\n});\n\nconst makeSelectCheckInputData = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('checkInput')\n );\n\nconst makeSelectOfferLogic = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('offerSustainability').toJS().logic\n );\n\nconst makeSelectOfferCheckResponse = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('offerSustainability').toJS().checkResponse\n );\n\nconst makeSelectOfferChance = () =>\ncreateSelector(prescoringSelector, prescoringSelectorState => {\n const chance = prescoringSelectorState.get('offerSustainability').toJS().checkResponse.chance;\n\n return typeof chance === 'undefined' ? null : chance\n});\n\nconst makeSelectOfferCheckInputData = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('offerSustainability').toJS().checkInput\n );\n\nconst makeSelectSustainabilitySelected = () =>\n createSelector(prescoringSelector, prescoringSelectorState =>\n prescoringSelectorState.get('sustainabilitySelected').toJS()\n );\n\nexport {\n prescoringSelector,\n makeSelectWidgetIsOpen,\n makeSelectIsLoading,\n makeSelectModalIsOpen,\n makeSelectLogic,\n makeSelectCheckResponse,\n makeSelectChance,\n makeSelectCheckInputData,\n makeSelectSustainabilitySelected,\n makeSelectOfferLogic,\n makeSelectOfferCheckResponse,\n makeSelectOfferChance,\n makeSelectOfferCheckInputData,\n};\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".iDEAL-Badge {\\n position: absolute;\\n top: 4px;\\n right: 0px;\\n background-color: #ff4a50;\\n font-weight: 400; }\\n\", \"\"]);\n\n// exports\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectFilters = state => state.get('filters', initialState);\n\nconst makeSelectTags = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('tags').toArray(),\n );\n\nconst makeSelectFiltersOption = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedTags').toArray(),\n );\n\nconst makeSelectSelectedTags = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedTags').toArray(),\n );\n\nconst makeSelectSort = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('sorts').toArray(),\n );\n\nconst makeSelectSelectedSort = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedSort'),\n );\n\nconst makeSelectTagsEnabled = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('isTagsEnabled'),\n );\n\nconst transformSelectedFiltersForQuesystring = selectedFilters => {\n let obj = {};\n\n selectedFilters.forEach(filter => {\n const filterKey = filter.name || filter.value;\n const filterValue = filter.name ? filter.value : 1;\n\n obj[filterKey] = filterValue\n })\n\n return obj;\n}\n\nexport {\n selectFilters,\n makeSelectTags,\n makeSelectSelectedTags,\n makeSelectFiltersOption,\n makeSelectSort,\n makeSelectSelectedSort,\n makeSelectTagsEnabled,\n transformSelectedFiltersForQuesystring,\n};\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CarItemsList .col-md-4 {\\n padding-left: 4px !important;\\n padding-right: 4px !important;\\n padding-bottom: 8px !important; }\\n\\n.CarItemsList .row {\\n margin-left: unset !important;\\n margin-right: unset !important; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction FeaturesIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"id\":\"Personal-Card\",\"key\":0},[React.createElement(\"path\",{\"d\":\"M53,27H31c-0.5527096,0-1,0.4472008-1,1c0,0.5527,0.4472904,1,1,1h22c0.5527916,0,1-0.4473,1-1\\n\\t\\tC54,27.4472008,53.5527916,27,53,27z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M53,35H31c-0.5527096,0-1,0.4472008-1,1c0,0.5527,0.4472904,1,1,1h22c0.5527916,0,1-0.4473,1-1\\n\\t\\tC54,35.4472008,53.5527916,35,53,35z\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M53,43H31c-0.5527096,0-1,0.4472008-1,1c0,0.5527,0.4472904,1,1,1h22c0.5527916,0,1-0.4473,1-1\\n\\t\\tC54,43.4472008,53.5527916,43,53,43z\",\"key\":2}),React.createElement(\"path\",{\"d\":\"M59.9628906,8H4.0371919C1.8074919,8,0,9.8073997,0,12.0370998v39.9255981C0,54.1925011,1.8074919,56,4.0371919,56\\n\\t\\th55.9256973C62.1924896,56,64,54.1925011,64,51.9626999V12.0370998C64,9.8073997,62.1924896,8,59.9628906,8z M62,51.9626999\\n\\t\\tC62,53.0861015,61.0861893,54,59.9628906,54H4.0371919C2.9138918,54,2,53.0861015,2,51.9626999V12.0370998\\n\\t\\tC2,10.9138002,2.9138918,10,4.0371919,10h55.9256973C61.0861893,10,62,10.9138002,62,12.0370998V51.9626999z\",\"key\":3}),React.createElement(\"path\",{\"d\":\"M20,16h-8c-2.2091084,0-4,1.7908001-4,4v8c0,2.2091007,1.7908916,4,4,4h8c2.2091923,0,4-1.7908993,4-4v-8\\n\\t\\tC24,17.7908001,22.2091923,16,20,16z M22,28c0,1.1026993-0.8972092,2-2,2h-8c-1.1027088,0-2-0.8973007-2-2v-8\\n\\t\\tc0-1.1028004,0.8972912-2,2-2h8c1.1027908,0,2,0.8971996,2,2V28z\",\"key\":4})]),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nFeaturesIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Layer_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 64 64\",\"enableBackground\":\"new 0 0 64 64\",\"xmlSpace\":\"preserve\"};\n\nmodule.exports = FeaturesIcon;\n\nFeaturesIcon.default = FeaturesIcon;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItem.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItem.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./clickableItem.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Interactive-List-item {\\n font-size: 14px;\\n line-height: 18px;\\n color: #484848;\\n margin-top: 5px;\\n margin-bottom: 5px;\\n cursor: pointer; }\\n .Interactive-List-item .item-content {\\n font-size: 12px;\\n display: inline-block;\\n width: 88%; }\\n .Interactive-List-item .price {\\n font-size: 15px;\\n margin: auto;\\n display: flex; }\\n .Interactive-List-item strong {\\n font-weight: 700; }\\n .Interactive-List-item i {\\n font-size: 8px;\\n vertical-align: bottom;\\n font-weight: 600;\\n opacity: 0.6; }\\n .Interactive-List-item:hover * {\\n opacity: 1; }\\n\", \"\"]);\n\n// exports\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst section = Component => props => (\n
\n

{props.title}

\n \n
\n);\n\nsection.propTypes = {\n title: PropTypes.string.isRequired,\n};\n\nexport default section;\n","import { fromJS, List } from 'immutable';\nimport {\n GET_FILTERS,\n UPDATE_PARAMS,\n RESET_PARAMS,\n REMOVE_PARAM,\n FILTERS_RECEIVED,\n} from './constants';\nimport { removeObjByAttribute } from '../../utils/common';\n\n// The initial state of the App\nexport const initialState = fromJS({\n params: {},\n selectedParams: new List(),\n loading: true,\n});\n\nfunction searchReducer(state = initialState, action) {\n switch (action.type) {\n case UPDATE_PARAMS:\n let paramsList = state.getIn(['selectedParams']).toArray();\n paramsList = updateSelected(paramsList, action.param);\n return state.setIn(['selectedParams'], new List(paramsList));\n case FILTERS_RECEIVED:\n return state.set('params', action.filters).set('loading', false);\n case REMOVE_PARAM:\n let params = state.getIn(['selectedParams']).toArray();\n params = removeObjByAttribute(params, 'name', action.paramName);\n return state.setIn(['selectedParams'], new List(params));\n case RESET_PARAMS:\n return state.setIn(['selectedParams'], new List());\n case GET_FILTERS:\n return state.set('loading', true);\n default:\n return state;\n }\n}\n\n/**\n * Update selected parameters\n * @param selected\n * @param item\n * @returns {*[]}\n */\nfunction updateSelected(selected, item) {\n const obj = { ...item };\n const params = removeObjByAttribute(selected, 'name', item.name);\n return [...params, obj];\n}\n\nexport default searchReducer;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".el-tablo .value {\\n font-size: 2rem; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".DownloadableImage {\\n position: relative;\\n color: blue !important; }\\n .DownloadableImage .image {\\n cursor: pointer;\\n display: block;\\n width: 100%;\\n transition: all .4s ease-in-out;\\n border-radius: 6px;\\n border: 1px solid #f2f5fe; }\\n .DownloadableImage .image:hover {\\n transform: scale(1.06);\\n opacity: 0.3;\\n transition: all 1s; }\\n .DownloadableImage .middle {\\n transition: .5s ease;\\n opacity: 0;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n -ms-transform: translate(-50%, -50%);\\n text-align: center;\\n z-index: 20000 !important; }\\n .DownloadableImage:hover .image {\\n opacity: 0.3; }\\n .DownloadableImage:hover .middle {\\n opacity: 1; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CarItemPreview .header, .CarItemPreview .content {\\n padding: 0.9rem 1.1rem;\\n background-color: #fff;\\n border-right: 1px solid rgba(0, 0, 0, 0.03);\\n margin-top: .1rem;\\n margin-bottom: .2rem;\\n width: 100%;\\n color: #484848;\\n border-radius: 6px;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n font-size: 1em;\\n font-weight: 600;\\n line-height: 1.375em; }\\n\\n.CarItemPreview .content {\\n margin: auto;\\n font-size: 1em;\\n font-weight: 400;\\n line-height: 1em; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".select-search {\\n width: 65%; }\\n\\n.is-loading .select-search--search::before {\\n background-image: url(\\\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='50' viewBox='0 0 50 50'%3E%3Cpath fill='%232F2D37' d='M25,5A20.14,20.14,0,0,1,45,22.88a2.51,2.51,0,0,0,2.49,2.26h0A2.52,2.52,0,0,0,50,22.33a25.14,25.14,0,0,0-50,0,2.52,2.52,0,0,0,2.5,2.81h0A2.51,2.51,0,0,0,5,22.88,20.14,20.14,0,0,1,25,5Z'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 25 25' to='360 25 25' dur='0.6s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E\\\");\\n background-size: 12px;\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 12px;\\n height: 12px;\\n text-align: center;\\n color: #222f3e;\\n z-index: 1;\\n margin-top: 12px;\\n content: ''; }\\n\\n.select-search--search::after {\\n font-family: fontawesome;\\n content: \\\"\\\\F002\\\";\\n position: absolute;\\n top: 0;\\n right: 0;\\n width: 40px;\\n text-align: center;\\n line-height: 36px;\\n color: #222f3e;\\n z-index: 1;\\n margin-top: auto;\\n margin-bottom: auto; }\\n\\n.select-search__value::after {\\n display: none; }\\n\\n.select-search__input {\\n background: #f2f5fe;\\n color: #484848 !important;\\n font-weight: 500;\\n font-size: .9em;\\n font-family: unset; }\\n .select-search__input[disabled] {\\n cursor: not-allowed !important;\\n opacity: 0.5; }\\n\\n.select-search__options {\\n padding-left: 0; }\\n\\n.select-search__option {\\n font-family: unset;\\n padding: 5px 0 5px 10px;\\n min-height: 2.2em;\\n height: auto; }\\n\\n.select-search__option.is-selected {\\n color: #047bf8;\\n border-color: #047bf8;\\n background-color: #f2f5fe; }\\n\\n.select-search__option.is-highlighted.is-selected,\\n.select-search__option.is-selected:hover {\\n color: white;\\n border-color: #047bf8;\\n background: #047bf8; }\\n\\n.select-search__input:hover {\\n color: #047bf8;\\n border-color: #047bf8; }\\n\\n.select-search__option.is-highlighted,\\n.select-search__option:not(.is-selected):hover {\\n background: #f2f5fe; }\\n\\n.select-search:not(.select-search--multiple) .select-search__select {\\n max-height: 11.55rem; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, InputNumber } from 'antd';\nimport AwesomeDebouncePromise from 'awesome-debounce-promise';\nimport { getSustainabilityIndexByMonthlyRateAndDeposit } from 'utils/prescoringTool';\nimport './styles.scss';\nimport messages from './messages';\nimport configs from 'configs';\nimport {FormattedMessage} from \"react-intl\";\n\nimport { default as InputSlider } from '../Input/Slider/';\n\nconst prescoringColors = [\n '#f5222d',\n '#ffbf3f',\n '#2ec58d',\n]\n\nclass Fee extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n selectedFees: this.props.selectedFees,\n monthlyRate: this.props.monthlyRate,\n };\n\n this.sliderRef = React.createRef();\n }\n\n componentDidUpdate = (prevProps) => {\n const { monthlyRate, selectedFees } = this.props;\n\n if (prevProps.selectedFees.overCommission !== selectedFees.overCommission) {\n this.setState({selectedFees})\n }\n\n if (\n (prevProps.selectedFees.finalMonthlyRate !== selectedFees.finalMonthlyRate)\n ||\n (prevProps.monthlyRate !== monthlyRate)\n ) {\n this.setState({\n selectedFees: {\n ...selectedFees,\n finalMonthlyRate: selectedFees.finalMonthlyRate\n },\n monthlyRate\n })\n }\n }\n\n toggle = () => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n getFinalPotentialProfitValueByFinalMonthlyRate = finalMonthlyRate =>\n this.props.item -\n (this.props.monthlyRate - finalMonthlyRate) / (this.getTaxMultiplicationFactor() / this.getDurationValueForStepCalculation())\n\n onOverwriteMonthlyRateHandler = value => {\n let { selectedFees, offerFees, item, monthlyRate, onUpdateFees } = this.props\n\n if (typeof selectedFees.__altered !== 'undefined') {\n selectedFees = selectedFees.toJS();\n }\n\n const finalMonthlyRate = value + (monthlyRate - parseInt(monthlyRate));\n let toAddToTotalPrice;\n let extraCommissionToIdeal;\n let baseCommissionToIdeal;\n\n const finalPotentialProfitValue = this.getFinalPotentialProfitValueByFinalMonthlyRate(finalMonthlyRate);\n\n toAddToTotalPrice = this.getValueToAddToTotalPrice(finalPotentialProfitValue - item);\n\n extraCommissionToIdeal = Math.ceil(toAddToTotalPrice - (finalPotentialProfitValue - item));\n\n baseCommissionToIdeal = Math.ceil(item * (100 - offerFees.agentFee) / offerFees.agentFee);\n\n onUpdateFees({\n ...selectedFees,\n originalPotentialProfit: item,\n extraCommissionToIdeal,\n baseCommissionToIdeal,\n originalMonthlyRate: monthlyRate,\n overCommission: parseFloat(finalPotentialProfitValue - item).toFixed(2),\n finalPotentialProfit: finalPotentialProfitValue,\n finalMonthlyRate,\n })\n }\n\n onOverwriteMonthlyRateHandlerDebounced = AwesomeDebouncePromise(\n this.onOverwriteMonthlyRateHandler,\n 200\n )\n\n getMonthlyRateLogic = commissionDelta => {\n const { extraCommission } = configs;\n\n if (extraCommission && extraCommission.monthlyRateLogic) {\n const monthlyRateLogicCalculation = extraCommission.monthlyRateLogic.replace('$commissionDelta', commissionDelta)\n .replace('$duration', this.getDurationValueForStepCalculation());\n\n return this.props.monthlyRate + Math.round(eval(monthlyRateLogicCalculation));\n }\n\n return this.getValueToAddToTotalPrice(commissionDelta) / this.getDurationValueForStepCalculation();\n }\n\n getValueToAddToTotalPrice = commissionDelta => commissionDelta / this.props.offerFees.agentFee * 100\n\n getValueToAddToMonthlyRate = commissionDelta => this.getMonthlyRateLogic(commissionDelta)\n\n onChangeOverCommissionValue = newValue => {\n const { has_extra_commission, has_over_commission, item, onUpdateFees, offerFees, monthlyRate } = this.props;\n\n if (has_extra_commission) {\n let finalMonthlyRate = parseFloat(monthlyRate);\n let toAddToTotalPrice;\n let extraCommissionToIdeal;\n let baseCommissionToIdeal;\n\n toAddToTotalPrice = this.getValueToAddToTotalPrice(newValue - item);\n\n if (has_over_commission) {\n finalMonthlyRate += parseFloat(this.getValueToAddToMonthlyRate(newValue - item).toFixed(2));\n } else {\n finalMonthlyRate = parseFloat(this.getValueToAddToMonthlyRate(newValue - item).toFixed(2));\n }\n\n if (finalMonthlyRate < this.getMinMonthlyRate()) {\n finalMonthlyRate = this.getMinMonthlyRate();\n }\n\n if (finalMonthlyRate > this.getMaxMonthlyRate()) {\n finalMonthlyRate = this.getMaxMonthlyRate();\n }\n\n extraCommissionToIdeal = Math.ceil(toAddToTotalPrice - (newValue - item));\n\n baseCommissionToIdeal = Math.ceil(item * (100 - offerFees.agentFee) / offerFees.agentFee);\n\n onUpdateFees({\n overCommission: newValue - item,\n originalPotentialProfit: item,\n finalPotentialProfit: newValue,\n extraCommissionToIdeal,\n baseCommissionToIdeal,\n finalMonthlyRate,\n originalMonthlyRate: monthlyRate,\n })\n }\n }\n\n getSliderMax = () => {\n const { offerFees, has_extra_commission } = this.props;\n\n if (has_extra_commission) {\n return offerFees.maxFeeValue ;\n }\n\n return 0;\n }\n\n getSliderMin = () => {\n const { offerFees, has_over_commission } = this.props;\n\n if (has_over_commission) {\n return offerFees.minFeeValue;\n }\n\n return 0;\n }\n\n getTaxMultiplicationFactor = () => {\n const { extraCommission } = configs;\n\n if (extraCommission && extraCommission.taxMultiplicationFactor) {\n return extraCommission.taxMultiplicationFactor;\n }\n\n return 1;\n }\n\n getMinMonthlyRate = () => {\n const { has_under_commission, monthlyRate, duration, item } = this.props;\n\n if (has_under_commission) {\n return Math.floor(\n monthlyRate - Math.ceil(\n ((item * 2) / duration) * this.getTaxMultiplicationFactor()\n )\n );\n }\n\n return monthlyRate + parseInt(this.getValueToAddToMonthlyRate(this.getSliderMin() - item));\n }\n\n getMaxMonthlyRate = () =>\n this.props.has_under_commission\n ? parseInt(this.getValueToAddToMonthlyRate(this.getSliderMax() - this.props.item))\n : this.props.monthlyRate + Math.ceil(this.getValueToAddToMonthlyRate(this.getSliderMax() - this.props.item));\n\n getDurationValueForStepCalculation = () => {\n const { duration } = this.props;\n const { extraCommission } = configs;\n\n if (extraCommission) {\n if (extraCommission.multiplicationFactor) {\n return duration * extraCommission.multiplicationFactor;\n } else if (extraCommission.dividingFactor) {\n return duration / extraCommission.dividingFactor;\n }\n }\n\n return duration;\n }\n\n getSliderSteps = () => {\n const { item, duration, selectedFees, monthlyRate } = this.props;\n\n const sliderMin = (this.getSliderMin());\n const sliderMax = (this.getSliderMax());\n\n let prevCeilValue = parseInt(sliderMin);\n\n let steps = {};\n\n // under commission\n if (item > sliderMin) {\n\n for (let price = monthlyRate; price > this.getMinMonthlyRate(); price--) {\n const step = item - ((monthlyRate - price) / (this.getTaxMultiplicationFactor() / this.getDurationValueForStepCalculation()));\n\n let style = {\n display: 'none'\n }\n\n if (selectedFees.overCommission === item - step) {\n style = {\n color: this.getStepColor(step)\n }\n }\n\n steps[parseFloat(step.toFixed(2))] = {\n style\n };\n }\n }\n\n // over commission\n if (item < sliderMax) {\n prevCeilValue = Math.ceil(sliderMin);\n\n for (let step = item; step < sliderMax; step += duration) {\n const toAdd = this.getValueToAddToMonthlyRate(step - sliderMin);\n const ceilValue = Math.ceil(toAdd);\n\n if (prevCeilValue !== ceilValue) {\n let style = {\n display: 'none'\n }\n\n if (selectedFees.overCommission === item - step) {\n style = {\n color: this.getStepColor(step)\n }\n }\n\n steps[step] = {\n style\n };\n\n prevCeilValue = ceilValue;\n }\n }\n\n if (!steps[sliderMax]) {\n steps[sliderMax] = {\n style: {\n display: 'none'\n }\n };\n }\n }\n\n return steps;\n }\n\n getStepColor = stepValue => {\n const { monthlyRate, monthlyRateMax, depositRequired, deposit, thresholdMonthlyRateMax, item } = this.props;\n let finalMonthlyRate = monthlyRate;\n\n if (monthlyRateMax > 0) {\n finalMonthlyRate += Math.ceil(this.getValueToAddToMonthlyRate(stepValue - item));\n\n const sustainabilityIndexStep = getSustainabilityIndexByMonthlyRateAndDeposit(monthlyRateMax, finalMonthlyRate, depositRequired, deposit || 0, thresholdMonthlyRateMax);\n\n return prescoringColors[sustainabilityIndexStep];\n } else if (stepValue === this.getSliderMin() || stepValue === this.getSliderMax()) {\n return 'rgb(72, 72, 72)';\n } else {\n return 'rgb(255, 255, 255)';\n }\n }\n\n labelFormatter = value => `${Math.max(0, Math.round(parseFloat(value)))}€`\n\n sliderValue = () => {\n const { selectedFees, offerFees } = this.props;\n\n if (typeof selectedFees.finalPotentialProfit !== 'undefined') {\n return selectedFees.finalPotentialProfit\n }\n\n return offerFees.defaultFeeValue || 0;\n }\n\n render() {\n const { title, item, icon, iconExtra, has_extra_commission } = this.props;\n const { show, monthlyRate, selectedFees } = this.state;\n\n const sliderMin = Math.max(0, Math.round(\n parseFloat(\n Object.keys(this.getSliderSteps()).sort((val1, val2) => parseFloat(val1) - parseFloat(val2))[0]\n )\n ));\n const sliderMax = parseFloat(Object.keys(this.getSliderSteps()).sort((val1, val2) => parseFloat(val1) - parseFloat(val2)).slice(-1)[0]);\n\n const commissioneOverwritten = typeof selectedFees.finalPotentialProfit !== 'undefined' && selectedFees.finalPotentialProfit !== item;\n\n const baseFeeToShow = Math.round(parseFloat(item)).toLocaleString('it');\n\n let itemContent = `Guadagno potenziale: ${baseFeeToShow}€`;\n\n if (commissioneOverwritten) {\n const finalPotentialProfitToShow = typeof selectedFees.finalPotentialProfit !== 'undefined'\n ? Math.max(0, Math.round(parseFloat(selectedFees.finalPotentialProfit))).toLocaleString('it')\n : null;\n const arrowIcon = item > selectedFees.finalPotentialProfit\n ? ``\n : ``;\n itemContent = `Guadagno potenziale: ${baseFeeToShow}€ ${finalPotentialProfitToShow}€ ${arrowIcon}`\n }\n\n return (\n
\n
{icon}
\n
\n {title}\n \n
\n {!show && (\n \n Clicca per visualizzare il Guadagno potenziale\n
\n )}\n\n {show &&\n
\n }\n\n {\n show && <>\n \n

\n \n
\n \n

\n
\n\n {has_extra_commission &&\n <>\n
\n\n
{iconExtra}
\n
Personalizza commissioni
\n
\n \n \n \n \n Modifica importo di commissione:\n \n \n  \n {sliderMin}€\n
\n \n
\n {Math.round(parseFloat(sliderMax))}€\n \n
\n \n
\n \n \n Personalizza il canone mensile:\n \n \n \n
\n \n }\n \n }\n
\n );\n }\n}\n\nFee.defaultProps = {\n icon: null,\n item: '',\n has_extra_commission: false,\n has_under_commission: false,\n has_over_commission: false,\n};\n\nFee.propTypes = {\n title: PropTypes.string.isRequired,\n item: PropTypes.number.isRequired,\n has_extra_commission: PropTypes.bool.isRequired,\n has_under_commission: PropTypes.bool.isRequired,\n has_over_commission: PropTypes.bool.isRequired,\n icon: PropTypes.any,\n monthlyRate: PropTypes.any,\n monthlyRateMax: PropTypes.number,\n depositRequired: PropTypes.bool,\n deposit: PropTypes.number,\n sustainabilityIndex: PropTypes.number,\n offerFees: PropTypes.any,\n carValue: PropTypes.number,\n duration: PropTypes.number.isRequired,\n};\n\nexport default Fee;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".agent-modal-body {\\n background-color: #f2f4f8 !important; }\\n\\n.activity-box-w {\\n cursor: pointer; }\\n .activity-box-w:hover .activity-box {\\n transform: translateY(-5px) scale(1.02);\\n box-shadow: 0px 5px 12px rgba(126, 142, 177, 0.2); }\\n .activity-box-w:hover .activity-box:before {\\n transform: translateY(-1.5px) translateX(9.5px) scale(1); }\\n\", \"\"]);\n\n// exports\n","import { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.components.CarItem';\n\nexport default defineMessages({\n deposit: {\n id: `${scope}.deposit`,\n defaultMessage: configs.messages[scope].deposit,\n },\n vat:{\n id: `${scope}.vat`,\n defaultMessage: configs.messages[scope].vat,\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport configs from 'configs';\n\nimport { Card, Tag } from 'antd';\nimport TrafficLights from '../PrescoringTool/trafficlights';\nimport { ToggleButton, DropdownMenu } from '../UIKit';\nimport 'antComponentsStyle';\nimport './styles.scss';\nimport {FormattedMessage} from \"react-intl\";\nimport messages from \"./messages\";\n\nclass CarItem extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n const {\n image,\n brand,\n reference_code,\n model,\n version,\n target,\n monthlyRate,\n deposit,\n duration,\n distance,\n bundle,\n highlighted,\n suggested,\n catalogSelected,\n tag,\n secondary_tag,\n stockAvailability,\n delivery_time_label,\n color,\n sustainabilityIndex,\n status,\n onStatusButton,\n onCloneButton,\n link,\n isCustom,\n isOwned,\n } = this.props;\n\n const allowedLabels = [tag, delivery_time_label, secondary_tag, bundle].filter(\n label => label && label.length > 0\n );\n\n let firstLabel = allowedLabels[0] || null;\n let secondLabel = null;\n\n if (catalogSelected && firstLabel === 'Catalogo') {\n firstLabel =\n allowedLabels.find(allowedLabel => allowedLabel !== 'Catalogo') || null;\n }\n\n secondLabel =\n allowedLabels.find(\n allowedLabel =>\n allowedLabel !== 'Catalogo' && allowedLabel !== firstLabel,\n ) || null;\n\n const hasDropdownMenu = configs.cloneCatalogOffer && onCloneButton;\n\n return (\n
\n \n )}\n\n
\n {firstLabel && {firstLabel}}\n\n {secondLabel && (\n {secondLabel}\n )}\n
\n\n {hasDropdownMenu && (\n
\n )}\n\n
\n {stockAvailability && stockAvailability !== '' ?\n Disponibilità: {stockAvailability}\n : null}\n {isCustom && (\n \n )}\n {brand} {model}\n {reference_code && (\n {reference_code}\n )}\n {version}\n {color.length > 0 && {color}}\n
\n {duration && (\n
\n
    \n
  • {duration} mesi
  • \n
  • {distance.toLocaleString('it')} km/Anno
  • \n
  • \n \n
  • \n
\n
\n )}\n \n \n
\n \n );\n }\n}\n\nCarItem.defaultProps = {\n image: configs.cdnHost + '/cars/generic_shape.png',\n color: '',\n tag: '',\n secondary_tag: '',\n delivery_time_label: '',\n highlighted: false,\n suggested: false,\n sustainabilityIndex: null,\n};\n\nCarItem.propTypes = {\n image: PropTypes.string,\n brand: PropTypes.string,\n reference_code: PropTypes.string,\n model: PropTypes.string.isRequired,\n version: PropTypes.string,\n target: PropTypes.string,\n color: PropTypes.string,\n monthlyRate: PropTypes.number,\n tag: PropTypes.string,\n secondary_tag: PropTypes.string,\n stockAvailability: PropTypes.string,\n catalogSelected: PropTypes.bool,\n delivery_time_label: PropTypes.string,\n deposit: PropTypes.number,\n duration: PropTypes.number,\n distance: PropTypes.number,\n highlighted: PropTypes.bool,\n suggested: PropTypes.bool,\n isCustom: PropTypes.bool,\n isOwned: PropTypes.bool,\n sustainabilityIndex: PropTypes.number,\n link: PropTypes.string.isRequired,\n};\n\nexport default CarItem;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".loader {\\n text-align: center !important;\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n background-color: rgba(255, 255, 255, 0.5);\\n z-index: 100; }\\n .loader > span {\\n display: inline-block; }\\n .loader p {\\n color: #404950;\\n font-size: 18px;\\n text-shadow: 0 0px 2px white; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".search .element-box {\\n padding: 1rem 1rem !important;\\n margin-bottom: .1rem; }\\n\\n.search .range-slider-input {\\n display: inline-block;\\n width: 90px;\\n text-align: right;\\n margin: -4px 0 0 6px; }\\n .search .range-slider-input > input {\\n padding-right: 2px; }\\n .search .range-slider-input-start {\\n margin-right: 6px; }\\n\\n.search .SelectCollapsible:last-child {\\n border-bottom: unset !important; }\\n\\n.search .range-label-start-end {\\n font-size: 14px; }\\n\\n#Loader {\\n width: inherit !important;\\n left: 0;\\n right: 0;\\n margin: 0 14px;\\n padding-top: 20rem !important; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ticket .ticket-description {\\n height: 3.82rem !important;\\n font-size: .9rem; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./bottom.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./bottom.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./bottom.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction SortIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"title\",{\"key\":0},\"drover_icon_library\"),React.createElement(\"rect\",{\"className\":\"cls-1\",\"fill\":\"none\",\"width\":\"83.33\",\"height\":\"83.33\",\"rx\":\"41.67\",\"ry\":\"41.67\",\"key\":1}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"9.43\",\"width\":\"33.72\",\"height\":\"7\",\"key\":2}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"28.59\",\"width\":\"28.1\",\"height\":\"7\",\"key\":3}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"47.75\",\"width\":\"22.48\",\"height\":\"7\",\"key\":4}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"66.9\",\"width\":\"16.86\",\"height\":\"7\",\"key\":5}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"57.34\",\"y\":\"12.93\",\"width\":\"7\",\"height\":\"57.47\",\"key\":6}),React.createElement(\"path\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"d\":\"M60.84,73.9A3.47,3.47,0,0,1,58.45,73l-19.33-18L43.9,49.8,60.84,65.61,77.78,49.8l4.77,5.12L63.23,73A3.51,3.51,0,0,1,60.84,73.9Z\",\"key\":7})]);\n}\n\nSortIcon.defaultProps = {\"id\":\"Sort_Layer\",\"viewBox\":\"0 0 83.33 83.33\",\"className\":\"asc order\"};\n\nmodule.exports = SortIcon;\n\nSortIcon.default = SortIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferPrice {\\n color: #404950;\\n padding: 6px;\\n text-align: center;\\n margin-top: .5rem;\\n margin-bottom: .8rem; }\\n #OfferPrice .price {\\n font-size: 2.35vw;\\n font-weight: 700;\\n line-height: .8em; }\\n #OfferPrice .price span {\\n font-size: 1.6vw;\\n font-weight: 400; }\\n #OfferPrice .price-description {\\n font-size: 1vw;\\n font-weight: 400; }\\n\", \"\"]);\n\n// exports\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectQuotations = state => state.get('quotations', initialState);\n\nconst makeSelectQuotations = () =>\n createSelector(selectQuotations, quotesState =>\n quotesState.getIn(['quotations']),\n );\n\nconst makeSelectQuotationsNumber = () =>\n createSelector(selectQuotations, quotesState => quotesState.get('total'));\n\nconst makeSelectQuotationsParameters = () =>\n createSelector(selectQuotations, quotesState =>\n quotesState.get('parameters').toJS(),\n );\n\nconst makeSelectQuotationsRequest = () =>\n createSelector(selectQuotations, quotationsState => ({\n parameters: quotationsState.get('parameters').toJS(),\n order: quotationsState.get('selectedOrder'),\n page: quotationsState.get('currentPage'),\n items: quotationsState.get('itemsPerPage'),\n }));\n\nconst makeSelectQuotationsSort = () =>\n createSelector(selectQuotations, selectedState =>\n selectedState.get('orders').toArray(),\n );\n\nconst makeSelectQuotationsFilters = () =>\n createSelector(selectQuotations, selectedState =>\n selectedState.get('filters'),\n );\n\nconst makeSelectSelectedQuotationsSort = () =>\n createSelector(selectQuotations, selectedState =>\n selectedState.get('selectedOrder'),\n );\n\nconst makeSelectPaginator = () =>\n createSelector(selectQuotations, selectedState => ({\n total: selectedState.get('total'),\n lastPage: selectedState.get('lastPage'),\n itemsPerPage: selectedState.get('itemsPerPage'),\n currentPage: selectedState.get('currentPage'),\n }));\n\nconst makeSelectLoading = () =>\n createSelector(selectQuotations, quotesState => quotesState.get('loading'));\n\nexport {\n selectQuotations,\n makeSelectQuotations,\n makeSelectQuotationsRequest,\n makeSelectQuotationsNumber,\n makeSelectQuotationsSort,\n makeSelectQuotationsFilters,\n makeSelectSelectedQuotationsSort,\n makeSelectQuotationsParameters,\n makeSelectPaginator,\n makeSelectLoading,\n};\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Item {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n min-height: 5rem;\\n padding: .70588rem .88235rem;\\n text-align: center;\\n box-sizing: border-box;\\n border-spacing: 0;\\n overflow: hidden;\\n flex-direction: column;\\n border: 1px solid #e4e4e4;\\n border-radius: 4px !important;\\n cursor: pointer;\\n color: #404950;\\n font-size: 16px;\\n line-height: 18px;\\n letter-spacing: .007em; }\\n .Item.active {\\n border: 2px solid #047bf8 !important; }\\n .Item.disabled {\\n pointer-events: none;\\n opacity: .3; }\\n .Item:hover {\\n border-color: #047bf8 !important; }\\n .Item .title {\\n display: inline-block;\\n font-weight: 800;\\n border: unset !important; }\\n .Item .title small {\\n font-size: 12px;\\n line-height: 11px;\\n font-weight: 400; }\\n .Item .description {\\n margin-top: 5px;\\n display: inline-block;\\n font-size: 12px;\\n line-height: 12px; }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction RemoveIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M20 2a18 18 0 1018 18A18 18 0 0020 2zm7.425 23.303l-2.122 2.122L20 22.12l-5.303 5.304-2.122-2.122L17.88 20l-5.304-5.303 2.122-2.122L20 17.88l5.303-5.304 2.122 2.122L22.12 20z\",\"fill\":\"#ff4a50\"}));\n}\n\nRemoveIcon.defaultProps = {\"viewBox\":\"0 0 40 40\",\"className\":\"icon color--primary\"};\n\nmodule.exports = RemoveIcon;\n\nRemoveIcon.default = RemoveIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferStickyPrice {\\n background-color: #fff;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n color: #484848;\\n text-align: center;\\n margin-top: .5rem;\\n font-weight: 700;\\n border-radius: 6px;\\n margin-bottom: 16px;\\n padding: 1rem; }\\n #OfferStickyPrice strong {\\n font-size: 16px;\\n font-weight: 600;\\n color: #047bf8; }\\n #OfferStickyPrice .price-value {\\n font-size: 2.2rem;\\n text-align: right;\\n color: #484848;\\n font-kerning: normal; }\\n #OfferStickyPrice .arrow {\\n color: #047bf8;\\n display: inline;\\n font-size: 20px;\\n font-weight: 400 !important;\\n padding-right: 10px; }\\n #OfferStickyPrice .price-description {\\n font-size: 14px;\\n padding-left: 10px;\\n line-height: 15px;\\n text-align: left;\\n font-weight: 200;\\n margin-top: auto;\\n margin-bottom: auto; }\\n #OfferStickyPrice .alertWithMessage {\\n text-align: left;\\n font-size: 12px; }\\n\\n@media (max-width: 1200px) {\\n #OfferStickyPrice .price-description {\\n font-size: 12px; }\\n #OfferStickyPrice .price-value > div {\\n font-size: 11px;\\n font-weight: normal;\\n line-height: 1em; }\\n #OfferStickyPrice .price-value > div strong {\\n font-size: 11px; } }\\n\", \"\"]);\n\n// exports\n","/**\n * Combine all reducers in this file and export the combined reducers.\n */\n\nimport { combineReducers } from 'redux-immutable';\nimport { connectRouter } from 'connected-react-router/immutable';\n\nimport history from 'utils/history';\nimport languageProviderReducer from 'containers/LanguageProvider/reducer';\n\n/**\n * Merges the main reducer with the router state and dynamically injected reducers\n */\nexport default function createReducer(injectedReducers = {}) {\n const rootReducer = combineReducers({\n language: languageProviderReducer,\n ...injectedReducers,\n });\n\n // Wrap the root reducer and return a new root reducer with router state\n const mergeWithRouterState = connectRouter(history);\n return mergeWithRouterState(rootReducer);\n}\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#prescoring-tool-widget {\\n position: fixed;\\n width: 158px;\\n bottom: 75%;\\n right: -111px;\\n z-index: 900;\\n padding: 20px 10px;\\n opacity: .4;\\n transition: all .4s ease-in-out; }\\n #prescoring-tool-widget:hover {\\n opacity: 1;\\n right: -10px; }\\n #prescoring-tool-widget button {\\n border-top-left-radius: 40px;\\n border-top-right-radius: 0;\\n border-bottom-left-radius: 40px;\\n border-bottom-right-radius: 0;\\n box-shadow: 1px 3px 12px rgba(126, 142, 177, 0.8); }\\n #prescoring-tool-widget button i {\\n margin-right: 5px; }\\n\\n.prescoring-tool-modal {\\n width: 880px !important; }\\n @media (max-width: 768px) {\\n .prescoring-tool-modal {\\n width: 100% !important; } }\\n @media (max-width: 1024px) {\\n .prescoring-tool-modal {\\n width: 780px !important; } }\\n .prescoring-tool-modal .ant-form-item-label > label::after {\\n content: '' !important; }\\n .prescoring-tool-modal button.success:not([disabled]) {\\n background-color: #2ec58d;\\n border-color: #2ec58d;\\n color: white; }\\n .prescoring-tool-modal button.success:not([disabled]):hover {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n\\n.prescoring-traffic-lights {\\n border: 2px solid #dde2ec;\\n border-radius: 4px;\\n font-family: Arial, Helvetica, sans-serif; }\\n .prescoring-traffic-lights li {\\n font-size: 36px; }\\n .prescoring-traffic-lights .hidden [role=radio] > * {\\n opacity: 0 !important; }\\n .prescoring-traffic-lights .item:first-of-type li {\\n color: #2ec58d; }\\n .prescoring-traffic-lights .item:nth-of-type(2) li {\\n color: #ffbf3f; }\\n .prescoring-traffic-lights .item:last-of-type li {\\n color: #f5222d; }\\n\\n.prescoring-tool-offers-filter li {\\n line-height: 26px; }\\n\\n.prescoring-tool-offers-filter .pull-right {\\n height: 30px;\\n margin-top: -17px; }\\n\\n.prescoring-tool-offers-filter .prescoring-traffic-lights {\\n padding-top: 10px; }\\n\\n.prescoring-tool-offer-card {\\n background-color: white;\\n position: absolute;\\n top: 60px;\\n right: 0;\\n line-height: 17px;\\n padding-top: 0px; }\\n @media (max-width: 1368px) {\\n .prescoring-tool-offer-card {\\n top: 46px; } }\\n @media (max-width: 1024px) {\\n .prescoring-tool-offer-card {\\n height: 20px;\\n line-height: 12px;\\n top: 37px; }\\n .prescoring-tool-offer-card .ant-rate.item {\\n position: absolute;\\n right: 5px; }\\n .prescoring-tool-offer-card.prescoring-traffic-lights {\\n top: 35px;\\n right: -6px;\\n border: 0 !important; } }\\n @media (max-width: 912px) {\\n .prescoring-tool-offer-card {\\n height: 18px;\\n line-height: 14px;\\n top: 35px; }\\n .prescoring-tool-offer-card.prescoring-traffic-lights {\\n top: 25px;\\n right: -4px; } }\\n .prescoring-tool-offer-card.margined {\\n right: 51px; }\\n .prescoring-tool-offer-card li {\\n font-size: 26px; }\\n @media (max-width: 1368px) {\\n .prescoring-tool-offer-card li {\\n font-size: 1.8vw;\\n line-height: 1.4vw; } }\\n @media (max-width: 768px) {\\n .prescoring-tool-offer-card li {\\n font-size: 1.6vw;\\n line-height: 1vw; } }\\n\\n.prescoring-tool-offer-detail {\\n font-size: 2.2rem;\\n min-width: 55px;\\n position: absolute;\\n top: 10px;\\n line-height: 11px;\\n left: 0;\\n padding-top: 0;\\n padding-bottom: 4px;\\n margin-top: 3px; }\\n .prescoring-tool-offer-detail li {\\n font-size: 26px; }\\n\\n@media (max-width: 1900px) {\\n .prescoring-tool-offer-detail {\\n min-width: 20px;\\n border: none;\\n line-height: 1px; }\\n .prescoring-tool-offer-detail li {\\n font-size: 2vw; }\\n .prescoring-tool-offer-detail .ant-rate-star-zero {\\n display: none; } }\\n\\n@media (max-width: 1550px) {\\n .prescoring-tool-offer-detail {\\n top: -15px;\\n left: -8px; } }\\n\\n@media (max-width: 768px) {\\n .prescoring-tool-offer-detail {\\n top: -15px;\\n left: -8px; } }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#Offers {\\n margin-bottom: 150px; }\\n #Offers .search-margin-top.element-box {\\n padding: 1rem 1rem;\\n border-radius: 0.2rem !important; }\\n #Offers .offers-not-found-msg {\\n margin-top: 50px;\\n margin-bottom: 70px; }\\n\\n#Loader {\\n bottom: 0;\\n padding-top: 10rem; }\\n #Loader p {\\n margin-top: 5rem; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#SponsorBanner .alert-warning {\\n background-color: #f2f4f8; }\\n\\n#SponsorBanner {\\n margin: 0 !important;\\n margin-bottom: 1rem !important; }\\n #SponsorBanner .element-box {\\n background-color: #f58220 !important; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#CarCreator {\\n display: inline; }\\n\\n.CarCreator-modal-header {\\n border-bottom: unset !important;\\n color: #404950;\\n margin-top: 0;\\n margin-bottom: 0;\\n padding-bottom: 0;\\n padding-left: .5rem; }\\n .CarCreator-modal-header span {\\n color: #404950; }\\n .CarCreator-modal-header .modal-title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n color: #404950; }\\n\\n.CarCreator-modal-content {\\n padding-top: 0; }\\n .CarCreator-modal-content label {\\n color: #404950;\\n font-weight: 400;\\n line-height: .3em; }\\n .CarCreator-modal-content input, .CarCreator-modal-content select, .CarCreator-modal-content textarea {\\n margin-bottom: .5rem; }\\n .CarCreator-modal-content .form-control {\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1vw;\\n line-height: 1em;\\n color: #484848;\\n font-weight: 400;\\n background-color: white;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 6px; }\\n .CarCreator-modal-content .modal-content {\\n box-shadow: unset;\\n border: unset; }\\n .CarCreator-modal-content .modal-body, .CarCreator-modal-content .modal-header {\\n padding: unset; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n * CustomizeOfferSelectorConstants\n */\n\nexport const DISPLAY_OFFERS = 'ideal/components/CustomizeOffer/DISPLAY_OFFERS';\nexport const OFFER_SELECTED = 'ideal/components/CustomizeOffer/OFFER_SELECTED';\nexport const OFFER_MONTHLY_RATE_CALCULATED =\n 'ideal/components/CustomizeOffer/OFFER_MONTHLY_RATE_CALCULATED';\nexport const FEES_RESET =\n 'ideal/components/CustomizeOffer/FEES_RESET';\nexport const FEES_UPDATE =\n 'ideal/components/CustomizeOffer/FEES_UPDATE';\nexport const SERVICE_SELECTED =\n 'ideal/components/CustomizeOffer/SERVICE_SELECTED';\nexport const ACCESSORIES_CODES_SELECTED =\n 'ideal/components/CustomizeOffer/ACCESSORIES_CODES_SELECTED';\nexport const ACCESSORIES_CODES_COLOR_SELECTED =\n 'ideal/components/CustomizeOffer/ACCESSORIES_CODES_COLOR_SELECTED';\nexport const ACCESSORIES_SELECTED =\n 'ideal/components/CustomizeOffer/ACCESSORIES_SELECTED';\nexport const COLORS_SELECTED =\n 'ideal/components/CustomizeOffer/COLORS_SELECTED';\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n* PaginatorReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n GET_PAGE_NUMBER,\n SET_PAGE_NUMBER,\n GET_PAGINATOR,\n UPDATE_PAGINATOR,\n} from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n total: 0,\n lastPage: 0,\n itemsPerPage: 18,\n currentPage: 1,\n});\n\nfunction paginatorReducer(state = initialState, action) {\n switch (action.type) {\n case SET_PAGE_NUMBER:\n return state.set('currentPage', action.pageNumber);\n case UPDATE_PAGINATOR:\n return state\n .set('total', action.total)\n .set('lastPage', action.lastPage)\n .set('currentPage', action.currentPage);\n case GET_PAGE_NUMBER:\n return state;\n case GET_PAGINATOR:\n return state;\n default:\n return state;\n }\n}\n\nexport default paginatorReducer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport './styles.scss';\n\nconst alertWithMessage = props => {\n const { title, message, target, targetMessage, type } = props;\n return (\n
\n {title &&\n
{title}
\n }\n

{message}

\n {target &&\n targetMessage && (\n
\n \n \n {targetMessage}\n \n
\n )}\n
\n );\n};\n\nalertWithMessage.defaultProps = {\n type: 'warning',\n};\n\nalertWithMessage.propTypes = {\n title: PropTypes.string,\n message: PropTypes.string.isRequired,\n targetMessage: PropTypes.string,\n target: PropTypes.string,\n type: PropTypes.string,\n};\n\nexport default alertWithMessage;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Doughnut } from 'react-chartjs-2';\nimport './styles.scss';\n\nconst doughnut = props => {\n const { labels, data: chartData, height, title } = props;\n\n const numOr0 = n => (isNaN(n) ? 0 : n);\n\n const data = {\n labels: labels.map(item => item.label),\n datasets: [\n {\n data: chartData,\n backgroundColor: labels.map(item => item.color),\n },\n ],\n };\n\n return (\n
\n

{title}

\n
\n \n
\n {chartData.reduce((a, b) => numOr0(a) + numOr0(b))}\n
\n
\n
\n {labels.map( (item, key) => (\n
\n \n
{item.label}
\n
\n ))}\n
\n
\n );\n};\n\ndoughnut.defaultProps = {\n height: 165,\n title: 'Chart',\n};\n\ndoughnut.propTypes = {\n labels: PropTypes.array.isRequired,\n data: PropTypes.array.isRequired,\n height: PropTypes.number,\n title: PropTypes.string,\n};\n\nexport default doughnut;\n","export const LineChar = class {\n constructor(labels, dataset) {\n this.dataset = dataset;\n this.labels = labels;\n }\n\n get options() {\n return {\n legend: {\n display: true,\n },\n scales: {\n xAxes: [\n {\n ticks: {\n fontSize: '11',\n fontColor: '#969da5',\n },\n gridLines: {\n color: 'rgba(0,0,0,0.05)',\n zeroLineColor: 'rgba(0,0,0,0.05)',\n },\n },\n ],\n yAxes: [\n {\n display: false,\n ticks: {\n beginAtZero: true,\n //max: 65,\n },\n },\n ],\n },\n };\n }\n\n get styles() {\n return {\n graphContainer: {\n border: '1px solid black',\n padding: '15px',\n },\n };\n }\n\n get data() {\n const data = [];\n this.dataset.map(item => {\n const record = {\n label: item.year,\n fill: false,\n lineTension: 0.3,\n backgroundColor: item.color,\n borderColor: item.color,\n borderCapStyle: 'butt',\n borderDash: [],\n borderDashOffset: 0.0,\n borderJoinStyle: 'miter',\n pointBorderColor: '#fff',\n pointBackgroundColor: '#141E41',\n pointBorderWidth: 3,\n pointHoverRadius: 10,\n pointHoverBackgroundColor: '#FC2055',\n pointHoverBorderColor: '#fff',\n pointHoverBorderWidth: 3,\n pointRadius: 5,\n pointHitRadius: 10,\n data: item.months,\n spanGaps: false,\n };\n data.push(record);\n });\n\n return {\n labels: this.labels,\n datasets: data\n };\n }\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Line } from 'react-chartjs-2';\nimport './styles.scss';\nimport { LineChar as LineCharConfig } from './configs';\n\nconst line = props => {\n const { labels, data: chartData, height } = props;\n const config = new LineCharConfig(labels, chartData);\n return (\n
\n
\n \n
\n
\n );\n};\n\nline.defaultProps = {\n labels: [\n 'Gennaio',\n 'Febbraio',\n 'Marzo',\n 'Aprile',\n 'Maggio',\n 'Giugno',\n 'Luglio',\n 'Agosto',\n 'Settembre',\n 'Ottobre',\n 'Novembre',\n 'Dicembre',\n ],\n\n height: 100,\n};\n\nline.propTypes = {\n labels: PropTypes.array,\n data: PropTypes.array.isRequired,\n height: PropTypes.number,\n};\n\nexport default line;\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { makeSelectModalOption } from './selectors';\nimport { updateModalOption } from './actions';\n\nimport './styles.scss';\n\nexport class ModalSelect extends React.PureComponent {\n constructor(props) {\n super(props);\n }\n\n handleChange = event => {\n const value = event.target.value;\n this.props.updateValue(value);\n if( typeof this.props.onChange === 'function')\n this.props.onChange();\n };\n\n render() {\n const { options, value, selectedRange } = this.props;\n return (\n
\n
\n {selectedRange}\n \n {options.map((item, key) => (\n \n ))}\n \n
\n
\n );\n }\n}\n\nModalSelect.defaultProps = {\n options: [\n { label: 'Oggi', value: 'today' },\n { label: '7 giorni', value: 'days' },\n { label: 'Questo mese', value: 'month' },\n { label: 'Mese precedente', value: 'prevmonth' },\n { label: 'Quest\\'anno', value: 'year' },\n { label: 'Anno precedente', value: 'prevyear' },\n ],\n selectedRange: ''\n};\n\nModalSelect.propTypes = {\n options: PropTypes.array,\n onChange: PropTypes.func,\n selectedRange: PropTypes.string,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: value => dispatch(updateModalOption(value)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n value: makeSelectModalOption(),\n});\n\nconst withReducer = injectReducer({ key: 'select', reducer });\nconst withSaga = injectSaga({ key: 'select', saga });\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(ModalSelect);\n\n","import { UPDATE_OPTION, UPDATE_MODAL_OPTION } from './constants';\n\nexport function updateOption(option) {\n return {\n type: UPDATE_OPTION,\n option,\n };\n}\n\nexport function updateModalOption(option) {\n return {\n type: UPDATE_MODAL_OPTION,\n option,\n };\n}\n","\nexport const GET_AGENT = 'ideal/components/GET_AGENT';\nexport const AGENT_RECEIVED = 'ideal/components/AGENT_RECEIVED';\n\n","/*\n* AgentReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport { GET_AGENT, AGENT_RECEIVED } from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n agent: {},\n});\n\nfunction agentReducer(state = initialState, action) {\n switch (action.type) {\n case GET_AGENT:\n return state.set('code', action.code).set('loading', true);\n case AGENT_RECEIVED:\n return state.set('agent', action.agent).set('loading', false);\n default:\n return state;\n }\n}\n\nexport default agentReducer;\n","import { GET_AGENT, AGENT_RECEIVED } from './constants';\n\nexport const getAgent = code => ({\n type: GET_AGENT,\n code,\n});\n\nexport function agentLoaded(agent) {\n return {\n type: AGENT_RECEIVED,\n agent,\n };\n}\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectAgent = state => state.get('agent', initialState);\n\nconst makeSelectAgent = () =>\n createSelector(selectAgent, agentState => agentState.get('agent'));\n\nconst makeSelectAgentCode = () =>\n createSelector(selectAgent, agentState => agentState.get('code'));\n\nexport { selectAgent, makeSelectAgent, makeSelectAgentCode };\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { agentLoaded } from './actions';\nimport { GET_AGENT } from './constants';\nimport { makeSelectAgentCode } from './selectors';\nimport { makeSelectModalOption } from '../Select/selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchAgent() {\n const code = yield select(makeSelectAgentCode());\n const interval = yield select(makeSelectModalOption());\n const requestURL = `${API_URL}agent/${code}/statistics?interval=${interval}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(agentLoaded(request.data));\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(GET_AGENT, fetchAgent);\n}\n\nexport default function* agentsData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Row, Col } from 'reactstrap';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { default as DataWidget } from '../DataWidget/';\nimport { default as DoughnutChart } from '../Chart/doughnut';\nimport { default as SelectModal } from '../Select/modal';\nimport { SECTIONS_TITLES } from 'containers/Admin/constants';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { getAgent } from './actions';\nimport { makeSelectAgent } from './selectors';\nimport { makeSelectModalOption } from '../Select/selectors';\nimport { featureAllowed } from 'containers/App/selectors';\nimport './styles.scss';\n\nclass Details extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n componentDidMount() {\n const { code, interval } = this.props;\n this.props.loadAgent(code, interval);\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { code, interval } = this.props;\n if (prevProps.interval !== interval && interval !== 'undefined') {\n this.props.loadAgent(code, interval);\n }\n }\n\n render() {\n const { agent, featureAllowed } = this.props;\n\n const data = [agent.open, agent.lost, agent.won];\n const labels = [\n { color: '#047bf8', label: 'In corso' },\n { color: '#e65252', label: 'Persi' },\n { color: '#85c751', label: 'Vinti' },\n ];\n\n return (\n <>\n \n \n \n \n {featureAllowed('fees-visibility') &&\n \n }\n \n \n \n \n \n \n \n );\n }\n}\n\nDetails.defaultProps = {};\n\nDetails.propTypes = {\n code: PropTypes.number.isRequired,\n loadAgent: PropTypes.func.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadAgent: code => dispatch(getAgent(code)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n agent: makeSelectAgent(),\n interval: makeSelectModalOption(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withReducer = injectReducer({ key: 'agent', reducer });\nconst withSaga = injectSaga({ key: 'agent', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Details);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Modal, ModalBody } from 'reactstrap';\nimport { default as AgentItemDetails } from './details';\n\nimport './styles.scss';\n\nclass Item extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n openModal: false,\n };\n }\n\n toggleModal = () => {\n this.setState(prevState => ({ openModal: !prevState.openModal }));\n };\n\n render() {\n const { name, businessName, role, image, code } = this.props;\n const { openModal } = this.state;\n\n return (\n <>\n
\n
\n
\n
\n \"Immagine\"\n
\n
\n
{businessName}
\n \n {role.toUpperCase()}: {name}\n \n
\n
\n
\n \n
\n \n {role.toLowerCase()}: {name.toLowerCase()}\n \n \n
\n \n {openModal && }\n \n \n \n );\n }\n}\n\nItem.defaultProps = {\n image:\n 'https://www.gormankelly.com.au/wp-content/uploads/2019/03/Placeholder-Team-Image.jpg',\n};\n\nItem.propTypes = {\n role: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n businessName: PropTypes.string.isRequired,\n image: PropTypes.string,\n code: PropTypes.number.isRequired,\n};\n\nexport default Item;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { getUsername } from '../../utils/auth';\nimport { default as AgentAsListItem } from '../Agent/item';\nimport './styles.scss';\n\nconst agents = props => {\n const { agents, profile } = props;\n\n return (\n
\n
\n
\n
\n
\n \n
\n
\n
\n

{getUsername()}

\n
{profile.roleName.toUpperCase()}
\n
\n
\n
\n
\n {agents.map((agent, key) => (\n \n ))}\n
\n
\n );\n};\n\nagents.propTypes = {\n agents: PropTypes.array.isRequired,\n profile: PropTypes.object,\n};\n\nexport default agents;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { makeSelectOption } from './selectors';\nimport { updateOption } from './actions';\n\nimport './styles.scss';\n\nexport class Select extends React.PureComponent {\n constructor(props) {\n super(props);\n }\n\n handleChange = event => {\n const value = event.target.value;\n this.props.updateValue(value);\n if( typeof this.props.onChange === 'function')\n this.props.onChange();\n };\n\n render() {\n const { options, value, selectedRange, id, label } = this.props;\n return (\n
\n
\n \n {selectedRange}\n \n {options.map((item, key) => (\n \n ))}\n \n
\n
\n );\n }\n}\n\nSelect.defaultProps = {\n options: [\n { label: 'Oggi', value: 'today' },\n { label: '7 giorni', value: 'days' },\n { label: 'Questo mese', value: 'month' },\n { label: 'Mese precedente', value: 'prevmonth' },\n { label: 'Quest\\'anno', value: 'year' },\n { label: 'Anno precedente', value: 'prevyear' },\n ],\n selectedRange: ''\n};\n\nSelect.propTypes = {\n options: PropTypes.array,\n onChange: PropTypes.func,\n selectedRange: PropTypes.string,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: value => dispatch(updateOption(value)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n value: makeSelectOption(),\n});\n\nconst withReducer = injectReducer({ key: 'select', reducer });\nconst withSaga = injectSaga({ key: 'select', saga });\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Select);\n\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Steps } from 'antd';\nimport classnames from 'classnames';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport { ExpiredTooltip, AlertIcon, Tag } from 'components/UIKit';\n\nimport reducer from 'containers/Quotation/reducer';\nimport saga from 'containers/Quotation/saga';\n\nimport { printQuotation } from 'containers/Quotation/actions';\n\nimport { featureAllowed } from 'containers/App/selectors';\nimport messages from 'containers/Quotation/messages';\nimport { FormattedMessageWithClass } from '../../utils/FormattedMessageWithClass';\n\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nconst statusTypeMap = {\n OPEN: 'info',\n WON: 'success',\n LOST: 'alert',\n};\n\nconst statusTextMap = {\n OPEN: 'In corso',\n WON: 'Vinto',\n LOST: 'Perso',\n};\n\nconst quotationWidget = props => {\n const { quotations, featureAllowed } = props;\n\n const box = [];\n\n quotations.map((elem, index) => {\n const { sustainability } = elem;\n let showSalesBot = false;\n\n try {\n showSalesBot =\n elem.status === 'OPEN' &&\n elem.qualified < 1 &&\n elem.category.id > 10 &&\n elem.crm_id !== undefined;\n } catch (e) {}\n if (!elem.hasAssistant) {\n showSalesBot = false;\n }\n\n let quotationStep = 1;\n\n if (elem.code !== null) {\n quotationStep = 3;\n\n if (elem.hasAttachments) {\n quotationStep = 4;\n }\n } else if (\n sustainability &&\n sustainability.answers &&\n !Array.isArray(sustainability.answers) &&\n Object.keys(sustainability.answers).length > 0\n ) {\n quotationStep = 2;\n }\n\n const title = `Preventivo #${elem.proposal_id.toString().padStart(5, '0')}`;\n const stepTitleIndex = `step${quotationStep + 1}_title`;\n const stepTitle = messages[stepTitleIndex].defaultMessage;\n\n const item = (\n \n
\n
\n {elem.stillValid ?\n

{title}

\n :\n \n
{title}
\n
\n }\n
Agente: {elem.agent_name}
\n
\n \n
\n
\n \n \n
\n
Data
\n
{elem.date}
\n
\n \n \n
\n
Ragione Sociale
\n
{elem.customer_name}
\n
\n \n \n
\n
Automobile
\n
{elem.car_name}
\n
\n \n \n
\n
Rata mensile
\n
\n €\n {elem.price.toLocaleString('it')}\n
\n
\n \n \n
\n
Anticipo
\n
\n €\n {elem.deposit.toLocaleString('it')}\n
\n
\n \n {featureAllowed('fees-visibility') &&\n \n
\n
Commissione
\n
\n €\n {Math.max(0, elem.commission).toLocaleString('it')}\n
\n
\n \n }\n
\n
\n \n \n \n \n \n \n }\n />\n \n \n \n \n }\n />\n \n \n \n \n }\n />\n \n \n \n \n }\n />\n \n

\n {stepTitle}\n

\n
\n
\n \n );\n\n box.push(item);\n });\n\n return (\n
\n
{box}
\n
\n );\n};\n\nquotationWidget.propTypes = {\n quotations: PropTypes.any.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n print: quote => dispatch(printQuotation(quote)),\n };\n}\nconst mapStateToProps = createStructuredSelector({\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withReducer = injectReducer({ key: 'quotation', reducer });\nconst withSaga = injectSaga({ key: 'quotation', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(quotationWidget);\n","import { put, takeEvery, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { GET_FILTERS } from './constants';\nimport { filtersLoaded, setLoading, unsetLoading } from './actions';\nimport { makeSelectLoading, makeSelectSelectedParams } from './selectors';\nimport { makeSelectSelectedTags } from 'components/HorizontalFilter/selectors';\nimport { tagsLoaded, sortsLoaded } from '../HorizontalFilter/actions';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchFilters() {\n const isLoading = yield select(makeSelectLoading());\n\n if (!isLoading) {\n yield put(setLoading())\n\n const requestURL = `${API_URL}search/filters`;\n let requestBody = {};\n\n const params = yield select(makeSelectSelectedParams());\n const requestParams = [];\n params.map(param => (requestParams[param.name] = param.value));\n\n const tags = yield select(makeSelectSelectedTags());\n const requestTags = [];\n tags.map(tag => requestTags.push(tag.value));\n\n requestBody = {\n ...requestParams,\n tags: requestTags,\n };\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n const response = yield fetch(requestURL, parameters).then(resp => responseHandler(resp));\n\n yield all([\n put(filtersLoaded(response.filters)),\n put(tagsLoaded(response.tags)),\n put(sortsLoaded(response.orders)),\n put(unsetLoading()),\n ]);\n } catch (error) {\n console.log('request error', error);\n yield put(unsetLoading())\n }\n }\n}\n\nfunction* actionWatcher() {\n yield takeEvery(GET_FILTERS, fetchFilters);\n}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport _ from 'lodash';\n\nimport TrafficLights from './trafficlights'\n\nimport { makeSelectSustainabilitySelected, makeSelectCheckResponse } from './selectors'\n\nimport { updateSustainabilitySelected } from './actions'\n\nimport './styles.scss';\n\nclass PrescoringFilter extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n const id = _.uniqueId('Prescoring-');\n }\n\n isSelected = value => this.props.sustainabilitySelected.some(selected => selected === value);\n\n onClickHandler = value => {\n const { sustainabilitySelected, updateSustainabilitySelected } = this.props;\n\n let newSustainabilitySelected = [...sustainabilitySelected];\n\n if (this.isSelected(value)) {\n if (sustainabilitySelected.length > 1) {\n newSustainabilitySelected = newSustainabilitySelected.filter(sustainabilitySelectedItem => sustainabilitySelectedItem !== value)\n }\n } else {\n newSustainabilitySelected = [...newSustainabilitySelected, value]\n }\n\n if (sustainabilitySelected.length !== newSustainabilitySelected.length) {\n updateSustainabilitySelected(newSustainabilitySelected);\n }\n }\n\n render() {\n const { sustainabilitySelected } = this.props;\n let { prescoringResponse } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n if (!sustainabilitySelected.length) {\n return null;\n }\n\n let enabled = [];\n\n if (prescoringResponse && prescoringResponse.hasOwnProperty('chance')) {\n if (prescoringResponse.chance === 0) {\n enabled = [0];\n } else if (prescoringResponse.chance === 1 && (prescoringResponse.depositRequired === null || prescoringResponse.monthlyRateMax === null)) {\n enabled = [1];\n }\n }\n\n return (\n
\n
\n Sostenibilità canone:\n
\n
\n this.onClickHandler(value) : null}\n selected={sustainabilitySelected}\n enabled={enabled}\n />\n
\n
\n );\n }\n}\n\nconst withReducer = injectReducer({ key: 'prescoring', reducer });\nconst withSaga = injectSaga({ key: 'prescoring', saga });\n\nconst mapStateToProps = createStructuredSelector({\n sustainabilitySelected: makeSelectSustainabilitySelected(),\n prescoringResponse: makeSelectCheckResponse(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n updateSustainabilitySelected: sustainabilitySelected => dispatch(updateSustainabilitySelected(sustainabilitySelected)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withSaga,\n withReducer,\n withConnect,\n)(PrescoringFilter);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\n\nimport CloseIcon from '-!svg-react-loader!./assets/close.svg?name=CloseIcon';\n\nimport './badgeStyles.scss';\n\nclass Badge extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n const { label, active, onClick, showIcon, disabled } = this.props;\n return (\n \n \n {active && (\n <>\n {label} {showIcon && }\n \n )}\n {!active && label}\n \n
\n );\n }\n}\n\nBadge.defaultProps = {\n active: false,\n showIcon: true,\n onClick: null,\n disabled: false,\n};\nBadge.propTypes = {\n label: PropTypes.string.isRequired,\n active: PropTypes.bool,\n showIcon: PropTypes.bool,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n};\nexport default Badge;\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","export const messages = {\n confirmMessageEdit: 'Modificando questo filtro il credit check verrà azzerato. Confermi?',\n confirmMessageReset: 'Rimuovendo i filtri verrà azzerato il credit check. Confermi?',\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport Badge from './badge';\nimport reducer from '../HorizontalFilter/reducer';\nimport saga from '../HorizontalFilter/saga';\nimport {\n makeSelectSelectedTags,\n makeSelectTagsEnabled,\n} from '../HorizontalFilter/selectors';\nimport {\n addOption,\n hideTag,\n removeOption,\n showTag,\n} from '../HorizontalFilter/actions';\nimport { messages } from './messages';\n\nimport './styles.scss';\n\nimport _ from 'lodash';\n\nclass Choice extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n this.id = _.uniqueId();\n }\n\n handleOnClick = (value, label, active) => {\n if (!this.props.hasConfirmMessage || (this.props.hasConfirmMessage && confirm(messages.confirmMessageEdit))) {\n if (active) {\n this.props.removeOption(value);\n this.props.showTag(value);\n } else {\n this.props.addOption(value, label);\n this.props.hideTag(value);\n }\n }\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, tags, selectedTags, isEnabled } = this.props;\n const { show } = this.state;\n const selected = new Set();\n selectedTags.map(item => selected.add(item.value));\n let componentId = `search-filters-choice-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();\n\n if (tags.length < true) return null;\n\n return (\n
\n\n

\n \n

\n
\n {tags.map((item, key) => {\n if (item === undefined) return null;\n if (!show && key >= 4) return null;\n const active = selected.has(item.value);\n\n return (\n \n this.handleOnClick(item.value, item.label, active)\n }\n />\n );\n })}\n
\n
\n );\n }\n}\n\nChoice.defaultProps = {};\nChoice.propTypes = {\n label: PropTypes.string.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedTags: makeSelectSelectedTags(),\n isEnabled: makeSelectTagsEnabled(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n addOption: (value, label) => dispatch(addOption(value, label)),\n removeOption: value => dispatch(removeOption(value)),\n hideTag: value => dispatch(hideTag(value)),\n showTag: value => dispatch(showTag(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'filters', reducer });\nconst withSaga = injectSaga({ key: 'filters', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Choice);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './badgeStyles.scss';\n\nclass MultiBadge extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n const { label, active, onClick, showIcon } = this.props;\n return (\n
\n \n {showIcon && (\n <>\n
\n \n
{' '}\n {label}{' '}\n \n )}\n {!showIcon && label}\n
\n
\n );\n }\n}\n\nMultiBadge.defaultProps = {\n active: false,\n showIcon: true,\n onClick: null,\n};\nMultiBadge.propTypes = {\n label: PropTypes.string.isRequired,\n active: PropTypes.bool,\n showIcon: PropTypes.bool,\n onClick: PropTypes.func,\n};\nexport default MultiBadge;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox } from 'antd';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nimport _ from 'lodash';\n\nclass Multiselect extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n this.id = _.uniqueId();\n }\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n handeOnChange = (checked, value, name, label, selected) => {\n // const { selected } = this.state;\n if (checked) {\n selected.add(value);\n } else {\n selected.delete(value);\n }\n // this.setState({ selected });\n this.props.updateValue({\n name,\n value: [...selected],\n label,\n });\n };\n\n render() {\n const { label, options, name, unit, selectedParams } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n let selected = new Set();\n let componentId = `search-filters-multiselect-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();;\n\n if (current !== null && current.value !== null) {\n selected = new Set(current.value);\n }\n return (\n
\n

\n \n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
\n {options.map((item, key) => (\n
\n \n this.handeOnChange(\n e.target.checked,\n item.value,\n name,\n label,\n selected,\n )\n }\n >\n {unit.length > 0 && `${unit} `} {item.label}\n \n
\n
\n ))}\n
\n )}\n
\n );\n }\n}\n\nMultiselect.defaultProps = {\n unit: '',\n};\nMultiselect.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n unit: PropTypes.string,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Multiselect);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nimport _ from 'lodash';\n\nclass MultiselectWithIcon extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n this.id = _.uniqueId();\n }\n\n handeOnSelect = (selected, value) => {\n if (selected.has(value)) selected.delete(value);\n else selected.add(value);\n\n this.props.updateValue({\n name: this.props.name,\n value: [...selected],\n label: this.props.label,\n });\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, name, options, selectedParams } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n let selected = new Set();\n let componentId = `search-filters-multiselect-with-icon-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();;\n\n if( current !== null && current.value !== null ){\n selected = new Set(current.value);\n }\n return (\n
\n

\n \n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
    \n {options.map((item, key) => (\n this.handeOnSelect(selected, item.value)}\n className=\"multi-select-icon-item\"\n >\n \n \n {item.label}\n \n \n ))}\n
\n )}\n
\n );\n }\n}\n\nMultiselectWithIcon.defaultProps = {};\nMultiselectWithIcon.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n selectedParams: PropTypes.array,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(MultiselectWithIcon);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { CustomInput } from 'reactstrap';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\nimport { makeSelectSelectedTags } from '../HorizontalFilter/selectors';\nimport {\n addOption,\n hideTag,\n removeOption,\n showTag,\n} from '../HorizontalFilter/actions';\n\nimport './styles.scss';\n\nimport _ from 'lodash';\n\nclass MultiselectWithSwitch extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n this.id = _.uniqueId();\n }\n\n handleOnClick = (value, label, active) => {\n if (active) {\n this.props.removeOption(value);\n this.props.showTag(value);\n } else {\n this.props.addOption(value, label);\n this.props.hideTag(value);\n }\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, items, selectedTags } = this.props;\n const { show } = this.state;\n const selected = new Set();\n selectedTags.map(item => selected.add(item.value));\n let componentId = `search-filters-multiselect-with-switch-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();;\n\n if (items.length < true) return null;\n\n return (\n
\n

\n \n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
\n {items.map((item, key) => {\n if (item === undefined) return null;\n const active = selected.has(item.value);\n\n return (\n \n this.handleOnClick(item.value, item.label, active)\n }\n value=\"1\"\n />\n )\n })}\n
\n )}\n
\n );\n }\n}\n\nMultiselectWithSwitch.defaultProps = {\n unit: '',\n};\nMultiselectWithSwitch.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n items: PropTypes.array.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedTags: makeSelectSelectedTags(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n addOption: (value, label) => dispatch(addOption(value, label)),\n removeOption: value => dispatch(removeOption(value)),\n hideTag: value => dispatch(hideTag(value)),\n showTag: value => dispatch(showTag(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(MultiselectWithSwitch);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { createStructuredSelector } from 'reselect';\n\nimport AwesomeDebouncePromise from 'awesome-debounce-promise';\nimport { messages } from './messages';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport { InputNumber } from 'antd';\nimport { InputSlider } from '../UIKit';\nimport { getObjByAttribute } from '../../utils/common';\n\nimport './styles.scss';\n\nimport _ from 'lodash';\n\nclass RangeSlider extends React.Component {\n constructor(props) {\n super(props);\n\n let [start, end] = props.value\n\n if (props.items) {\n [start, end] = this.getNumericValuesFromString([start, end])\n }\n\n this.state = {\n additionalSteps: [],\n start: parseInt(start),\n end: parseInt(end),\n onAfterChangePending: false,\n };\n\n this.sliderRef = React.createRef();\n\n this.id = _.uniqueId();\n\n }\n\n getNumericValuesFromString = values => {\n const { items } = this.props\n let [start, end] = values\n\n if (items) {\n start = typeof start === 'string' ? parseInt(\n Object\n .keys(items)\n .find(key => items[key].label === start || items[key].label === this.formatValueLabel(start))\n ) : start;\n end = typeof end === 'string' ? parseInt(\n Object\n .keys(items)\n .find(key => items[key].label === end || items[key].label === this.formatValueLabel(end))\n ) : end;\n }\n\n return [start, end];\n }\n\n get minMax() {\n let { min, max, items } = this.props;\n\n if (items && (!min || !max)) {\n min = parseInt(Object.keys(items)[0]);\n max = parseInt(Object.keys(items).slice(-1)[0]);\n }\n\n return [min, max];\n }\n\n onChange = values => {\n const { items } = this.props\n let [start, end] = values\n\n if (items) {\n [start, end] = this.getNumericValuesFromString([start, end])\n }\n\n this.setState({ start, end })\n };\n\n onAfterChange = value => {\n const { onAfterChangePending } = this.state;\n\n if (!onAfterChangePending) {\n const {onChange, name, items, label, selectedParams, hasConfirmMessage } = this.props\n\n this.setState({onAfterChangePending: true}, () => {\n if (!hasConfirmMessage || (hasConfirmMessage && confirm(messages.confirmMessageEdit))) {\n const [min, max] = this.minMax\n let [start, end] = value\n let [selectedStart, selectedEnd] = [min, max]\n\n const current = getObjByAttribute(selectedParams, 'name', name)\n\n if (current && current.value) {\n [selectedStart, selectedEnd] = current.value\n }\n\n if (min !== start || max !== end || start !== selectedStart || end !== selectedEnd) {\n if (items) {\n // valori formattati\n [start, end] = Object.values(value.reduce((obj, key) => ({...obj, [key]: items[key].label}), {}))\n }\n\n if (typeof end === 'undefined') {\n end = start\n }\n\n onChange(label, name, start, end)\n this.setState({onAfterChangePending: false});\n }\n } else {\n const [start, end] = this.props.value;\n this.sliderRef.current.blur();\n this.setState({\n onAfterChangePending: false,\n start: parseInt(start),\n end: parseInt(end)\n });\n }\n });\n }\n };\n\n onStartChange = startValue => {\n const [min, max] = this.minMax\n startValue = parseInt(`${startValue}`.replace('.', ''))\n\n if (startValue && !isNaN(startValue) && startValue >= min && startValue <= this.state.end && startValue <= max) {\n this.setState(\n {\n start: parseInt(startValue),\n additionalSteps: [...this.state.additionalSteps, parseInt(startValue)],\n },\n () => {\n const {start, end} = this.state\n this.onAfterChange([start, end])\n }\n )\n }\n };\n\n onStartChangeDebounced = AwesomeDebouncePromise(\n this.onStartChange,\n 500,\n { key: () => `${this.props.name}startValue` },\n )\n\n onEndChange = endValue => {\n const [min, max] = this.minMax\n endValue = parseInt(`${endValue}`.replace('.', ''))\n\n if (endValue && !isNaN(endValue) && endValue >= min && endValue >= this.state.start && endValue <= max) {\n this.setState(\n {\n end: parseInt(endValue),\n additionalSteps: [...this.state.additionalSteps, parseInt(endValue)],\n },\n () => {\n const {start, end} = this.state\n this.onAfterChange([start, end])\n }\n );\n }\n };\n\n onEndChangeDebounced = AwesomeDebouncePromise(\n this.onEndChange,\n 500,\n { key: () => `${this.props.name}endValue` },\n )\n\n formatValueLabel = value => {\n const { items, labelFormatter, unit } = this.props\n\n if (typeof labelFormatter === 'function') {\n return labelFormatter(value, unit);\n } else {\n if (items && items[value] && items[value].label) {\n return items[value].label;\n }\n\n return `${value}${unit ? ` ${unit}` : ''}`;\n }\n };\n\n render() {\n const {\n label,\n labelShort,\n unit,\n step,\n items,\n withInput,\n withStepLabel,\n addOn,\n disabled\n } = this.props;\n\n const { additionalSteps, start, end } = this.state;\n\n const [min, max] = this.minMax;\n let componentId = `search-filters-range-slider-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();;\n\n return (\n
\n

\n
\n \n {addOn &&\n \n {addOn}\n \n }\n
\n {withInput ? (\n
\n \n \n value !== unit ? `${unit} ${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.') : ''\n }\n parser={value => value.replace(`${unit} `, '').replace(/\\$\\s?|(\\.*)/g, '')}\n min={min}\n max={max}\n disabled={min === max}\n value={start}\n step={step}\n onChange={this.onStartChangeDebounced}\n className=\"range-slider-input range-slider-input-start\"\n id={`min-input-${componentId}`}\n aria-label={`Minimo ${label}`}\n />\n -\n \n \n value !== unit ? `${unit} ${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.') : ''\n }\n parser={value => value.replace(`${unit} `, '').replace(/\\$\\s?|(\\.*)/g, '')}\n min={min}\n max={max}\n disabled={min === max}\n value={end}\n step={step}\n onChange={this.onEndChangeDebounced}\n className=\"range-slider-input range-slider-input-end\"\n id={`max-input-${componentId}`}\n aria-label={`Massimo ${label}`}\n />\n
\n ) : !withStepLabel ? (\n
\n {this.formatValueLabel(start)}\n {` - `}\n {this.formatValueLabel(end)}\n
\n ) : null}\n

\n \n
\n );\n }\n}\n\nRangeSlider.defaultProps = {\n withInput: false,\n withStepLabel: true,\n disabled: false\n};\n\nRangeSlider.propTypes = {\n label: PropTypes.string.isRequired,\n labelShort: PropTypes.string,\n name: PropTypes.string.isRequired,\n min: PropTypes.number,\n max: PropTypes.number,\n items: PropTypes.object,\n step: PropTypes.number,\n value: PropTypes.array,\n onChange: PropTypes.func,\n unit: PropTypes.string,\n withInput: PropTypes.bool,\n withStepLabel: PropTypes.bool,\n hasConfirmMessage: PropTypes.bool,\n labelFormatter: PropTypes.func,\n addOn: PropTypes.any,\n disabled: PropTypes.bool\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(RangeSlider);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nclass Select extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n handeOnClick = value => {\n this.props.updateValue({\n name: this.props.name,\n value,\n label: this.props.label,\n });\n };\n\n render() {\n const { label, name, options, unit, selectedParams } = this.props;\n const current = getObjByAttribute(selectedParams, 'name', name);\n return (\n
\n

{label}

\n {options.map((item, key) => (\n this.handeOnClick(item.value)}\n >\n {' '}\n {unit.length > 0 && `${unit} `}\n {item.label}{' '}\n
\n ))}\n \n );\n }\n}\n\nSelect.defaultProps = {\n unit: '',\n};\nSelect.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n unit: PropTypes.string,\n selectedParams: PropTypes.array,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Select);\n\n// export default Select;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nimport _ from 'lodash';\n\nclass SelectCollapsible extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n this.id = _.uniqueId();\n }\n\n handeOnClick = value => {\n this.props.updateValue({\n name: this.props.name,\n value,\n label: this.props.label,\n });\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, name, options, unit, selectedParams } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n let componentId = `search-filters-select-collapsible-${label}-${this.id}`.replace(/\\s+/g, '-').toLowerCase();;\n return (\n
\n

\n \n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
\n {options.map((item, key) => (\n this.handeOnClick(item.value)}\n >\n {' '}\n {unit.length > 0 && `${unit} `}\n {item.label}{' '}\n
\n ))}\n
\n )}\n \n );\n }\n}\n\nSelectCollapsible.defaultProps = {\n unit: '',\n show: false,\n};\nSelectCollapsible.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n unit: PropTypes.string,\n selectedParams: PropTypes.array,\n show: PropTypes.bool,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(SelectCollapsible);\n\n// export default Select;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { createStructuredSelector } from 'reselect';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../Search/reducer';\nimport saga from '../Search/saga';\n\nimport { makeSelectSelectedParams } from '../Search/selectors';\nimport { updateParam } from '../Search/actions';\n\nimport { Input, InputNumber } from 'antd';\nimport { InputSlider } from '../UIKit';\n\nimport { getObjByAttribute } from '../../utils/common';\n\nimport './styles.scss';\n\nclass Slider extends React.Component {\n constructor(props) {\n super(props);\n\n this.sliderRef = React.createRef();\n }\n\n get currentValues() {\n const { name, selectedParams, max } = this.props;\n\n const current = getObjByAttribute(selectedParams, 'name', name);\n\n let value = max;\n\n if (current && current.value) {\n value = current.value;\n }\n\n return value;\n }\n\n onChange = value =>\n this.props.updateValue({\n name: this.props.name,\n value,\n label: this.props.label,\n });\n\n render() {\n let {\n label,\n unit,\n items,\n withStepLabel,\n labelFormatter,\n } = this.props;\n\n const value = this.currentValues\n\n const formatValueLabel = value =>\n labelFormatter\n ? labelFormatter(value, unit)\n : `${value}${unit ? ` ${unit}` : ''}`;\n\n return (\n
\n

\n {label}\n

\n \n
\n );\n }\n}\n\nSlider.defaultProps = {\n withStepLabel: true,\n};\n\nSlider.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n min: PropTypes.number,\n max: PropTypes.number,\n items: PropTypes.array,\n unit: PropTypes.string,\n withStepLabel: PropTypes.bool,\n labelFormatter: PropTypes.func,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Slider);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport queryString from 'query-string';\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { FILTERS_ALLOWED, FILTERS_LABELS, FILTERS_LABELS_SHORT, FILTERS_AS_TAG } from './constants';\nimport { getObjByAttribute } from '../../utils/common';\nimport Loader from '../Loader';\nimport { Checkbox } from 'antd';\nimport { default as PrescoringFilter } from '../PrescoringTool/filter';\n\nimport { CONTRACTUAL_CATEGORIES } from 'containers/App/contractualCategories';\n\nimport { makeSelectParam, makeSelectSelectedParams, makeSelectLoading, makeSelectLabels } from './selectors';\nimport { makeSelectFiltersOption, transformSelectedFiltersForQuesystring } from '../HorizontalFilter/selectors';\nimport { makeSelectTags } from '../HorizontalFilter/selectors';\nimport { makeSelectCheckResponse, makeSelectCheckInputData } from '../PrescoringTool/selectors'\nimport { featureAllowed } from 'containers/App/selectors';\nimport { getFilters, updateParam, removeParam } from './actions';\nimport {\n addOption,\n hideTag,\n removeOption,\n showTag,\n} from '../HorizontalFilter/actions';\nimport {\n ChoiceFilter,\n SelectCollapsibleFilter,\n RangeSliderFilter,\n MultiselectFilter,\n MultiselectWithSwitchFilter,\n MultiselectWithIconFilter,\n} from '../SearchFilters/';\n\nimport './styles.scss';\nimport _ from 'lodash';\n\nclass Search extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n qsFiltersSetted: false\n };\n this.id = _.uniqueId(\"Search-\");\n }\n\n componentDidMount() {\n this.props.loadFilters();\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (prevProps.params.hasOwnProperty('brands')) {\n const {\n selectedTags,\n activeFilters,\n selectedParams,\n params\n } = this.props;\n\n if (!prevState.qsFiltersSetted) {\n const qsFilters = queryString.parse(location.search, {arrayFormat: 'comma'});\n\n if (Object.keys(qsFilters).length) {\n for (const [filterKey, filterValue] of Object.entries(qsFilters)) {\n if (FILTERS_ALLOWED.indexOf(filterKey) >= 0) {\n if (FILTERS_AS_TAG.indexOf(filterKey) >= 0) {\n this.props.addOption(filterKey, FILTERS_LABELS[filterKey]);\n this.props.hideTag(filterKey);\n } else {\n this.props.updateValue({\n name: filterKey,\n label: FILTERS_LABELS[filterKey],\n value: (\n typeof params[filterKey] !== 'undefined'\n && Array.isArray(params[filterKey])\n && !Array.isArray(filterValue)\n )\n ? [filterValue]\n : filterValue,\n });\n this.props.loadFilters();\n }\n }\n }\n }\n\n this.setState({qsFiltersSetted: true});\n }\n\n const selected = [...selectedTags, ...activeFilters];\n const transformedParams = transformSelectedFiltersForQuesystring(selected);\n let qs = queryString.stringify(transformedParams, {arrayFormat: 'comma'})\n let qs2 = queryString.parse(transformedParams, {arrayFormat: 'comma'});\n const cleanSearch = location.search.replace('?', '');\n\n let { prescoringResponse, prescoringInputData } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n prescoringInputData = prescoringInputData.hasOwnProperty('_root') ? prescoringInputData.toJS() : prescoringInputData;\n\n const customerType = prescoringInputData.contractualCategory ?\n this.getCustomerTypeByContractualCategory(prescoringInputData.contractualCategory)\n : null;\n\n if (\n customerType &&\n !selectedParams.some(selectedParam => selectedParam.name === \"monthly_rate\")\n && !selectedParams.some(selectedParam => selectedParam.name === \"deposit\")\n && (\n (customerType !== 'privati' && !selectedTags.some(selectedTag => selectedTag.value === 'privati'))\n ||\n (customerType !== 'piva' && !selectedTags.some(selectedTag => selectedTag.value === 'piva'))\n )\n ) {\n let needFetchFilters = false;\n\n const currentCustomerTypePrivati = selectedTags.some(selectedTag => selectedTag.value === 'privati');\n const currentCustomerTypePiva = selectedTags.some(selectedTag => selectedTag.value === 'piva');\n\n if (!currentCustomerTypePrivati && customerType === 'privati') {\n qs2.privati = 1;\n needFetchFilters = true;\n } else if (!currentCustomerTypePiva && customerType === 'piva') {\n qs2.piva = 1;\n needFetchFilters = true;\n } else if (!currentCustomerTypePiva && currentCustomerTypePrivati) {\n qs2.privati = 1;\n needFetchFilters = true;\n } else if (currentCustomerTypePiva && !currentCustomerTypePrivati) {\n qs2.piva = 1;\n needFetchFilters = true;\n }\n\n if (prescoringResponse.monthlyRateMax > 0) {\n const currentMonthlyRate = selectedParams.find(currentParam => currentParam.name === 'monthly_rate');\n let monthlyRateMin;\n\n if (currentMonthlyRate) {\n monthlyRateMin = currentMonthlyRate.value[0];\n } else {\n monthlyRateMin = params.monthly_rates ? params.monthly_rates.min : 0;\n }\n\n qs2.monthly_rate = [monthlyRateMin, parseInt(prescoringResponse.monthlyRateMax)]\n needFetchFilters = true;\n }\n\n if (prescoringResponse.depositRequired === true) {\n const currentDeposit = selectedParams.find(currentParam => currentParam.name === 'deposit');\n let depositMax;\n\n if (currentDeposit) {\n depositMax = currentDeposit.value[1];\n } else {\n depositMax = params.deposits ? params.deposits.max : 0;\n }\n\n qs2.deposit = [1, depositMax]\n needFetchFilters = true;\n }\n\n if (needFetchFilters) {\n qs = queryString.stringify(qs2, {arrayFormat: 'comma'})\n }\n }\n\n if (cleanSearch != qs) {\n const newurl = `${location.protocol}//${location.host}${location.pathname}?${qs}`;\n history.pushState({path:newurl}, '', newurl);\n }\n }\n }\n\n getCustomerTypeByContractualCategory = contractualCategory => {\n const contractualCategoryFound = CONTRACTUAL_CATEGORIES.find(contractualCategoryItem => contractualCategoryItem.value === contractualCategory);\n\n if (contractualCategoryFound) {\n return contractualCategoryFound.type === 'BUSINESS' ? 'piva' : 'privati';\n }\n\n return null;\n }\n\n onRangeChange = (label, name, start, end) => {\n this.props.updateValue({\n name,\n label,\n value: [start, end],\n });\n\n this.props.loadFilters();\n };\n\n onFastDeliveryChange = (checked) => {\n if (!checked) {\n this.props.removeOption('fast_delivery');\n this.props.showTag('fast_delivery');\n } else {\n this.props.addOption('fast_delivery', FILTERS_LABELS.fast_delivery);\n this.props.hideTag('fast_delivery');\n this.props.removeParam('delivery_time');\n }\n };\n\n render() {\n const { params, selectedParams, selectedTags, tags, loading } = this.props;\n let { prescoringResponse } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n if (!params.hasOwnProperty('brands')) {\n return ;\n }\n\n const {\n brands,\n brokers,\n categories,\n deposits,\n distances,\n durations,\n fuels,\n gear,\n monthly_rates,\n kwh_range,\n delivery_times,\n products,\n stocks,\n areas,\n } = params;\n\n const getSelectedParamValue = (paramName, paramValuesName) => {\n const current = getObjByAttribute(selectedParams, 'name', paramName)\n\n if (current && current.value) {\n return current.value\n }\n\n if (params[paramValuesName]) {\n if (typeof params[paramValuesName].min !== 'undefined') {\n return [params[paramValuesName].min, params[paramValuesName].max]\n }\n\n const [start, end] = [Object.keys(params[paramValuesName])[0], Object.keys(params[paramValuesName]).slice(-1)[0]]\n\n return [\n parseInt(start),\n parseInt(end)\n ]\n }\n\n return [0, 0]\n }\n\n const hasConfirmMessage = prescoringResponse && prescoringResponse.hasOwnProperty('chance') && prescoringResponse.chance !== null;\n\n const fastDeliverySelected = selectedTags && selectedTags.some(tag => tag.value === 'fast_delivery');\n\n return (\n
\n \n \n \n {(monthly_rates && monthly_rates.min >= 0 && monthly_rates.max >= 0) ?\n `${unit} ${value.toLocaleString('it')}`}\n hasConfirmMessage={hasConfirmMessage}\n />\n : null}\n {(deposits && deposits.min !== undefined && deposits.max !== undefined) ?\n `${unit} ${value.toLocaleString('it')}`}\n hasConfirmMessage={hasConfirmMessage}\n />\n : null}\n {durations && Object.keys(durations).length > 0 &&\n \n }\n {distances && Object.keys(distances).length > 0 &&\n `${value.toLocaleString('it')} ${unit}`}\n />\n }\n this.onFastDeliveryChange(e.target.checked)}\n >\n {FILTERS_LABELS.fast_delivery}\n \n }\n />\n\n {stocks && stocks.length > 1 &&\n \n }\n\n {brokers.length > 1 &&\n \n }\n\n {products.length > 1 ?\n \n : null\n }\n\n \n\n \n\n \n\n \n\n \n\n {areas && areas.length > 1 &&\n \n }\n\n {this.props.featureAllowed('catalog') &&\n \n }\n\n {/* */}\n
\n );\n }\n}\n\nSearch.defaultProps = {};\n\nSearch.propTypes = {\n loadFilters: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n params: makeSelectParam(),\n selectedParams: makeSelectSelectedParams(),\n selectedTags: makeSelectFiltersOption(),\n activeFilters: makeSelectLabels(),\n tags: makeSelectTags(),\n loading: makeSelectLoading(),\n prescoringResponse: makeSelectCheckResponse(),\n prescoringInputData: makeSelectCheckInputData(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadFilters: () => dispatch(getFilters()),\n updateValue: values => dispatch(updateParam(values)),\n addOption: (value, label) => dispatch(addOption(value, label)),\n hideTag: value => dispatch(hideTag(value)),\n removeOption: value => dispatch(removeOption(value)),\n removeParam: name => dispatch(removeParam(name)),\n showTag: value => dispatch(showTag(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'search', reducer });\nconst withSaga = injectSaga({ key: 'search', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Search);\n\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport Badge from '../SearchFilters/badge';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { addOption, removeOption, showTag, hideTag } from './actions';\nimport { removeParam, getFilters } from '../Search/actions';\n\nimport { messages } from '../SearchFilters/messages';\n\nconst prescoringLabelTags = [\n 'Rata',\n 'Privati',\n 'P.IVA',\n 'Anticipo',\n];\n\nclass Tags extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n handleOnClick = (value, label, name, active) => {\n if (!this.props.hasConfirmMessage || prescoringLabelTags.indexOf(label) < 0 || (this.props.hasConfirmMessage && confirm(messages.confirmMessageReset))) {\n if (active) {\n if (name.length > 0) {\n this.props.removeParam(name);\n } else {\n this.props.removeOption(value);\n this.props.showTag(value);\n }\n } else {\n this.props.addOption(value, label);\n this.props.hideTag(value);\n }\n\n this.props.getFilters();\n }\n };\n\n render() {\n const { active, tags, params } = this.props;\n const tagsNameWithBooleanValue = ['catalogo', 'fast_delivery', 'noviceDriver'];\n\n return (\n
\n {tags.map((item, key) => {\n if (item === undefined) return null;\n\n const name = item.hasOwnProperty('name') ? item.name : '';\n let label = `${item.label}: `\n\n if (Array.isArray(item.value) && item.value.length > 1) {\n const itemValues = item.value.map(itemValue => {\n if (params[item.name] !== undefined) {\n const paramItem = params[item.name].find(el => el.value === itemValue);\n return paramItem.label;\n }\n\n return itemValue;\n });\n\n if (itemValues.length > 2) {\n label += itemValues.join(', ');\n } else {\n let [valueFrom, valueTo] = itemValues\n valueFrom = typeof valueFrom === 'number' ? valueFrom.toLocaleString('it') : valueFrom\n valueTo = typeof valueTo === 'number' ? valueTo.toLocaleString('it') : valueTo\n\n if (valueFrom === valueTo) {\n label += `${valueFrom}`\n } else {\n label += `${valueFrom}, ${valueTo}`;\n }\n }\n } else {\n const itemValue = Array.isArray(item.value) ? item.value[0] : item.value;\n\n if (params[item.name] !== undefined) {\n const paramItem = params[item.name].find(el => el.value === itemValue);\n label += paramItem.label;\n } else {\n label += item.name && !tagsNameWithBooleanValue.includes(item.name) ? itemValue : 'sì';\n }\n }\n\n if (item.hasOwnProperty('show')) {\n return item.show ? (\n \n this.handleOnClick(item.value, item.label, name, active)\n }\n />\n ) : null;\n }\n return (\n \n this.handleOnClick(item.value, item.label, name, active)\n }\n />\n );\n })}\n
\n );\n }\n}\n\nTags.defaultProps = {\n active: false,\n};\n\nTags.propTypes = {\n tags: PropTypes.array.isRequired,\n active: PropTypes.bool,\n hasConfirmMessage: PropTypes.bool,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n addOption: (value, label) => dispatch(addOption(value, label)),\n removeOption: value => dispatch(removeOption(value)),\n removeParam: name => dispatch(removeParam(name)),\n getFilters: () => dispatch(getFilters()),\n showTag: value => dispatch(showTag(value)),\n hideTag: value => dispatch(hideTag(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'filters', reducer });\nconst withSaga = injectSaga({ key: 'filters', saga });\nconst withConnect = connect(\n null,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Tags);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport SortIcon from '-!svg-react-loader!./assets/sort.svg?name=SortIcon';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Row, Col } from 'reactstrap';\nimport { Drawer, Button } from 'antd';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { removeAllOptions, showAllTags, orderBy } from './actions';\nimport {\n makeSelectFiltersOption,\n makeSelectSort,\n makeSelectSelectedSort,\n} from './selectors';\nimport {\n SECTION_DESCRIPTION,\n SECTION_TITLE,\n SECTION_SINGLE_TITLE,\n} from './constants';\n\nimport { resetParams, getFilters } from '../Search/actions';\nimport { makeSelectLabels, makeSelectParam } from '../Search/selectors';\nimport { default as Search } from 'components/Search/';\nimport { makeSelectCheckResponse } from '../PrescoringTool/selectors'\nimport { messages } from '../SearchFilters/messages';\n\nimport Tags from './tags';\n\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nclass HorizontalFilter extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n filterDrawerIsOpen: true,\n };\n }\n\n componentDidMount() {\n // trick per montare il drawer dei filtri fin da subito,\n // evitando un load filters e fetch offers alla prima apertura che causava il reset del prescoring\n this.setState({filterDrawerIsOpen: false});\n }\n\n get hasConfirmMessage() {\n let { prescoringResponse } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n return prescoringResponse && prescoringResponse.hasOwnProperty('chance') && prescoringResponse.chance !== null;\n }\n\n onCancelClick = () => {\n if (!this.hasConfirmMessage || (this.hasConfirmMessage && confirm(messages.confirmMessageReset))) {\n this.props.clearParams();\n this.props.clearFilters();\n this.props.showTags();\n this.props.getFilters();\n }\n };\n\n onOrderChange = e => {\n this.props.orderBy(e.target.value);\n };\n\n openFilterDrawer = () => this.setState({ filterDrawerIsOpen: true });\n closeFilterDrawer = () => this.setState({ filterDrawerIsOpen: false });\n\n render() {\n const {\n results,\n sort,\n selectedSort,\n selectedTags,\n activeFilters,\n params,\n label,\n id\n } = this.props;\n const selected = [...selectedTags, ...activeFilters];\n\n return (\n
\n
\n
\n
\n \n {SECTION_DESCRIPTION}\n \n \n \n {sort.map((item, key) => (\n \n ))}\n \n
\n
\n

\n {results} {results === 1 ? SECTION_SINGLE_TITLE : SECTION_TITLE}\n \n

\n\n \n \n \n\n {selected.length > 0 && (\n \n \n \n
\n Rimuovi i filtri\n
\n \n
\n )}\n
\n
\n );\n }\n}\n\nHorizontalFilter.defaultProps = {};\nHorizontalFilter.propTypes = {\n results: PropTypes.number.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedTags: makeSelectFiltersOption(),\n activeFilters: makeSelectLabels(),\n sort: makeSelectSort(),\n selectedSort: makeSelectSelectedSort(),\n prescoringResponse: makeSelectCheckResponse(),\n params: makeSelectParam(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n clearFilters: () => dispatch(removeAllOptions()),\n clearParams: () => dispatch(resetParams()),\n getFilters: () => dispatch(getFilters()),\n showTags: () => dispatch(showAllTags()),\n orderBy: value => dispatch(orderBy(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'filters', reducer });\nconst withSaga = injectSaga({ key: 'filters', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(HorizontalFilter);\n","import {\n UPDATE_PARAMS,\n RESET_PARAMS,\n GET_FILTERS,\n FILTERS_RECEIVED,\n REMOVE_PARAM,\n DOWNLOAD_OFFERS,\n} from './constants';\n\n/**\n *\n * @returns {{type: string}}\n */\nexport function getFilters() {\n return {\n type: GET_FILTERS,\n };\n}\n\n/**\n *\n * @param filters\n * @returns {{type: string, params: *}}\n */\nexport function filtersLoaded(filters) {\n return {\n type: FILTERS_RECEIVED,\n filters,\n };\n}\n\n/**\n *\n * @param param\n * @returns {{type: string, param: {}}}\n */\nexport function updateParam(param) {\n return {\n type: UPDATE_PARAMS,\n param,\n };\n}\n\n/**\n *\n * @returns {{type: string}}\n */\nexport function resetParams() {\n return {\n type: RESET_PARAMS,\n };\n}\n\n/**\n *\n * @param paramName\n * @returns {{paramName: *, type: string}}\n */\nexport function removeParam(paramName) {\n return {\n type: REMOVE_PARAM,\n paramName,\n };\n}\n\n/**\n */\nexport function downloadOffers() {\n return {\n type: DOWNLOAD_OFFERS,\n };\n}\n\n","import {\n ADD_OPTION,\n REMOVE_OPTION,\n REMOVE_ALL,\n SORTS_RECEIVED,\n TAGS_RECEIVED,\n SHOW_TAG,\n HIDE_TAG,\n SHOW_ALL,\n UPDATE_SORT,\n} from './constants';\n\n/**\n *\n * @param sort\n * @returns {{filters: *, type: string}}\n */\nexport const sortsLoaded = sorts => ({\n type: SORTS_RECEIVED,\n sorts,\n});\n/**\n *\n * @param tags\n * @returns {{filters: *, type: string}}\n */\nexport const tagsLoaded = tags => ({\n type: TAGS_RECEIVED,\n tags,\n});\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const removeAllOptions = () => ({\n type: REMOVE_ALL,\n});\n\n/**\n * @param value\n * @param label\n * @returns {{label: *, type: string, value: *}}\n */\nexport function addOption(value, label) {\n return {\n type: ADD_OPTION,\n label,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function removeOption(value) {\n return {\n type: REMOVE_OPTION,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function showTag(value) {\n return {\n type: SHOW_TAG,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function hideTag(value) {\n return {\n type: HIDE_TAG,\n value,\n };\n}\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const showAllTags = () => ({\n type: SHOW_ALL,\n});\n\n/**\n *\n * @param sort\n * @returns {{type: string, sort: string}}\n */\nexport function orderBy(sort) {\n return {\n type: UPDATE_SORT,\n sort,\n };\n}\n","import { put, takeLatest, all } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { GET_FILTERS } from './constants';\nimport { filtersLoaded } from './actions';\nimport { sortsLoaded } from '../HorizontalCatalogFilter/actions';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchFilters() {\n const requestURL = `${API_URL}search/catalog/filters`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield all([\n put(filtersLoaded(request.filters)),\n put(sortsLoaded(request.orders)),\n ]);\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(GET_FILTERS, fetchFilters);\n}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport { makeSelectSelectedParams } from '../CatalogSearch/selectors';\nimport { updateParam } from '../CatalogSearch/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nclass SelectCollapsible extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n }\n\n handeOnClick = (value, valueName) => {\n const valueLabel = valueName && valueName.length ? valueName : value;\n\n this.props.updateValue({\n name: this.props.name,\n value,\n label: this.props.label,\n valueLabel\n });\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, name, options, unit, selectedParams, className } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n return (\n
\n

\n {label}\n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
\n {options.map((item, key) => (\n this.handeOnClick(item.value, item.name)}\n >\n {' '}\n {unit.length > 0 && `${unit} `}\n {item.label}{' '}\n
\n ))}\n
\n )}\n \n );\n }\n}\n\nSelectCollapsible.defaultProps = {\n unit: '',\n className: '',\n show: false,\n};\nSelectCollapsible.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n unit: PropTypes.string,\n className: PropTypes.string,\n selectedParams: PropTypes.array,\n show: PropTypes.bool,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withConnect,\n)(SelectCollapsible);\n\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox } from 'antd';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../CatalogSearch/reducer';\nimport saga from '../CatalogSearch/saga';\n\nimport { makeSelectSelectedParams } from '../CatalogSearch/selectors';\nimport { updateParam } from '../CatalogSearch/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nclass Multiselect extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n }\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n handeOnChange = (checked, value, name, label, selected) => {\n // const { selected } = this.state;\n if (checked) {\n selected.add(value);\n } else {\n selected.delete(value);\n }\n // this.setState({ selected });\n this.props.updateValue({\n name,\n value: [...selected],\n label,\n });\n };\n\n render() {\n const { label, options, name, unit, selectedParams } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n let selected = new Set();\n\n if (current !== null && current.value !== null) {\n selected = new Set(current.value);\n }\n return (\n
\n

\n {label}\n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
\n {options.map((item, key) => (\n
\n \n this.handeOnChange(\n e.target.checked,\n item.value,\n name,\n label,\n selected,\n )\n }\n >\n {unit.length > 0 && `${unit} `} {item.label}\n \n
\n
\n ))}\n
\n )}\n
\n );\n }\n}\n\nMultiselect.defaultProps = {\n unit: '',\n};\nMultiselect.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n unit: PropTypes.string,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withConnect,\n)(Multiselect);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from '../CatalogSearch/reducer';\nimport saga from '../CatalogSearch/saga';\n\nimport { makeSelectSelectedParams } from '../CatalogSearch/selectors';\nimport { updateParam } from '../CatalogSearch/actions';\n\nimport './styles.scss';\nimport { getObjByAttribute } from '../../utils/common';\n\nclass MultiselectWithIcon extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n }\n\n handeOnSelect = (selected, value) => {\n if (selected.has(value)) selected.delete(value);\n else selected.add(value);\n\n this.props.updateValue({\n name: this.props.name,\n value: [...selected],\n label: this.props.label,\n });\n };\n\n handleOnShow = e => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { label, name, options, selectedParams } = this.props;\n const { show } = this.state;\n const current = getObjByAttribute(selectedParams, 'name', name);\n let selected = new Set();\n\n if( current !== null && current.value !== null ){\n selected = new Set(current.value);\n }\n return (\n
\n

\n {label}\n \n {show ? (\n \n ) : (\n \n )}\n \n

\n {show && (\n
    \n {options.map((item, key) => (\n this.handeOnSelect(selected, item.value)}\n className=\"multi-select-icon-item\"\n >\n \n \n {item.label}\n \n \n ))}\n
\n )}\n
\n );\n }\n}\n\nMultiselectWithIcon.defaultProps = {};\nMultiselectWithIcon.propTypes = {\n label: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n options: PropTypes.array.isRequired,\n selectedParams: PropTypes.array,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedParams: makeSelectSelectedParams(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n updateValue: values => dispatch(updateParam(values)),\n };\n}\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withConnect,\n)(MultiselectWithIcon);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { makeSelectParam, makeSelectLoading } from './selectors';\nimport { getFilters } from './actions';\n\nimport SelectCollapsibleFilter from '../SearchCatalogFilters/selectCollapsible';\nimport MultiselectFilter from '../SearchCatalogFilters/multiselect';\nimport MultiselectWithIconFilter from '../SearchCatalogFilters/multiselectWithIcon';\n\nimport './styles.scss';\n\nclass Search extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n componentDidMount() {\n this.props.loadFilters();\n }\n\n render() {\n const { params, loading } = this.props;\n\n if (loading || !params.hasOwnProperty('brands')) return null;\n\n const {\n brands,\n deposits,\n distances,\n fuels,\n brokers,\n products,\n monthly_rates,\n status,\n customerType,\n durations,\n categories,\n gears,\n noviceDriver,\n delivery_times,\n } = params;\n\n return (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\n\nSearch.defaultProps = {};\n\nSearch.propTypes = {\n loadFilters: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n params: makeSelectParam(),\n loading: makeSelectLoading(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n loadFilters: () => dispatch(getFilters()),\n };\n}\n\nconst withReducer = injectReducer({ key: 'catalogSearch', reducer });\nconst withSaga = injectSaga({ key: 'catalogSearch', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Search);\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport Badge from '../SearchFilters/badge';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { addOption, removeOption, showTag, hideTag } from './actions';\nimport { removeParam } from '../CatalogSearch/actions';\n\nclass Tags extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n handleOnClick = (value, label, name, active) => {\n if (active) {\n if (name.length > 0) {\n this.props.removeParam(name);\n } else {\n this.props.removeOption(value);\n this.props.showTag(value);\n }\n } else {\n this.props.addOption(value, label);\n this.props.hideTag(value);\n }\n };\n\n render() {\n const { active, tags, params } = this.props;\n\n return (\n
\n {tags.map((item, key) => {\n if (item === undefined) return null;\n\n const name = item.hasOwnProperty('name') ? item.name : '';\n let label = `${item.label}: `\n\n if (Array.isArray(item.value) && item.value.length > 1) {\n const itemValues = item.value.map(itemValue => {\n if (params[item.name] !== undefined) {\n const paramItem = params[item.name].find(el => el.value === itemValue);\n return paramItem.label;\n }\n\n return itemValue;\n });\n\n if (itemValues.length > 2) {\n label += itemValues.join(', ');\n } else {\n let [valueFrom, valueTo] = itemValues\n valueFrom = typeof valueFrom === 'number' ? valueFrom.toLocaleString('it') : valueFrom\n valueTo = typeof valueTo === 'number' ? valueTo.toLocaleString('it') : valueTo\n\n if (valueFrom === valueTo) {\n label += `${valueFrom}`\n } else {\n label += `${valueFrom}, ${valueTo}`;\n }\n }\n } else {\n const itemValue = Array.isArray(item.value) ? item.value[0] : item.value;\n\n if (params[item.name] !== undefined) {\n const paramItem = params[item.name].find(el => el.value === itemValue);\n label += paramItem.label;\n } else {\n label += itemValue;\n }\n }\n\n return (\n \n this.handleOnClick(item.value, item.label, name, active)\n }\n />\n );\n })}\n
\n );\n }\n}\n\nTags.defaultProps = {\n active: false,\n params: []\n};\n\nTags.propTypes = {\n tags: PropTypes.array.isRequired,\n active: PropTypes.bool,\n params: PropTypes.any,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n addOption: (value, label) => dispatch(addOption(value, label)),\n removeOption: value => dispatch(removeOption(value)),\n removeParam: name => dispatch(removeParam(name)),\n showTag: value => dispatch(showTag(value)),\n hideTag: value => dispatch(hideTag(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'filters', reducer });\nconst withSaga = injectSaga({ key: 'filters', saga });\nconst withConnect = connect(\n null,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Tags);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport SortIcon from '-!svg-react-loader!./assets/sort.svg?name=SortIcon';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Row, Col } from 'reactstrap';\nimport { Button } from 'antd';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { removeAllOptions, showAllTags, orderBy } from './actions';\nimport {\n makeSelectFiltersOption,\n makeSelectSort,\n makeSelectSelectedSort,\n} from './selectors';\n\nimport { resetParams, downloadOffers } from '../CatalogSearch/actions';\nimport { makeSelectLabels, makeSelectParam } from '../CatalogSearch/selectors';\n\nimport Tags from './tags';\n\nimport './styles.scss';\nimport {\n SECTION_DESCRIPTION,\n SECTION_TITLE,\n SECTION_SINGLE_TITLE,\n DOWNLOAD_LIST,\n} from './constants';\n\nclass HorizontalFilter extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n onCancelClick = () => {\n this.props.clearFilters();\n this.props.clearParams();\n this.props.showTags();\n };\n\n onOrderChange = e => {\n this.props.orderBy(e.target.value);\n };\n\n handleDownloadList = () => {\n this.props.downloadOffers();\n }\n\n render() {\n const {\n results,\n sort,\n selectedSort,\n selectedTags,\n activeFilters,\n params,\n id,\n label\n } = this.props;\n const selected = [...selectedTags, ...activeFilters];\n\n return (\n
\n
\n
\n
\n \n {SECTION_DESCRIPTION}\n \n \n \n {sort.map((item, key) => (\n \n ))}\n \n
\n
\n

\n {`${results} ${results === 1 ? SECTION_SINGLE_TITLE : SECTION_TITLE}`}\n\n \n {DOWNLOAD_LIST}\n \n

\n\n {selected.length > 0 && (\n \n \n \n
\n Rimuovi i filtri\n
\n \n
\n )}\n
\n
\n );\n }\n}\n\nHorizontalFilter.defaultProps = {};\nHorizontalFilter.propTypes = {\n results: PropTypes.number.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selectedTags: makeSelectFiltersOption(),\n activeFilters: makeSelectLabels(),\n sort: makeSelectSort(),\n selectedSort: makeSelectSelectedSort(),\n params: makeSelectParam(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n clearFilters: () => dispatch(removeAllOptions()),\n clearParams: () => dispatch(resetParams()),\n showTags: () => dispatch(showAllTags()),\n orderBy: value => dispatch(orderBy(value)),\n downloadOffers: () => dispatch(downloadOffers()),\n };\n}\n\nconst withReducer = injectReducer({ key: 'catalogFilter', reducer });\nconst withSaga = injectSaga({ key: 'catalogFilter', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(HorizontalFilter);\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport { Pagination } from 'antd';\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { makeSelectPaginator } from './selectors';\nimport { setPage } from './actions';\n\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nclass Paginator extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n currentPage: this.props.paginator.currentPage || 1\n };\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.paginator.currentPage !== this.props.paginator.currentPage) {\n this.setState({currentPage: this.props.paginator.currentPage})\n }\n }\n\n pageItemRender = (current, type, originalElement) => {\n if (type === 'prev') {\n return Indietro;\n }\n if (type === 'next') {\n return Avanti;\n }\n return originalElement;\n }\n\n setPage = page => {\n this.props.setPage(page);\n this.setState({currentPage: page})\n }\n\n render() {\n const { paginator } = this.props;\n const { currentPage } = this.state;\n\n return (\n
\n
\n
\n
\n
    \n \n
\n
\n
\n
\n
\n );\n }\n}\n\nPaginator.defaultProps = {};\nPaginator.propTypes = {};\n\nconst mapStateToProps = createStructuredSelector({\n paginator: makeSelectPaginator(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n setPage: pageNumber => dispatch(setPage(pageNumber)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'paginator', reducer });\nconst withSaga = injectSaga({ key: 'paginator', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(Paginator);\n","import React from 'react';\nimport { Pagination } from 'antd';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport { withQuotationReducer } from 'containers/Quotations/withReducer';\n\nimport { makeSelectPaginator } from 'containers/Quotations/selectors';\nimport { setPage } from 'containers/Quotations/actions';\n\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nclass Paginator extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n currentPage: this.props.paginator.currentPage || 1\n };\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.paginator.currentPage !== this.props.paginator.currentPage) {\n this.setState({currentPage: this.props.paginator.currentPage})\n }\n }\n\n pageItemRender = (current, type, originalElement) => {\n if (type === 'prev') {\n return Indietro;\n }\n if (type === 'next') {\n return Avanti;\n }\n return originalElement;\n }\n\n setPage = page => {\n this.props.setPage(page);\n this.setState({currentPage: page})\n }\n\n render() {\n const { paginator } = this.props;\n const { currentPage } = this.state;\n\n return (\n
\n
\n
\n
\n
    \n \n
\n
\n
\n
\n
\n );\n }\n}\n\nPaginator.defaultProps = {};\nPaginator.propTypes = {};\n\nconst mapStateToProps = createStructuredSelector({\n paginator: makeSelectPaginator(),\n});\nexport function mapDispatchToProps(dispatch) {\n return {\n setPage: pageNumber => dispatch(setPage(pageNumber)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withQuotationReducer,\n withConnect,\n)(Paginator);\n","import React from 'react';\nimport Skeleton from 'react-skeleton-loader';\nimport { Card, CardImg, CardBody } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport configs from 'configs';\nimport './styles/carItem.scss';\n\n\nconst SkeletonCarItem = () => {\n return (\n
\n \n
\n \n
\n
\n
\n
\n \n \n
\n

\n

\n
\n \n \n \n
\n
\n
    \n
  •  
  • \n
\n
\n \n
\n \n
\n );\n};\n\nexport default SkeletonCarItem;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport CarItemSkeletron from './carItem';\nimport './styles/carItemsList.scss';\n\nconst index = props => {\n const { size } = props;\n const carsTpl = [];\n for (let i = 0; i < size; i++) {\n carsTpl.push(\n \n \n ,\n );\n }\n\n return (\n
\n {carsTpl}\n
\n );\n};\n\nindex.propTypes = {\n size: PropTypes.number.isRequired,\n};\n\nexport default index;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Animated} from \"react-animated-css\";\nimport Lock from \"-!svg-react-loader!./assets/img/lock.svg?name=Lock\";\nimport './styles.scss';\n\nclass Spinner extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n time: props.time,\n isRunning: false,\n hadFinish: false,\n };\n\n this.tick = this.tick.bind(this);\n }\n\n tick() {\n if (!this.state.isRunning) this.setState({ isRunning: true });\n\n if (this.state.time > 0) {\n this.setState({ time: this.state.time - 1 });\n } else {\n //this.props.hideLoader();\n clearInterval(this.timer);\n this.setState({ hadFinish: true });\n }\n }\n\n componentDidMount() {\n // this.setState({ isServer: typeof window !== 'undefined' });\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n /* const { hadFinish } = this.state;\n if (hadFinish && prevProps.loader !== this.props.loader) {\n this.setState({\n time: this.props.time,\n isRunning: false,\n });\n } */\n }\n\n render() {\n const { loader } = this.props;\n const { time, isRunning } = this.state;\n /* if (loader && !isRunning) {\n this.timer = setInterval(this.tick, 1000);\n }\n\n if (!loader) return null;\n*/\n return (\n
\n \n \n \n Stiamo inoltrando la tua richiesta al nostro Assistente Virtuale...{' '}\n \n
\n \n
\n );\n }\n}\n\n\nexport default Spinner;\n","/*\n * Header Messages\n *\n * This contains all the text for the Header component.\n */\n\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'boilerplate.components.Forms';\n\nexport default defineMessages({\n action: {\n id: `${scope}.action`,\n defaultMessage: 'Salva preventivo',\n },\n terms: {\n id: `${scope}.terms`,\n defaultMessage:\n '*Il prezzo del canone mensile è soggetto a variazioni. Offerta economica limitata valida fino ad esaurimento scorte.',\n },\n});\n","/*\n * FromConstants\n */\n\nexport const PRINT_OFFER = 'ideal/components/Froms/PRINT_OFFER';\n\nexport const SEARCH_CUSTOMER = 'ideal/components/Froms/SEARCH_CUSTOMER';\nexport const CUSTOMER_RECEIVED = 'ideal/components/Froms/CUSTOMER_RECEIVED';\nexport const RESET_RECEIVED = 'ideal/components/Froms/RESET_RECEIVED';\n\n","import {\n PRINT_OFFER,\n SEARCH_CUSTOMER,\n CUSTOMER_RECEIVED,\n RESET_RECEIVED,\n} from './constants';\n\n/**\n *\n * @param offer\n * @param price\n * @param name\n * @param contractualCategory\n * @param accessories\n * @param colors\n * @returns {{offer: *, carReplacement: *, contractualCategory: *, price: *, accessories: *, name: *, type: *}}\n */\nexport function printOffer(\n offer,\n price = null,\n name = null,\n contractualCategory = null,\n accessories = [],\n colors = [],\n) {\n return {\n type: PRINT_OFFER,\n offer,\n price,\n name,\n contractualCategory,\n accessories,\n colors,\n };\n}\n\n/**\n *\n * @param fiscalCode\n * @returns {{code: *, type: *}}\n */\nexport function searchCustomer(fiscalCode) {\n return {\n type: SEARCH_CUSTOMER,\n code: fiscalCode,\n };\n}\n\n/**\n *\n * @param customer\n * @returns {{type: *, customer: *}}\n */\nexport function customerLoaded(customer) {\n return {\n type: CUSTOMER_RECEIVED,\n customer,\n };\n}\n\n/**\n * Reset customer\n * @returns {{type: *}}\n */\nexport function resetCustomer() {\n return {\n type: RESET_RECEIVED,\n };\n}\n","export const CONTRACTUAL_CATEGORIES_TYPE_BUSINESS = 'BUSINESS';\nexport const CONTRACTUAL_CATEGORIES_TYPE_PRIVATE = 'PRIVATE';\n\nexport const CONTRACTUAL_CATEGORIES_TYPES_TAG_MAP = {\n 'P.IVA': CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n 'Privati': CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n}\n\nexport const CONTRACTUAL_CATEGORIES = [\n {\n description: 'Dipendente a tempo indeterminato',\n value: 'tempo-indeterminato',\n type: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n },\n {\n description: 'Ditta individuale',\n value: 'ditta-individuale',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n },\n {\n description: 'Libero professionista',\n value: 'libero-professionista',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n },\n {\n description: 'Pensionato',\n value: 'pensionato',\n type: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n },\n {\n description: 'Società di capitali (S.p.a. - S.r.l. - S.r.l.s. - S.a.p.a. - Cooperative)',\n value: 'societa-capitale',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n },\n {\n description: 'Società di persone (S.s. - S.n.c. - S.a.s.)',\n value: 'societa-persone',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n },\n {\n description:\n 'Associazioni - Enti - Fondazioni',\n value: 'associazioni-enti-fondazioni',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n },\n {\n description: 'Studi Associati',\n value: 'studi-associati',\n type: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n secondaryType: CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n },\n];\n\nexport const FRANCHISE_KASKO = [\n {\n description: '500€',\n value: 500,\n },\n {\n description: '250€',\n value: 250,\n },\n {\n description: '150€',\n value: 150,\n },\n {\n description: '0€',\n value: 0,\n },\n];\nexport const FRANCHISE_INSURANCE = [\n {\n description: '10%',\n value: 10,\n },\n {\n description: '0%',\n value: 0,\n },\n];\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport messages from './messages';\n\nimport { Col, Input, Row } from 'reactstrap';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport { createStructuredSelector } from 'reselect';\nimport reducer from 'containers/Offer/reducer';\nimport saga from 'containers/Offer/saga';\n\nimport { printOffer } from './actions';\nimport {\n makeSelectOfferSelector,\n makeSelectServicesSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n makeSelectMonthlyRateSelector,\n} from '../CustomizeOffer/selectors';\n\nimport { CONTRACTUAL_CATEGORIES } from '../CarQuote/constants';\nimport './styles.scss';\n\nclass PrintForm extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n name: '',\n employee_category: '',\n };\n }\n\n /**\n *\n * @param e\n */\n onNameChange = e => {\n const name = e.target.value;\n this.setState(() => ({ name }));\n };\n\n /**\n *\n * @param e\n */\n onEmployeeCategoryChange = e => {\n const employee_category = e.target.value;\n this.setState(() => ({\n employee_category,\n }));\n };\n\n handelOnPrint = e => {\n const { offer, services, accessories, colors, newMonthlyRate } = this.props;\n const { name, employee_category } = this.state;\n e.preventDefault();\n this.props.print(\n offer.ref,\n newMonthlyRate,\n name,\n employee_category,\n accessories,\n colors,\n );\n };\n\n render() {\n const categories = [\n {\n description: 'Seleziona...',\n value: '',\n type: 'PRIVATE',\n secondaryType: 'PRIVATE',\n },\n ...CONTRACTUAL_CATEGORIES,\n ];\n\n return (\n
\n
\n \n \n \n \n \n \n
\n \n \n {categories.map(item => (\n \n ))}\n \n
\n \n
\n
\n \n {' '}\n Stampa Offerta{' '}\n \n
\n \n
\n
\n );\n }\n}\n\nPrintForm.propTypes = {\n offer: PropTypes.any.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n print: (\n offer,\n price,\n name,\n category,\n accessories,\n colors,\n ) =>\n dispatch(\n printOffer(\n offer,\n price,\n name,\n category,\n accessories,\n colors,\n ),\n ),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n offer: makeSelectOfferSelector(),\n newMonthlyRate: makeSelectMonthlyRateSelector(),\n services: makeSelectServicesSelector(),\n accessories: makeSelectAccessoriesCodesSelector(),\n colors: makeSelectColorCodesSelector(),\n});\n\nconst withReducer = injectReducer({ key: 'offer', reducer });\nconst withSaga = injectSaga({ key: 'offer', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(PrintForm);\n","/*\n * ModalConstants\n */\n\nexport const OPEN_MODAL = 'ideal/components/Modal/Right/OPEN_MODAL';\nexport const CLOSE_MODAL = 'ideal/components/Modal/Right/CLOSE_MODAL';\n","/*\n* ModalReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport { OPEN_MODAL, CLOSE_MODAL } from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n right: false,\n});\n\nfunction modalReducer(state = initialState, action) {\n switch (action.type) {\n case OPEN_MODAL:\n return state.set('right', true);\n case CLOSE_MODAL:\n return state.set('right', false);\n default:\n return state;\n }\n}\n\nexport default modalReducer;\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import { OPEN_MODAL, CLOSE_MODAL } from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const open = () => ({ type: OPEN_MODAL });\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const close = () => ({ type: CLOSE_MODAL });\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectModal = state => state.get('modal', initialState);\n\nconst makeSelectRightModal = () =>\n createSelector(selectModal, modalState => modalState.get('right'));\n\nexport { selectModal, makeSelectRightModal };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Modal, ModalBody } from 'reactstrap';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { close } from './actions';\nimport { makeSelectRightModal } from './selectors';\n\nimport './right.scss';\n\nconst rightSideModal = WrappedComponent =>\n class extends React.Component {\n constructor(props) {\n super(props);\n }\n\n static propTypes = {\n title: PropTypes.string,\n };\n\n static defaultProps = {\n title: '',\n };\n\n render() {\n const { title, openModal } = this.props;\n\n return (\n \n
\n \n {title}\n \n \n ×\n \n
\n \n \n \n \n );\n }\n };\n\nrightSideModal.propTypes = {\n WrappedComponent: PropTypes.element,\n closeModal: PropTypes.function,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n closeModal: () => dispatch(close()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n openModal: makeSelectRightModal(),\n});\n\nconst withReducer = injectReducer({ key: 'modal', reducer });\nconst withSaga = injectSaga({ key: 'modal', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n rightSideModal,\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withRouter } from 'react-router-dom';\nimport { Row, Col, Input } from 'reactstrap';\nimport { FormattedMessage } from 'react-intl';\nimport messages from './messages';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from 'containers/Offer/reducer';\nimport saga from 'containers/Offer/saga';\n\nimport RightSideModal from '../Modal/right';\n\n\n\nimport './customer.scss';\n\nimport * as Validator from '../CarQuote/validator';\nimport { CONTRACTUAL_CATEGORIES } from '../CarQuote/constants';\nimport {\n makeSelectQuotationCode,\n makeSelectQuote,\n} from '../CarQuote/selectors';\nimport { sendQuote } from 'containers/Offer/actions';\nimport { resetCustomer } from './actions';\nimport { displayAssistant } from 'containers/Quotation/actions';\nimport {\n makeSelectOfferSelector,\n makeSelectServicesSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n makeSelectMonthlyRateSelector,\n} from '../CustomizeOffer/selectors';\n\n\nclass CustomerForm extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n customer: { ...props.customer },\n error: {\n first_name: false,\n last_name: false,\n email: false,\n phone: false,\n zip_code: false,\n employee_category: false,\n fiscal_code: false,\n vat_number: false,\n business_name: false,\n\n deposit: false,\n duration: false,\n distance: false,\n\n franchise_kasko: false,\n franchise_insurance: false,\n },\n isComplete: false,\n submitted: false,\n submitting: false,\n redirectTo: false,\n };\n\n this.firstNameRef = React.createRef();\n this.lastNameRef = React.createRef();\n this.emailRef = React.createRef();\n this.phoneRef = React.createRef();\n this.postalRef = React.createRef();\n this.categoryRef = React.createRef();\n this.fiscalRef = React.createRef();\n this.vatRef = React.createRef();\n }\n\n onFirstNameChange = e => {\n const first_name = e.target.value;\n this.setState(prevState => ({\n customer: { ...prevState.customer, first_name },\n }));\n };\n\n onLastNameChange = e => {\n const last_name = e.target.value;\n this.setState(prevState => ({\n customer: { ...prevState.customer, last_name },\n }));\n };\n\n onEmailChange = e => {\n const email = e.target.value.trim();\n this.setState(prevState => ({\n customer: { ...prevState.customer, email },\n }));\n };\n\n onPhoneChange = e => {\n const input_phone = e.target.value;\n const phone = input_phone.replace('+39', '');\n this.setState(prevState => ({\n customer: { ...prevState.customer, phone: phone.trim() },\n }));\n };\n\n onFiscalCodeChange = e => {\n const fiscal_code = e.target.value.trim().toUpperCase();\n this.setState(() => ({ fiscal_code }));\n this.setState(prevState => ({\n customer: { ...prevState.customer, fiscal_code },\n }));\n };\n\n onPostalCodeChange = e => {\n const zip_code = e.target.value.trim();\n this.setState(prevState => ({\n customer: { ...prevState.customer, zip_code },\n }));\n };\n\n onVatNumberChange = e => {\n const vat_number = e.target.value.trim();\n this.setState(prevState => ({\n customer: { ...prevState.customer, vat_number },\n }));\n };\n\n onBusinessNameChange = e => {\n const business_name = e.target.value;\n this.setState(prevState => ({\n customer: { ...prevState.customer, business_name },\n }));\n };\n\n onEmployeeCategoryChange = e => {\n const employee_category = e.target.value;\n const dataset = e.target.options[e.target.selectedIndex].dataset;\n const employee_type = dataset.employeetype;\n const employee_secondary_type = dataset.secondaryemployeetype;\n\n this.setState(prevState => ({\n customer: {\n ...prevState.customer,\n employee_category,\n employee_type,\n employee_secondary_type,\n },\n }));\n };\n\n onNotesChange = e => {\n const note = e.target.value.trim();\n this.setState(prevState => ({ customer: { ...prevState.customer, note } }));\n };\n\n validatePhone = () => {\n const phone = this.state.customer.phone;\n const isValid = Validator.validatePhone(phone);\n this.setState(prevState => ({\n error: { ...prevState.error, phone: !isValid },\n }));\n\n return isValid;\n };\n\n validate = (condition, field) => {\n let isValid = true;\n if (condition) isValid = false;\n this.setState({\n error: {\n ...this.state.error,\n [field]: !isValid,\n },\n });\n return isValid;\n };\n\n isValid() {\n let valid = true;\n const errors = {};\n const { customer } = this.state;\n\n if (customer.first_name.length < 1) {\n valid = false;\n errors.first_name = true;\n }\n\n if (customer.last_name.length < 1) {\n valid = false;\n errors.last_name = true;\n this.scrollTo(this.lastNameRef);\n }\n\n if (!Validator.validateEmail(customer.email)) {\n valid = false;\n errors.email = true;\n this.scrollTo(this.emailRef);\n }\n\n if (!Validator.validatePhone(customer.phone)) {\n valid = false;\n errors.phone = true;\n this.scrollTo(this.phoneRef);\n }\n\n if (!Validator.validatePostalCode(customer.zip_code)) {\n valid = false;\n errors.zip_code = true;\n this.scrollTo(this.postalRef);\n }\n\n if (!customer.employee_category) {\n valid = false;\n errors.employee_category = true;\n this.scrollTo(this.categoryRef);\n }\n\n if (!Validator.validateFiscalCode(customer.fiscal_code)) {\n valid = false;\n errors.fiscal_code = true;\n this.scrollTo(this.fiscalRef);\n }\n\n if (\n customer.employee_type === 'BUSINESS' &&\n !Validator.validateVatNumber(customer.vat_number)\n ) {\n valid = false;\n errors.vat_number = true;\n this.scrollTo(this.vatRef);\n }\n\n if (\n customer.employee_secondary_type === 'BUSINESS' &&\n customer.business_name.length < 1\n ) {\n valid = false;\n errors.business_name = true;\n }\n\n this.setState(() => ({ error: errors }));\n return valid;\n }\n\n handleOnSendClick = e => {\n e.preventDefault();\n if (this.isValid()) {\n const { customer } = this.state;\n const {\n selectedOffer: offer,\n accessories,\n newMonthlyRate,\n colors,\n } = this.props;\n this.setState({ submitting: true });\n const quote = {\n code: offer.ref,\n selectedPrice: false,\n // Customer\n first_name: customer.first_name,\n last_name: customer.last_name,\n email: customer.email,\n phone: customer.phone,\n zip_code: customer.zip_code,\n\n // Employee\n employee_category: customer.employee_category,\n employee_type: customer.employee_type,\n fiscal_code: customer.fiscal_code,\n vat_number: customer.vat_number,\n company_name: customer.business_name,\n\n // Offer\n deposit: offer.deposit,\n duration: offer.duration,\n distance: offer.distance,\n note: customer.note,\n upload_documents: true,\n monthly_rate: newMonthlyRate,\n accessories,\n colors,\n };\n this.setState({ quote });\n if (!this.state.submitting) {\n this.props.sendQuote(quote);\n // this.props.displayAssistant(true) disativazione del salesbot su richiesta degli agenti\n this.props.displayAssistant(false);\n // reset customer informations\n // this.props.resetCustomer();\n }\n } else {\n this.scrollToValidate();\n }\n };\n\n scrollTo = ref => {\n ref.current.scrollIntoView({ behavior: 'smooth' });\n };\n\n scrollToValidate = () => {\n if (this.state.error.first_name) {\n this.scrollTo(this.firstNameRef);\n } else if (this.state.error.last_name) {\n this.scrollTo(this.lastNameRef);\n } else if (this.state.error.email) {\n this.scrollTo(this.emailRef);\n } else if (this.state.error.phone) {\n this.scrollTo(this.phoneRef);\n } else if (this.state.error.zip_code) {\n this.scrollTo(this.postalRef);\n } else if (this.state.error.employee_category) {\n this.scrollTo(this.categoryRef);\n } else if (this.state.error.fiscal_code) {\n this.scrollTo(this.fiscalRef);\n } else if (this.state.error.vat_number) {\n this.scrollTo(this.vatRef);\n }\n };\n\n componentDidMount() {\n if (this.state.customer.email.length < 1)\n this.setState(prevState => ({\n customer: { ...prevState.customer, fiscal_code: this.props.fiscalCode },\n }));\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.quotationCode !== prevProps.quotationCode) {\n this.setState({ redirectTo: this.props.quotationCode });\n }\n }\n\n render() {\n const { error, customer } = this.state;\n if (this.state.redirectTo !== false) {\n this.props.history.push(`/quotations/${this.state.redirectTo}`);\n }\n return (\n
\n
\n \n \n \n \n this.validate(customer.first_name.length < 1, 'first_name')\n }\n />\n \n \n \n \n this.validate(customer.last_name.length < 1, 'last_name')\n }\n />\n \n \n \n \n
\n \n \n this.validate(\n !Validator.validateEmail(customer.email),\n 'email',\n )\n }\n />\n
\n \n\n \n \n this.validatePhone()}\n />\n \n
\n \n \n \n \n this.validate(\n !Validator.validateFiscalCode(customer.fiscal_code),\n 'fiscal_code',\n )\n }\n />\n \n \n \n \n this.validate(\n !Validator.validatePostalCode(customer.zip_code),\n 'zip_code',\n )\n }\n />\n \n \n \n \n
\n \n \n {CONTRACTUAL_CATEGORIES.map(item => (\n \n {item.description}\n \n ))}\n \n
\n \n
\n\n {customer.employee_type === 'BUSINESS' && (\n \n {customer.employee_secondary_type === 'BUSINESS' && (\n \n \n \n this.validate(\n customer.business_name.length < 1,\n 'business_name',\n )\n }\n autoComplete=\"off\"\n />\n \n )}\n \n \n \n this.validate(\n !Validator.validateVatNumber(customer.vat_number),\n 'vat_number',\n )\n }\n />\n \n \n )}\n \n \n \n \n \n \n
\n
\n \n {messages.action.defaultMessage}\n \n
\n \n
\n );\n }\n}\n\nCustomerForm.defaultProps = {\n customer: {\n first_name: '',\n last_name: '',\n email: '',\n phone: '',\n fiscal_code: '',\n zip_code: '',\n employee_category: 'tempo-indeterminato',\n employee_type: 'PRIVATE',\n employee_secondary_type: 'PRIVATE',\n vat_number: '',\n business_name: '',\n note: '',\n },\n};\n\nCustomerForm.propTypes = {\n customer: PropTypes.object,\n fiscalCode: PropTypes.string.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n sendQuote: quote => dispatch(sendQuote(quote)),\n displayAssistant: display => dispatch(displayAssistant(display)),\n resetCustomer: () => dispatch(resetCustomer()),\n };\n}\nconst mapStateToProps = createStructuredSelector({\n quote: makeSelectQuote(),\n quotationCode: makeSelectQuotationCode(),\n selectedOffer: makeSelectOfferSelector(),\n newMonthlyRate: makeSelectMonthlyRateSelector(),\n services: makeSelectServicesSelector(),\n accessories: makeSelectAccessoriesCodesSelector(),\n colors: makeSelectColorCodesSelector(),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\nconst withReducer = injectReducer({ key: 'offer', reducer });\nconst withSaga = injectSaga({ key: 'offer', saga });\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(RightSideModal(withRouter(CustomerForm)));\n","/*\n* FormsReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n PRINT_OFFER,\n SEARCH_CUSTOMER,\n CUSTOMER_RECEIVED,\n RESET_RECEIVED,\n} from './constants';\n\n// The initial state of forms\nexport const initialState = fromJS({\n loading: false,\n offer: null,\n name: null,\n category: null,\n monthly_rate: null,\n accessories: [],\n colors: [],\n search: false,\n customerCode: '',\n customer: {},\n});\n\nfunction formsReducer(state = initialState, action) {\n switch (action.type) {\n case PRINT_OFFER:\n return state\n .set('offer', action.offer)\n .set('monthly_rate', action.price)\n .set('name', action.name)\n .set('category', action.contractualCategory)\n .set('accessories', action.accessories)\n .set('colors', action.colors)\n .set('loading', true);\n case SEARCH_CUSTOMER:\n return state.set('customerCode', action.code).set('search', true);\n case CUSTOMER_RECEIVED:\n return state.set('customer', action.customer).set('search', false);\n case RESET_RECEIVED:\n return state.set('customer', {}).set('search', false);\n default:\n return state;\n }\n}\n\nexport default formsReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectForms = state => state.get('forms', initialState);\n\nconst makeSelectPrintFrom = () =>\n createSelector(selectForms, formState => ({\n offer: formState.get('offer'),\n monthly_rate: formState.get('monthly_rate'),\n name: formState.get('name'),\n category: formState.get('category'),\n accessories: formState.get('accessories'),\n colors: formState.get('colors'),\n }));\n\nconst makeSelectCustomerCode = () =>\n createSelector(selectForms, formState => formState.get('customerCode'));\n\nconst makeSelectCustomer = () =>\n createSelector(selectForms, formState => formState.get('customer'));\n\nconst makeSelectSearchingCustomer = () =>\n createSelector(selectForms, formState => formState.get('search'));\n\nexport {\n selectForms,\n makeSelectPrintFrom,\n makeSelectCustomerCode,\n makeSelectSearchingCustomer,\n makeSelectCustomer,\n};\n","import { SEND_QUOTE, QUOTE_SENDED } from 'containers/Offer/constants';\n\nexport function sendQuote(quote) {\n return {\n type: 'SEND_QUOTE',\n quote,\n };\n}\n\nexport function quoteSended(quote) {\n return {\n type: QUOTE_SENDED,\n quote,\n };\n}\n","import { put, takeLatest, all, select, fork } from 'redux-saga/effects';\nimport { PRINT_OFFER, SEARCH_CUSTOMER} from './constants';\nimport { SEND_QUOTE } from 'containers/Offer/constants';\nimport { makeSelectPrintFrom, makeSelectCustomerCode } from './selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\nimport { customerLoaded } from './actions';\nimport { open } from '../Modal/actions';\nimport { makeSelectQuote } from '../CarQuote/selectors';\nimport { quoteSended } from '../CarQuote/actions';\n\nfunction* printOffer() {\n const printer = yield select(makeSelectPrintFrom());\n const requestURL = `${process.env.API_URL}offers/attachment`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(printer),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n response.blob(),\n ).then(blob => {\n const date = new Date();\n return download(blob, `Preventivo-${date.getTime()}`);\n });\n\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* searchCustomer() {\n const code = yield select(makeSelectCustomerCode());\n const requestURL = `${process.env.API_URL}customers/search?code=${code}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(customerLoaded(request.data));\n yield put(open());\n } catch (err) {\n yield put(customerLoaded({}));\n yield put(open());\n }\n}\n\nfunction* sendQuoteData() {\n const quote = yield select(makeSelectQuote());\n const requestURL = `${process.env.API_URL}quote`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(quote),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(quoteSended(request.data));\n\n } catch (err) {\n console.log('request error', err);\n }\n}\n\n\nfunction* actionWatcher() {\n //yield takeLatest(PRINT_OFFER, printOffer);\n yield fork(takeLatest, PRINT_OFFER, printOffer);\n yield takeLatest(SEARCH_CUSTOMER, searchCustomer);\n yield takeLatest(SEND_QUOTE, sendQuoteData);\n}\n\nexport default function* formsData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport { Input, FormGroup } from 'reactstrap';\nimport CustomerForm from './customer';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { searchCustomer } from './actions';\nimport { makeSelectSearchingCustomer, makeSelectCustomer } from './selectors';\n\nimport * as Validator from '../CarQuote/validator';\n\nimport UserIcon from '-!svg-react-loader!./assets/img/user.svg?name=UserIcon';\n\nimport './offer.scss';\n\nclass OfferForm extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n fiscalCode: '',\n fiscalCodeHasError: false,\n };\n }\n\n onFiscalCodeChange = e => {\n const fiscalCode = e.target.value.trim().toUpperCase();\n this.setState({ fiscalCode });\n if (fiscalCode.length === 16 && Validator.validateFiscalCode(fiscalCode)) {\n this.setState({ fiscalCodeHasError: false });\n this.props.searchCustomer(fiscalCode);\n } else if (\n fiscalCode.length === 16 &&\n !Validator.validateFiscalCode(fiscalCode)\n ) {\n this.setState({ fiscalCodeHasError: true });\n }\n };\n\n render() {\n const { isSearching, customer } = this.props;\n const { fiscalCode, fiscalCodeHasError } = this.state;\n const hasCustomer =\n customer !== undefined && customer.hasOwnProperty('fiscal_code');\n return (\n
\n
\n Crea nuovo preventivo relativo all’offerta visualizzata\n
\n
\n \n \n \n \n {fiscalCodeHasError && (\n
\n Il Codice Fiscale inserito non è valido\n
\n )}\n {hasCustomer ? (\n \n ) : (\n \n )}\n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n searchCustomer: code => dispatch(searchCustomer(code)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isSearching: makeSelectSearchingCustomer(),\n customer: makeSelectCustomer(),\n});\n\nconst withReducer = injectReducer({ key: 'forms', reducer });\nconst withSaga = injectSaga({ key: 'forms', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(OfferForm);\n","/*\n * HomePage Messages\n *\n * This contains all the text for the HomePage container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.OfferInfo';\n\nexport default defineMessages({\n services: {\n id: `${scope}.menu1`,\n defaultMessage: 'Servizi inclusi',\n },\n carSpecs: {\n id: `${scope}.menu2`,\n defaultMessage: 'Caratteristiche auto',\n },\n accessories: {\n id: `${scope}.accessories`,\n defaultMessage: 'Equipaggiamenti di serie',\n },\n notes: {\n id: `${scope}.notes`,\n defaultMessage: 'Note',\n },\n private_notes: {\n id: `${scope}.private_notes`,\n defaultMessage: 'Note venditore',\n },\n engine: {\n id: `${scope}.engine`,\n defaultMessage: 'Motore e consumi',\n },\n sizes: {\n id: `${scope}.sizes`,\n defaultMessage: 'Carrozzeria',\n },\n features: {\n id: `${scope}.features`,\n defaultMessage: 'Specifiche',\n },\n seller: {\n id: `${scope}.seller`,\n defaultMessage: 'Dati venditore',\n },\n fee: {\n id: `${scope}.fee`,\n defaultMessage: 'Commissioni',\n },\n broker: {\n id: `${scope}.broker`,\n defaultMessage: 'Info noleggio',\n },\n equippedAccessories: {\n id: `${scope}.equippedAccessories`,\n defaultMessage: 'Di serie',\n },\n equippedOptionals: {\n id: `${scope}.equippedOptionals`,\n defaultMessage: 'Optional inclusi',\n },\n colors: {\n id: `${scope}.colors`,\n defaultMessage: 'Colori',\n },\n optionalAccessories: {\n id: `${scope}.optionalAccessories`,\n defaultMessage: 'Optional',\n },\n\n info: {\n id: `${scope}.info`,\n defaultMessage: '*I prezzi indicati sono da sommare alla rata mensile del Noleggio a Lungo Termine. Esempio: considerando un optional il cui costo è di € 180, con una durata contrattuale di 36 mesi, il canone mensile aumenterà di € 5 al mese.',\n },\n\n\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\n\nimport { compose } from 'redux';\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\n\nimport { Tabs } from 'antd';\n\nimport {\n withOfferSelectorReducer,\n withOfferSelectorSaga,\n} from '../CustomizeOffer/withReducer';\nimport {\n selectAccessories,\n selectColors,\n selectAccessoriesCodes,\n selectColorCodes,\n updateFees,\n} from '../CustomizeOffer/actions';\nimport {\n makeSelectAccessoriesSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n makeSelectMonthlyRateSelector,\n makeSelectFeesVisibileSelector,\n makeSelectFeesSelector,\n} from '../CustomizeOffer/selectors';\nimport { featureAllowed } from 'containers/App/selectors';\n\nimport { makeSelectCheckResponse } from '../PrescoringTool/selectors';\n\nimport configs from 'configs';\n\nimport messages from './messages';\nimport FeaturesIcon from '-!svg-react-loader!./assets/img/features.svg?name=FeaturesIcon';\nimport EngineIcon from '-!svg-react-loader!./assets/img/engine.svg?name=EngineIcon';\nimport SizesIcon from '-!svg-react-loader!./assets/img/sizes.svg?name=SizesIcon';\nimport ServicesIcon from '-!svg-react-loader!./assets/img/tools.svg?name=ServicesIcon';\nimport CarIcon from '-!svg-react-loader!./assets/img/car.svg?name=CarIcon';\nimport SellerIcon from '-!svg-react-loader!./assets/img/user.svg?name=SellerIcon';\nimport MoneyIcon from '-!svg-react-loader!./assets/img/money.svg?name=MoneyIcon';\nimport MoneyMoreIcon from '-!svg-react-loader!./assets/img/money-more.svg?name=MoneyMoreIcon';\nimport AccessoriesIcon from '-!svg-react-loader!./assets/img/option.svg?name=AccessoriesIcon';\nimport NotesIcon from '-!svg-react-loader!./assets/img/notes.svg?name=NotesIcon';\n\nimport { ItemBoxList, List, FeeList, PrivateNotes } from '../UIKit';\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nclass OfferInfo extends React.Component {\n constructor(props) {\n super(props);\n this.serviceRef = React.createRef();\n this.techRef = React.createRef();\n this.accessoriesRef = React.createRef();\n this.notesRef = React.createRef();\n this.financeRef = React.createRef();\n\n this.state = {\n activeTab: this.serviceRef,\n selectedOptions: new Set(),\n selectedColor: new Set(),\n };\n\n this.toggle = this.toggle.bind(this);\n this.convertToGroupedList = this.convertToGroupedList.bind(this);\n this.handleOnOptionClick = this.handleOnOptionClick.bind(this);\n this.handleOnColorClick = this.handleOnColorClick.bind(this);\n }\n\n componentDidMount() {\n if (this.props.selectedColors && this.props.selectedColors.length) {\n this.props.selectedColors.split(',').forEach(selectedColor => {\n const colorItem = this.props.colors.find(\n color => color.description === selectedColor,\n );\n this.handleOnColorClick(colorItem.code);\n });\n }\n\n if (this.props.selectedOptions && this.props.selectedOptions.length) {\n this.props.selectedOptions.split(',').forEach(selectedOption => {\n setTimeout(() => {\n const optionItem = this.props.options.find(\n option => option.description === selectedOption,\n );\n this.handleOnOptionClick(optionItem.code);\n }, 100);\n });\n }\n }\n\n toggle = activeTab => {\n if (this.state.activeTab !== activeTab) {\n this.setState({\n activeTab,\n });\n }\n };\n\n convertToGroupedList(items) {\n let result = [];\n\n items.map(item => {\n const elem = item.description;\n const group = result.filter(e => e.group === item.group_code);\n const obj = {\n group: item.group_code,\n title: item.group,\n };\n if (Object.keys(group).length === 0) {\n obj.items = [elem];\n } else {\n const list = group[0].items;\n list.push(elem);\n obj.items = list;\n // remove all preview objects\n result = result.filter(res => res.group !== obj.group);\n }\n result.push(obj);\n });\n\n return result;\n }\n\n handleOnOptionClick(value) {\n const { selectedAccessoriesCodes, options } = this.props;\n const selectedOptions = new Set(selectedAccessoriesCodes);\n if (selectedOptions.has(value)) {\n selectedOptions.delete(value);\n } else {\n selectedOptions.add(value);\n }\n this.props.selectAccessoriesCodes([...selectedOptions]);\n const selected = options.filter(item => selectedOptions.has(item.code));\n this.props.selectAccessories(selected);\n }\n\n handleOnColorClick(value) {\n const { colors } = this.props;\n\n const selectedColors = new Set();\n selectedColors.add(value);\n\n this.props.selectColorCodes([...selectedColors]);\n const selected = colors.filter(item => selectedColors.has(item.code));\n this.props.selectColors(selected);\n }\n\n render() {\n const {\n services,\n features,\n notes,\n private_notes,\n tag,\n sizes,\n engine,\n seller,\n offerFees,\n accessories,\n equippedOptionals,\n selectMonthlyRate,\n updateFees,\n carValue,\n duration,\n deposit,\n feesVisible,\n selectedFees,\n featureAllowed,\n } = this.props;\n let { prescoringResponse } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root')\n ? prescoringResponse.toJS()\n : prescoringResponse;\n\n const accessoriesList = this.convertToGroupedList(accessories);\n const { monthlyRateMax, depositRequired, sustainabilityIndex, thresholdMonthlyRateMax } = prescoringResponse;\n\n return (\n
\n \n \n \n \n \n }\n key=\"1\"\n >\n \n \n \n \n \n \n }\n key=\"2\"\n >\n }\n />\n }\n />\n }\n />\n \n {configs.accessories && accessoriesList.length > 0 ? (\n \n \n \n \n }\n key=\"3\"\n >\n {accessoriesList.map((group, key) => (\n \n ))}\n \n ) : null}\n {equippedOptionals && equippedOptionals.length > 0 ? (\n \n \n \n \n }\n key=\"4\"\n >\n \n \n ) : null}\n \n \n \n \n }\n key=\"5\"\n >\n
\n \n {(featureAllowed('fees-visibility') || configs.showRecapOfferProvider || configs.showRecapOfferProduct) &&\n \n \n \n \n }\n key=\"6\"\n >\n {(configs.showRecapOfferProvider || configs.showRecapOfferProduct) &&\n }\n />\n }\n {tag && tag === 'Catalogo' ? (\n }\n text={private_notes}\n />\n ) : (\n featureAllowed('fees-visibility') && feesVisible && selectMonthlyRate > 0 &&\n }\n iconExtra={}\n monthlyRate={selectMonthlyRate}\n monthlyRateMax={monthlyRateMax > 0 ? monthlyRateMax : null}\n depositRequired={depositRequired > 0 ? depositRequired : null}\n thresholdMonthlyRateMax={thresholdMonthlyRateMax > 0 ? thresholdMonthlyRateMax : null}\n deposit={deposit > 0 ? deposit : null}\n sustainabilityIndex={sustainabilityIndex}\n onUpdateFees={updateFees}\n />\n )}\n \n }\n \n
\n );\n }\n}\n\nOfferInfo.propTypes = {\n services: PropTypes.array.isRequired,\n sizes: PropTypes.array.isRequired,\n engine: PropTypes.array.isRequired,\n features: PropTypes.array.isRequired,\n seller: PropTypes.object.isRequired,\n carValue: PropTypes.number,\n offerFees: PropTypes.any,\n duration: PropTypes.number.isRequired,\n deposit: PropTypes.any,\n accessories: PropTypes.array.isRequired,\n colors: PropTypes.array.isRequired,\n options: PropTypes.array.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n selectAccessories: accessories => dispatch(selectAccessories(accessories)),\n selectColors: colors => dispatch(selectColors(colors)),\n selectAccessoriesCodes: codes => dispatch(selectAccessoriesCodes(codes)),\n selectColorCodes: codes => dispatch(selectColorCodes(codes)),\n updateFees: fees => dispatch(updateFees(fees)),\n };\n}\nconst mapStateToProps = createStructuredSelector({\n selectedAccessories: makeSelectAccessoriesSelector(),\n selectedAccessoriesCodes: makeSelectAccessoriesCodesSelector(),\n selectedColorCodes: makeSelectColorCodesSelector(),\n selectMonthlyRate: makeSelectMonthlyRateSelector(),\n feesVisible: makeSelectFeesVisibileSelector(),\n selectedFees: makeSelectFeesSelector(),\n prescoringResponse: makeSelectCheckResponse(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withOfferSelectorReducer,\n withOfferSelectorSaga,\n withConnect,\n)(OfferInfo);\n","/*\n * OfferPrice Messages\n *\n * This contains all the text for the OfferPrice container.\n */\nimport { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.components.OfferPrice';\n\nexport default defineMessages({\n price: {\n id: `${scope}.price`,\n defaultMessage: configs.messages[scope].price,\n },\n details: {\n id: `${scope}.details`,\n defaultMessage: 'Offerta soggetta ad esaurimento',\n },\n description: {\n id: `${scope}.description`,\n defaultMessage: 'Canone mensile',\n },\n\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport messages from './messages';\nimport './styles.scss';\n\nconst offerPrice = props => {\n const { price, unit } = props;\n\n return (\n
\n
\n \n \n \n {parseInt(price).toLocaleString('it') + unit}\n \n / \n \n
\n {\n false &&
\n \n
\n }\n
\n );\n};\n\nofferPrice.defaultProps = {\n unit: '€',\n};\n\nofferPrice.propTypes = {\n price: PropTypes.number.isRequired,\n unit: PropTypes.string,\n};\n\nexport default offerPrice;\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { Button } from 'antd';\nimport { Link } from 'react-router-dom';\n\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from 'containers/Quotation/reducer';\n\nimport { makeSelectOriginalOffer } from 'containers/Quotation/selectors';\nimport { featureAllowed } from 'containers/App/selectors';\nimport messages from './messages';\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nclass QuotationInitializer extends React.Component {\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n this.storeOfferConfiguration();\n }\n\n componentDidUpdate() {\n this.storeOfferConfiguration();\n }\n\n storeOfferConfiguration() {\n let {\n offer,\n price,\n accessories,\n selectedColors,\n services,\n equippedOptionals,\n fees,\n } = this.props;\n\n if (accessories.hasOwnProperty('__altered')) {\n accessories = accessories.toArray();\n }\n\n if (selectedColors.hasOwnProperty('__altered')) {\n selectedColors = selectedColors.toArray();\n }\n\n if (services && services.hasOwnProperty('__altered')) {\n services = services.toArray();\n }\n\n offer.code = this.props.originalOffer.code;\n offer.car = this.props.originalOffer.car;\n offer.images = this.props.originalOffer.images;\n offer.tag = this.props.originalOffer.tag;\n offer.secondaryTag = this.props.originalOffer.secondaryTag;\n\n const objToStorage = {\n offer,\n price,\n accessories: this.props.originalOffer.optionalAccessories.data,\n selectedAccessories: accessories,\n colors: this.props.originalOffer.colors.data,\n selectedColors: selectedColors,\n selectedServices: services,\n equippedOptionals,\n fees,\n };\n\n localStorage.setItem('lastConfiguredOffer', JSON.stringify(objToStorage));\n }\n\n render() {\n if (this.props.featureAllowed('quotations')) {\n return (\n \n \n \n \n \n );\n } else {\n return (\n \n \n \n );\n }\n }\n}\n\nconst mapStateToProps = createStructuredSelector({\n originalOffer: makeSelectOriginalOffer(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\nconst withReducer = injectReducer({ key: 'quotation', reducer });\n\nconst withConnect = connect(mapStateToProps);\n\nexport default compose(\n withReducer,\n withConnect,\n)(QuotationInitializer);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Icon } from 'antd';\nimport { default as QuotationInitializer } from '../Quotation/initializer';\nimport TrafficLights from '../PrescoringTool/trafficlights';\nimport { MAPPED_FIELDS } from '../PrescoringTool/constants'\nimport messages from './messages';\nimport './sticky.scss';\nimport { default as AlertWithMessage } from 'components/Alert/message';\n\nconst offerStickyPrice = props => {\n const { price, unit, offer, accessories, selectedColors, services, equippedOptionals, fees } = props;\n\n function getAlertType(sustainabilityIndex) {\n switch (sustainabilityIndex) {\n case 0: return 'danger';\n case 1: return 'warning';\n case 2: return 'success';\n default: return 'info';\n }\n }\n\n const hasSustainabilityIndex = () => offer.sustainabilityIndex !== null;\n\n return (\n
\n {offer.hasOwnProperty('ref') &&\n offer.hasOwnProperty('monthly_rate') ?\n <>\n \n {hasSustainabilityIndex() &&\n
\n \n
\n }\n \n \n \n {parseInt(price) + unit}\n
\n {messages.description.defaultMessage}\n
\n {messages.price.defaultMessage}\n
\n \n \n \n {messages.description.defaultMessage}\n
\n {messages.price.defaultMessage}\n \n
\n \n \n \n \n
\n\n
\n \n Il prezzo del canone mensile è soggetto a variazioni.
\n Offerta economica limitata valida fino ad esaurimento scorte.\n
\n {offer.sustainabilityIndex >= 0 && offer.sustainabilityMessage && offer.sustainabilityMessage !== '' ?\n \n : null\n }\n \n :\n <>\n \n \n {(price === '-' ? price : parseInt(price)) + unit}\n \n \n \n {messages.description.defaultMessage}\n
\n {messages.price.defaultMessage}\n \n
\n\n
\n \n Il prezzo del canone mensile è soggetto a variazioni.
\n Offerta economica limitata valida fino ad esaurimento scorte.\n
\n \n }\n
\n );\n};\n\nofferStickyPrice.defaultProps = {\n unit: '€',\n price: '-',\n};\n\nofferStickyPrice.propTypes = {\n price: PropTypes.any,\n unit: PropTypes.string,\n};\n\nexport default offerStickyPrice;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst item = props => {\n const { value, description, onClick, selected } = props;\n\n return (\n
\n {props.iconComponent}\n
{description}
\n
{value}
\n
\n );\n};\n\nitem.defaultProps = {\n onClick: () => null,\n selected: false,\n};\n\nitem.propTypes = {\n value: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n iconComponent: PropTypes.any.isRequired,\n onClick: PropTypes.func,\n selected: PropTypes.bool,\n};\n\nexport default item;\n","/*\n * OfferDetails Messages\n *\n * This contains all the text for the OfferDetails container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.OfferDetails';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Dettagli Offerta Noleggio',\n },\n button: {\n id: `${scope}.button`,\n defaultMessage: 'Personalizza Offerta',\n },\n duration: {\n id: `${scope}.duration`,\n defaultMessage: 'Durata',\n },\n deposit: {\n id: `${scope}.deposit`,\n defaultMessage: 'Anticipo',\n },\n distance: {\n id: `${scope}.distance`,\n defaultMessage: 'Km/Anno',\n },\n changeOfferTitle: {\n id: `${scope}.changeOfferTitle`,\n defaultMessage: \"Selezione le caratteristiche dell'offerta\",\n },\n changeDuration: {\n id: `${scope}.changeDuration`,\n defaultMessage: 'Seleziona la durata',\n },\n changeDeposit: {\n id: `${scope}.changeDeposit`,\n defaultMessage: \"Seleziona l'anticipo\",\n },\n changeDistance: {\n id: `${scope}.changeDistance`,\n defaultMessage: 'Seleziona una distanza',\n },\n action: {\n id: `${scope}.action`,\n defaultMessage: 'Salva le caratteristiche selezionate',\n },\n});\n","/*\n * OfferDatailsSelectorConstants\n */\n\nexport const DISPLAY_OFFERS = 'ideal/components/OfferDetails/DISPLAY_OFFERS';\nexport const OFFER_SELECTED = 'ideal/components/OfferDetails/OFFER_SELECTED';\n\n\n","/*\n* FormsReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport { OFFER_SELECTED, DISPLAY_OFFERS } from './constants';\n\n// The initial state of forms\nexport const initialState = fromJS({\n offer: {\n reference: null,\n distance: 0,\n duration: 0,\n deposit: 0,\n monthlyRate: 0,\n },\n display: false,\n});\n\nfunction offerSelectorReducer(state = initialState, action) {\n switch (action.type) {\n case OFFER_SELECTED:\n return state.set('offer', action.offer);\n case DISPLAY_OFFERS:\n return state.set('display', action.display);\n default:\n return state;\n }\n}\n\nexport default offerSelectorReducer;\n","import { all } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import { OFFER_SELECTED, DISPLAY_OFFERS } from './constants';\n\n/**\n *\n * @param offer\n * @returns {{offer: *, type: *}}\n */\nexport function offerSelected(offer) {\n return {\n type: OFFER_SELECTED,\n offer,\n };\n}\n\n/**\n *\n * @param display\n * @returns {{display: *, type: *}}\n */\nexport function displayOffers(display = true) {\n return {\n type: DISPLAY_OFFERS,\n display,\n };\n}\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOfferSelector = state =>\n state.get('offerDetailsSelector', initialState);\n\nconst makeSelectOfferSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('offer'),\n );\nconst makeSelectDisplayOffers = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('display'),\n );\n\nexport { selectOfferSelector, makeSelectOfferSelector, makeSelectDisplayOffers };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Modal, ModalBody } from 'reactstrap';\n\nimport { FormattedMessage } from 'react-intl';\n\nimport DistanceIcon from '-!svg-react-loader!./assets/img/distance.svg?name=DistanceIcon';\nimport DurationIcon from '-!svg-react-loader!./assets/img/duration.svg?name=DurationIcon';\nimport DepositIcon from '-!svg-react-loader!./assets/img/deposit.svg?name=DepositIcon';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport Item from './item';\nimport messages from './messages';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { displayOffers, offerSelected } from './actions';\nimport { makeSelectDisplayOffers, makeSelectOfferSelector } from './selectors';\nimport './selector.scss';\nimport { default as OfferPrice } from '../OfferPrice/';\n\nclass OfferDetailsSelector extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n deposit: props.selectedOffer.deposit,\n distance: props.selectedOffer.distance,\n duration: props.selectedOffer.duration,\n monthly_rate: props.selectedOffer.monthly_rate,\n ref: props.selectedOffer.ref,\n };\n\n const deposits = [];\n const distances = [];\n const durations = [];\n\n props.offers.map(item => {\n deposits.push(item.deposit);\n distances.push(item.distance);\n durations.push(item.duration);\n });\n\n this.deposits = [...new Set(deposits)].sort();\n this.distances = [...new Set(distances)].sort();\n this.durations = [...new Set(durations)].sort();\n this.handleOnClick = this.handleOnClick.bind(this);\n }\n\n componentDidUpdate(prevProps) {\n if (\n prevProps.selectedOffer.deposit !== this.props.selectedOffer.deposit ||\n prevProps.selectedOffer.distance !== this.props.selectedOffer.distance ||\n prevProps.selectedOffer.duration !== this.props.selectedOffer.duration ||\n prevProps.selectedOffer.monthly_rate !==\n this.props.selectedOffer.monthly_rate ||\n prevProps.selectedOffer.ref !== this.props.selectedOffer.ref\n ) {\n this.setState(() => ({\n deposit: this.props.selectedOffer.deposit,\n distance: this.props.selectedOffer.distance,\n duration: this.props.selectedOffer.duration,\n monthly_rate: this.props.selectedOffer.monthly_rate,\n ref: this.props.selectedOffer.ref,\n }));\n }\n }\n\n async handleOnClick(e, field, value) {\n e.preventDefault();\n await this.setState({ [field]: parseInt(value) });\n const newSelected = this.searchSelectedOffer();\n this.setState(() => ({\n monthly_rate: newSelected.monthly_rate,\n ref: newSelected.ref,\n }));\n }\n\n handleOnSaveClick = e => {\n e.preventDefault();\n this.props.selectOffer({\n ref: this.state.ref,\n distance: this.state.distance,\n duration: this.state.duration,\n deposit: this.state.deposit,\n monthly_rate: this.state.monthly_rate,\n });\n this.props.close();\n };\n\n searchSelectedOffer = () =>\n this.props.offers.filter(\n item =>\n parseInt(item.deposit) === this.state.deposit &&\n parseInt(item.distance) === this.state.distance &&\n parseInt(item.duration) === this.state.duration,\n )[0];\n\n render() {\n const { openModal, selectedOffer } = this.props;\n const { deposit, distance, duration, monthly_rate } = this.state;\n return (\n \n
\n
\n \n
\n \n
\n \n
\n \n
\n
\n {this.durations.map((item, index) => (\n }\n onClick={event => this.handleOnClick(event, 'duration', item)}\n selected={duration === item}\n />\n ))}\n
\n
\n \n
\n
\n {this.deposits.map((item, index) => (\n }\n onClick={event => this.handleOnClick(event, 'deposit', item)}\n selected={deposit === item}\n />\n ))}\n
\n
\n \n
\n
\n {this.distances.map((item, index) => (\n }\n onClick={event => this.handleOnClick(event, 'distance', item)}\n selected={distance === item}\n />\n ))}\n
\n \n
\n \n \n \n
\n
\n \n );\n }\n}\n\nOfferDetailsSelector.defaultProps = {\n offers: [],\n};\n\nOfferDetailsSelector.propTypes = {\n offers: PropTypes.array,\n openModal: PropTypes.bool,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n close: () => dispatch(displayOffers(false)),\n selectOffer: offer => dispatch(offerSelected(offer)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n openModal: makeSelectDisplayOffers(),\n selectedOffer: makeSelectOfferSelector(),\n});\n\nconst withReducer = injectReducer({ key: 'offerDetailsSelector', reducer });\nconst withSaga = injectSaga({ key: 'offerDetailsSelector', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(OfferDetailsSelector);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { FormattedMessage } from 'react-intl';\n\nimport DistanceIcon from '-!svg-react-loader!./assets/img/distance.svg?name=DistanceIcon';\nimport DurationIcon from '-!svg-react-loader!./assets/img/duration.svg?name=DurationIcon';\nimport DepositIcon from '-!svg-react-loader!./assets/img/deposit.svg?name=DepositIcon';\nimport EditIcon from '-!svg-react-loader!./assets/img/edit.svg?name=EditIcon';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport OfferDetailsSelector from './selector';\nimport Item from './item';\nimport { SmallActionButton } from '../UIKit';\nimport messages from './messages';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { displayOffers } from './actions';\n\nimport './styles.scss';\n\nclass OfferDetails extends React.Component {\n constructor(props) {\n super(props);\n }\n\n handleOnClick = e => {\n e.preventDefault();\n this.props.open();\n };\n\n render() {\n const { deposit, distance, duration, childOffers } = this.props;\n const hasChildOffers = childOffers.length > 1;\n return (\n
\n
\n \n {hasChildOffers && (\n }\n />\n )}\n
\n
\n }\n onClick={this.handleOnClick}\n />\n }\n onClick={this.handleOnClick}\n />\n }\n onClick={this.handleOnClick}\n />\n
\n {hasChildOffers && }\n
\n );\n }\n}\nOfferDetails.defaultProps = {\n childOffers: [],\n};\n\nOfferDetails.propTypes = {\n deposit: PropTypes.number.isRequired,\n duration: PropTypes.number.isRequired,\n distance: PropTypes.number.isRequired,\n childOffers: PropTypes.array,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n open: () => dispatch(displayOffers(true)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({});\n\nconst withReducer = injectReducer({ key: 'offerDetailsSelector', reducer });\nconst withSaga = injectSaga({ key: 'offerDetailsSelector', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(OfferDetails);\n","/*\n * OfferPrint Messages\n *\n * This contains all the text for the OfferPrint container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.OfferPrint';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Stampa questa offerta',\n },\n button: {\n id: `${scope}.button`,\n defaultMessage: 'Stampa Offerta',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { Modal, ModalBody, ModalHeader } from 'reactstrap';\nimport messages from './messages';\nimport { MediumActionButton } from '../UIKit';\nimport Print from '-!svg-react-loader!./assets/img/print.svg?name=Print';\nimport { default as PrintForm } from '../Forms/';\nimport './styles.scss';\n\nclass OfferPrint extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n print: false,\n };\n this.onPrintClick = this.onPrintClick.bind(this);\n }\n\n onPrintClick() {\n this.setState({\n print: !this.state.print,\n });\n }\n\n render() {\n const { carName } = this.props;\n\n return (\n
\n
\n \n
\n
\n }\n onClick={this.onPrintClick}\n />\n
\n \n {`Stampa Offerta ${carName}`}\n {this.state.print && }\n \n
\n );\n }\n}\n\nOfferPrint.defaultProps = {};\n\nOfferPrint.propTypes = {\n carName: PropTypes.string.isRequired,\n};\n\nexport default OfferPrint;\n","import { EventSourcePolyfill } from 'event-source-polyfill';\nimport { getAuthToken, getRefreshToken } from './auth';\n\n/**\n * Parses the JSON returned by a network request\n *\n * @param {object} response A response from a network request\n *\n * @return {object} The parsed JSON from the request\n */\nfunction parseJSON(response) {\n if (response.status === 204 || response.status === 205) {\n return null;\n }\n return response.json();\n}\n\n/**\n * Checks if a network request came back fine, and throws an error if not\n *\n * @param {object} response A response from a network request\n *\n * @return {object|undefined} Returns either the response, or throws an error\n */\nfunction checkStatus(response) {\n if (response.status >= 200 && response.status < 300) {\n return response;\n }\n\n const error = new Error(response.statusText);\n error.response = response;\n throw error;\n}\n\n/**\n * Requests a URL, returning a promise\n *\n * @param {string} url The URL we want to request\n * @param {object} [options] The options we want to pass to \"fetch\"\n *\n * @return {object} The response data\n */\nexport default function request(url, options) {\n return fetch(url, options)\n .then(checkStatus)\n .then(parseJSON);\n}\n\n/**\n * @param {string} url\n * @param {object} [options]\n *\n * @return {object}\n */\nexport const requestSSE = (url, options = {}) => {\n const addedHeaders = options.headers || {};\n\n addedHeaders['Authorization'] = `Bearer ${getAuthToken()}`;\n addedHeaders['X-Refresh-Tkn'] = getRefreshToken();\n\n options.headers = addedHeaders;\n\n const eventSource = new EventSourcePolyfill(url, options);\n\n return eventSource;\n}\n","import { fromJS } from 'immutable';\nimport {\n PRINT_QUOTATION,\n} from './constants';\n\nexport const initialState = fromJS({\n code: null,\n quotation: {}\n});\n\nfunction quotationReducer(state = initialState, action) {\n switch (action.type) {\n case PRINT_QUOTATION:\n return state.set('code', action.code);\n default:\n return state;\n }\n}\n\nexport default quotationReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer-sidebar';\n\nconst selectQuotation = state => state.get('quotationSidebar', initialState);\n\nconst makeSelectQuotationCode = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('code'));\n\nexport {\n selectQuotation,\n makeSelectQuotationCode,\n};\n","import { takeLatest, all, select } from 'redux-saga/effects';\nimport { PRINT_QUOTATION } from './constants';\nimport { makeSelectQuotationCode } from './selectors-sidebar';\nimport { getRequestHeadersAsLogged } from '../../utils/auth';\n\nfunction* printQuote() {\n const code = yield select(makeSelectQuotationCode());\n const requestURL = `${process.env.API_URL}proposals/${code}/attachment`;\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n };\n\n yield fetch(requestURL, parameters)\n .then(response => response.blob())\n .then(blob => {\n const date = new Date();\n return download(blob, `Preventivo-${date.getTime()}`);\n });\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(PRINT_QUOTATION, printQuote);\n}\n\nexport default function* quotationData() {\n yield all([actionWatcher()]);\n}\n","import {\n PRINT_QUOTATION,\n} from './constants';\n\nexport const printQuotation = code => ({\n type: PRINT_QUOTATION,\n code,\n});\n","import React, { useEffect, useState } from 'react';\nimport { Button, Icon, Tooltip } from 'antd';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport configs from 'configs';\n\nimport { requestSSE } from 'utils/request';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer-sidebar';\nimport saga from './saga-sidebar';\n\nimport { printQuotation } from './actions-sidebar';\n\nimport 'antComponentsStyle';\n\nconst SidebarButtons = ({ proposal, stillValid, printQuotation, currentStep }) => {\n const [updatedProposal, setProposal] = useState(proposal);\n\n let { quotation } = updatedProposal;\n quotation = quotation && quotation.data ? quotation.data : {};\n\n useEffect(\n () => {\n if (proposal && proposal.id && !proposal.has_pdf && currentStep >= configs.stepPDFdownloadable) {\n const eventSource = requestSSE(\n `${process.env.API_URL}proposals/sync/${proposal.id}`,\n );\n\n eventSource.addEventListener('update', response => {\n if (response && response.data) {\n const data = { ...updatedProposal, ...JSON.parse(response.data) };\n\n if (data.has_pdf) {\n setProposal(data);\n eventSource.close();\n }\n } else {\n console.error(response);\n eventSource.close();\n }\n });\n\n return () => {\n eventSource.close();\n };\n }\n\n setProposal(proposal);\n },\n [proposal, currentStep],\n );\n\n return (\n <>\n {updatedProposal.id && updatedProposal.has_pdf && (stillValid && currentStep >= configs.stepPDFdownloadable) ?\n \n :\n !updatedProposal.has_pdf && (stillValid && currentStep >= configs.stepPDFdownloadable) ?\n \n \n \n :\n \n \n \n }\n \n );\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n printQuotation: quoteId => dispatch(printQuotation(quoteId)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'quotationSidebar', reducer });\nconst withSaga = injectSaga({ key: 'quotationSidebar', saga });\n\nconst withConnect = connect(\n null,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(SidebarButtons);\n","import React from 'react';\nimport { Row, Col } from 'reactstrap';\nimport { Card, Avatar, Collapse, List, Icon, Affix, Divider } from 'antd';\nimport { FormattedMessage } from 'react-intl';\nimport classnames from 'classnames';\n\nimport SidebarButtons from './sidebar-buttons';\nimport { ExpiredTooltip } from 'components/UIKit';\n\nimport messages from './messages';\n\nimport 'antComponentsStyle';\n\nconst CardTitle = ({ proposalId, isExpired }) =>\n proposalId ? (\n isExpired ? (\n \n Preventivo numero #{proposalId.toString().padStart(5, '0')}\n \n ) : (\n <>Preventivo numero #{proposalId.toString().padStart(5, '0')}\n )\n ) : (\n <>\n );\n\nconst SidebarPreview = ({ proposal, price: offerPrice, currentStep, printAllowed, feeAllowed }) => {\n if(!proposal.quotation) {\n return <>;\n }\n\n let { car, quotation, selectedServices, equippedOptionals } = proposal;\n quotation = quotation && quotation.data ? quotation.data : {};\n\n if (!car) {\n car = quotation.offer.data.car\n }\n\n const price = proposal.price || offerPrice;\n const deposit = quotation.offer && quotation.offer.data ? quotation.offer.data.deposit : proposal.deposit;\n const duration = quotation.offer && quotation.offer.data ? quotation.offer.data.duration : proposal.duration;\n const distance = quotation.offer && quotation.offer.data ? quotation.offer.data.distance : proposal.distance;\n const bundle = quotation.offer && quotation.offer.data ? quotation.offer.data.bundle : proposal.bundle;\n\n const car_features = [\n {\n label: 'Alimentazione',\n description: car.fuel.name,\n },\n {\n label: 'Cambio',\n description: car.descrizione_cambio,\n },\n {\n label: 'Cilindrata',\n description: `${car.cilindrata} cc`,\n },\n {\n label: 'Posti',\n description: `${car.posti}`,\n },\n {\n label: 'Porte',\n description: `${car.porte}`,\n },\n {\n label: 'Dimensioni',\n description: `${car.larghezza} cm x ${car.lunghezza} cm x ${\n car.altezza\n } cm`,\n },\n {\n label: 'Capacità bagagliaio',\n description: `${car.bagagliaio} l`,\n },\n {\n label: 'Potenza',\n description: `${car.hp} CV / ${car.kw} kW`,\n },\n {\n label: 'Trazione',\n description: `${car.descrizione_trazione}`,\n },\n {\n label: 'Consumo medio',\n description: `${car.consumo_medio} (L/100 Km)`,\n },\n {\n label: 'Emissioni di CO2',\n description: `${car.emissioni_co2 ? car.emissioni_co2 : '-'} g/Km`,\n },\n ];\n\n const quotation_features = [\n {\n label: 'Rata mensile',\n description: `${parseInt(price).toLocaleString('it')} €`\n },\n {\n label: 'Anticipo',\n description: `${parseInt(deposit).toLocaleString('it')} €`\n },\n {\n label: 'Durata',\n description: `${duration} mesi`,\n },\n {\n label: 'Distanza',\n description: `${parseInt(distance).toLocaleString('it')} Km/anno`\n },\n ];\n\n if (bundle && bundle !== '') {\n quotation_features.push({\n label: 'Pacchetto',\n description: bundle,\n });\n }\n\n const { stillValid } = proposal;\n const isExpired = stillValid === false && currentStep < 3;\n\n const color = proposal.offer_color || (proposal.offer && proposal.offer.color) || null;\n let carImage = null;\n\n if (proposal.offer && proposal.offer.data) {\n carImage = proposal.offer.data.image;\n } else if (quotation.offer.data.images && quotation.offer.data.images.data.length) {\n carImage = quotation.offer.data.images.data[0].path;\n }\n\n let quotationFee = `Guadagno potenziale: `;\n\n if (proposal.offer && proposal.offer && proposal.offer.data) {\n const originalCommissionToShow = Math.round(parseFloat(proposal.original_commission)).toLocaleString('it');\n const commissionToShow = Math.max(0, Math.round(parseFloat(proposal.commission))).toLocaleString('it');\n\n if (proposal.original_commission !== proposal.commission) {\n quotationFee += `${originalCommissionToShow}€ ${commissionToShow}€`\n } else {\n quotationFee += `${commissionToShow}€`\n }\n }\n\n return (\n <>\n \n
\n }\n bordered={false}\n bodyStyle={{padding: '8px'}}\n >\n }\n description={\n <>\n

{car.brand.name} {car.descrizione_modello}

\n {car.allestimento}\n {color &&
{color}
}\n \n }\n />\n \n\n }\n title={}\n description={\n <>\n

{car.brand.name} {car.descrizione_modello}

\n {car.allestimento}\n {color &&
{color}
}\n \n }\n />\n \n\n \n \n \n \n
\n {parseInt(price).toLocaleString('it')}€\n
\n
\n Canone mensile\n
\n {messages.vat.defaultMessage}\n
\n \n \n
\n Canone mensile\n
\n
\n {messages.vat.defaultMessage}\n
\n \n
\n \n {printAllowed &&\n \n \n \n }\n
\n\n \n \n \n Il prezzo del canone mensile è soggetto a variazioni.
\n Offerta economica limitata valida fino ad esaurimento scorte.\n \n
\n
\n
\n\n
\n \n }\n key=\"1\">\n (\n \n \n \n )}\n />\n \n } key=\"2\">\n (\n \n \n \n )}\n />\n \n {selectedServices && selectedServices.length ?\n } key=\"3\">\n (\n \n 1 ?\n `${service.name} (x ${service.quantity})`\n :\n service.name\n }`}\n description={\n \n }\n />\n \n )}\n />\n \n : null\n }\n {equippedOptionals && equippedOptionals.length > 0 ?\n } key=\"4\">\n (\n \n \n }\n />\n \n )}\n />\n \n : null\n }\n\n {proposal.accessories && proposal.accessories.length ?\n } key=\"5\">\n (\n \n \n \n )}\n />\n \n : null\n }\n } key=\"6\">\n {proposal.notes && proposal.notes.length > 0 ? proposal.notes : `-`}\n \n {proposal.offer && feeAllowed &&\n } key=\"7\">\n

\n

\n {messages.vatNotice.defaultMessage}\n
\n {messages.vatNoticeDescription.defaultMessage}\n

\n
\n }\n
\n
\n \n );\n};\n\nexport default SidebarPreview;\n","import {takeLatest, all, select, put} from 'redux-saga/effects';\nimport {\n SAVE_PROPOSAL,\n UPDATE_QUOTATION,\n SEARCH_CUSTOMER_BY_FISCAL,\n SEARCH_CUSTOMER_BY_VAT,\n} from './constants';\nimport {\n saveQuotationSuccess,\n saveQuotationError,\n saveProposalError,\n customerLoaded,\n customerFound,\n setUpdated\n} from './actions';\nimport {\n makeSelectQuote,\n makeSelectProposalId,\n makeSelectCustomerCode,\n makeSelectCustomer,\n makeSelectCustomerVat,\n makeSelectCustomerContractualCategory\n} from './selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* saveProposal() {\n const proposal = yield select(makeSelectQuote());\n const proposalId = yield select(makeSelectProposalId());\n const requestURL = `${process.env.API_URL}proposals${(proposalId > 0) ? `/${proposalId}` : ''}`;\n\n try {\n const parameters = {\n method: proposalId > 0 ? 'PUT' : 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(proposal),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.data && response.data.id) {\n window.location.replace('/quotations/' + response.data.id);\n } else {\n yield put(saveProposalError(response.errors || response.data.errors || 'unknown error'));\n }\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* updateQuotation() {\n const quote = yield select(makeSelectQuote());\n const requestURL = `${process.env.API_URL}quote/${quote.code}`;\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(quote.customer),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (typeof response.data.errors !== 'undefined') {\n yield put(saveQuotationError(response.errors));\n } else {\n yield put(saveQuotationSuccess(response.data));\n yield put(setUpdated(true));\n }\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* searchCustomerByFiscalCode() {\n const code = yield select(makeSelectCustomerCode());\n const contractualCategory = yield select(makeSelectCustomerContractualCategory());\n let customer = yield select(makeSelectCustomer());\n const requestURL = `${process.env.API_URL}customers/search?code=${code}&category=${(contractualCategory !== null ? contractualCategory : '')}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters)\n .then(response => responseHandler(response));\n\n if (typeof response.error !== 'undefined') {\n if (!customer)\n customer = {}\n customer.fiscal_code = code\n customer.employee_category = contractualCategory\n yield put(customerLoaded(customer));\n yield put(customerFound(false));\n } else {\n yield put(customerLoaded(response.data));\n yield put(customerFound(true));\n }\n } catch (err) {\n yield put(customerLoaded({}));\n yield put(customerFound(false));\n }\n}\n\nfunction* searchCustomerByVatNumber() {\n const vat = yield select(makeSelectCustomerVat());\n const contractualCategory = yield select(makeSelectCustomerContractualCategory());\n let customer = yield select(makeSelectCustomer());\n const requestURL = `${process.env.API_URL}customers/search?vat=${vat}&category=${(contractualCategory !== null ? contractualCategory : '')}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters)\n .then(response => responseHandler(response));\n\n if (typeof response.error !== 'undefined') {\n if (!customer)\n customer = {}\n customer.vat_number = vat\n customer.employee_category = contractualCategory\n yield put(customerLoaded(customer));\n yield put(customerFound(false));\n } else {\n yield put(customerLoaded(response.data));\n yield put(customerFound(true));\n }\n } catch (err) {\n yield put(customerLoaded({}));\n yield put(customerFound(false));\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(SAVE_PROPOSAL, saveProposal);\n yield takeLatest(UPDATE_QUOTATION, updateQuotation);\n yield takeLatest(SEARCH_CUSTOMER_BY_FISCAL, searchCustomerByFiscalCode);\n yield takeLatest(SEARCH_CUSTOMER_BY_VAT, searchCustomerByVatNumber);\n}\n\nexport default function* quotationData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nimport { Alert, Form, Checkbox, Input, Button, Select, Row, Col, Divider, Tooltip, Icon } from 'antd';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport { createStructuredSelector } from 'reselect';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { saveProposal, selectContractualCategoryType } from './actions';\nimport { default as Loader } from \"../Loader\";\nimport { makeSelectLoading, makeSelectContractualCategoryTypeSelected, selectErrors, selectHasErrors } from './selectors';\nimport { makeSelectFeesSelector } from '../CustomizeOffer/selectors';\n\nimport * as Validator from '../CarQuote/validator';\n\nimport messages from './messages';\nimport {\n CONTRACTUAL_CATEGORIES,\n CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n CONTRACTUAL_CATEGORIES_TYPE_PRIVATE,\n CONTRACTUAL_CATEGORIES_TYPES_TAG_MAP,\n} from '../CarQuote/constants';\nimport 'antComponentsStyle';\n\nclass CustomerForm extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n inputChanged: false,\n consent: false,\n fiscalCodeHasError: false,\n errors: {},\n };\n }\n\n get isBusinessEmployee() {\n const employee_category = this.props.customer.employee_category;\n\n if (employee_category !== undefined) {\n const selectedContractualCategory = CONTRACTUAL_CATEGORIES.filter(category => category.value === employee_category);\n return selectedContractualCategory[0] && selectedContractualCategory[0].type === CONTRACTUAL_CATEGORIES_TYPE_BUSINESS;\n }\n\n return false;\n }\n\n isValid() {\n let valid = true;\n const errors = {};\n\n if (this.quotationExists) {\n return valid;\n }\n\n if (!this.props.customer.first_name || this.props.customer.first_name.length < 1) {\n valid = false;\n errors.first_name = true;\n }\n\n if (!this.props.customer.last_name || this.props.customer.last_name.length < 1) {\n valid = false;\n errors.last_name = true;\n }\n\n if (!Validator.validateEmail(this.props.customer.email)) {\n valid = false;\n errors.email = true;\n }\n\n if (\n this.props.customer.phone &&\n !Validator.validatePhone(this.props.customer.phone)\n ) {\n valid = false;\n errors.phone = true;\n }\n\n if (this.props.customer.address && this.props.customer.address.length < 1) {\n valid = false;\n errors.address = true;\n }\n\n if (this.props.customer.city && this.props.customer.city.length < 1) {\n valid = false;\n errors.city = true;\n }\n\n if (\n this.props.customer.zip_code &&\n !Validator.validatePostalCode(this.props.customer.zip_code)\n ) {\n valid = false;\n errors.zip_code = true;\n }\n\n if (\n !this.props.customer.fiscal_code ||\n this.props.customer.fiscal_code.length < 1\n ) {\n valid = false;\n errors.fiscal_code = true;\n }\n\n if (\n this.isBusinessEmployee &&\n !Validator.validateVatNumber(this.props.customer.vat_number)\n ) {\n valid = false;\n errors.vat_number = true;\n }\n\n if (\n this.isBusinessEmployee &&\n (!this.props.customer.business_name ||\n this.props.customer.business_name.length < 1)\n ) {\n valid = false;\n errors.business_name = true;\n }\n\n if (\n this.isBusinessEmployee &&\n !Validator.validateEmail(this.props.customer.pec)\n ) {\n valid = false;\n errors.pec = true;\n }\n\n this.setState({ errors });\n return valid;\n }\n\n get canSubmit() {\n if (this.quotationExists) {\n return true;\n }\n\n const {\n first_name,\n last_name,\n email,\n address,\n zip_code,\n city,\n phone,\n fiscal_code,\n employee_category,\n vat_number,\n business_name,\n pec,\n sdi_code,\n } = this.props.customer;\n\n const { consent, fiscalCodeHasError, errors } = this.state;\n\n const contractualCategories = this.getContractualCategoriesByOfferTag();\n\n return (\n !fiscalCodeHasError &&\n Object.values(errors).length === 0 &&\n first_name &&\n first_name.trim() !== '' &&\n last_name &&\n last_name.trim() !== '' &&\n email &&\n email.trim() !== '' &&\n address &&\n address.trim() !== '' &&\n zip_code &&\n zip_code.trim() !== '' &&\n city &&\n city.trim() !== '' &&\n phone &&\n phone.trim() !== '' &&\n fiscal_code &&\n fiscal_code.trim() !== '' &&\n consent === true &&\n employee_category &&\n employee_category.trim() !== '' &&\n contractualCategories.some(contractualCategory => contractualCategory.value === employee_category) &&\n (!this.isBusinessEmployee ||\n (vat_number &&\n vat_number.trim() !== '' &&\n business_name &&\n business_name.trim() !== '' &&\n pec &&\n pec.trim() !== '' &&\n sdi_code &&\n sdi_code.trim() !== ''))\n );\n }\n\n handleSubmit = e => {\n e.preventDefault();\n\n if (this.isValid()) {\n const {\n services,\n accessories,\n colors,\n newMonthlyRate,\n onNext,\n fees,\n prescoringData,\n } = this.props;\n const offer = this.offerData;\n\n if (this.quotationExists) {\n onNext(2);\n } else {\n const {\n first_name,\n last_name,\n email,\n fiscal_code,\n employee_category,\n vat_number,\n business_name,\n pec,\n sdi_code,\n phone,\n address,\n zip_code,\n city,\n notes,\n } = this.props.customer;\n\n const { consent } = this.state;\n\n const sustainability = {\n \"step\": prescoringData.inputData.step || prescoringData.response.currentStep || null,\n \"logic\": prescoringData.logic || [],\n \"answers\": prescoringData.inputData.answers || {},\n \"response\": {\n ...prescoringData.response,\n \"chance\": offer.sustainabilityIndex >= 0 ? offer.sustainabilityIndex : prescoringData.response.chance,\n \"description\": offer.sustainabilityMessage && offer.sustainabilityMessage != '' ? offer.sustainabilityMessage : prescoringData.response.description,\n },\n \"contractualCategory\": prescoringData.inputData.contractualCategory\n };\n\n this.props.saveProposal({\n accessories: accessories.length ? accessories : [],\n business_name,\n pec,\n sdi_code,\n additionalServices: services,\n colors: colors.length ? colors : [],\n consent,\n email,\n employee_category,\n first_name,\n fiscal_code,\n last_name,\n phone,\n address,\n zip_code,\n city,\n notes,\n newMonthlyRate,\n offer,\n vat_number,\n fees,\n sustainability\n });\n }\n }\n };\n\n onFiscalCodeChange = e => {\n const value = e.target.value;\n const fiscalCode = value.trim().toUpperCase();\n\n if (fiscalCode.length === 16) {\n if (Validator.validateFiscalCode(fiscalCode)) {\n this.setState({\n fiscalCodeHasError: false\n });\n\n this.props.searchCustomerByFiscal(fiscalCode, this.props.customer.employee_category);\n } else {\n this.setState({ fiscalCodeHasError: true });\n }\n }\n };\n\n onVatNumberChange = e => {\n const value = e.target.value;\n const vatNumber = value.trim().toUpperCase();\n\n if (vatNumber.length === 11) {\n if (Validator.validateVatNumber(vatNumber)) {\n this.setState({\n vatNumberHasError: false\n });\n\n this.props.searchCustomerByVat(vatNumber, this.props.customer.employee_category);\n } else {\n this.setState({ vatNumberHasError: true });\n }\n }\n };\n\n onInputChange = e => {\n this.props.onInputChange(e);\n\n this.setState({\n errors: {}\n });\n };\n\n onConsentChange = e => {\n this.setState({ consent: e.target.checked });\n };\n\n componentDidMount() {\n let { prescoringData: { inputData } } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n\n if (inputData && inputData.contractualCategory) {\n this.onEmployeeCategoryChange(inputData.contractualCategory);\n }\n }\n\n onEmployeeCategoryChange = value => {\n if (this.offerContractualCategoryType === CONTRACTUAL_CATEGORIES_TYPE_PRIVATE ||\n this.props.contractualCategoryTypeSelected === CONTRACTUAL_CATEGORIES_TYPE_PRIVATE) {\n this.props.searchCustomerByFiscal(this.props.customer.fiscal_code, value, this.props.customer)\n } else {\n this.props.searchCustomerByVat(this.props.customer.vat_number, value, this.props.customer)\n }\n }\n\n onContractualCategoryTypeChange = value => {\n if (!this.props.contractualCategoryTypeSelected ||\n (\n !this.props.customerFound &&\n this.hasCustomer &&\n confirm('I dati anagrafici inseriti verranno cancellati. Sei sicuro di voler continuare?')\n )\n ) {\n this.props.selectContractualCategoryType(value)\n this.props.resetCustomer()\n } else if ((this.props.customerFound && this.hasCustomer) || !this.hasCustomer) {\n this.props.selectContractualCategoryType(value)\n this.props.resetCustomer()\n }\n }\n\n get quotationExists() {\n return this.props.proposal && this.props.proposal.quotation && this.props.proposal.quotation.data && this.props.proposal.quotation.data.code !== undefined;\n }\n\n get proposalExists() {\n return this.props.proposal && this.props.proposal.id && this.props.proposal.id > 0;\n }\n\n get hasCustomer() {\n return this.props.customer.hasOwnProperty('fiscal_code') || this.props.customer.hasOwnProperty('vat_number');\n }\n\n get offerData() {\n return this.props.proposal.offer && this.props.proposal.offer.data ?\n this.props.proposal.offer.data :\n this.props.proposal.quotation && this.props.proposal.quotation.data.offer.data ?\n this.props.proposal.quotation.data.offer.data :\n null;\n }\n\n get offerCustomUrl() {\n const offerData = this.offerData;\n\n if (offerData) {\n return [\n '/offers/',\n offerData.code,\n '?duration=',\n offerData.duration,\n '&deposit=',\n offerData.deposit,\n '&distance=',\n offerData.distance,\n '&accessories=',\n this.props.selectedAccessories.join(),\n '&colors=',\n this.props.selectedColors.join(),\n ].join('');\n }\n }\n\n getContractualCategoriesByOfferTag = () => {\n let contractualCategories = CONTRACTUAL_CATEGORIES;\n let mappedType = this.offerContractualCategoryType || this.props.contractualCategoryTypeSelected;\n\n if (!mappedType) {\n mappedType = this.isBusinessEmployee ? CONTRACTUAL_CATEGORIES_TYPE_BUSINESS : CONTRACTUAL_CATEGORIES_TYPE_PRIVATE;\n }\n\n if (mappedType) {\n contractualCategories = CONTRACTUAL_CATEGORIES\n .filter(contractualCategory => contractualCategory.type === mappedType)\n }\n\n return contractualCategories;\n }\n\n get offerContractualCategoryType() {\n let tag = this.props.offer.tag || (this.proposalExists && this.props.proposal.offer.data.leftLabel);\n let secondaryTag = this.props.offer.secondaryTag || (this.proposalExists && this.props.proposal.offer.data.rightLabel);\n\n let { prescoringData: { inputData } } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n\n if (inputData.contractualCategory) {\n return CONTRACTUAL_CATEGORIES\n .find(contractual_category => contractual_category.value === inputData.contractualCategory)\n .type;\n }\n\n // prendo i tag da local storage\n tag = (!tag || tag === '') && this.props.proposal.quotation && this.props.proposal.quotation.data.offer ? this.props.proposal.quotation.data.offer.data.tag : tag;\n secondaryTag = (!secondaryTag || secondaryTag === '') && this.props.proposal.quotation && this.props.proposal.quotation.data.offer ? this.props.proposal.quotation.data.offer.data.secondaryTag : secondaryTag;\n\n if (tag || secondaryTag) {\n return CONTRACTUAL_CATEGORIES_TYPES_TAG_MAP[tag] || CONTRACTUAL_CATEGORIES_TYPES_TAG_MAP[secondaryTag]\n }\n\n return null\n }\n\n render() {\n const contractualCategories = this.getContractualCategoriesByOfferTag();\n const categories = [\n {\n description: 'Seleziona...',\n value: '',\n type: 'PRIVATE',\n secondaryType: 'PRIVATE',\n },\n ...contractualCategories,\n ];\n\n const disabledSubmit = !this.canSubmit;\n const { errors } = this.state;\n let { loading, customer, contractualCategoryTypeSelected, proposalErrors, hasErrors, prescoringData: { inputData } } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n\n if (!contractualCategoryTypeSelected && this.proposalExists) {\n contractualCategoryTypeSelected = this.isBusinessEmployee ? CONTRACTUAL_CATEGORIES_TYPE_BUSINESS : CONTRACTUAL_CATEGORIES_TYPE_PRIVATE;\n }\n\n let contractualCategoriesSelectIsDisabled = false;\n let contractualCategorySelected =\n customer.category\n ? customer.category.code\n : customer.employee_category ? customer.employee_category : null;\n\n if (contractualCategorySelected && !contractualCategories.some(contractualCategory => contractualCategory.value === contractualCategorySelected)) {\n contractualCategorySelected = null;\n }\n\n if (inputData.contractualCategory) {\n contractualCategoriesSelectIsDisabled = true;\n }\n\n const zip_code = customer.zip_code;\n const address = customer.address || '';\n\n let criticalError = false;\n\n if (hasErrors) {\n if (proposalErrors === 'Invalid zip code') {\n proposalErrors = 'Siamo spiacenti, ma il CAP inserito non sembra essere valido.';\n } else if (proposalErrors === 'Contractual category not valid') {\n proposalErrors = 'Attenzione, la categoria contrattuale non è valida.';\n } else if (proposalErrors === 'Customer type not compatible with offer') {\n criticalError = true;\n proposalErrors =\n <>Spiacenti, si è verificato un errore durante la richiesta. Clicca qui per tornare all'offerta selezionata.\n } else {\n proposalErrors = ;\n }\n }\n\n return (\n
\n {loading &&\n \n }\n {hasErrors && (\n \n )}\n {!this.offerContractualCategoryType && !this.proposalExists &&\n \n \n this.onContractualCategoryTypeChange(CONTRACTUAL_CATEGORIES_TYPE_BUSINESS)}\n >P.IVA\n \n \n this.onContractualCategoryTypeChange(CONTRACTUAL_CATEGORIES_TYPE_PRIVATE)}\n >Privati\n \n \n }\n {this.hasCustomer ? (\n <>\n \n \n <>\n {\n {\n [CONTRACTUAL_CATEGORIES_TYPE_BUSINESS]:\n }\n validateStatus={errors.vat_number === true ? 'error' : null}\n >\n \n ,\n [CONTRACTUAL_CATEGORIES_TYPE_PRIVATE]:\n \n \n  \n }>\n \n \n }\n />\n }[contractualCategoryTypeSelected || this.offerContractualCategoryType]\n }\n \n \n \n }\n >\n \n {categories.map(item => (\n \n {item.description}\n \n ))}\n \n \n \n \n {((this.offerContractualCategoryType || contractualCategoryTypeSelected) === CONTRACTUAL_CATEGORIES_TYPE_BUSINESS) && (\n \n \n \n \n  \n }>\n \n \n }\n />\n \n \n }\n validateStatus={errors.business_name === true ? 'error' : null}\n >\n \n \n \n \n )}\n \n \n }\n validateStatus={errors.first_name === true ? 'error' : null}\n >\n \n \n \n \n }\n validateStatus={errors.last_name === true ? 'error' : null}\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {\n {\n [CONTRACTUAL_CATEGORIES_TYPE_BUSINESS]:\n \n \n }\n validateStatus={errors.pec === true ? 'error' : null}\n >\n \n \n \n \n }\n validateStatus={errors.sdi_code === true ? 'error' : null}\n >\n \n \n \n ,\n [CONTRACTUAL_CATEGORIES_TYPE_PRIVATE]:\n <>\n }[contractualCategoryTypeSelected || this.offerContractualCategoryType]\n }\n \n \n \n \n \n \n \n \n \n \n \n \n {txt => (\n {txt}\n )}\n \n \n \n \n \n \n ) :\n <>\n {\n {\n [CONTRACTUAL_CATEGORIES_TYPE_BUSINESS]:\n \n \n }\n validateStatus={errors.vat_number === true ? 'error' : null}\n >\n \n \n \n ,\n [CONTRACTUAL_CATEGORIES_TYPE_PRIVATE]:\n \n \n \n \n  \n }>\n \n \n }\n />\n \n \n }[contractualCategoryTypeSelected || this.offerContractualCategoryType]\n }\n \n }\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nconst FiscalCodeInput = ({ fiscalCodeHasError, fiscal_code, onFiscalCodeChange, disabledFields, label }) => {\n return (\n \n ) : (\n ''\n )\n }\n >\n \n \n );\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n saveProposal: params => dispatch(saveProposal(params)),\n selectContractualCategoryType: contractualCategoryType => dispatch(selectContractualCategoryType(contractualCategoryType)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n loading: makeSelectLoading(),\n fees: makeSelectFeesSelector(),\n contractualCategoryTypeSelected: makeSelectContractualCategoryTypeSelected(),\n hasErrors: selectHasErrors(),\n proposalErrors: selectErrors(),\n});\n\nconst withReducer = injectReducer({ key: 'quote', reducer });\nconst withSaga = injectSaga({ key: 'quote', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(CustomerForm);\n","export const SAVE_PROPOSAL = 'ideal/components/Quotation/SAVE_PROPOSAL';\nexport const SAVE_QUOTATION = 'ideal/components/Quotation/SAVE_QUOTATION';\nexport const SAVE_QUOTATION_SUCCESS = 'ideal/components/Quotation/SAVE_QUOTATION_SUCCESS';\nexport const SAVE_QUOTATION_ERROR = 'ideal/components/Quotation/SAVE_QUOTATION_ERROR';\nexport const SAVE_PROPOSAL_SUCCESS = 'ideal/components/Quotation/SAVE_PROPOSAL_SUCCESS';\nexport const SAVE_PROPOSAL_ERROR = 'ideal/components/Quotation/SAVE_PROPOSAL_ERROR';\nexport const UPDATE_QUOTATION = 'ideal/components/Quotation/UPDATE_QUOTATION';\nexport const SEARCH_CUSTOMER_BY_FISCAL = 'ideal/components/Quotation/SEARCH_CUSTOMER_BY_FISCAL';\nexport const SEARCH_CUSTOMER_BY_VAT = 'ideal/components/Quotation/SEARCH_CUSTOMER_BY_VAT';\nexport const CUSTOMER_RECEIVED = 'ideal/components/Quotation/CUSTOMER_RECEIVED';\nexport const CUSTOMER_FOUND = 'ideal/components/Quotation/CUSTOMER_FOUND';\nexport const UPDATE_CUSTOMER_INPUT = 'ideal/components/Quotation/UPDATE_CUSTOMER_INPUT';\nexport const RESET_CUSTOMER = 'ideal/components/Quotation/RESET_CUSTOMER';\nexport const SET_UPDATED = 'ideal/components/Quotation/SET_UPDATED';\nexport const PRINT_QUOTATION = 'ideal/components/quotationSidebar/PRINT_QUOTATION';\n","import { fromJS } from 'immutable';\nimport {\n SAVE_PROPOSAL,\n SAVE_QUOTATION_SUCCESS,\n SAVE_QUOTATION_ERROR,\n SAVE_PROPOSAL_SUCCESS,\n SAVE_PROPOSAL_ERROR,\n UPDATE_QUOTATION,\n CUSTOMER_RECEIVED,\n CUSTOMER_FOUND,\n UPDATE_CUSTOMER_INPUT,\n RESET_CUSTOMER,\n SET_UPDATED,\n} from './constants';\nimport {\n QUOTATION_RECEIVED,\n} from 'containers/Quotation/constants';\n\nexport const initialState = fromJS({\n loading: false,\n quotation: {},\n attachments: {},\n search: false,\n customerCode: '',\n contractualCategory: null,\n customer: {},\n customerUpdatedInput: {},\n errors: {},\n hasErrors: false,\n updated: false\n});\n\nfunction quotationReducer(state = initialState, action) {\n switch (action.type) {\n case SAVE_PROPOSAL:\n return state.set('quotation', action.proposal).set('loading', true);\n // case SAVE_QUOTATION:\n // return state.set('quotation', action.quotation).set('loading', true);\n case UPDATE_QUOTATION:\n return state\n .set('quotation', action.quotation)\n .set('customer', action.customer)\n .set('loading', true);\n case SAVE_PROPOSAL_SUCCESS:\n case SAVE_QUOTATION_SUCCESS:\n return state\n .set('quotation', action.quotation)\n .set('customerUpdatedInput', {})\n .set('errors', {})\n .set('hasErrors', false)\n .set('loading', false);\n case SAVE_PROPOSAL_ERROR:\n case SAVE_QUOTATION_ERROR:\n return state\n .set('errors', action.errors)\n .set('hasErrors', true)\n .set('loading', false);\n case SET_UPDATED:\n return state.set('updated', action.value);\n case CUSTOMER_FOUND:\n return state.set('customerFound', action.found).set('customerUpdatedInput', {});\n case CUSTOMER_RECEIVED:\n return state.set('customer', action.customer).set('customerUpdatedInput', {}).set('search', false);\n case RESET_CUSTOMER:\n return state.set('customerFound', false).set('customer', {}).set('customerUpdatedInput', {});\n case UPDATE_CUSTOMER_INPUT:\n return state.set('customerUpdatedInput', {...state.get('customerUpdatedInput'), [action.field]: action.value});\n case QUOTATION_RECEIVED:\n return state.set('customerUpdatedInput', {});\n default:\n return state;\n }\n}\n\nexport default quotationReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectQuote = state => state.get('quote', initialState);\n\nconst selectQuotation = state => state.get('quotation', initialState);\n\nconst makeSelectQuote = () =>\n createSelector(selectQuote, quotationState => quotationState.get('quotation'));\n\nconst makeSelectQuotationCode = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('code'));\n\nconst makeSelectProposalId = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('proposal_id'));\n\nconst makeSelectCustomerCode = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerCode'));\n\nconst makeSelectCustomerContractualCategory = () =>\n createSelector(selectQuote, quotationState => quotationState.get('contractualCategory'));\n\nconst makeSelectCustomer = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customer'));\n\nconst makeSelectLoading = () =>\n createSelector(selectQuote, offersState => offersState.get('loading'));\n\nconst makeSelectSearchingCustomer = () =>\n createSelector(selectQuote, quotationState => quotationState.get('search'));\n\nconst makeSelectCustomerFound = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerFound'));\n\nconst makeSelectCustomerUpdatedInput = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerUpdatedInput'));\n\nconst makeSelectQuotattionAttachments = () =>\n createSelector(selectQuote, quotationState => quotationState.get('attachments'));\n\nconst selectErrors = () =>\n createSelector(selectQuote, quotationState => {\n const errors = quotationState.get('errors');\n\n if (errors && !errors.hasOwnProperty('__altered')) {\n return Object.entries(quotationState.get('errors')).reduce(\n (result, field) => {\n const [fieldName, value] = field;\n result[fieldName] = value[0];\n return result;\n },\n {},\n );\n }\n });\n\nconst selectHasErrors = () =>\n createSelector(selectQuote, quotationState => quotationState.get('hasErrors'));\n\nconst selectUpdated = () =>\n createSelector(selectQuote, quotationState => quotationState.get('updated'));\n\nexport {\n selectQuotation,\n makeSelectLoading,\n makeSelectQuotationCode,\n makeSelectProposalId,\n makeSelectCustomerContractualCategory,\n makeSelectCustomerCode,\n makeSelectSearchingCustomer,\n makeSelectCustomer,\n makeSelectCustomerFound,\n makeSelectCustomerUpdatedInput,\n makeSelectQuote,\n makeSelectQuotattionAttachments,\n selectErrors,\n selectHasErrors,\n selectUpdated,\n};\n","import React from 'react';\n\nimport {connect} from 'react-redux';\nimport {compose} from 'redux';\nimport injectReducer from 'utils/injectReducer';\n\nimport {createStructuredSelector} from 'reselect';\nimport reducer from './reducer';\nimport {searchCustomerByFiscal, searchCustomerByVat, updateCustomerInput, resetCustomer} from './actions';\nimport {default as CustomerForm} from '../Quotation/form-customer';\nimport {\n makeSelectOfferSelector,\n makeSelectServicesSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n} from '../CustomizeOffer/selectors';\nimport {\n makeSelectCustomer,\n makeSelectCustomerFound,\n makeSelectCustomerUpdatedInput,\n} from './selectors';\n\nclass CustomerFormWrapper extends React.Component {\n constructor(props) {\n super(props);\n }\n\n onInputChange = e => {\n const value = e.target.value;\n const name = e.target.name;\n this.props.updateCustomerInput(name, value);\n };\n\n render() {\n const {\n proposal,\n customer,\n customerUpdatedInput,\n customerFound,\n offer,\n services,\n accessories,\n colors,\n searchCustomerByFiscal,\n searchCustomerByVat,\n selectedAccessories,\n selectedColors,\n resetCustomer,\n prescoringData,\n } = this.props;\n let customerToRender = customerUpdatedInput;\n if (customerFound !== undefined) {\n customerToRender = customer;\n customerToRender = {\n ...customerToRender,\n notes: proposal.notes || '',\n ...customerUpdatedInput,\n };\n return (\n \n );\n } else if (proposal.customer) {\n customerToRender = proposal.customer;\n customerToRender.employee_category = customerToRender.category.code;\n let notes = customerUpdatedInput.notes || proposal.notes;\n customerToRender = {\n ...customerToRender,\n ...customerUpdatedInput,\n notes,\n };\n return (\n \n );\n } else {\n customerToRender = {...customerToRender, notes: proposal.notes || ''};\n return (\n \n );\n }\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n searchCustomerByFiscal: (fiscalCode, contractualCategory, customer) => dispatch(searchCustomerByFiscal(fiscalCode, contractualCategory, customer)),\n searchCustomerByVat: (vatNumber, contractualCategory, customer) => dispatch(searchCustomerByVat(vatNumber, contractualCategory, customer)),\n updateCustomerInput: (field, value) => dispatch(updateCustomerInput(field, value)),\n resetCustomer: () => dispatch(resetCustomer()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n customer: makeSelectCustomer(),\n customerFound: makeSelectCustomerFound(),\n customerUpdatedInput: makeSelectCustomerUpdatedInput(),\n offer: makeSelectOfferSelector(),\n services: makeSelectServicesSelector(),\n accessories: makeSelectAccessoriesCodesSelector(),\n colors: makeSelectColorCodesSelector(),\n});\n\nconst withReducer = injectReducer({key: 'quote', reducer});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withConnect,\n)(CustomerFormWrapper);\n","import {\n UPDATE_QUOTATION,\n SEARCH_CUSTOMER_BY_FISCAL,\n SEARCH_CUSTOMER_BY_VAT,\n CUSTOMER_RECEIVED,\n CUSTOMER_FOUND,\n UPDATE_CUSTOMER_INPUT,\n RESET_CUSTOMER,\n SET_UPDATED,\n} from './constants';\n\nexport function updateQuotation(params) {\n return {\n type: UPDATE_QUOTATION,\n quotation: params,\n };\n}\n\nexport function setUpdated(value) {\n return {\n type: SET_UPDATED,\n value,\n };\n}\n\nexport function searchCustomerByFiscal(fiscalCode, contractualCategory = null,customer=null) {\n return {\n type: SEARCH_CUSTOMER_BY_FISCAL,\n fiscalCode,\n contractualCategory,\n customer\n };\n}\n\nexport function searchCustomerByVat(vatNumber, contractualCategory = null,customer=null) {\n return {\n type: SEARCH_CUSTOMER_BY_VAT,\n vatNumber,\n contractualCategory,\n customer\n };\n}\n\nexport function customerLoaded(customer) {\n return {\n type: CUSTOMER_RECEIVED,\n customer,\n };\n}\n\nexport function customerFound(found) {\n return {\n type: CUSTOMER_FOUND,\n found,\n };\n}\n\nexport function resetCustomer() {\n return {\n type: RESET_CUSTOMER,\n };\n}\n\nexport function updateCustomerInput(field, value) {\n return {\n type: UPDATE_CUSTOMER_INPUT,\n field,\n value\n };\n}\n","import React from 'react';\nimport { createStructuredSelector } from 'reselect';\nimport { FormattedMessage } from 'react-intl';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport { default as Loader } from '../Loader/';\nimport {\n CONTRACTUAL_CATEGORIES,\n CONTRACTUAL_CATEGORIES_TYPE_BUSINESS,\n} from '../CarQuote/constants';\n\nimport messages from './messages';\n\nimport { Row, Col, Alert, Divider, Form, Button } from 'antd';\nimport 'antComponentsStyle';\n\nimport reducer from './reducer';\nimport saga from './saga';\nimport { setUpdated } from './actions';\nimport { makeSelectLoading, selectHasErrors, selectUpdated } from './selectors';\n\nclass ConfirmForm extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n proposal: props.proposal,\n errors: {\n phone: false,\n zip_code: false\n }\n };\n }\n\n componentDidUpdate() {\n if (this.props.isUpdated) {\n this.props.onNext();\n this.props.resetUpdated();\n }\n }\n\n handelSubmit = e => {\n e.preventDefault();\n\n this.props.onNext();\n };\n\n get quotationExists() {\n return this.props.proposal.quotation && this.props.proposal.quotation.data && this.props.proposal.quotation.data.code !== undefined;\n }\n\n get isBusinessEmployee() {\n const { employee_category } = this.props.proposal.customer;\n\n if (employee_category !== undefined) {\n const selectedContractualCategory = CONTRACTUAL_CATEGORIES.filter(category => category.value === employee_category);\n return selectedContractualCategory[0] && selectedContractualCategory[0].type === CONTRACTUAL_CATEGORIES_TYPE_BUSINESS;\n }\n\n return false;\n }\n\n render() {\n const { hasErrors, proposal, loading, onPrev } = this.props;\n const { customer, offer: {data: offer} } = proposal;\n\n return (\n
\n {loading &&\n \n }\n {!this.quotationExists &&\n
\n \n
\n }\n {hasErrors && (\n }\n />\n )}\n \n \n }\n >\n <>{customer.fiscal_code}\n \n \n \n }\n >\n <>{customer.category.description}\n \n \n \n {this.isBusinessEmployee && (\n \n \n }\n >\n <>{customer.vat_number}\n \n \n \n }\n >\n <>{customer.business_name}\n \n \n \n }\n >\n <>{customer.pec}\n \n \n \n }\n >\n <>{customer.sdi_code}\n \n \n \n )}\n \n \n }\n >\n <>{customer.first_name}\n \n \n \n }\n >\n <>{customer.last_name}\n \n \n \n \n \n \n <>{customer.email}\n \n \n \n \n <>{customer.phone}\n \n \n \n \n \n \n <>{customer.address}\n \n \n \n }\n >\n <>{customer.zip_code}\n \n \n \n }\n >\n <>{customer.city}\n \n \n \n \n \n \n <>{proposal.notes}\n \n \n \n \n \n \n {!this.quotationExists &&\n \n \n \n \n \n }\n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nconst mapStateToProps = createStructuredSelector({\n loading: makeSelectLoading(),\n hasErrors: selectHasErrors(),\n isUpdated: selectUpdated(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n resetUpdated: () => dispatch(setUpdated(false)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'quote', reducer });\nconst withSaga = injectSaga({ key: 'quote', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(ConfirmForm);\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport reducer from './reducer';\nimport { fileUploaded } from './actions';\nimport { makeSelectQuotattionAttachments } from './selectors';\n\nimport { getPlainRequestHeadersAsLogged } from '../../utils/auth';\n\nimport messages from './messages';\nimport configs from 'configs';\n\nimport { Alert, Row, Col, Form, Button, Icon, Divider, Collapse, Upload, Progress } from 'antd';\nimport 'antComponentsStyle';\n\nclass DocumentsForm extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n proposal: props.proposal,\n attachments: [],\n isUploading: {},\n error: null\n };\n }\n\n componentDidMount() {\n const { proposal, quotationAttachments } = this.props;\n let attachments = proposal.quotation && proposal.quotation.data.attachments\n ? proposal.quotation.data.attachments.data\n : [];\n\n attachments = attachments.map(attachment => ({\n label: attachment.title,\n type: attachment.description,\n link: attachment.link,\n files: attachment.files.data.length ||\n (quotationAttachments.hasOwnProperty(attachment.description) ? quotationAttachments[attachment.description] : []).length || 0\n })\n );\n\n this.setState({attachments});\n }\n\n get hasUploadedAttachments() {\n return (this.state.attachments.filter(attachmentGroup => attachmentGroup.files === 0)).length === 0;\n }\n\n handleUploadChange = (uploadInfo, attachmentsGroupTarget) => {\n this.setState({\n error: null\n });\n\n if (uploadInfo.file.status === 'uploading') {\n this.setUploadingPercent(attachmentsGroupTarget, uploadInfo.file.percent);\n } else {\n if (uploadInfo.file.status === 'done') {\n this.setUploadingPercent(attachmentsGroupTarget, false);\n\n let attachments = this.state.attachments;\n let attachmentsGroupState = attachments.findIndex(attachmentsGroupItem => attachmentsGroupItem.type === attachmentsGroupTarget);\n attachments[attachmentsGroupState].files++;\n\n this.setState({attachments});\n this.props.fileUploaded({\n filename: uploadInfo.file.name,\n group: attachmentsGroupTarget\n })\n } else {\n this.setState({\n error: uploadInfo.file.response.message || true\n });\n }\n }\n }\n\n setUploadingPercent = (target, value) => {\n this.setState({\n isUploading: { ...this.state.isUploading, [target]: value === false ? value : Math.round(value) },\n });\n }\n\n isUploadingTarget = target => {\n const { isUploading } = this.state;\n return isUploading[target] !== undefined && isUploading[target] !== false;\n }\n\n render() {\n const { hasErrors, proposal, onNext, onPrev } = this.props;\n const { attachments, isUploading, error } = this.state;\n const uploadError = hasErrors || error || false;\n\n return (\n <>\n
\n \n
\n {uploadError && (\n }\n />\n )}\n\n \n {attachments.map(attachmentsGroup => (\n \n 0 ? '#52c41a' : '#d9d9d9'\n }\n className=\"mr-2\"\n />\n \n {attachmentsGroup.label}\n \n {attachmentsGroup.link ?\n \n \n Scarica \n \n : null}\n \n {proposal.quotation.data.hasAttachments && !attachmentsGroup.files\n ? <>\n \n Documentazione presente\n \n \n : <>\n {attachmentsGroup.files}\n \n file {attachmentsGroup.files === 1 ? 'caricato' : 'caricati'}\n \n \n }\n \n \n }\n className=\"documents-upload-container\"\n >\n {attachmentsGroup.files[1] ? attachmentsGroup.files[1].key : ''}\n this.handleUploadChange(uploadInfo, attachmentsGroup.type))}\n >\n \n {this.isUploadingTarget(attachmentsGroup.type) &&\n \n }\n \n \n ))}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n fileUploaded: params => dispatch(fileUploaded(params)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n quotationAttachments: makeSelectQuotattionAttachments(),\n});\n\nconst withReducer = injectReducer({ key: 'quote', reducer });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withConnect,\n)(DocumentsForm);\n","/*\n * QuotationsSearch Messages\n *\n * This contains all the text for the QuotationsSearch container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.QuotationsSearch';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Cerca preventivi',\n },\n customer_field_label: {\n id: `${scope}.customer_field_label`,\n defaultMessage: 'Ricerca per cliente',\n },\n customer_field_placeholder: {\n id: `${scope}.customer_field_placeholder`,\n defaultMessage: 'Nome, cognome, ragione sociale o email',\n },\n fiscal_code_field_placeholder: {\n id: `${scope}.fiscal_code_field_label`,\n defaultMessage: 'Codice fiscale / partita IVA',\n },\n quotation_id_field_placeholder: {\n id: `${scope}.quotations_id_field_label`,\n defaultMessage: 'Numero preventivo',\n },\n agent_id_field_placeholder: {\n id: `${scope}.agent_id_field_placeholder`,\n defaultMessage: 'Agente',\n },\n search: {\n id: `${scope}.search`,\n defaultMessage: 'Cerca',\n },\n});\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { Form, Input, Select, Button, DatePicker, Row, Col } from 'antd';\nimport moment from 'moment';\nimport locale from 'antd/lib/date-picker/locale/it_IT';\nimport 'moment/locale/it';\nmoment.locale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_',\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_',\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n week: {\n dow: 1,\n doy: 4,\n },\n});\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport messages from './messages';\n\nimport { createStructuredSelector } from 'reselect';\n\nimport { makeSelectQuotationsParameters, makeSelectQuotationsFilters } from 'containers/Quotations/selectors';\nimport { searchQuotations } from 'containers/Quotations/actions';\nimport { withQuotationReducer } from 'containers/Quotations/withReducer';\n\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nconst dateFormat = 'YYYY-MM-DD';\n\nclass QuotationsSearch extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n ...props.parameters,\n datePickerEndOpen: false,\n };\n }\n\n componentWillReceiveProps(nextProps) {\n this.setState({ ...nextProps.parameters });\n }\n\n get canSearch() {\n return this.state.startDate && this.state.endDate;\n }\n\n handleOnChange = event => {\n const value = event.target.value;\n const name = event.target.name;\n\n this.setState({\n [name]: value,\n });\n };\n\n handleSelectChange = (name, value) => {\n this.setState({\n [name]: value,\n });\n };\n\n handleSubmit = e => {\n e.preventDefault();\n\n if (this.canSearch) {\n this.props.search(this.state);\n }\n };\n\n handleSetStatusFilter = ({ target, currentTarget }) => {\n let { status } = this.state;\n const { value } = target;\n\n status = Array.isArray(status) ? status : [];\n\n if (status.includes(value)) {\n status = status.filter(statusValue => statusValue !== value);\n } else {\n status.push(value);\n }\n\n currentTarget.blur();\n\n this.setState({ status }, () => this.props.search(this.state));\n };\n\n setStartDate = startDate =>\n this.setState({\n startDate: startDate.format('YYYY-MM-DD'),\n });\n\n setEndDate = endDate =>\n this.setState({\n endDate: endDate.format('YYYY-MM-DD'),\n }, () => this.props.search(this.state));\n\n handleStartOpenChange = open => {\n if (!open) {\n this.setState({ datePickerEndOpen: true });\n }\n };\n\n handleEndOpenChange = open => {\n this.setState({ datePickerEndOpen: open });\n };\n\n disabledStartDate = startValue => {\n let { endDate } = this.state;\n endDate = moment(endDate, dateFormat);\n\n if (!startValue || !endDate) {\n return false;\n }\n\n return startValue.valueOf() > endDate.valueOf();\n };\n\n disabledEndDate = endValue => {\n let { startDate } = this.state;\n startDate = moment(startDate, dateFormat);\n\n if (!endValue || !startDate) {\n return false;\n }\n\n return endValue.valueOf() <= startDate.valueOf();\n };\n\n render() {\n const {\n query,\n fiscal_code,\n quotation_id,\n startDate,\n endDate,\n datePickerEndOpen,\n status,\n agent_id,\n } = this.state;\n const { filters } = this.props;\n\n const dataRangeStartId = `quotations-data-range-start`;\n const dataRangeStartLabel = `Inizio data creazione preventivo`;\n\n const dataRangeEndId = `quotations-data-range-end`;\n const dataRangeEndLabel = `Fine data creazione preventivo`;\n\n const contactQueryId = `query`;\n const contactQueryLabel = `inserisci nome, cognome o ragione sociale`;\n\n const fiscalCodeId = `fiscal_code`;\n const fiscalCodeLabel = `Codice fiscale o partita iva`;\n\n const quotationNumberId = `quotation_number`;\n const quotationNumberLabel = `numero preventivo`;\n\n const quotationStatusId = `quotations-status`;\n const quotationStatusLabel = `Stato pratica:`;\n\n const agentsId = `agent-id`;\n const agentsLabel = `Agente`;\n\n return (\n
\n

\n \n

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {contactQueryLabel}\n \n \n {placeholder => (\n \n )}\n \n \n \n \n \n {placeholder => (\n \n )}\n \n \n \n \n {quotationNumberLabel}\n \n \n {placeholder => (\n \n )}\n \n \n\n \n \n {agentsLabel}\n \n \n \n \n\n \n
\n \n
\n\n \n \n \n \n \n
\n \n \n \n \n \n
\n
\n );\n }\n}\n\nconst QuotationStatusFilterButton = ({\n value,\n label,\n statusFilter,\n onClick,\n}) => (\n \n {label}\n \n);\n\nQuotationsSearch.propTypes = {};\n\nconst mapStateToProps = createStructuredSelector({\n parameters: makeSelectQuotationsParameters(),\n filters: makeSelectQuotationsFilters(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n search: params => dispatch(searchQuotations(params)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withQuotationReducer,\n withConnect,\n)(QuotationsSearch);\n","/*\n * QuotationsSort Messages\n *\n * This contains all the text for the QuotationsSort container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.QuotationsSort';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Preventivi trovati',\n },\n title_short: {\n id: `${scope}.title_short`,\n defaultMessage: 'Trovati',\n },\n sort: {\n id: `${scope}.sort`,\n defaultMessage: 'Ordina per:',\n },\n remove: {\n id: `${scope}.remove`,\n defaultMessage: 'Rimuovi i filtri',\n },\n query: {\n id: `${scope}.query`,\n defaultMessage: 'Hai cercato: ',\n },\n download_list: {\n id: `${scope}.download_list`,\n defaultMessage: 'Scarica in formato .xlsx',\n },\n download_list_short: {\n id: `${scope}.download_list_short`,\n defaultMessage: 'Scarica .xlsx',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { FormattedMessage } from 'react-intl';\nimport { FormattedMessageWithClass } from '../../utils/FormattedMessageWithClass';\nimport SortIcon from '-!svg-react-loader!./assets/sort.svg?name=SortIcon';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Row, Col } from 'reactstrap';\nimport Badge from '../SearchFilters/badge';\nimport messages from './messages';\nimport { Button } from 'antd';\n\nimport {\n makeSelectQuotationsSort,\n makeSelectSelectedQuotationsSort,\n makeSelectQuotationsParameters,\n} from 'containers/Quotations/selectors';\nimport { withQuotationReducer } from 'containers/Quotations/withReducer';\nimport {\n loadFilters,\n orderBy,\n removeAll,\n removeFilter,\n downloadQuotations,\n} from 'containers/Quotations/actions';\n\nimport './styles.scss';\n\nclass QuotationsSort extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n onRemoveFilter = filterName => {\n this.props.removeFilter(filterName);\n };\n\n onOrderChange = e => {\n this.props.orderBy(e.target.value);\n };\n\n handleDownloadList = () => {\n this.props.downloadQuotations();\n }\n\n get showFiltersBadge() {\n return !!(this.props.parameters.query.length ||\n this.props.parameters.fiscal_code.length >= 11 ||\n this.props.parameters.quotation_id.length);\n }\n\n render() {\n const { results, sort, selectedSort, parameters, id } = this.props;\n return (\n
\n
\n
\n
\n \n \n \n \n \n {sort.map((item, key) => (\n \n ))}\n \n
\n
\n

\n {results}\n \n \n \n \n \n \n \n

\n {this.showFiltersBadge && (\n \n \n \n {Object.entries(parameters).map(([parameterName, parameterValue]) =>\n parameterValue.length > 0 ?\n this.onRemoveFilter(parameterName)}\n />\n : null\n )}\n
\n \n
\n \n
\n )}\n
\n
\n );\n }\n}\n\nQuotationsSort.propTypes = {\n results: PropTypes.number.isRequired,\n parameters: PropTypes.object,\n removeFilter: PropTypes.func.isRequired,\n removeAll: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n sort: makeSelectQuotationsSort(),\n selectedSort: makeSelectSelectedQuotationsSort(),\n parameters: makeSelectQuotationsParameters(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadFilters: () => dispatch(loadFilters()),\n orderBy: value => dispatch(orderBy(value)),\n removeFilter: filterName => dispatch(removeFilter(filterName)),\n removeAll: () => dispatch(removeAll()),\n downloadQuotations: () => dispatch(downloadQuotations()),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withQuotationReducer,\n withConnect,\n)(QuotationsSort);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst index = props => {\n const { offerCode } = props;\n\n return (\n );\n}\n\nindex.propTypes = {\n offerCode: PropTypes.string.isRequired,\n};\n\nexport default index;\n","/*\n * CatalogEdit Messages\n *\n * This contains all the text for the Catalog Edit container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.containers.CatalogEdit';\n\nexport default defineMessages({\n header: {\n id: `${scope}.header`,\n defaultMessage: 'This is the HomePage container!',\n },\n car: {\n id: `${scope}.car`,\n defaultMessage: 'Automobile',\n description: \"Modifica l'auto per la tua offerta\",\n },\n images: {\n id: `${scope}.images`,\n defaultMessage: 'Immagini',\n description: \"Gestisci le immagini dell'auto\",\n },\n offer: {\n id: `${scope}.offer`,\n defaultMessage: 'Offerta',\n description: \"Modifica i dati relativi all'offerta\",\n },\n childs: {\n id: `${scope}.childs`,\n defaultMessage: 'Variazioni',\n description: \"Modifica i prezzi dell'offerta\",\n },\n services: {\n id: `${scope}.services`,\n defaultMessage: 'Servizi inclusi',\n description: \"Modifica i servizi delll'offerta\",\n },\n preview: {\n id: `${scope}.preview`,\n defaultMessage: 'Suggerimenti',\n },\n submit: {\n id: `${scope}.submit`,\n defaultMessage: 'Salva modifiche',\n },\n cancel: {\n id: `${scope}.cancel`,\n defaultMessage: 'Annulla',\n },\n delete: {\n id: `${scope}.delete`,\n defaultMessage: 'Elimina offerta',\n },\n clone: {\n id: `${scope}.clone`,\n defaultMessage: 'Duplica offerta',\n },\n linkToOffer: {\n id: `${scope}.linkToOffer`,\n defaultMessage: 'Vedi dettaglio offerta',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { Button } from 'antd';\nimport configs from 'configs';\nimport messages from './messages';\n\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nconst ButtonBoard = ({\n onSave,\n canSave,\n onCancel,\n onDelete,\n onClone,\n offerCode,\n}) => (\n
\n \n \n \n {configs.cloneCatalogOffer &&\n onClone && (\n \n )}\n {onDelete && (\n \n \n \n )}\n \n {offerCode && (\n \n \n \n \n )}\n
\n);\n\nButtonBoard.defaultProps = {\n canSave: true,\n offerCode: null,\n};\n\nButtonBoard.propTypes = {\n onSave: PropTypes.func.isRequired,\n canSave: PropTypes.bool,\n onCancel: PropTypes.func.isRequired,\n onDelete: PropTypes.func,\n onClone: PropTypes.func,\n offerCode: PropTypes.string,\n};\n\nexport default ButtonBoard;\n","/*\n * CarSelector Messages\n *\n * This contains all the text for the Car Selector container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.CarSelector';\n\nexport default defineMessages({\n header: {\n id: `${scope}.header`,\n defaultMessage: 'This is the HomePage container!',\n },\n brands: {\n id: `${scope}.brands`,\n title: 'Marca',\n defaultMessage: 'Inizia a digitare o seleziona un brand',\n },\n models: {\n id: `${scope}.models`,\n title: 'Modello',\n defaultMessage: 'Inizia a digitare o seleziona un modello',\n },\n versions: {\n id: `${scope}.versions`,\n title: 'Allestimento',\n defaultMessage: 'Inizia a digitare o seleziona un allestimento',\n },\n images: {\n id: `${scope}.images`,\n title: 'Imagini',\n defaultMessage: \"Gestisci le imagini dell'auto selezionata\",\n },\n car: {\n id: `${scope}.car`,\n title: 'Automobile',\n defaultMessage: \"L'automobile da te selezionata è: \",\n },\n newCar: {\n id: `${scope}.newCar`,\n title: 'Aggiungi allestimento non presente',\n },\n editCar: {\n id: `${scope}.editCar`,\n title: 'Modifica allestimento personalizzato',\n },\n showCar: {\n id: `${scope}.showCar`,\n title: 'Visualizza dettagli allestimento',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SelectSearch from 'react-select-search';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { selectBrand } from './actions';\nimport { FlexSection } from '../UIKit';\nimport { makeSelectSelectedBrand } from './selectors';\nimport './brand.scss';\n\nclass Brand extends React.Component {\n constructor(props) {\n super(props);\n }\n\n selectBrand = value => {\n this.props.brandSelected(value);\n };\n\n renderBrand(props, option, snapshot, className) {\n return (\n \n );\n }\n\n render() {\n const { title, placeholder, brands, selected } = this.props;\n return (\n
\n \n }\n />\n
\n );\n }\n}\n\nBrand.defaultProps = {\n placeholder: 'Seleziona',\n errors: {},\n};\nBrand.propTypes = {\n title: PropTypes.string,\n selected: PropTypes.string,\n placeholder: PropTypes.string,\n brands: PropTypes.any.isRequired,\n errors: PropTypes.object,\n brandSelected: PropTypes.func.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n brandSelected: brandSlug => dispatch(selectBrand(brandSlug)),\n };\n}\nconst mapStateToProps = createStructuredSelector({\n selected: makeSelectSelectedBrand(),\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Brand);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {createStructuredSelector} from 'reselect';\nimport SelectSearch from 'react-select-search';\nimport {makeSelectSelectedModel} from './selectors';\nimport {FlexSection} from '../UIKit';\nimport {selectModel} from './actions';\n\nclass Model extends React.Component {\n constructor(props) {\n super(props);\n }\n\n selectModel = (value, item) => {\n if (value && item) {\n this.props.modelSelected(value, item.name, item.endProductionYear);\n }\n };\n\n renderModel(props, option, snapshot, className) {\n return (\n \n );\n }\n\n render() {\n const {isLoading, title, placeholder, models, selected} = this.props;\n return (\n
\n \n }\n />\n
\n );\n }\n}\n\nModel.defaultProps = {\n models: [],\n placeholder: 'Seleziona',\n errors: {},\n isLoading: true,\n};\nModel.propTypes = {\n title: PropTypes.string,\n selected: PropTypes.string,\n placeholder: PropTypes.string,\n models: PropTypes.array,\n errors: PropTypes.object,\n modelSelected: PropTypes.func.isRequired,\n isLoading: PropTypes.bool,\n};\n\nconst mapStateToProps = createStructuredSelector({\n selected: makeSelectSelectedModel(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n modelSelected: (model, modelName, modelYear) =>\n dispatch(selectModel(model, modelName, modelYear)),\n };\n}\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Model);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport SelectSearch from 'react-select-search';\nimport { makeSelectSelectedVersion } from './selectors';\nimport { selectVersion, carLoaded } from './actions';\nimport { FlexSection } from '../UIKit';\n\nclass Version extends React.Component {\n constructor(props) {\n super(props);\n\n this.resetCar = this.resetCar.bind(this);\n this.selectVersion = this.selectVersion.bind(this);\n }\n\n selectVersion = value => {\n this.props.versionSelected(value);\n };\n\n resetCar = () => {\n this.selectVersion(null)\n this.props.resetCar();\n };\n\n renderVersion(props, option, snapshot, className) {\n return (\n \n );\n }\n\n renderSelectedVersion = (props, option, className) => {\n return (\n <>\n \n {option.displayValue &&\n \n }\n \n );\n }\n\n render() {\n const { isLoading, title, placeholder, versions, selected } = this.props;\n return (\n
\n \n \n \n }\n />\n
\n );\n }\n}\n\nVersion.defaultProps = {\n versions: [],\n placeholder: 'Seleziona',\n errors: {},\n isLoading: true,\n};\nVersion.propTypes = {\n title: PropTypes.string,\n selected: PropTypes.string,\n placeholder: PropTypes.string,\n versions: PropTypes.array,\n errors: PropTypes.object,\n versionSelected: PropTypes.func.isRequired,\n isLoading: PropTypes.bool,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n versionSelected: model => dispatch(selectVersion(model)),\n resetCar: () => dispatch(carLoaded({})),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n selected: makeSelectSelectedVersion()\n});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Version);\n","/*\n * CarCreatorConstants\n */\n\nexport const UPDATE_DATA = 'ideal/CarCreator/UPDATE_DATA';\nexport const SAVE_DATA = 'ideal/CarCreator/SAVE_DATA';\nexport const SAVE_SUCCESS_RESPONSE = 'ideal/CarCreator/SAVE_SUCCESS_RESPONSE';\nexport const SAVE_ERROR_RESPONSE = 'ideal/CarCreator/SAVE_ERROR_RESPONSE';\nexport const CLEAR_DATA = 'ideal/CarCreator/CLEAR_DATA';\n\nexport const CAR_CATEGORIES = [\n {\n description: 'City Car',\n value: 'city-car',\n },\n {\n description: 'Berlina',\n value: 'berlina',\n },\n {\n description: 'Sportiva/Coupe',\n value: 'sportiva-coupe',\n },\n {\n description: 'SUV/Crossover',\n value: 'suv-crossover',\n },\n {\n description: 'Monovolume',\n value: 'monovolume',\n },\n {\n description: 'Station Wagon',\n value: 'station-wagon',\n },\n {\n description: 'Veicoli Commerciali',\n value: 'veicoli-commerciali',\n },\n {\n description: 'Minicar',\n value: 'minicar',\n },\n {\n description: 'Autocarro',\n value: 'autocarro',\n },\n];\n\nexport const CAR_FUELS = [\n {\n description: 'Benzina',\n value: 'benzina',\n },\n {\n description: 'Diesel',\n value: 'diesel',\n },\n {\n description: 'GPL',\n value: 'gpl',\n },\n {\n description: 'Metano',\n value: 'metano',\n },\n {\n description: 'Elettrica',\n value: 'elettrica',\n },\n {\n description: 'full-hybrid-benzina',\n value: 'HEV-IB',\n },\n {\n description: 'full-hybrid-diesel',\n value: 'HEV-ID',\n },\n {\n description: 'full-hybrid-benzina',\n value: 'FHEV-IB',\n },\n {\n description: 'full-hybrid-diesel',\n value: 'FHEV-ID',\n },\n {\n description: 'mild-hybrid-benzina',\n value: 'MHEV-IB',\n },\n {\n description: 'mild-hybrid-diesel',\n value: 'MHEV-ID',\n },\n {\n description: 'plug-in-hybrid-benzina',\n value: 'PEV-IB',\n },\n {\n description: 'plug-in-hybrid-diesel',\n value: 'PHEV-ID',\n },\n];\n\nexport const CAR_SEGMENTS = [\n {\n description: 'A',\n value: 'A',\n },\n {\n description: 'B',\n value: 'B',\n },\n {\n description: 'C',\n value: 'C',\n },\n {\n description: 'D',\n value: 'D',\n },\n {\n description: 'E',\n value: 'E',\n },\n];\n\nexport const CAR_GEARS = [\n {\n description: 'Manuale',\n value: 'manuale',\n },\n {\n description: 'Automatico',\n value: 'automatico',\n },\n {\n description: 'Automatico CVT',\n value: 'automatico-cvt',\n },\n {\n description: 'Automatico sequenziale',\n value: 'automatico-sequenziale',\n },\n {\n description: 'Automatico doppia Frizione',\n value: 'automatico-doppia-frizione',\n },\n];\n","/*\n * CarCreator Messages\n *\n * This contains all the text for the Car Creator container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.CarCreator';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Caratteristiche Auto',\n },\n category: {\n id: `${scope}.category`,\n defaultMessage: 'Categoria',\n },\n fuel: {\n id: `${scope}.fuel`,\n defaultMessage: 'Allimentazione',\n },\n modello: {\n id: `${scope}.modello`,\n defaultMessage: 'Modello',\n },\n allestimento: {\n id: `${scope}.allestimento`,\n defaultMessage: 'Allestimento',\n },\n neo_patentati: {\n id: `${scope}.neo_patentati`,\n defaultMessage: 'Neopatentati',\n },\n segmento: {\n id: `${scope}.segmento`,\n defaultMessage: 'Segmento',\n },\n cilindrata: {\n id: `${scope}.cilindrata`,\n defaultMessage: 'Cilindrata',\n },\n cavalli_fiscali: {\n id: `${scope}.cavalli_fiscali`,\n defaultMessage: 'Cavalli',\n },\n descrizione_trazione: {\n id: `${scope}.descrizione_trazione`,\n defaultMessage: 'Trazione',\n },\n desc_motore: {\n id: `${scope}.desc_motore`,\n defaultMessage: 'Motore',\n },\n hp: {\n id: `${scope}.hp`,\n defaultMessage: 'HP',\n },\n kw: {\n id: `${scope}.kw`,\n defaultMessage: 'KW',\n },\n euro: {\n id: `${scope}.euro`,\n defaultMessage: 'Euro',\n },\n emissioni_co2: {\n id: `${scope}.emissioni_co2`,\n defaultMessage: 'Emissioni CO2',\n },\n consumo_medio: {\n id: `${scope}.consumo_medio`,\n defaultMessage: 'Consumo Medio',\n },\n descrizione_cambio: {\n id: `${scope}.descrizione_cambio`,\n defaultMessage: 'Tipo di Cambio',\n },\n lunghezza: {\n id: `${scope}.lunghezza`,\n defaultMessage: 'Lunghezza',\n },\n larghezza: {\n id: `${scope}.larghezza`,\n defaultMessage: 'Larghezza',\n },\n bagagliaio: {\n id: `${scope}.bagagliaio`,\n defaultMessage: 'Bagagliaio',\n },\n posti: {\n id: `${scope}.posti`,\n defaultMessage: 'Posti',\n },\n porte: {\n id: `${scope}.porte`,\n defaultMessage: 'Porte',\n },\n submit: {\n id: `${scope}.submit`,\n defaultMessage: 'Salva',\n },\n cancel: {\n id: `${scope}.cancel`,\n defaultMessage: 'Annulla',\n },\n close: {\n id: `${scope}.close`,\n defaultMessage: 'Chiudi',\n },\n});\n","import { fromJS } from 'immutable';\nimport {\n UPDATE_DATA,\n SAVE_DATA,\n SAVE_ERROR_RESPONSE,\n SAVE_SUCCESS_RESPONSE,\n} from './constants';\nexport const initialState = fromJS({\n car: {\n segmento: 'A',\n category: 'berlina',\n fuel: 'benzina',\n },\n error: null,\n response: null,\n loading: false,\n});\n\nfunction carCreatorReducer(state = initialState, action) {\n switch (action.type) {\n case UPDATE_DATA:\n return state.set('car', fromJS(action.car));\n case SAVE_DATA:\n return state.set('loading', true);\n case SAVE_SUCCESS_RESPONSE:\n return state.set('loading', false).set('success', action.response);\n case SAVE_ERROR_RESPONSE:\n return state.set('loading', false).set('error', action.response);\n default:\n return state;\n }\n}\n\nexport default carCreatorReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectCarCreator = state => state.get('carCreator', initialState);\n\nconst makeSelectCarCreator = () =>\n createSelector(selectCarCreator, carCreatorState =>\n carCreatorState.get('car').toJS(),\n );\nconst makeSelectCarResponse = () =>\n createSelector(selectCarCreator, carCreatorState =>\n carCreatorState.get('response'),\n );\n\nexport { selectCarCreator, makeSelectCarCreator, makeSelectCarResponse };\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { SAVE_DATA } from './constants';\n\nimport {\n makeSelectCarCreator,\n} from './selectors';\nimport { requestSuccess } from './actions';\nimport { carLoaded } from '../CarSelector/actions';\n\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\n\nfunction* storeCar() {\n const car = yield select(makeSelectCarCreator());\n const requestURL = car.id ? `${API_URL}car/${car.id}` : `${API_URL}car`;\n\n try {\n const parameters = {\n method: car.id ? 'PUT' : 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(car),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(requestSuccess(request.data));\n yield put(carLoaded(request.data));\n } catch (err) {\n // yield put(carError(err));\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(SAVE_DATA, storeCar);\n}\n\nexport default function* carsData() {\n yield all([actionWatcher()]);\n}\n","import { UPDATE_DATA, SAVE_DATA, SAVE_SUCCESS_RESPONSE } from './constants';\n\nexport function saveCar() {\n return {\n type: SAVE_DATA\n };\n}\n\n/**\n *\n * @param car\n * @returns {{car: *, type: *}}\n */\nexport function updateCar(car) {\n return {\n type: UPDATE_DATA,\n car,\n };\n}\n\nexport function requestSuccess(response) {\n return {\n type: SAVE_SUCCESS_RESPONSE,\n response,\n };\n}\n","import React from 'react';\nimport PropType from 'prop-types';\nimport {\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n Row,\n Col,\n} from 'reactstrap';\nimport { Form, Input, Select, Checkbox } from 'antd';\nimport { FormattedMessage } from 'react-intl';\nimport './styles.scss';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { CAR_CATEGORIES, CAR_FUELS, CAR_SEGMENTS, CAR_GEARS } from './constants';\nimport { FromSubmitButton, FromCancelButton, ItemButton } from '../UIKit';\nimport messages from './messages';\nimport reducer from './reducer';\nimport saga from './saga';\nimport { saveCar, updateCar } from './actions';\nimport { makeSelectCarResponse, makeSelectCarCreator } from './selectors';\nimport { makeSelectCar } from 'components/CarSelector/selectors';\n\nconst carDefaultValues = {\n segmento: 'A',\n category: 'berlina',\n fuel: 'benzina',\n};\n\nconst carFields = [\n {name: \"category\", type: \"select\", required: true, options: CAR_CATEGORIES},\n {name: \"fuel\", type: \"select\", required: true, options: CAR_FUELS},\n {name: \"segmento\", type: \"select\", required: true, options: CAR_SEGMENTS},\n {name: \"allestimento\", type: \"text\", required: true},\n {name: \"neo_patentati\", type: \"check\", required: false},\n {name: \"cilindrata\", type: \"text\", required: true},\n {name: \"cavalli_fiscali\", type: \"text\", required: true},\n {name: \"descrizione_trazione\", type: \"text\", required: true},\n {name: \"desc_motore\", type: \"text\", required: true},\n {name: \"hp\", type: \"text\", required: true},\n {name: \"consumo_medio\", type: \"text\", required: true},\n {name: \"kw\", type: \"text\", required: true},\n {name: \"euro\", type: \"text\", required: true},\n {name: \"emissioni_co2\", type: \"text\", required: true},\n {name: \"descrizione_cambio\", type: \"select\", required: true, options: CAR_GEARS},\n {name: \"larghezza\", type: \"text\", required: true},\n {name: \"lunghezza\", type: \"text\", required: true},\n {name: \"bagagliaio\", type: \"text\", required: true},\n {name: \"posti\", type: \"text\", required: true},\n {name: \"porte\", type: \"text\", required: true},\n]\n\nclass CarCreator extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n modal: false,\n errors: new Set(),\n };\n this.handleOnSubmit = this.handleOnSubmit.bind(this);\n this.handleOnCancel = this.handleOnCancel.bind(this);\n this.handleOnShow = this.handleOnShow.bind(this);\n this.handleOnInputChange = this.handleOnInputChange.bind(this);\n }\n\n componentWillUnmount() {\n // default values\n this.props.updateCar(carDefaultValues);\n }\n\n handleOnCancel() {\n this.setState({ modal: false });\n // default values\n this.props.updateCar(carDefaultValues);\n }\n\n handleOnShow() {\n this.setState({ modal: true });\n }\n\n handleOnSubmit() {\n const { existentCar, creatingCar, updateCar, storeCar, brand, modello } = this.props;\n const car = {...existentCar, ...creatingCar};\n car.brand = brand;\n car.modello = modello;\n updateCar(car);\n storeCar();\n this.setState({ modal: false });\n }\n\n handleOnInputChange(key, value) {\n let { errors } = this.state;\n const { existentCar, creatingCar, updateCar } = this.props;\n let car = {...existentCar, ...creatingCar};\n\n if (value === null || value === '' || value === undefined) {\n errors.add(key);\n } else {\n errors.delete(key);\n }\n car[key] = value;\n\n this.setState({ errors });\n\n updateCar(car);\n }\n\n get requiredFilled() {\n const { creatingCar, existentCar } = this.props;\n const car = {...existentCar, ...creatingCar};\n\n return carFields\n .filter(carField => carField.required)\n .every(carField => car[carField.name] && car[carField.name].trim() !== '');\n }\n\n get canSubmit() {\n const { errors } = this.state;\n return errors.size === 0 && this.requiredFilled;\n }\n\n inputHasError(key) {\n return this.state.errors.has(key);\n }\n\n render() {\n const { button, creatingCar, existentCar, isCustomCar, carId, modello } = this.props;\n const { modal } = this.state;\n const car = {...existentCar, ...creatingCar, modello};\n const canEdit = isCustomCar || !carId;\n\n let icon = 'os-icon-plus-circle';\n\n if (isCustomCar) {\n icon = 'os-icon-text-input';\n } else if (carId && !isCustomCar) {\n icon = 'os-icon-agenda-1';\n }\n\n return (\n
\n \n \n \n \n \n \n
\n \n \n \n \n {carFields.map(carField => (\n carField.type === \"check\" ?\n \n \n \n this.handleOnInputChange('neo_patentati', checked)\n }\n >\n Sì\n \n \n \n :\n \n \n this.handleOnInputChange(carField.name, value)\n }\n {...carField.options && {options:{...carField.options}}}\n />\n \n )\n )}\n \n
\n
\n \n {canEdit\n ?\n <>\n \n \n \n :\n \n }\n \n
\n
\n );\n }\n}\n\nconst InputItem = ({\n name,\n value,\n isValid,\n onChange,\n disabled,\n type = 'text',\n options = [],\n required = true,\n}) =>\n \n {type === 'select' ? (\n \n ) : (\n onChange(value)}\n autoComplete=\"off\"\n />\n )}\n \n\nCarCreator.propTypes = {\n brand: PropType.string.isRequired,\n modello: PropType.string.isRequired,\n storeCar: PropType.func.isRequired,\n button: PropType.string.isRequired,\n isCustomCar: PropType.bool.isRequired,\n carId: PropType.number,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n storeCar: () => dispatch(saveCar()),\n updateCar: car => dispatch(updateCar(car)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n response: makeSelectCarResponse(),\n creatingCar: makeSelectCarCreator(),\n existentCar: makeSelectCar(),\n});\n\nconst withReducer = injectReducer({ key: 'carCreator', reducer });\nconst withSaga = injectSaga({ key: 'carCreator', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(CarCreator);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport messages from './messages';\nimport { FlexSection } from '../UIKit';\nimport './car.scss';\nimport CarCreator from '../CarCreator';\n\nclass Car extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n const { title, selectedBrand, selectedModel, carName, car } = this.props;\n const isCustomCar = car && car.id && car.is_custom;\n let buttonText;\n\n if (car.id) {\n buttonText = isCustomCar ? messages.editCar.title : messages.showCar.title;\n } else {\n buttonText = carName && carName.length ? messages.showCar.title : messages.newCar.title;\n }\n\n return (\n
\n \n {carName}\n \n
\n }\n />\n
\n );\n }\n}\n\nCar.defaultProps = {\n errors: {},\n carName: '-',\n};\nCar.propTypes = {\n title: PropTypes.string.isRequired,\n selectedBrand: PropTypes.string.isRequired,\n selectedModel: PropTypes.string,\n carName: PropTypes.string,\n car: PropTypes.object,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {};\n}\nconst mapStateToProps = createStructuredSelector({});\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Car);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { withCarSelectorReducer, withCarSelectorSaga } from './withReducer';\n\nimport { getBrands } from './actions';\n\nimport {\n makeSelectIsLoading,\n makeSelectBrands,\n makeSelectModels,\n makeSelectVersions,\n makeSelectSelectedBrand,\n makeSelectSelectedModel,\n makeSelectSelectedModelName,\n makeSelectCar,\n} from './selectors';\n\nimport messages from './messages';\nimport {FlexSection} from '../UIKit';\nimport Brand from './brand';\nimport Model from './model';\nimport Version from './version';\nimport Car from './car';\n\nimport 'react-select-search/style.css';\nimport './styles.scss';\n\nclass CarSelector extends React.Component {\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n this.props.loadBrands();\n }\n\n render() {\n const {\n isLoading,\n brands,\n models,\n versions,\n selectedBrand,\n selectedModelName,\n selectedModel,\n car,\n } = this.props;\n const isBrandSelected =\n selectedBrand !== null &&\n selectedBrand !== undefined &&\n selectedBrand.length === 3;\n const isModelSelected =\n selectedModel !== null &&\n selectedModel !== undefined &&\n selectedModel.length > 0;\n\n const carName =\n car !== null &&\n car !== undefined &&\n car.hasOwnProperty('allestimento') &&\n car.hasOwnProperty('modello')\n ? `${car.brand.data.label} ${car.modello} ${car.allestimento}`\n : null;\n\n if (!Array.isArray(brands)){\n return null;\n }\n\n return (\n
\n \n {isBrandSelected && !car.id && (\n \n )}\n {isBrandSelected && car.id && (\n \n )}\n {isModelSelected && (!car.id || !car.is_custom) && (\n \n )}\n {isBrandSelected && (isModelSelected || car.id) && (\n \n )}\n
\n );\n }\n}\n\nCarSelector.defaultProps = {};\nCarSelector.propTypes = {\n loadBrands: PropTypes.func.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadBrands: () => dispatch(getBrands()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: makeSelectIsLoading(),\n brands: makeSelectBrands(),\n models: makeSelectModels(),\n versions: makeSelectVersions(),\n selectedBrand: makeSelectSelectedBrand(),\n selectedModel: makeSelectSelectedModel(),\n selectedModelName: makeSelectSelectedModelName(),\n car: makeSelectCar(),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withCarSelectorReducer,\n withCarSelectorSaga,\n withConnect,\n)(CarSelector);\n","import {\n UPLOAD_FAILURE,\n UPLOAD_SUCCESS,\n UPLOAD_PROGRESS,\n UPLOAD_REQUEST,\n DOWNLOAD_CAR_IMAGES_REQUEST,\n DOWNLOAD_CAR_IMAGES_SUCCESS,\n SET_MAIN,\n SET_MAIN_SUCCESS,\n DELETE,\n DELETE_ALL,\n DELETE_SUCCESS,\n DELETE_ALL_SUCCESS,\n} from './constants';\n\n/**\n *\n * @param files\n * @param car\n * @param offer\n * @returns {{files: *, car: *, offer: *, type: *}}\n */\nexport function uploadRequest(files, car, offer) {\n return {\n type: UPLOAD_REQUEST,\n files,\n car,\n offer,\n };\n}\n\n/**\n *\n * @param file\n * @param progress\n * @returns {{file: *, progress: *, type: *}}\n */\nexport const uploadProgress = (file, progress) => ({\n type: UPLOAD_PROGRESS,\n file,\n progress,\n});\n\n/**\n *\n * @param request\n * @returns {{request: *, type: *}}\n */\nexport const uploadSuccess = response => ({\n type: UPLOAD_SUCCESS,\n response,\n});\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport const uploadError = error => ({\n type: UPLOAD_FAILURE,\n error,\n});\n\nexport const downloadImages = (carId, carBrand, carModel, imagesType) => ({\n type: DOWNLOAD_CAR_IMAGES_REQUEST,\n carId,\n carBrand,\n carModel,\n imagesType,\n});\n\nexport const downloadImagesSuccess = () => ({\n type: DOWNLOAD_CAR_IMAGES_SUCCESS\n});\n\nexport const setMain = imageId => ({\n type: SET_MAIN,\n imageId,\n});\n\nexport const setMainSuccess = () => ({\n type: SET_MAIN_SUCCESS,\n});\n\nexport const deleteImage = imageId => ({\n type: DELETE,\n imageId,\n});\n\nexport const deleteAll = carId => ({\n type: DELETE_ALL,\n carId\n});\n\nexport const deleteSuccess = imageId => ({\n type: DELETE_SUCCESS,\n imageId\n});\n\nexport const deleteAllSuccess = imageIds => ({\n type: DELETE_ALL_SUCCESS,\n imageIds\n});\n","import {\n put,\n all,\n takeEvery,\n takeLatest,\n} from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { uploadSuccess, uploadError, setMainSuccess, deleteSuccess, deleteAllSuccess, downloadImagesSuccess } from './actions';\nimport { carImagesNew } from '../CarSelector/actions';\nimport { UPLOAD_REQUEST, DOWNLOAD_CAR_IMAGES_REQUEST, SET_MAIN, DELETE, DELETE_ALL } from './constants';\nimport { getRequestHeadersAsLogged, getPlainRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* upload(action) {\n const files = action.files;\n const requestURL = `${API_URL}car/images`;\n\n const formData = new FormData();\n formData.append('car', action.car);\n formData.append('offer', action.offer);\n\n for (let idx = 0; idx < files.length; idx++) {\n formData.append('immagini[]', files[idx]);\n }\n\n try {\n const parameters = {\n method: 'POST',\n headers: getPlainRequestHeadersAsLogged(),\n body: formData,\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(uploadSuccess());\n yield put(carImagesNew(request.data));\n } catch (e) {\n yield put(uploadError());\n console.log('error', e);\n }\n}\n\nfunction* downloadImages(action) {\n const requestURL = `${process.env.API_URL}car/images/${action.carId}/download/${action.imagesType || 'default'}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n yield fetch(requestURL, parameters)\n .then(response => response.blob())\n .then(blob => download(blob, `${action.carBrand} ${action.carModel}.zip`));\n yield put(downloadImagesSuccess())\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* setMain(action) {\n const requestURL = `${process.env.API_URL}car/images/${action.imageId}/type`;\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify({newType: 'MAIN'})\n };\n\n yield fetch(requestURL, parameters)\n .then(response => responseHandler(response));\n\n yield put(setMainSuccess())\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* deleteImage(action) {\n const requestURL = `${process.env.API_URL}car/images/${action.imageId}`;\n\n try {\n const parameters = {\n method: 'DELETE',\n headers: getRequestHeadersAsLogged(),\n };\n\n yield fetch(requestURL, parameters)\n .then(response => responseHandler(response));\n\n yield put(deleteSuccess(action.imageId))\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* deleteAllImage(action) {\n const requestURL = `${process.env.API_URL}car/${action.carId}/images`;\n\n try {\n const parameters = {\n method: 'DELETE',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters)\n .then(response => responseHandler(response));\n\n yield put(deleteAllSuccess(response.data))\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* actionWatcher() {\n yield takeEvery(UPLOAD_REQUEST, upload);\n yield takeLatest(DOWNLOAD_CAR_IMAGES_REQUEST, downloadImages);\n yield takeLatest(SET_MAIN, setMain);\n yield takeLatest(DELETE, deleteImage);\n yield takeLatest(DELETE_ALL, deleteAllImage);\n}\n\nexport default function* carImages() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport classnames from 'classnames';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport injectSaga from 'utils/injectSaga';\nimport Lightbox from 'react-image-lightbox';\nimport { Button, Radio, Icon } from 'antd';\nimport saga from './saga';\nimport { makeSelectOfferId } from 'containers/CatalogEdit/selectors';\nimport { featureAllowed } from 'containers/App/selectors';\nimport { makeSelectImages, makeSelectCar, makeSelectIsLoading, makeSelectDownloadIsLoading } from '../CarSelector/selectors';\nimport { withCarSelectorReducer } from '../CarSelector/withReducer';\nimport { uploadRequest, downloadImages, setMain, deleteImage, deleteAll } from './actions';\nimport { default as Loader } from 'components/Loader/';\nimport 'react-image-lightbox/style.css';\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nclass CarImages extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n photoIndex: 0,\n isOpen: false,\n whichImagesSelected: null,\n customMainSelected: null,\n };\n\n this.inputOpenFileRef = React.createRef();\n this.handleOnAddClick = this.handleOnAddClick.bind(this);\n this.onWhichImagesChange = this.onWhichImagesChange.bind(this);\n this.onCustomMainChange = this.onCustomMainChange.bind(this);\n this.onDeleteClick = this.onDeleteClick.bind(this);\n // this.handleOnDownloadClick = this.handleOnDownloadClick.bind(this);\n }\n\n componentDidUpdate = prevProps => {\n if (prevProps !== this.props) {\n let { photos } = this.props\n photos = photos.toJS ? photos.toJS() : photos;\n\n if (photos && photos.custom && photos.custom.length) {\n const mainImage = photos.custom.find(img => img.type === 'MAIN') || {};\n\n this.setState({\n whichImagesSelected: 'custom',\n customMainSelected: this.state.customMainSelected || mainImage.id || null\n })\n } else {\n this.setState({\n whichImagesSelected: 'default',\n })\n }\n }\n }\n\n handleOnMoreImageClick = (photos, index) => {\n this.setState(prevState => ({\n isOpen: !prevState.isOpen,\n photoIndex:\n photos !== undefined ? index : prevState.photoIndex,\n }));\n };\n\n handleOnAddClick() {\n this.inputOpenFileRef.current.click();\n }\n\n onChangeFile(e) {\n const files = e.target.files || e.dataTransfer.files;\n this.props.upload(files, this.props.car.id, this.props.offerId);\n }\n\n onWhichImagesChange = ({target:{value}}) => {\n if (value === 'default' && !confirm('Attenzione: se confermi questa scelta le tue immagini verranno cancellate.')) {\n return false;\n } else if (value === 'custom' && !confirm('Confermi di essere il titolare dei diritti dei contenuti caricati, o di avere il permesso da parte del legittimo titolare.')) {\n return false;\n }\n\n if (value === 'default') {\n this.props.deleteAll(this.props.car.id)\n }\n\n this.setState({whichImagesSelected: value})\n }\n\n onCustomMainChange = ({target:{value}}) => {\n this.props.setMain(value)\n this.setState({customMainSelected: value})\n }\n\n onDeleteClick = imgId => {\n if (confirm('Sicuro di voler cancellare questa immagine?')) {\n this.props.deleteImage(imgId);\n }\n }\n\n handleOnDownloadClick = imagesType => {\n this.props.download(this.props.car.id, this.props.car.brand.data.value, this.props.car.modello, imagesType);\n }\n\n render() {\n const { photoIndex, isOpen, whichImagesSelected, customMainSelected } = this.state;\n const { photos, loading, downloadLoading, car, featureAllowed } = this.props;\n\n return (\n
\n \n {featureAllowed('car-custom-images') &&\n <>\n
\n \n Voglio caricare le mie immagini\n \n this.handleOnDownloadClick('custom')}\n disabled={downloadLoading || !photos.custom || !photos.custom.length}\n >\n Scarica immagini\n \n
\n
\n \n {isOpen && whichImagesSelected === 'custom' && photos.custom && (\n \n this.setState({\n photoIndex:\n (photoIndex + photos.custom.length - 1) % photos.custom.length,\n })\n }\n onMoveNextRequest={() =>\n this.setState({\n photoIndex: (photoIndex + 1) % photos.custom.length,\n })\n }\n />\n )}\n \n \n \n
\n \n
\n
\n Aggiungi\n
Immagine\n
\n \n \n
\n \n {photos.custom && photos.custom.map((item, key) => (\n \n
\n this.handleOnMoreImageClick(photos.custom, key)}\n title={item.description}\n alt={'Immagine '+item.description}\n />\n \n \n \n Copertina\n \n \n \n \n
\n \n ))}\n \n
\n \n }\n {featureAllowed('car-custom-images') &&\n
\n \n Voglio usare le immagini in archivio\n \n this.handleOnDownloadClick('default')}\n disabled={downloadLoading}\n >\n Scarica immagini\n \n
\n }\n
\n \n {isOpen && whichImagesSelected === 'default' && photos.default && (\n \n this.setState({\n photoIndex:\n (photoIndex + photos.default.length - 1) % photos.default.length,\n })\n }\n onMoveNextRequest={() =>\n this.setState({\n photoIndex: (photoIndex + 1) % photos.default.length,\n })\n }\n />\n )}\n {photos.default && photos.default.map((item, key) => (\n \n
\n this.handleOnMoreImageClick(photos.default, key)}\n title={item.description}\n alt={'Immagine '+item.description}\n />\n
\n \n ))}\n
\n
\n
\n );\n }\n}\n\nCarImages.propTypes = {\n upload: PropTypes.func.isRequired,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n upload: (files, car, offer) => dispatch(uploadRequest(files, car, offer)),\n download: (carId, carBrand, carModel, imagesType) => dispatch(downloadImages(carId, carBrand, carModel, imagesType)),\n setMain: imageId => dispatch(setMain(imageId)),\n deleteImage: imageId => dispatch(deleteImage(imageId)),\n deleteAll: carId => dispatch(deleteAll(carId)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n photos: makeSelectImages(),\n car: makeSelectCar(),\n offerId: makeSelectOfferId(),\n loading: makeSelectIsLoading(),\n downloadLoading: makeSelectDownloadIsLoading(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nconst withSaga = injectSaga({ key: 'carImages', saga });\n\nexport default compose(\n withCarSelectorReducer,\n withSaga,\n withConnect,\n)(CarImages);\n","/*\n * OfferValue Messages\n *\n * This contains all the text for the Offer Value component.\n */\nimport { defineMessages } from 'react-intl';\nimport configs from \"configs\"\nimport {\n DEPOSIT_RANGE,\n DISTANCE_YEARS_RANGE,\n DURATION_RANGE,\n MONTHLY_RATE_RANGE,\n} from 'containers/App/constants';\n\nexport const scope = 'app.components.OfferValue';\n\nexport default defineMessages({\n brokers: {\n id: `${scope}.brokers`,\n title: 'Provider',\n defaultMessage: \"Seleziona il provider\",\n errorMessage: `Provider selezionato non valido`,\n name: 'provider',\n },\n products: {\n id: `${scope}.products`,\n title: 'Prodotto',\n defaultMessage: \"Seleziona il prodotto\",\n errorMessage: `Prodotto selezionato non valido`,\n name: 'product',\n },\n price: {\n id: `${scope}.price`,\n title: 'Canone Mensile',\n defaultMessage: configs.messages[scope].price,\n errorMessage: `Inserisci un valore compreso tra ${MONTHLY_RATE_RANGE.min} e ${MONTHLY_RATE_RANGE.max}`,\n name: 'price',\n },\n deposit: {\n id: `${scope}.deposit`,\n title: 'Anticipo',\n defaultMessage: configs.messages[scope].deposit,\n errorMessage: `Inserisci un valore compreso tra ${DEPOSIT_RANGE.min} e ${DEPOSIT_RANGE.max}`,\n name: 'deposit',\n },\n duration: {\n id: `${scope}.duration`,\n title: 'Durata',\n defaultMessage: 'Seleziona la durata del contratto di Noleggio a Lungo Termine',\n errorMessage: `Inserisci un valore compreso tra ${DURATION_RANGE.min} e ${DURATION_RANGE.max}`,\n name: 'duration',\n unit: 'Mesi',\n },\n distance: {\n id: `${scope}.distance`,\n title: 'Distanza',\n defaultMessage: 'Seleziona il numero di chilometri su base annua',\n errorMessage: `Inserisci un valore compreso tra ${DISTANCE_YEARS_RANGE.min} e ${DISTANCE_YEARS_RANGE.max}`,\n name: 'distance',\n unit: 'Km/Anno',\n },\n});\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { LOAD_DELIVERY_TIMES, LOAD_BROKERS, SET_OFFER_BROKER, LOAD_PRODUCTS } from './constants'\nimport { setDeliveryTimes, setBrokers, setProducts } from './actions';\nimport { makeSelectBroker } from './selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchDeliveryTimes() {\n const requestURL = `${API_URL}catalog/delivery-times`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(setDeliveryTimes(response));\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* fetchBrokers() {\n const requestURL = `${API_URL}catalog/brokers`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(setBrokers(response));\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* fetchProducts() {\n const selectedBroker = yield select(makeSelectBroker());\n\n if (selectedBroker) {\n const requestURL = `${API_URL}catalog/products?provider=${selectedBroker}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(setProducts(response));\n } catch (err) {\n console.log('request error', err);\n }\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(LOAD_DELIVERY_TIMES, fetchDeliveryTimes);\n yield takeLatest(LOAD_BROKERS, fetchBrokers);\n yield takeLatest([SET_OFFER_BROKER, LOAD_PRODUCTS], fetchProducts);\n}\n\nexport default function* offerValueData() {\n yield all([actionWatcher()]);\n}\n","/**\n * Validate input number\n * @param value\n * @param min\n * @param max\n * @returns {boolean}\n */\nexport function isInputNumberValid(value, min, max) {\n return !((value - min) * (value - max) <= 0);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport messages from './messages';\nimport {\n DISTANCE_YEARS_RANGE,\n DURATION_RANGE,\n MONTHLY_RATE_RANGE,\n DEPOSIT_RANGE,\n} from 'containers/App/constants';\n\nimport { createStructuredSelector } from 'reselect';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport {\n loadDeliveryTimes,\n loadBrokers,\n loadProducts,\n setMonthlyRate,\n setDeposit,\n setDistance,\n setNotes,\n setPrivateNotes,\n setDuration,\n setRightLabel,\n setFastDelivery,\n setDeliveryTime,\n setBroker,\n setProduct,\n setReference,\n hasError,\n} from './actions';\n\nimport {\n makeSelectDeposit,\n makeSelectDistance,\n makeSelectMonthlyRate,\n makeSelectDuration,\n makeSelectRightLabel,\n makeSelectFastDelivery,\n makeSelectDeliveryTime,\n makeSelectDeliveryTimes,\n makeSelectBrokers,\n makeSelectBroker,\n makeSelectProducts,\n makeSelectProduct,\n makeSelectNotes,\n makeSelectPrivateNotes,\n makeSelectReference,\n} from './selectors';\n\nimport { Form, Input, Select, Checkbox } from 'antd';\nimport './styles.scss';\n\nimport { isInputNumberValid } from 'containers/App/utils/validator';\n\nimport configs from 'configs';\n\nclass OfferValue extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n monthlyRateError: false,\n depositError: false,\n durationError: false,\n distanceError: false,\n brokerError: false,\n duration: DURATION_RANGE.min * 3,\n distance: (DISTANCE_YEARS_RANGE.min / 1000) * 15,\n };\n\n this.handleOnMonthlyRateChange = this.handleOnMonthlyRateChange.bind(this);\n this.handleOnDepositChange = this.handleOnDepositChange.bind(this);\n this.handleOnDurationChange = this.handleOnDurationChange.bind(this);\n this.handleOnDistanceChange = this.handleOnDistanceChange.bind(this);\n this.handleOnRightLabelChange = this.handleOnRightLabelChange.bind(this);\n this.handleOnDeliveryTimeChange = this.handleOnDeliveryTimeChange.bind(this);\n this.handleOnBrokerChange = this.handleOnBrokerChange.bind(this);\n this.handleOnProductChange = this.handleOnProductChange.bind(this);\n this.handleOnFastDeliveryChange = this.handleOnFastDeliveryChange.bind(this);\n this.handleOnNotesChange = this.handleOnNotesChange.bind(this);\n this.handleOnPrivateNotesChange = this.handleOnPrivateNotesChange.bind(this);\n this.handleOnReferenceChange = this.handleOnReferenceChange.bind(this);\n }\n\n componentDidMount() {\n this.props.loadDeliveryTimes();\n this.props.loadBrokers();\n this.props.loadProducts();\n }\n\n handleOnMonthlyRateChange({target: {value}}) {\n const monthlyRateError = isInputNumberValid(\n value,\n MONTHLY_RATE_RANGE.min,\n MONTHLY_RATE_RANGE.max,\n );\n this.setState({ monthlyRateError }, () => {\n this.props.setMonthlyRate(parseInt(value));\n this.validateInputs();\n });\n }\n\n handleOnDepositChange({target: {value}}) {\n const depositError = isInputNumberValid(\n value,\n DEPOSIT_RANGE.min,\n DEPOSIT_RANGE.max,\n );\n this.setState({ depositError }, () => {\n this.props.setDeposit(parseInt(value));\n this.validateInputs();\n });\n }\n\n handleOnDurationChange({target: {value}}) {\n const durationError = isInputNumberValid(\n value,\n DURATION_RANGE.min,\n DURATION_RANGE.max,\n );\n this.setState({ durationError }, () => {\n this.props.setDuration(parseInt(value));\n this.validateInputs();\n });\n }\n\n handleOnDistanceChange({target: {value}}) {\n this.props.setDistance(parseInt(value));\n const distanceError = isInputNumberValid(\n value,\n DISTANCE_YEARS_RANGE.min,\n DISTANCE_YEARS_RANGE.max,\n );\n this.setState({ distanceError }, () => {\n this.props.setDistance(parseInt(value));\n this.validateInputs();\n });\n }\n\n handleOnNotesChange({target: {value}}) {\n this.props.setNotes(value);\n }\n\n handleOnPrivateNotesChange({target: {value}}) {\n this.props.setPrivateNotes(value);\n }\n\n handleOnRightLabelChange(value) {\n this.props.setRightLabel(value, configs.tags[value]);\n }\n\n handleOnDeliveryTimeChange(value) {\n this.props.setDeliveryTime(value);\n }\n\n handleOnBrokerChange(value) {\n this.props.setBroker(value);\n }\n\n handleOnProductChange(value) {\n this.props.setProduct(value);\n }\n\n handleOnFastDeliveryChange({target: {checked}}) {\n this.props.setFastDelivery(checked);\n }\n\n handleOnReferenceChange({target: {value}}) {\n this.props.setReference(value);\n }\n\n validateInputs() {\n if (\n !this.state.monthlyRateError &&\n !this.state.depositError &&\n !this.state.durationError &&\n !this.state.distanceError\n ) {\n this.props.hasError(false);\n } else {\n this.props.hasError(true);\n }\n }\n\n render() {\n const {\n monthlyRate,\n distance,\n duration,\n deposit,\n right_label,\n fastDelivery,\n deliveryTime,\n deliveryTimes,\n brokers,\n products,\n broker,\n product,\n referenceCode,\n notes,\n private_notes,\n } = this.props;\n\n const tags = configs.tags\n ? Object.entries(configs.tags).map(([key, label]) => ({\n value: key,\n label,\n }))\n : [];\n\n const rightLabel = tags.some(tag => tag.value === right_label.key) ? right_label : {}\n\n return (\n \n \n \n {\n Object.keys(brokers).map(brokerCode => {brokers[brokerCode]})\n }\n \n \n\n {products &&\n \n \n {\n Object.keys(products).map(productId => {products[productId]})\n }\n \n \n }\n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n

\n\n \n \n Seleziona i tempi di consegna\n {deliveryTimes.hasOwnProperty('size') ? null :\n Object.values(deliveryTimes).map(monthYear => {monthYear})\n }\n \n \n\n \n \n \n\n \n \n Seleziona tipologia cliente\n {tags.map(tag => {tag.label})}\n \n \n\n \n \n \n\n \n \n \n \n\n \n \n \n \n \n );\n }\n}\n\nOfferValue.defaultProps = {};\nOfferValue.propTypes = {\n setMonthlyRate: PropTypes.func.isRequired,\n hasError: PropTypes.func.isRequired,\n setDeposit: PropTypes.func.isRequired,\n setDuration: PropTypes.func.isRequired,\n setDistance: PropTypes.func.isRequired,\n setReference: PropTypes.func.isRequired,\n setNotes: PropTypes.func.isRequired,\n setPrivateNotes: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n monthlyRate: makeSelectMonthlyRate(),\n distance: makeSelectDistance(),\n duration: makeSelectDuration(),\n deposit: makeSelectDeposit(),\n right_label: makeSelectRightLabel(),\n fastDelivery: makeSelectFastDelivery(),\n deliveryTime: makeSelectDeliveryTime(),\n deliveryTimes: makeSelectDeliveryTimes(),\n broker: makeSelectBroker(),\n brokers: makeSelectBrokers(),\n products: makeSelectProducts(),\n product: makeSelectProduct(),\n referenceCode: makeSelectReference(),\n notes: makeSelectNotes(),\n private_notes: makeSelectPrivateNotes(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadDeliveryTimes: () => dispatch(loadDeliveryTimes()),\n loadBrokers: () => dispatch(loadBrokers()),\n loadProducts: () => dispatch(loadProducts()),\n setMonthlyRate: value => dispatch(setMonthlyRate(value)),\n setDeposit: value => dispatch(setDeposit(value)),\n setDuration: value => dispatch(setDuration(value)),\n setDistance: value => dispatch(setDistance(value)),\n setNotes: value => dispatch(setNotes(value)),\n setPrivateNotes: value => dispatch(setPrivateNotes(value)),\n setRightLabel: (key, value) => dispatch(setRightLabel(key, value)),\n setDeliveryTime: value => dispatch(setDeliveryTime(value)),\n setBroker: value => dispatch(setBroker(value)),\n setProduct: value => dispatch(setProduct(value)),\n setFastDelivery: value => dispatch(setFastDelivery(value)),\n setReference: value => dispatch(setReference(value)),\n hasError: value => dispatch(hasError(value)),\n };\n}\n\nconst withReducer = injectReducer({ key: 'offerValue', reducer });\nconst withSaga = injectSaga({ key: 'offerValue', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\nexport default compose(\n withSaga,\n withReducer,\n withConnect,\n)(OfferValue);\n","/*\n * OfferServices Messages\n *\n * This contains all the text for the Offer Services component.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.OfferServices';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: \"Servizi disponibili\",\n },\n\n\n});\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { GET_SERVICES } from './constants';\nimport { servicesLoaded, servicesError, setProductServices } from './actions';\nimport { SET_OFFER_PRODUCT } from '../OfferValue/constants'\nimport { makeSelectProduct, makeSelectBroker } from '../OfferValue/selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchServices() {\n const requestURL = `${API_URL}services`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(servicesLoaded(request.data));\n } catch (err) {\n yield put(servicesError(err));\n console.log('request error', err);\n }\n}\n\nfunction* fetchProductServices() {\n const selectedProduct = yield select(makeSelectProduct());\n const selectedBroker = yield select(makeSelectBroker());\n\n if (selectedProduct) {\n const requestURL = `${API_URL}services/${selectedProduct}/${selectedBroker}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response && response.data) {\n yield put(setProductServices(response.data));\n }\n } catch (err) {\n console.log('request error', err);\n }\n }\n}\n\n\nfunction* actionWatcher() {\n yield takeLatest(GET_SERVICES, fetchServices);\n yield takeLatest(SET_OFFER_PRODUCT, fetchProductServices);\n}\n\nexport default function* servicesData() {\n yield all([actionWatcher()]);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { Col, Row } from 'reactstrap';\nimport { Input, Tooltip, Icon } from 'antd';\nimport messages from './messages';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { getServices, servicesSelected } from './actions';\nimport { makeSelectServices, makeSelectSelectedServices,\n makeSelectProductServices } from './selectors';\n\nimport { ItemBox, FlexSection } from '../UIKit';\n\nimport './styles.scss';\n\nclass OfferServices extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n selected: [],\n };\n }\n\n componentDidMount() {\n this.props.loadServices();\n }\n\n handelOnClick(value) {\n let { selected } = this.state;\n const { services } = this.props;\n\n if (selected.some(item => item.id === value)) {\n selected = selected.filter(item => item.id !== value);\n } else {\n selected.push(services.find(service => service.id === value));\n }\n\n this.setState({ selected });\n this.props.selectServices(selected);\n }\n\n handelOnPriceChange(serviceId, value) {\n const { selected } = this.state;\n const serviceIdx = selected.findIndex(selectedService => selectedService.id === serviceId);\n\n selected[serviceIdx].price = value;\n\n this.setState({ selected });\n this.props.selectServices([...selected]);\n }\n\n componentDidUpdate(prevProps) {\n const { selected, productServices } = this.props;\n\n if (prevProps.selected !== selected || prevProps.productServices !== productServices) {\n let selectedSet = selected;\n\n if (selectedSet.length === 0) {\n selectedSet = productServices;\n }\n\n this.setState({ selected: selectedSet });\n this.props.selectServices(selectedSet);\n }\n }\n\n render() {\n const { services } = this.props;\n const { selected } = this.state;\n const servicesPrices = selected.map(service => ({id: service.id, price: service.price}))\n const servicesFranchises = selected.map(service => ({id: service.id, franchise: service.franchise}))\n\n if (!Array.isArray(services)) {\n return null;\n }\n\n return (\n
\n \n \n {services.filter(service => !service.has_price_map).map((item, key) => {\n const servicePrice = (servicesPrices.find(servicesPrice => servicesPrice.id === item.id) || item).price;\n const servicesFranchise = (servicesFranchises.find(servicesFranchise => servicesFranchise.id === item.id) || item).franchise;\n const serviceTitle = `${item.name} ${servicePrice ? `${servicePrice}€` : ''}`;\n let serviceDescription = item.description;\n\n if (item.min_quantity !== item.max_quantity) {\n serviceDescription += ` (quantità selezionabile da ${item.min_quantity} a ${item.max_quantity})`;\n }\n\n return \n selectedItem.id === item.id)}\n onClick={() => this.handelOnClick(item.id)}\n children={\n !item.included ?\n this.handelOnPriceChange(item.id, value)}\n onClick={event => event.stopPropagation()}\n disabled={!selected.some(selectedItem => selectedItem.id === item.id)}\n />\n :\n \n {servicesFranchise && `${servicesFranchise}`}\n \n }\n />\n \n })}\n \n
\n }\n />\n
\n );\n }\n}\n\nOfferServices.defaultProps = {};\nOfferServices.propTypes = {\n services: PropTypes.any.isRequired,\n loadServices: PropTypes.func.isRequired,\n selectServices: PropTypes.func.isRequired,\n selected: PropTypes.any,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadServices: () => dispatch(getServices()),\n selectServices: services => dispatch(servicesSelected(services)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n services: makeSelectServices(),\n selected: makeSelectSelectedServices(),\n productServices: makeSelectProductServices(),\n});\n\nconst withReducer = injectReducer({ key: 'services', reducer });\nconst withSaga = injectSaga({ key: 'services', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(OfferServices);\n","import { put, takeLatest, all, select, fork } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\nimport { STORE_CHILD_OFFER, DELETE_CHILD_OFFER, UPDATE_CHILD_OFFER } from './constants'\nimport { makeSelectIsLoading } from './selectors'\nimport { makeSelectOfferCode } from 'containers/CatalogEdit/selectors'\nimport {\n addChildOffer,\n removeChildOffer,\n setLoading,\n unsetEditMode,\n setErrorMsg,\n replaceChildOffer\n} from './actions'\n\nfunction* storeChildToOffer({offer}) {\n const isLoading = yield select(makeSelectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const parentCode = yield select(makeSelectOfferCode());\n\n const requestURL = `${API_URL}offers/${parentCode}/child`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify({ ...offer }),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.data.child) {\n const {\n deposit,\n duration,\n distance,\n monthly_rate,\n web_monthly_rate,\n id: ref\n } = response.data.child\n\n yield put(addChildOffer({\n deposit,\n duration,\n distance,\n monthly_rate,\n web_monthly_rate,\n ref\n }));\n } else {\n yield put(setErrorMsg(response.data.errors));\n }\n } catch (e) {\n console.log('error', e);\n }\n }\n}\n\nfunction* updateChildOffer({id, data}) {\n const isLoading = yield select(makeSelectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const parentCode = yield select(makeSelectOfferCode());\n\n const requestURL = `${API_URL}offers/${parentCode}/child/${id}`;\n\n const body = JSON.stringify({\n deposit: data.newDeposit,\n duration: data.newDuration,\n distance: data.newDistance,\n monthly_rate: data.newMonthlyRate,\n })\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body,\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(replaceChildOffer(response.data));\n yield put(unsetEditMode());\n\n } catch (e) {\n console.log('error', e);\n }\n }\n}\n\nfunction* deleteChildToOffer({id}) {\n const isLoading = yield select(makeSelectIsLoading());\n\n if (!isLoading) {\n yield put(setLoading(true));\n\n const parentCode = yield select(makeSelectOfferCode());\n\n const requestURL = `${API_URL}offers/${parentCode}/child/${id}`;\n\n try {\n const parameters = {\n method: 'DELETE',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(removeChildOffer(id));\n } catch (e) {\n console.log('error', e);\n }\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(STORE_CHILD_OFFER, storeChildToOffer);\n yield takeLatest(DELETE_CHILD_OFFER, deleteChildToOffer);\n yield fork(takeLatest, UPDATE_CHILD_OFFER, updateChildOffer);\n}\n\nexport default function* catalogEditData() {\n yield all([actionWatcher()]);\n}\n","import injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nconst withOfferChildsReducer = injectReducer({\n key: 'offerChilds',\n reducer,\n});\nconst withOfferChildsSaga = injectSaga({ key: 'offerChilds', saga });\n\nexport { withOfferChildsReducer, withOfferChildsSaga };\n","/*\n * Offer Childs Messages\n *\n * This contains all the text for the OfferChilds component.\n */\nimport { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.components.OfferChilds';\n\nexport default defineMessages({\n note: {\n id: `${scope}.note`,\n defaultMessage:\n 'Per la creazione delle Variazioni è neccessario inserire 2 Anticipi, 2 Durate e 3 Km/Anno.',\n title: 'Note',\n },\n\n childs: {\n id: `${scope}.childs`,\n defaultMessage: 'Inserisci il prezzo di ogni variazione',\n title: 'Prezzi',\n },\n\n childsDisabled: {\n id: `${scope}.childsDisabled`,\n defaultMessage:\n \"Prima di procedere con l'aggiunta delle variazioni assicurati di aver compilato tutti i sovrastanti\",\n },\n\n durations: {\n id: `${scope}.durations`,\n defaultMessage: 'Durata',\n },\n\n deposits: {\n id: `${scope}.deposits`,\n defaultMessage: 'Anticipo',\n },\n\n distances: {\n id: `${scope}.distances`,\n title: 'Distanze',\n defaultMessage: 'Seleziona il numero di chilometri su base annua',\n unit: 'Km',\n unitDescription: 'Km/Anno',\n },\n\n distance: {\n id: `${scope}.distance`,\n title: 'Distanza',\n defaultMessage: 'Seleziona il numero di chilometri su base annua',\n unit: 'Km',\n unitDescription: 'Km/Anno',\n },\n\n deposit: {\n id: `${scope}.deposit`,\n title: 'Anticipo',\n defaultMessage: configs.messages[scope].deposit,\n name: 'deposit',\n },\n\n price: {\n id: `${scope}.price`,\n title: 'Canone Mensile',\n defaultMessage: configs.messages[scope].price,\n name: 'price',\n },\n\n duration: {\n id: `${scope}.duration`,\n title: 'Durata',\n defaultMessage: 'Seleziona una seconda durata',\n unit: 'Mesi',\n unitDescription: 'Mesi',\n },\n\n actions: {\n id: `${scope}.actions`,\n defaultMessage: '',\n title: 'Azioni',\n add: 'Aggiungi variazione',\n remove: 'Elimina variazione'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { withOfferChildsReducer, withOfferChildsSaga } from './withReducer';\n\nimport { Button, Input } from 'antd';\nimport {\n storeChildOffer,\n deleteChildOffer,\n updateChildOffer,\n setEditMode,\n unsetEditMode,\n resetErrors\n} from './actions';\nimport { makeSelectIsLoading, makeSelectChildEditing } from './selectors';\n\nimport './item.scss';\n\nclass ChildItem extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n editMode: this.props.editMode === this.props.id,\n canEdit: this.props.editMode === false,\n newDeposit: this.props.deposit,\n newDistance: this.props.distance,\n newDuration: this.props.duration,\n newMonthlyRate: this.props.monthly_rate,\n };\n\n this.handleOnDepositChange = this.handleOnDepositChange.bind(this);\n this.handleOnDurationChange = this.handleOnDurationChange.bind(this);\n this.handleOnDistanceChange = this.handleOnDistanceChange.bind(this);\n this.handleOnPriceChange = this.handleOnPriceChange.bind(this);\n this.handleOnEditToggle = this.handleOnEditToggle.bind(this);\n this.handleOnUpdate = this.handleOnUpdate.bind(this);\n this.handleOnDelete = this.handleOnDelete.bind(this);\n this.handleOnAddChild = this.handleOnAddChild.bind(this);\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.editMode !== this.props.editMode) {\n this.setState({\n editMode: this.props.editMode === this.props.id,\n canEdit: this.props.editMode === false,\n });\n }\n }\n\n handleOnAddChild() {\n const { newDeposit, newDistance, newDuration, newMonthlyRate } = this.state;\n\n this.props.storeChildOffer({\n deposit: newDeposit,\n distance: newDistance,\n duration: newDuration,\n monthlyRate: newMonthlyRate,\n });\n\n this.setState({\n newDeposit: '',\n newDistance: '',\n newDuration: '',\n newMonthlyRate: '',\n });\n\n if (this.props.isCloningRow) {\n this.props.onClone();\n }\n }\n\n handleOnDepositChange({ target: { value } }) {\n const newValue = parseInt(value);\n this.props.resetErrors();\n this.setState({ newDeposit: isNaN(newValue) ? '' : newValue });\n }\n\n handleOnDurationChange({ target: { value } }) {\n const newValue = parseInt(value);\n this.props.resetErrors();\n this.setState({ newDuration: isNaN(newValue) ? '' : newValue });\n }\n\n handleOnDistanceChange({ target: { value } }) {\n const newValue = parseInt(value);\n this.props.resetErrors();\n this.setState({ newDistance: isNaN(newValue) ? '' : newValue });\n }\n\n handleOnPriceChange({ target: { value } }) {\n const newValue = parseInt(value);\n this.setState({ newMonthlyRate: isNaN(newValue) ? '' : newValue });\n }\n\n handleOnEditToggle() {\n if (this.canEdit) {\n this.props.setEditMode(this.props.id);\n } else {\n this.setState({\n newDeposit: this.props.deposit,\n newDistance: this.props.distance,\n newDuration: this.props.duration,\n newMonthlyRate: this.props.monthly_rate,\n })\n this.props.unsetEditMode();\n }\n\n if (this.props.isCloningRow) {\n this.props.onClone();\n }\n }\n\n handleOnUpdate() {\n this.props.updateChildOffer(this.props.id, this.state);\n }\n\n handleOnDelete() {\n if (confirm('Sicuro di voler cancellare questa variazione?')) {\n this.props.deleteChildOffer(this.props.id);\n }\n }\n\n get canEdit() {\n return this.props.editMode === false;\n }\n\n canSubmit() {\n return (\n this.state.newDeposit >= 0 &&\n this.state.newDistance > 0 &&\n this.state.newDuration > 0 &&\n this.state.newMonthlyRate > 0\n );\n }\n\n inputHasErrors() {\n const { newDeposit, newDistance, newDuration, newMonthlyRate } = this.state;\n const {\n mainDeposit,\n mainDistance,\n mainDuration,\n mainMonthlyRate,\n hasError,\n } = this.props;\n\n return (\n (mainDeposit === newDeposit &&\n mainDistance === newDistance &&\n mainDuration === newDuration &&\n mainMonthlyRate === newMonthlyRate)\n || hasError\n );\n }\n\n render() {\n const { id, isLoading, canClone, onClone, isCloningRow } = this.props;\n const {\n editMode,\n newDeposit,\n newDistance,\n newDuration,\n newMonthlyRate\n } = this.state;\n\n const inputClassName = this.inputHasErrors() ? 'has-error text-left' : 'text-left';\n\n return (\n \n \n {editMode || !id ?\n \n : `${newDeposit} €`}\n \n \n {editMode || !id ?\n \n : `${newDistance} Km/Anno`}\n \n \n {editMode || !id ?\n \n : `${newDuration} mesi`}\n \n \n {editMode || !id ?\n \n : `${newMonthlyRate ? parseInt(newMonthlyRate) : ''} €`}\n \n \n {id ?\n \n {editMode ?\n \n :\n \n }\n \n {editMode ?\n \n :\n \n }\n \n :\n \n \n {isCloningRow &&\n \n }\n \n }\n \n \n );\n }\n}\n\nChildItem.defaultProps = {\n deposit: null,\n duration: null,\n distance: null,\n monthly_rate: null,\n};\n\nChildItem.propTypes = {\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n deposit: PropTypes.number,\n duration: PropTypes.number,\n distance: PropTypes.number,\n monthly_rate: PropTypes.number,\n\n mainMonthlyRate: PropTypes.number.isRequired,\n mainDeposit: PropTypes.number.isRequired,\n mainDuration: PropTypes.number.isRequired,\n mainDistance: PropTypes.number.isRequired,\n hasError: PropTypes.bool.isRequired,\n};\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: makeSelectIsLoading(),\n editMode: makeSelectChildEditing(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n storeChildOffer: value => dispatch(storeChildOffer(value)),\n deleteChildOffer: id => dispatch(deleteChildOffer(id)),\n setEditMode: id => dispatch(setEditMode(id)),\n unsetEditMode: () => dispatch(unsetEditMode()),\n updateChildOffer: (id, data) => dispatch(updateChildOffer(id, data)),\n resetErrors: () => dispatch(resetErrors()),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withOfferChildsSaga,\n withOfferChildsReducer,\n withConnect,\n)(ChildItem);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { withOfferChildsReducer, withOfferChildsSaga } from './withReducer';\nimport messages from './messages';\n\nimport { storeChildOffer, deleteChildOffer, resetErrors } from './actions';\n\nimport {\n makeSelectDeposit as makeSelectMainDeposit,\n makeSelectDuration as makeSelectMainDuration,\n makeSelectMonthlyRate as makeSelectMainMonthlyRate,\n makeSelectDistance as makeSelectMainDistance,\n} from '../OfferValue/selectors';\n\nimport ChildItem from './item';\n\nimport { makeSelectChildOffers, makeSelectHasError } from './selectors';\n\nimport './styles.scss';\nimport { isArray } from 'lodash';\n\nclass OfferChilds extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n newDeposit: '',\n newDistance: '',\n newDuration: '',\n newMonthlyRate: '',\n cloningId: false,\n };\n }\n\n handleOnCloneToggle(id) {\n this.setState({\n cloningId: this.state.cloningId > 0 ? false : id,\n });\n\n this.props.resetErrors();\n }\n\n render() {\n const {\n childs,\n mainMonthlyRate,\n mainDeposit,\n mainDuration,\n mainDistance,\n hasError\n } = this.props;\n const { cloningId } = this.state;\n\n if (isArray(childs)) {\n if (cloningId) {\n if (!childs.some(child => child.cloning && child.cloning > 0)) { // evito clonazione doppie\n const clonedIdx = childs.findIndex(child => child.ref === cloningId);\n const cloning = childs[clonedIdx];\n\n if (cloning) {\n childs.splice(clonedIdx + 1, 0, {\n deposit: cloning.deposit,\n duration: cloning.duration,\n distance: cloning.distance,\n monthly_rate: cloning.monthly_rate,\n cloning: cloningId\n });\n }\n }\n } else {\n const cloningIdx = childs.findIndex(child => child.cloning && child.cloning > 0);\n\n if (cloningIdx >= 0) {\n childs.splice(cloningIdx, 1);\n }\n }\n }\n\n return (\n
\n \n \n \n \n \n \n \n \n \n \n \n\n {childs &&\n childs.length > 0 &&\n childs.map(child =>\n this.handleOnCloneToggle(child.ref)}\n isCloningRow={child.ref === undefined}\n />\n )\n }\n\n \n\n \n
{messages.deposit.title}{messages.distance.title}{messages.duration.title}{messages.price.title}{messages.actions.title}
\n
\n );\n }\n}\n\nOfferChilds.propTypes = {\n // hasError: PropTypes.func.isRequired,\n\n mainMonthlyRate: PropTypes.number,\n mainDeposit: PropTypes.number,\n mainDuration: PropTypes.number.isRequired,\n mainDistance: PropTypes.number.isRequired,\n // mainHasError: PropTypes.bool.isRequired,\n\n childs: PropTypes.any,\n duration: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n deposit: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n distance: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nconst mapStateToProps = createStructuredSelector({\n mainMonthlyRate: makeSelectMainMonthlyRate(),\n mainDeposit: makeSelectMainDeposit(),\n mainDuration: makeSelectMainDuration(),\n mainDistance: makeSelectMainDistance(),\n childs: makeSelectChildOffers(),\n hasError: makeSelectHasError(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n storeChildOffer: value => dispatch(storeChildOffer(value)),\n deleteChildOffer: id => dispatch(deleteChildOffer(id)),\n resetErrors: () => dispatch(resetErrors()),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withOfferChildsSaga,\n withOfferChildsReducer,\n withConnect,\n)(OfferChilds);\n","/*\n * OfferDetails Messages\n *\n * This contains all the text for the OfferDetails container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.CustomizeOffer';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: 'Offerta Noleggio a Lungo Termine',\n },\n description: {\n id: `${scope}.description`,\n defaultMessage: ' ',\n },\n duration: {\n id: `${scope}.duration`,\n defaultMessage: 'Scegli la durata del noleggio',\n },\n distance: {\n id: `${scope}.distance`,\n defaultMessage: 'Scegli i km/anno',\n },\n deposit: {\n id: `${scope}.deposit`,\n defaultMessage: 'Scegli l\\'anticipo',\n },\n bundle: {\n id: `${scope}.bundle`,\n defaultMessage: 'Scegli il pacchetto',\n },\n services: {\n id: `${scope}.services`,\n defaultMessage: 'Scegli servizi aggiuntivi',\n },\n accessories: {\n id: `${scope}.accessories`,\n defaultMessage: 'Scegli optional',\n },\n colors: {\n id: `${scope}.colors`,\n defaultMessage: 'Colori',\n },\n optionalAccessories: {\n id: `${scope}.optionalAccessories`,\n defaultMessage: 'Optional',\n },\n optionalsAndColorsLabel: {\n id: `${scope}.optionalsAndColorsLabel`,\n defaultMessage: 'Scegli optional e colori',\n },\n optionalsAndColorsDescription: {\n id: `${scope}.optionalsAndColorsDescription`,\n defaultMessage: 'Scegli il colore e altri optional per personalizzare ancora di più la tua vettura',\n },\n optionalsAndColorsBtn: {\n id: `${scope}.optionalsAndColorsBtn`,\n defaultMessage: 'Scegli',\n },\n terms: {\n id: `${scope}.terms`,\n defaultMessage: 'Il prezzo del canone mensile è soggetto a variazioni. Offerta economica limitata valida fino ad esaurimento scorte.',\n },\n fixed: {\n id: `${scope}.fixed`,\n defaultMessage: 'Non modificabile',\n },\n info: {\n id: `${scope}.info`,\n defaultMessage: '*I prezzi indicati sono da sommare alla rata mensile del Noleggio a Lungo Termine. Esempio: considerando un optional il cui costo è di € 180, con una durata contrattuale di 36 mesi, il canone mensile aumenterà di € 5 al mese.',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { FormattedMessage } from 'react-intl';\nimport { compose } from 'redux';\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\n\nimport configs from 'configs';\n\nimport { getSustainabilityIndexByMonthlyRateAndDeposit, getSustainabilityMessageByMonthlyRateAndDeposit } from 'utils/prescoringTool';\n\nimport { Affix, Button, Modal, Checkbox, Radio, Row, Col } from 'antd';\nimport { withOfferSelectorReducer, withOfferSelectorSaga } from './withReducer';\n\nimport messages from './messages';\n\nimport {\n offerSelected,\n selectServices,\n selectAccessories,\n selectColors,\n selectAccessoriesCodes,\n selectColorCodes,\n calculateNewMonthlyRate,\n resetFees,\n} from './actions';\n\nimport {\n makeSelectAccessoriesSelector,\n makeSelectColorsSelector,\n makeSelectServicesSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n makeSelectMonthlyRateSelector,\n makeSelectFeesSelector,\n getServicePriceByOfferParams,\n} from './selectors';\n\nimport { makeSelectCheckResponse } from '../PrescoringTool/selectors'\n\nimport { SelectOption, SelectOptions, InteractiveList } from '../UIKit';\nimport { default as OfferStickyPrice } from '../OfferPrice/sticky';\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nclass CustomizeOffer extends React.Component {\n constructor(props) {\n super(props);\n\n this.QuotationInitializerRef = React.createRef();\n\n this.state = {\n durations: [],\n distances: [],\n deposits: [],\n bundles: [],\n selected: {\n distance: props.distance,\n duration: props.duration,\n bundle: props.bundle,\n deposit: props.deposit,\n },\n selectedOffer: {},\n selectedAdditionalServices: [],\n modalVisible: false,\n };\n\n this.handleOnDurationClick = this.handleOnDurationClick.bind(this);\n this.handleOnDistanceClick = this.handleOnDistanceClick.bind(this);\n this.handleOnDepositClick = this.handleOnDepositClick.bind(this);\n this.handleOnBundleClick = this.handleOnBundleClick.bind(this);\n this.handleOnServiceClick = this.handleOnServiceClick.bind(this);\n this.handleOnRemoveAllClick = this.handleOnRemoveAllClick.bind(this);\n this.handleOnItemClick = this.handleOnItemClick.bind(this);\n this.handleOnOptionClick = this.handleOnOptionClick.bind(this);\n this.handleOnColorClick = this.handleOnColorClick.bind(this);\n }\n\n componentDidMount() {\n this.initOffers();\n }\n\n componentDidUpdate(prevProps) {\n const { offerCode, fees } = this.props\n const { selected } = this.state\n const duration = selected.duration >= 0 ? selected.duration : this.props.duration;\n const distance = selected.distance >= 0 ? selected.distance : this.props.distance;\n const deposit = selected.deposit >= 0 ? selected.deposit : this.props.deposit;\n const bundle = selected.bundle && selected.bundle !== '' ? selected.bundle : this.props.bundle;\n\n if (prevProps.offerCode !== offerCode){\n this.initOffers();\n }\n\n if (prevProps.fees.finalMonthlyRate !== fees.finalMonthlyRate) {\n this.selectDepositsFromChilds({ duration, distance, bundle }, deposit, this.state.selectedAdditionalServices);\n }\n\n this.calculateFinalPrice();\n }\n\n initOffers() {\n const {\n deposit,\n distance,\n duration,\n bundle,\n tag,\n secondaryTag,\n } = this.props;\n\n // generate choices\n this.selectDurationsFromChilds(duration);\n this.selectDistancesFromChilds(distance);\n this.selectBundlesFromChilds(bundle);\n this.selectDepositsFromChilds({ duration, distance, bundle }, deposit);\n\n const selectedOffer = this.findChildOffer(\n distance,\n duration,\n deposit,\n bundle,\n );\n\n this.setState(\n {\n selectedOffer,\n // selectedAdditionalServices: [],\n },\n () => {\n this.props.selectOffer({\n ...selectedOffer,\n tag,\n secondaryTag,\n });\n });\n }\n\n selectDurationsFromChilds(selected = -1) {\n let durations = new Set();\n this.props.childOffers.map(offer => durations.add(parseInt(offer.duration)));\n durations = [...new Set(durations)].sort();\n\n let durationsObj = [];\n durations.forEach(elem => {\n durationsObj.push({\n value: elem,\n label: parseInt(elem).toLocaleString('it'),\n unit: 'mesi',\n selected: elem === selected,\n });\n });\n\n durationsObj = [...new Set(durationsObj)].sort();\n\n this.setState({ durations: durationsObj });\n }\n\n selectDistancesFromChilds(selected = -1) {\n let distances = new Set();\n this.props.childOffers.map(offer => distances.add(parseInt(offer.distance)));\n distances = [...new Set(distances)].sort((a, b) => a - b);\n\n const distancesObj = [];\n distances.forEach(elem => {\n distancesObj.push({\n value: elem,\n label: parseInt(elem).toLocaleString('it'),\n description: 'Km/Anno',\n selected: elem === selected,\n disabled: !this.props.childOffers.find(childOffer => childOffer.distance === elem && childOffer.duration === this.state.selected.duration)\n });\n });\n\n this.setState({ distances: distancesObj });\n }\n\n selectBundlesFromChilds(selected = -1) {\n let bundles = new Set();\n this.props.childOffers.map(offer => bundles.add(offer.bundle));\n bundles = [...new Set(bundles)];\n\n const bundlesLight = bundles.filter(bundle => bundle && bundle.includes('Light')).sort();\n const bundlesNotLight = bundles.filter(bundle => bundle && !bundle.includes('Light')).sort();\n\n bundles = [...bundlesLight, ...bundlesNotLight];\n\n const bundlesObj = [];\n bundles.forEach(elem => {\n if (elem !== undefined && elem !== null) {\n bundlesObj.push({\n value: elem,\n label: elem,\n description: '',\n selected: elem === selected,\n disabled:\n !this.props.childOffers.find(childOffer =>\n childOffer.bundle === elem\n && childOffer.deposit === this.state.selected.deposit\n && childOffer.duration === this.state.selected.duration\n && childOffer.distance === this.state.selected.distance\n )\n });\n }\n });\n\n this.setState({ bundles: bundlesObj });\n }\n\n selectDepositsFromChilds(selectedState = {}, selected = -1, selectedAdditionalServices = []) {\n const { duration, distance, bundle } = selectedState;\n const { childOffers, fees, selectMonthlyRate } = this.props;\n let deposits = new Set();\n\n childOffers.map(offer => deposits.add(parseInt(offer.deposit)));\n deposits = [...new Set(deposits)].sort((a, b) => a - b);\n\n const totAdditionalServicesCost = selectedAdditionalServices.reduce((prevValue, additionalService) => prevValue + additionalService.price, 0)\n\n const depositsObj = [];\n\n deposits.forEach(elem => {\n const childOffer = childOffers.filter(item =>\n parseInt(item.distance) === distance &&\n parseInt(item.duration) === duration &&\n item.bundle === bundle &&\n parseInt(item.deposit) === elem\n )[0];\n\n if (\n childOffer !== undefined &&\n childOffer.hasOwnProperty('monthly_rate') &&\n childOffer.hasOwnProperty('ref')\n ) {\n let monthly_rate = childOffer.monthly_rate;\n\n if (childOffer.special_rate > 0) {\n monthly_rate = Math.min(monthly_rate, childOffer.special_price);\n }\n\n monthly_rate += totAdditionalServicesCost;\n\n let description = `${monthly_rate}€ al mese`\n\n if (fees.finalMonthlyRate > 0 && fees.finalMonthlyRate !== selectMonthlyRate) {\n const newMonthlyRate = monthly_rate + (fees.finalMonthlyRate - selectMonthlyRate)\n description = <>{monthly_rate}€ {parseInt(newMonthlyRate)}€ al mese\n }\n\n depositsObj.push({\n value: elem,\n label: parseInt(elem).toLocaleString('it'),\n unit: '€',\n description,\n selected: elem === selected,\n disabled:\n !childOffers.find(childOffer =>\n childOffer.deposit === elem\n && childOffer.duration === this.state.selected.duration\n && childOffer.distance === this.state.selected.distance\n && childOffer.bundle === this.state.selected.bundle\n )\n });\n }\n });\n\n this.setState({ deposits: depositsObj });\n }\n\n handleOnClick = e => {\n e.preventDefault();\n this.props.open();\n };\n\n handleOnDurationClick(value) {\n const selected = {...this.state.selected, duration: value};\n\n this.setState({ selected }, () => {\n this.selectDurationsFromChilds(value);\n this.selectDistancesFromChilds(selected.distance);\n\n if (!this.state.bundles.length) {\n this.selectBundlesFromChilds(selected.bundle);\n }\n\n this.selectDepositsFromChilds(selected, selected.deposit, this.state.selectedAdditionalServices);\n\n const selectedOffer = this.findChildOffer(\n selected.distance,\n value,\n selected.deposit,\n selected.bundle,\n );\n\n if (selectedOffer && selectedOffer.ref) {\n this.setState({ selectedOffer }, () => {\n this.props.selectOffer({ ...selectedOffer });\n\n // resetto il canone personalizzato da over commission\n this.props.resetFees();\n });\n } else {\n this.setState({ selectedOffer: {} });\n }\n\n setTimeout(() => {\n this.updateSustainabilityIndexesAfterHandlers();\n }, 200);\n\n this.calculateFinalPrice();\n });\n }\n\n handleOnDistanceClick(value) {\n const selected = {...this.state.selected, distance: value};\n\n this.setState({ selected }, () => {\n this.selectDistancesFromChilds(value);\n\n if (this.state.bundles.length) {\n this.selectBundlesFromChilds(selected.bundle);\n }\n\n this.selectDepositsFromChilds(selected, selected.deposit, this.state.selectedAdditionalServices);\n\n const selectedOffer = this.findChildOffer(\n value,\n selected.duration,\n selected.deposit,\n selected.bundle,\n );\n\n if (selectedOffer && selectedOffer.ref) {\n this.setState({ selectedOffer }, () => {\n this.props.selectOffer({ ...selectedOffer });\n\n // resetto il canone personalizzato da over commission\n this.props.resetFees();\n });\n } else {\n this.setState({ selectedOffer: {} });\n }\n\n setTimeout(() => {\n this.updateSustainabilityIndexesAfterHandlers();\n }, 200);\n\n this.calculateFinalPrice();\n });\n }\n\n handleOnBundleClick(value) {\n const selected = {...this.state.selected, bundle: value};\n\n this.setState({ selected }, () => {\n this.selectBundlesFromChilds(value);\n this.selectDepositsFromChilds(selected, selected.deposit, this.state.selectedAdditionalServices);\n\n const selectedOffer = this.findChildOffer(\n selected.distance,\n selected.duration,\n selected.deposit,\n value,\n );\n\n if (selectedOffer && selectedOffer.ref) {\n this.setState({ selectedOffer }, () => {\n this.props.selectOffer({ ...selectedOffer });\n\n // resetto il canone personalizzato da over commission\n this.props.resetFees();\n });\n } else {\n this.setState({ selectedOffer: {} });\n }\n\n setTimeout(() => {\n this.updateSustainabilityIndexesAfterHandlers();\n }, 200);\n\n this.calculateFinalPrice();\n });\n }\n\n handleOnDepositClick(value) {\n if (this.state.selected && this.state.selected.deposit !== value) {\n const selected = { ...this.state.selected, deposit: value };\n\n this.setState({ selected }, () => {\n this.selectDepositsFromChilds(selected, value, this.state.selectedAdditionalServices);\n\n const selectedOffer = this.findChildOffer(\n selected.distance,\n selected.duration,\n value,\n selected.bundle,\n );\n\n this.setState({ selectedOffer }, () => {\n this.props.selectOffer({ ...selectedOffer });\n\n // resetto il canone personalizzato da over commission\n this.props.resetFees();\n\n setTimeout(() => {\n this.updateSustainabilityIndexesAfterHandlers();\n }, 200);\n });\n\n this.calculateFinalPrice();\n });\n }\n }\n\n handleOnServiceClick(value, price = null, quantity = null) {\n const { services, resetFees } = this.props;\n\n let { selected, selectedAdditionalServices, selectedOffer } = this.state;\n const service = services.find(obj => obj.id === value);\n\n if (price !== null) {\n selectedAdditionalServices = selectedAdditionalServices.filter(selectedAdditionalService => selectedAdditionalService.id !== value);\n selectedAdditionalServices.push({...service, price, quantity});\n } else {\n if (selectedAdditionalServices.some(selectedAdditionalService => selectedAdditionalService.id === service.id)) {\n selectedAdditionalServices = selectedAdditionalServices.filter(selectedAdditionalService => selectedAdditionalService.id !== value);\n } else {\n selectedAdditionalServices.push(service);\n }\n }\n\n this.setState({ selectedAdditionalServices }, () => {\n this.props.selectServices(selectedAdditionalServices);\n\n this.selectDepositsFromChilds(selected, selected.deposit, this.state.selectedAdditionalServices);\n\n // resetto il canone personalizzato da over commission\n resetFees();\n\n setTimeout(() => {\n this.updateSustainabilityIndexesAfterHandlers();\n }, 200);\n });\n }\n\n updateSustainabilityIndexesAfterHandlers() {\n const { selectedOffer } = this.state;\n const { selectMonthlyRate, fees } = this.props;\n let { prescoringResponse } = this.props;\n\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n if (prescoringResponse && prescoringResponse.hasOwnProperty('chance')) {\n const { monthlyRateMax, depositRequired, thresholdMonthlyRateMax } = prescoringResponse;\n const finalMonthlyRate = fees.finalMonthlyRate && fees.finalMonthlyRate !== selectMonthlyRate ? fees.finalMonthlyRate : selectMonthlyRate;\n\n const sustainabilityIndex = getSustainabilityIndexByMonthlyRateAndDeposit(monthlyRateMax, finalMonthlyRate, depositRequired, selectedOffer.deposit || 0, thresholdMonthlyRateMax);\n const sustainabilityMessage = getSustainabilityMessageByMonthlyRateAndDeposit(monthlyRateMax, finalMonthlyRate, depositRequired, selectedOffer.deposit || 0, thresholdMonthlyRateMax);\n\n this.setState({\n selectedOffer: {\n ...selectedOffer,\n sustainabilityIndex,\n sustainabilityMessage,\n }\n });\n }\n }\n\n /**\n *\n * @param distance\n * @param duration\n * @param deposit\n * @returns {*}\n */\n findChildOffer(distance, duration, deposit, bundle) {\n const childOffer = this.props.childOffers.filter(\n item =>\n parseInt(item.deposit) === deposit &&\n parseInt(item.distance) === distance &&\n parseInt(item.duration) === duration &&\n (!bundle || item.bundle === bundle),\n );\n\n return childOffer && childOffer.length ? childOffer[0] : null\n }\n\n /**\n *\n * @param selectedOffer\n * @param services\n * @param accessories\n * @param selectedColors\n * @returns {undefined|number}\n */\n calculateFinalPrice() {\n const {\n selectedOffer,\n selectedAdditionalServices,\n } = this.state;\n const {\n accessories,\n selectedColors,\n } = this.props;\n\n const selectedServices = selectedAdditionalServices\n\n if (\n selectedOffer &&\n selectedOffer.hasOwnProperty('ref') &&\n selectedOffer.hasOwnProperty('monthly_rate')\n ) {\n const servicesPrice = selectedServices.reduce(\n (sum, service) => sum + service.price,\n 0,\n );\n const accessoriesPrice =\n accessories.reduce((sum, accessory) => sum + accessory.price, 0) / selectedOffer.duration;\n const colorsPrice =\n selectedColors.reduce((sum, color) => sum + color.price, 0) / selectedOffer.duration;\n const newMonthlyRate = parseFloat(\n selectedOffer.monthly_rate +\n servicesPrice +\n accessoriesPrice +\n colorsPrice,\n );\n\n setTimeout(() => {\n this.props.calculateNewMonthlyRate(newMonthlyRate);\n }, 100);\n } else {\n this.props.calculateNewMonthlyRate();\n }\n }\n\n /**\n * Handle remove all click\n */\n handleOnRemoveAllClick() {\n this.props.selectAccessoriesCodes([]);\n this.props.selectAccessories([]);\n this.props.selectColorCodes([]);\n this.props.selectColors([]);\n }\n\n /**\n *\n * @param code\n */\n handleOnItemClick(code) {\n const {\n accessories,\n selectedAccessoriesCodes,\n colors,\n selectedColorsCodes,\n } = this.props;\n\n // handle options\n const selectedOptions = new Set(selectedAccessoriesCodes);\n selectedOptions.delete(code);\n this.props.selectAccessoriesCodes([...selectedOptions]);\n const selected = accessories.filter(item => selectedOptions.has(item.code));\n this.props.selectAccessories(selected);\n\n // handle colors\n const selectedColors = new Set(selectedColorsCodes);\n selectedColors.delete(code);\n this.props.selectColorCodes([...selectedColors]);\n const selectedColor = colors.filter(item => selectedColors.has(item.code));\n this.props.selectColors(selectedColor);\n }\n\n\n handleOnOptionClick(e) {\n const { selectedAccessoriesCodes, options } = this.props;\n const selectedOptions = new Set(selectedAccessoriesCodes);\n const value = e.target.value;\n\n if (selectedOptions.has(value)) {\n selectedOptions.delete(value);\n } else {\n selectedOptions.add(value);\n }\n this.props.selectAccessoriesCodes([...selectedOptions]);\n const selected = options.filter(item => selectedOptions.has(item.code));\n this.props.selectAccessories(selected);\n }\n\n handleOnColorClick(e) {\n const { colors } = this.props;\n const value = e.target.value;\n\n const selectedColors = new Set();\n selectedColors.add(value);\n\n this.props.selectColorCodes([...selectedColors]);\n const selected = colors.filter(item => selectedColors.has(item.code));\n this.props.selectColors(selected);\n }\n\n convertToList(items) {\n const { selectedAccessoriesCodes } = this.props;\n const selectedOptions = new Set(selectedAccessoriesCodes);\n\n let result = [];\n items.map((item, key) => {\n const elem = {\n price: item.price,\n code: item.code,\n description: item.description,\n short_description: item.short_description,\n standard_description: item.standard_description,\n selected: selectedOptions.has(item.code),\n };\n const group = result.filter(e => e.group === item.group_code);\n const obj = {\n group: item.group_code,\n title: item.group,\n };\n if (Object.keys(group).length === 0) {\n obj.items = [elem];\n } else {\n const list = group[0].items;\n list.push(elem);\n obj.items = list;\n // remove all preview objects\n result = result.filter(res => res.group !== obj.group);\n }\n result.push(obj);\n });\n return result;\n }\n\n showModal = () => {\n this.setState({ modalVisible: true });\n };\n\n handleModalOk = () => {\n this.setState({ modalVisible: false });\n };\n\n /**\n *\n * @returns {*}\n */\n render() {\n const {\n carName,\n carType,\n accessories,\n colors,\n options,\n selectedColors,\n selectedColorsCodes,\n selectedServices,\n selectedAccessoriesCodes,\n hasVariations,\n referenceCode,\n selectMonthlyRate,\n fees,\n tag,\n equippedOptionals,\n } = this.props;\n\n const {\n durations,\n distances,\n deposits,\n bundles,\n selectedOffer,\n selectedAdditionalServices,\n } = this.state;\n\n let { services, prescoringResponse } = this.props;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n services = services.map(service => ({\n ...service,\n price: tag === 'Catalogo' ? service.price : getServicePriceByOfferParams(service, {offer: selectedOffer})\n }))\n\n let label = '';\n if (!hasVariations) {\n label = messages.fixed.defaultMessage;\n }\n\n const price = fees.finalMonthlyRate && fees.finalMonthlyRate !== selectMonthlyRate ? fees.finalMonthlyRate : selectMonthlyRate;\n\n\n /* gestisco la sostenibilità dell'offerta (semaforo e messaggio) in base ai vari casi */\n\n const selectedOfferDerived = Object.assign({}, selectedOffer);\n\n const { monthlyRateMax, depositRequired, chance, description, thresholdMonthlyRateMax } = prescoringResponse;\n const { sustainabilityIndex: offerSustainabilityIndexOriginal, sustainabilityMessage: offerSustainabilityMessageOriginal, deposit } = selectedOffer;\n\n if (offerSustainabilityIndexOriginal !== undefined && offerSustainabilityIndexOriginal !== null) {\n selectedOfferDerived.sustainabilityIndex = offerSustainabilityIndexOriginal;\n selectedOfferDerived.sustainabilityMessage = offerSustainabilityMessageOriginal || getSustainabilityMessageByMonthlyRateAndDeposit(monthlyRateMax, price, depositRequired, deposit || 0, thresholdMonthlyRateMax);\n } else if (chance !== null && chance >= 0) {\n if (monthlyRateMax > 0) {\n selectedOfferDerived.sustainabilityIndex = Math.min(chance, getSustainabilityIndexByMonthlyRateAndDeposit(monthlyRateMax, price, depositRequired, deposit, thresholdMonthlyRateMax));\n } else {\n selectedOfferDerived.sustainabilityIndex = chance;\n }\n\n selectedOfferDerived.sustainabilityMessage = description;\n }\n\n if (fees.finalMonthlyRate && fees.finalMonthlyRate !== selectMonthlyRate && monthlyRateMax > 0) {\n // sovrascrivo indici di sostenibilità visto che il canone mensile è aumentato per l'over commission\n const newIndex = getSustainabilityIndexByMonthlyRateAndDeposit(monthlyRateMax, fees.finalMonthlyRate, depositRequired, deposit || 0, thresholdMonthlyRateMax);\n\n if (newIndex !== null) {\n selectedOfferDerived.sustainabilityIndex = newIndex;\n selectedOfferDerived.sustainabilityMessage = getSustainabilityMessageByMonthlyRateAndDeposit(monthlyRateMax, fees.finalMonthlyRate, depositRequired, deposit || 0, thresholdMonthlyRateMax);\n }\n }\n\n if (chance !== null && chance >= 0 && (!selectedOfferDerived.sustainabilityMessage || !selectedOfferDerived.sustainabilityMessage.length)) {\n selectedOfferDerived.sustainabilityMessage = 'CONGRATULATIONS_THIS_OFFER';\n }\n\n /* fine gestione sostenibilità */\n\n\n const optionalsAndColors = [\n ...this.convertToList(colors),\n ...this.convertToList(options),\n ];\n const optionalsAndColorsSelected = [...selectedColors, ...accessories];\n\n const selectedBundle = bundles.length ? bundles.find(bundle => bundle.selected === true) : null;\n\n const bundleDescriptionVehicleTypeIndex = (carType && carType === 'commerciale') ? 'businessVehicle' : 'default';\n\n return (\n
\n
\n {carName}\n
\n
\n {referenceCode}\n
\n \n \n \n \n \n\n item.selected === true)}\n callback={this.handleOnDistanceClick}\n colSize={4}\n label={label}\n id=\"distanza\"\n />\n\n {bundles && bundles.length > 0 &&\n <>\n item.selected === true && item.disabled === false)}\n callback={this.handleOnBundleClick}\n colSize={4}\n label={label}\n id=\"bundle\"\n />\n
\n {\n selectedBundle && configs.bundlesDescription.hasOwnProperty(selectedBundle.value) ?\n configs.bundlesDescription[selectedBundle.value][bundleDescriptionVehicleTypeIndex] || ''\n : ''\n }\n
\n \n }\n\n item.selected === true)\n : distances.some(item => item.selected === true)\n }\n callback={this.handleOnDepositClick}\n colSize={4}\n label={label}\n id=\"anticipo\"\n />\n\n {services.length > 0 &&\n \n }\n\n {(configs.optionalsAndColors && optionalsAndColors.length) ?\n
\n
\n {messages.optionalsAndColorsLabel.defaultMessage}\n
\n {optionalsAndColorsSelected.length ?\n \n :\n {messages.optionalsAndColorsDescription.defaultMessage}\n }\n \n \n {optionalsAndColorsSelected.length !== 0 ?\n \n Rimuovi tutti\n : null\n }\n\n \n \n \n Scegli dalla lista...\n \n \n \n {messages.optionalsAndColorsLabel.defaultMessage}}\n className=\"offer-optionals-colors\"\n visible={this.state.modalVisible}\n onCancel={this.handleModalOk}\n footer={[\n ,\n \n Rimuovi tutti\n \n ]}\n width={800}\n >\n {\n optionalsAndColors.map(optionalAndColorGroup =>\n
\n {optionalAndColorGroup.title}\n
    \n {optionalAndColorGroup.title === 'Vernici' ?\n optionalAndColorGroup.items.map(item =>\n
  • \n \n \n {item.description}\n
    {parseInt(item.price).toLocaleString('it')}
    \n
    \n \n
  • \n )\n :\n optionalAndColorGroup.items.map(item =>\n
  • \n = 0}\n >\n {item.description}\n
    {parseInt(item.price).toLocaleString('it')}
    \n \n
  • \n )\n }\n
\n
\n )\n }\n \n\n
\n : null\n }\n
\n
\n
\n );\n }\n}\nCustomizeOffer.defaultProps = {\n childOffers: [],\n offerCode: '',\n hasVariations: true,\n};\n\nCustomizeOffer.propTypes = {\n deposit: PropTypes.number.isRequired,\n duration: PropTypes.number.isRequired,\n distance: PropTypes.number.isRequired,\n bundle: PropTypes.string,\n carName: PropTypes.string.isRequired,\n carPower: PropTypes.number.isRequired,\n carType: PropTypes.string,\n childOffers: PropTypes.array,\n offerCode: PropTypes.string,\n hasVariations: PropTypes.bool,\n colors: PropTypes.array.isRequired,\n options: PropTypes.array.isRequired,\n services: PropTypes.array.isRequired,\n tag: PropTypes.string,\n secondaryTag: PropTypes.string,\n};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n selectOffer: offer => dispatch(offerSelected(offer)),\n calculateNewMonthlyRate: monthlyRate => dispatch(calculateNewMonthlyRate(monthlyRate)),\n selectServices: services => dispatch(selectServices(services)),\n selectAccessories: accessories => dispatch(selectAccessories(accessories)),\n selectAccessoriesCodes: codes => dispatch(selectAccessoriesCodes(codes)),\n selectColors: colors => dispatch(selectColors(colors)),\n selectColorCodes: codes => dispatch(selectColorCodes(codes)),\n resetFees: () => dispatch(resetFees()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n accessories: makeSelectAccessoriesSelector(),\n selectedColors: makeSelectColorsSelector(),\n selectedAccessoriesCodes: makeSelectAccessoriesCodesSelector(),\n selectedColorsCodes: makeSelectColorCodesSelector(),\n selectedServices: makeSelectServicesSelector(),\n selectMonthlyRate: makeSelectMonthlyRateSelector(),\n fees: makeSelectFeesSelector(),\n prescoringResponse: makeSelectCheckResponse(),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withOfferSelectorReducer,\n withOfferSelectorSaga,\n withConnect,\n)(CustomizeOffer);\n","/*\n * RequestOffer Messages\n *\n * This contains all the text for the RequestOffer container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.RequestOffer';\n\nexport default defineMessages({\n title: {\n id: `${scope}.title`,\n defaultMessage: \"Non hai trovato l'auto che cercavi?\",\n },\n description: {\n id: `${scope}.description`,\n defaultMessage: \"Facci sapere quale auto stai cercando e ti contatteremo noi!\",\n },\n action: {\n id: `${scope}.action`,\n defaultMessage: \"Trova auto\",\n },\n});\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport messages from './messages';\n\nimport './styles.scss';\n\nclass RequestOffer extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n\n }\n\n render() {\n\n return (\n
\n
\n
\n

\n {messages.title.defaultMessage}\n

\n \n
\n \n {messages.action.defaultMessage}\n \n
\n
\n );\n }\n}\n\nRequestOffer.propTypes = {};\n\nexport default RequestOffer;\n","/*\n * Banners Messages\n *\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.Banners';\n\nexport default defineMessages({\n offers: {\n id: `${scope}.offers`,\n defaultMessage: 'Vuoi creare un nuovo preventivo, ma hai bisogno di aiuto?',\n anchorTarget:\n 'https://static.ideal-rent.com/guides/guida_veloce_offerte.pdf',\n anchorMessage: 'Consulta la nostra guida veloce.',\n },\n sponsor: {\n id: `${scope}.sponsor`,\n defaultMessage: 'Il tuo cliente vuole vendere la sua auto prima di passare al Noleggio? ',\n anchorTarget:\n 'https://lp.ideal-rent.com/valutazione-auto',\n anchorMessage: 'Scopri il suo valore!',\n },\n});\n","import React from 'react';\nimport { Row, Col } from 'reactstrap';\nimport { TopBanner } from '../UIKit';\nimport messages from './messages';\n\nimport './sponsor.scss';\n\nconst sponsor = props => {\n const bannerMsg = messages.sponsor;\n\n const html = `${bannerMsg.defaultMessage + ' '}\n \n ${bannerMsg.anchorMessage}\n `;\n return (\n \n \n
\n \n
\n \n
\n );\n};\n\nexport default sponsor;\n","/*\n * Header Messages\n *\n * This contains all the text for the Header component.\n */\n\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.CustomerForm';\n\nexport default defineMessages({\n firstName: {\n id: `${scope}.firstName`,\n defaultMessage: 'Nome',\n },\n lastName: {\n id: `${scope}.lastName`,\n defaultMessage: 'Cognome',\n },\n email: {\n id: `${scope}.email`,\n defaultMessage: 'Email',\n },\n phone: {\n id: `${scope}.phone`,\n defaultMessage: 'Telefono',\n },\n fiscalCode: {\n id: `${scope}.fiscalCode`,\n defaultMessage: 'Codice fiscale',\n },\n fiscalCodeBusiness: {\n id: `${scope}.fiscalCodeBusiness`,\n defaultMessage: 'Codice fiscale attività',\n },\n fiscalCodeTooltip: {\n id: `${scope}.fiscalCodeTooltip`,\n defaultMessage: `Indicare il codice fiscale dell'attività a cui verrà intestato il contratto di noleggio a lungo termine`,\n },\n address: {\n id: `${scope}.address`,\n defaultMessage: 'Indirizzo',\n },\n postalCode: {\n id: `${scope}.postalCode`,\n defaultMessage: 'CAP',\n },\n contractualCategory: {\n id: `${scope}.contractualCategory`,\n defaultMessage: 'Categoria contrattuale',\n },\n businessName: {\n id: `${scope}.businessName`,\n defaultMessage: 'Ragione sociale',\n },\n vatNumber: {\n id: `${scope}.vatNumber`,\n defaultMessage: 'P.IVA',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { Row, Col, FormGroup, Label, Input } from 'reactstrap';\nimport { Tooltip, Icon } from 'antd'\n\nimport messages from './messages';\nimport 'antComponentsStyle';\nimport './fields.scss';\n\nclass CustomerFields extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n contractualCategorySelected: props.values.employee_category || null,\n showInput: {\n pi: false,\n rs: false\n }\n }\n }\n\n handleOnContractualCategoryChange = (event) => {\n const selectedMapped = this.props.contractualeCateogries.find(category => category.value === event.target.value)\n this.setState({\n contractualCategorySelected: event.target.value,\n showInput: selectedMapped.requiredData\n })\n this.props.callback(event);\n }\n\n get isBusinessCategory() {\n const { contractualCategorySelected } = this.state;\n\n if (contractualCategorySelected) {\n const selectedMapped = this.props.contractualeCateogries.find(category => category.value === contractualCategorySelected)\n return selectedMapped.type === 'BUSINESS';\n }\n\n return false;\n }\n\n get fiscalCodeLabel() {\n return this.isBusinessCategory ? messages.fiscalCodeBusiness.defaultMessage : messages.fiscalCode.defaultMessage;\n }\n\n render() {\n const { contractualeCateogries, values, errors, callback } = this.props;\n const size = 3;\n return (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {\n contractualeCateogries.map(item => (\n \n {item.description}\n \n ))\n }\n \n \n \n \n \n \n {this.isBusinessCategory &&\n }>\n \n \n }\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\n\nCustomerFields.defaultProps = {};\n\nCustomerFields.propTypes = {\n values: PropTypes.object.isRequired,\n errors: PropTypes.any.isRequired,\n contractualeCateogries: PropTypes.any.isRequired,\n callback: PropTypes.func.isRequired,\n};\nexport default CustomerFields;\n","/*\n * Header Messages\n *\n * This contains all the text for the Header component.\n */\n\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.OfferForm';\n\nexport default defineMessages({\n vehicleTypeLabel: {\n id: `${scope}.vehicleTypeLabel`,\n defaultMessage: 'Seleziona la tipologia di veicolo',\n },\n vehicleTypeCar: {\n id: `${scope}.vehicleTypeCar`,\n defaultMessage: 'Automobile',\n },\n vehicleTypeBusiness: {\n id: `${scope}.vehicleTypeBusiness`,\n defaultMessage: 'Veicolo commerciale',\n },\n vehicleTypeMinicar: {\n id: `${scope}.vehicleTypeMinicar`,\n defaultMessage: 'Minicar',\n },\n brand: {\n id: `${scope}.brand`,\n defaultMessage: 'Marca',\n },\n model: {\n id: `${scope}.model`,\n defaultMessage: 'Modello',\n },\n version: {\n id: `${scope}.version`,\n defaultMessage: 'Allestimento',\n },\n duration: {\n id: `${scope}.duration`,\n defaultMessage: 'Durata noleggio',\n },\n distance: {\n id: `${scope}.distance`,\n defaultMessage: 'Km/Anno',\n },\n deposit: {\n id: `${scope}.deposit`,\n defaultMessage: 'Anticipo €',\n },\n monthlyRate: {\n id: `${scope}.monthlyRate`,\n defaultMessage: 'Canone mensile',\n },\n services: {\n id: `${scope}.services`,\n defaultMessage: 'Eventuali servizi aggiuntivi/optional',\n },\n notes: {\n id: `${scope}.notes`,\n defaultMessage: 'Note',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { Label } from 'reactstrap';\nimport { Row, Col, Form, Input, InputNumber, Radio } from 'antd';\n\nimport Brand from '../CarSelector/brand';\nimport Model from '../CarSelector/model';\nimport Version from '../CarSelector/version';\n\nimport configs from 'configs';\n\nimport messages from './messages';\n\nimport 'antComponentsStyle';\nimport './fields.scss';\n\nclass OfferFields extends React.Component {\n constructor(props) {\n super(props);\n }\n\n fieldIsInvalid = fieldName =>\n this.props.errors.some(error => error === fieldName);\n\n showDynamicSelectors = () => this.props.values.vehicleType === 'car';\n\n inputNumberCallback = (name, value) => this.props.callback({target: {name, value}})\n\n render() {\n const {\n values,\n callback,\n brands,\n models,\n versions,\n isLoading,\n } = this.props;\n\n return (\n
\n {configs.veichleTypes && configs.veichleTypes.length > 1 ?\n \n \n \n \n \n {configs.veichleTypes.map(veichleType =>\n \n \n \n )}\n \n \n \n \n : null\n }\n \n \n \n \n {this.showDynamicSelectors() ? (\n \n ) : (\n \n )}\n \n \n \n \n \n {this.showDynamicSelectors() ? (\n \n ) : (\n \n )}\n \n \n \n \n \n {this.showDynamicSelectors() ? (\n \n ) : (\n \n )}\n \n \n \n \n \n this.inputNumberCallback('duration', value)}\n className=\"w-100\"\n required\n />\n \n \n \n \n \n \n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.')\n }\n parser={value => value.replace(/\\.*/g, '')}\n name=\"distance\"\n id=\"distance\"\n placeholder={'10000'}\n value={values.distance}\n onChange={value => this.inputNumberCallback('distance', value)}\n className=\"w-100\"\n required\n />\n \n \n \n \n \n \n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.')\n }\n parser={value => value.replace(/\\.*/g, '')}\n name=\"deposit\"\n id=\"deposit\"\n placeholder={'2000'}\n value={values.deposit}\n onChange={value => this.inputNumberCallback('deposit', value)}\n className=\"w-100\"\n required\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\n\nOfferFields.defaultProps = {};\n\nOfferFields.propTypes = {\n values: PropTypes.object.isRequired,\n errors: PropTypes.any.isRequired,\n callback: PropTypes.func.isRequired,\n isLoading: PropTypes.bool.isRequired,\n};\nexport default OfferFields;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport configs from 'configs';\n\n\nclass Tracking extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n componentDidMount() {\n if (configs.pendo && configs.pendo.enabled) {\n const { code, email, name, roleName, creationDate, groupCode, groupName, groupType } = this.props;\n (function(apiKey){\n (function(p,e,n,d,o){var v,w,x,y,z;o=p[d]=p[d]||{};o._q=[];\n v=['initialize','identify','updateOptions','pageLoad','track'];for(w=0,x=v.length;w {\n if (document.getElementById('pendo')) {\n pendo.initialize({\n visitor: {\n id: code,\n email: email,\n full_name: name,\n role: roleName,\n creationDate: creationDate,\n },\n\n account: {\n id: groupCode,\n name: groupName,\n type: groupType,\n },\n });\n }\n }, 300);\n }\n }\n\n render() {\n return null;\n }\n}\n\nTracking.defaultProps = {\n groupName: '',\n groupCode: '',\n groupType: '',\n creationDate: '',\n};\n\nTracking.propTypes = {\n code: PropTypes.number.isRequired,\n email: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n roleName: PropTypes.string.isRequired,\n creationDate: PropTypes.string,\n groupName: PropTypes.string,\n groupCode: PropTypes.any,\n groupType: PropTypes.string,\n};\n\nexport default Tracking;\n","import React from 'react';\n\nimport configs from 'configs';\n\nconst MemberItem = ({ member, onOpenModal, onToggleMember }) => (\n 0 ? ' is-child' : ''}`}\n style={{marginLeft: member.role > 2 ?`${(member.role)}rem` : null}}\n >\n \n
\n {member.name\n \n
\n
\n {member.hasOwnProperty('name') ? member.name : 'Aggiungi'}\n
\n
\n
\n
\n
    \n
  • \n {member.business_name || ''}\n
  • \n
  • \n \n {member.roleName && {member.roleName}}\n {member.email}\n \n
  • \n
  • \n {member.status &&\n \n status: {{\n 'ACTIVATED':
    attivato
    ,\n 'SUSPENDED':
    disattivato
    ,\n 'PENDING_ACTIVATION':
    in attesa di attivazione
    ,\n }[member.status || '']}\n
    \n }\n
  • \n
\n
\n {{\n 'ACTIVATED': Disattiva,\n 'SUSPENDED': Attiva,\n }[member.status || '']}\n
\n
\n\n \n);\n\nexport default MemberItem;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Row, Col, Modal, Form, Input, Select } from 'antd';\n\nimport { toggleMember, addMember, updateMember } from 'containers/App/actions';\nimport {\n selectErrors,\n selectIsLoading,\n selectMembers,\n} from 'containers/App/selectors';\nimport { default as Loader } from 'components/Loader';\n\nimport MemberItem from './member-item';\n\nimport 'antComponentsStyle';\n\nclass SideColumn extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n isModalOpen: false,\n member: {},\n otherMembers: [],\n };\n }\n\n componentDidUpdate(prevProps) {\n const { profile: { members: prevMembers } } = prevProps;\n const { profile: { members } } = this.props;\n\n if (members !== prevMembers) {\n this.setState({ isModalOpen: false });\n }\n }\n\n toggleModal = () => this.setState({ isModalOpen: !this.state.isModalOpen });\n\n openModal = member => {\n const { members } = this.props;\n const otherMembers = member\n ? members.filter(otherMember => otherMember.code !== member.code)\n : members;\n\n this.setState(\n {\n member: {\n ...(member || {}),\n },\n otherMembers,\n },\n () => this.setState({ isModalOpen: true }),\n );\n };\n\n onChangeMemberFieldValue = ({ target: { name, value } }) =>\n this.setState({\n member: {\n ...this.state.member,\n [name]: value,\n },\n });\n\n onChangeParentValue = value =>\n this.setState({\n member: {\n ...this.state.member,\n parent_id: value,\n },\n });\n\n onChangeFeeType = value =>\n this.setState({\n member: {\n ...this.state.member,\n fee_type: value,\n },\n });\n\n submitMember = () => {\n if (this.state.member.code) {\n this.props.updateMember(this.state.member);\n } else {\n this.props.addMember(this.state.member);\n }\n };\n\n toggleMember = agentId => this.props.toggleMember(agentId);\n\n render() {\n const { profile, hasNetwork, errors: { member: errors={}}, isLoading, members } = this.props;\n const { member, otherMembers } = this.state;\n\n let membersCount = members.length;\n\n let memberHasOtherMembers = false;\n\n if (hasNetwork) {\n const subAgentFeature = profile.features.find(\n feature => feature.slug === 'network-sub-agent',\n );\n\n membersCount = subAgentFeature ? subAgentFeature.limit : members.length;\n }\n\n const membersCountResume = membersCount - members.length;\n\n const feeTypes = {\n FIXED_VALUE: 'Gettone fisso',\n FLAT_PERCENTAGE: 'Percentuale FLAT',\n HIERARCHICAL_PERCENTAGE: 'Percentuale gerarchica'\n };\n\n if (profile.group_fee_type !== 'FIXED_VALUE') {\n delete feeTypes.FIXED_VALUE;\n }\n\n return (\n <>\n
\n
\n
\n
\n \"Logo\"\n
\n
\n {profile.role === 1 &&\n
{profile.business_name}
\n }\n
{profile.name}
\n
{profile.email}
\n {hasNetwork &&\n
\n {profile.roleName}\n
\n }\n
\n
\n
\n
\n {hasNetwork && profile.role === 1 && (\n
\n

Il mio team ({members.length})

\n \n {!isLoading &&\n
\n {members && Array.isArray(members) && members.map(member => (\n this.openModal(member)}\n onToggleMember={!isLoading ? () => this.toggleMember(member.code) : null}\n />\n ))}\n {membersCountResume && membersCountResume > 0 ?\n [...Array(membersCountResume).keys()].map(idx =>\n this.openModal()}\n onCreate={this.addMemberHanlder}\n />\n )\n : null\n }\n
\n }\n\n this.submitMember()}\n onCancel={this.toggleModal}\n okText=\"Salva\"\n cancelText=\"Annulla\"\n destroyOnClose\n >\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n {errors && Array.isArray(errors.member) && errors.member.length > 0 ?
{errors.member[0]}
: null}\n \n
\n )}\n \n );\n }\n}\n\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: selectIsLoading(),\n errors: selectErrors(),\n members: selectMembers(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n toggleMember: agentId => dispatch(toggleMember(agentId)),\n addMember: agentData => dispatch(addMember(agentData)),\n updateMember: agentData => dispatch(updateMember(agentData)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(withConnect)(SideColumn);\n","import React from 'react';\nimport { createStructuredSelector } from 'reselect';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { FormattedMessage } from 'react-intl';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { Alert, Row, Col, Button, Form, Input } from 'antd';\nimport reducer from 'containers/App/reducer';\nimport saga from 'containers/App/saga';\n\nimport {\n selectIsLoading,\n selectErrors,\n selectHasErrors,\n} from 'containers/App/selectors';\nimport { sendUpdateProfile } from 'containers/App/actions';\n\nimport { validatePhone } from '../CarQuote/validator';\nimport messages from './messages';\n\nclass FormProfile extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n profile: props.profile || {},\n submitting: false,\n submitted: false,\n hasErrors: false,\n errors: {\n name: false,\n phone: false,\n },\n };\n }\n\n resetErrors = input => {\n if (typeof input !== 'undefined') {\n this.setState({\n errors: { ...this.state.errors, [input]: false },\n });\n } else {\n this.setState(() => ({\n errors: {\n name: false,\n phone: false,\n },\n hasErrors: false,\n }));\n }\n };\n\n isValid() {\n let valid = true;\n const { profile, errors } = this.state;\n\n if (profile.phone !== '' && !validatePhone(profile.phone)) {\n valid = false;\n errors.phone = true;\n } else {\n errors.phone = false;\n }\n\n if (!profile.business_name || profile.business_name.trim() === '') {\n valid = false;\n errors.business_name = true;\n } else {\n errors.business_name = false;\n }\n\n if (!profile.email || profile.email.trim() === '') {\n valid = false;\n errors.email = true;\n } else {\n errors.email = false;\n }\n\n this.setState(() => ({ errors }));\n return valid;\n }\n\n handleSubmit = e => {\n e.preventDefault();\n this.resetErrors();\n\n const { profile } = this.state;\n\n if (this.isValid()) {\n if (!this.state.submitting) {\n this.props.sendUpdateProfile(profile);\n this.setState({ submitting: false, submitted: true });\n }\n }\n };\n\n onInputChange = e => {\n const value = e.target.value;\n const name = e.target.name;\n this.resetErrors(name);\n\n this.setState({\n profile: { ...this.state.profile, [name]: value },\n });\n };\n\n onAlertDismiss = () => {\n this.setState({ submitted: false });\n };\n\n render() {\n let { profile, errors, submitted } = this.state;\n const { hasErrors } = this.props;\n const profileHasErrors = hasErrors('profile')\n errors = { ...errors, ...this.props.updateErrors.profile || {} };\n\n return (\n
\n {submitted || profileHasErrors ?\n \n : null\n }\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n sendUpdateProfile: profile => dispatch(sendUpdateProfile(profile)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: selectIsLoading(),\n updateErrors: selectErrors(),\n hasErrors: (state, errorDomain) => selectHasErrors(state, errorDomain),\n});\n\nconst withReducer = injectReducer({ key: 'user', reducer });\nconst withSaga = injectSaga({ key: 'user', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(FormProfile);\n","import React from 'react';\nimport { Alert, Row, Col, Button, Form, Input } from 'antd';\nimport { createStructuredSelector } from 'reselect';\nimport { FormattedMessage } from 'react-intl';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport { selectIsLoading, selectErrors, selectHasErrors } from 'containers/App/selectors';\nimport { sendUpdatePassword } from 'containers/App/actions';\nimport messages from './messages';\n\nclass FormPassword extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n submitting: false,\n submitted: false,\n passwords: {\n password: false,\n new_password: false,\n confirm_password: false,\n },\n errors: {\n password: false,\n new_password: false,\n confirm_password: false,\n },\n };\n }\n\n resetErrors = input => {\n if (typeof input !== 'undefined') {\n this.setState({\n errors: { ...this.state.errors, [input]: false },\n });\n } else {\n this.setState(() => ({\n errors: {\n password: false,\n new_password: false,\n confirm_password: false,\n }\n }));\n }\n };\n\n isValid() {\n let valid = true;\n const { passwords, errors } = this.state;\n\n if (\n !passwords.password ||\n passwords.password.trim() === ''\n ) {\n valid = false;\n errors.password = true;\n } else {\n errors.password = false;\n }\n\n if (\n !passwords.new_password ||\n passwords.new_password.trim() === '' ||\n passwords.new_password.trim().length < 8\n ) {\n valid = false;\n errors.new_password = ['La nuova password deve contenere almeno 8 caratteri'];\n } else {\n errors.new_password = false;\n }\n\n if (\n passwords.new_password !== passwords.confirm_password\n ) {\n valid = false;\n errors.confirm_password = ['Le due password non coincidono'];\n } else {\n errors.confirm_password = false;\n }\n\n this.setState(() => ({ errors }));\n return valid;\n }\n\n handleSubmit = e => {\n e.preventDefault();\n this.resetErrors();\n\n if (this.isValid()) {\n if (!this.state.submitting) {\n this.props.sendUpdatePassword(this.state.passwords);\n this.setState({ submitting: false, submitted: true });\n }\n }\n };\n\n onInputChange = e => {\n const value = e.target.value;\n const name = e.target.name;\n this.resetErrors(name);\n\n this.setState({\n passwords: { ...this.state.passwords, [name]: value },\n });\n };\n\n onAlertDismiss = () => {\n this.setState({ submitted: false });\n };\n\n render() {\n let { errors, submitted } = this.state;\n const { hasErrors } = this.props;\n const passwordHasErrors = hasErrors('password')\n errors = { ...errors, ...this.props.updateErrors.password || {} };\n\n return (\n
\n {submitted || passwordHasErrors ?\n \n : null\n }\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n sendUpdatePassword: passwords => dispatch(sendUpdatePassword(passwords)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: selectIsLoading(),\n updateErrors: selectErrors(),\n hasErrors: (state, errorDomain) => selectHasErrors(state, errorDomain),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(withConnect)(FormPassword);\n","import React from 'react';\nimport { Alert } from 'reactstrap';\nimport { Row, Col, Button, Form, Input } from 'antd';\nimport { createStructuredSelector } from 'reselect';\nimport { FormattedMessage } from 'react-intl';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport { selectIsLoading, selectErrors, selectHasErrors } from 'containers/App/selectors';\nimport { sendRequestApiKey } from 'containers/App/actions';\nimport messages from './messages';\n\nclass FormApiKey extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n alertIsVisible: false,\n };\n }\n\n handleSubmit = e => {\n e.preventDefault();\n\n if (!this.props.profile.apiKey || this.props.profile.apiKey === ''\n || confirm('Creando una nuova chiave quella attuale verrà disabilitata. Sicuro di voler procedere?')\n ) {\n this.alertDismiss();\n this.props.sendRequestApiKey();\n }\n };\n\n alertDismiss = () => {\n this.setState({ alertIsVisible: false });\n };\n\n onCopyButton = () => {\n navigator.clipboard.writeText(this.props.profile.apiKey)\n this.setState({ copied: true }, () => {\n setTimeout(() => this.setState({ copied: false }), 1300)\n });\n };\n\n render() {\n let { copied, alertIsVisible } = this.state;\n const { hasErrors, isLoading, errors } = this.props;\n const apikeyHasErrors = hasErrors('apiKey')\n let errorMessage;\n\n if (errors && errors.apiKey && Object.keys(errors.apiKey).length > 0) {\n errorMessage = 'Si sono verificati errori, si prega di riprovare';\n }\n\n return (\n
\n {alertIsVisible || apikeyHasErrors ?\n \n : null\n }\n
\n
\n \n \n Chiave API personale (documentazione )\n }\n help={copied ? `Copiata 👍🏼` : null}\n validateStatus={errors.password ? 'error' : null}\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n sendRequestApiKey: () => dispatch(sendRequestApiKey()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: selectIsLoading(),\n errors: selectErrors(),\n hasErrors: (state, errorDomain) => selectHasErrors(state, errorDomain),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(withConnect)(FormApiKey);\n","import React from 'react';\nimport { Form, Row, Col, Button, Alert, Upload, Icon } from 'antd';\nimport { createStructuredSelector } from 'reselect';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport { selectIsLoading, selectTheme, selectErrors, selectHasErrors } from 'containers/App/selectors';\nimport { uploadLogo } from 'containers/App/actions';\n\nimport './styles.scss';\n\nclass FormRebrand extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n uploading: false,\n submitting: false,\n submitted: false,\n userTheme: props.userTheme,\n errors: {\n logo: false,\n theme: false,\n },\n };\n }\n\n resetErrors = input => {\n if (typeof input !== 'undefined') {\n this.setState({\n errors: { ...this.state.errors, [input]: false },\n });\n } else {\n this.setState(() => ({\n errors: {\n logo: false,\n theme: false,\n }\n }));\n }\n };\n\n // handleSubmit = e => {\n // e.preventDefault();\n // this.resetErrors();\n\n // if (!this.state.submitting) {\n // setTimeout(() => this.onAlertDismiss(), 1500);\n // }\n // };\n\n handleThemeChange = ({target: {value}}) => {\n this.resetErrors();\n\n this.setState({ userTheme: value });\n };\n\n handleUploadChange = info => this.setState({ uploading: info.file.status === 'uploading' });\n\n beforeUpload = file => {\n const isImage = file.type.startsWith('image/');\n const isLt2M = file.size / 1024 / 1024 < 2;\n const logoErrors = [];\n\n if (!isImage) {\n logoErrors.push('Sono consentiti solo file di tipo immagine (png, jpg, gif, ...)');\n }\n\n if (!isLt2M) {\n logoErrors.push('Il file deve pesare meno di 2MB');\n }\n\n this.setState({ errors: {logo: logoErrors}})\n\n if (isImage && isLt2M) {\n this.props.uploadLogo(file);\n }\n\n return false;\n }\n\n onAlertDismiss = () => {\n this.setState({ submitted: false });\n };\n\n render() {\n let { userTheme, errors, submitted } = this.state;\n const { profile, hasErrors } = this.props;\n const rebrandHasErrors = hasErrors('rebrand')\n errors = { ...errors, ...this.props.rebrandErrors.rebrand || {} };\n\n return (\n
\n {submitted || rebrandHasErrors ?\n \n : null\n }\n
\n \n {/* \n
\n \n {Object.keys(profile.themeColors).map(themeColorKey =>\n
\n \n \n
\n )}\n \n \n */}\n \n
\n \n \n {profile.logo ?\n \"Logo\n :\n
\n \n
Upload
\n
\n }\n \n \n \n \n
\n {/* \n \n \n \n \n \n */}\n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n uploadLogo: file => dispatch(uploadLogo(file)),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: selectIsLoading(),\n userTheme: selectTheme(),\n rebrandErrors: selectErrors(),\n hasErrors: state => selectHasErrors(state, 'rebrand'),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(withConnect)(FormRebrand);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'antd';\n\nimport { SECTION_TITLE, SECTION_SINGLE_TITLE } from './constants';\nimport './styles.scss';\n\nclass HorizontalFilter extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n const { results } = this.props;\n\n return (\n
\n
\n
\n {`${results} ${results === 1 ? SECTION_SINGLE_TITLE : SECTION_TITLE}`}\n \n
\n
\n
\n );\n }\n}\n\nHorizontalFilter.defaultProps = {\n results: 0\n};\n\nHorizontalFilter.propTypes = {\n results: PropTypes.number.isRequired,\n};\n\nexport default HorizontalFilter;\n","export const SECTION_TITLE = 'Provider presenti';\nexport const SECTION_SINGLE_TITLE = 'Provider presente';\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'antd';\n\nimport { SECTION_TITLE, SECTION_SINGLE_TITLE } from './constants';\nimport './styles.scss';\n\nclass HorizontalFilter extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n const { results } = this.props;\n\n return (\n
\n
\n
\n {`${results} ${results === 1 ? SECTION_SINGLE_TITLE : SECTION_TITLE}`}\n \n
\n
\n
\n );\n }\n}\n\nHorizontalFilter.defaultProps = {\n results: 0\n};\n\nHorizontalFilter.propTypes = {\n results: PropTypes.number.isRequired,\n};\n\nexport default HorizontalFilter;\n","export const SECTION_TITLE = 'Prodotti presenti';\nexport const SECTION_SINGLE_TITLE = 'Prodotto presente';\n","import React from 'react';\n\nconst AccountActivationTerms = ({ acceptTerms }) => (\n <>\n
\n \n
\n
\n \n \n
\n
\n \n
\n \n);\n\nexport default AccountActivationTerms;\n","export { default as AlertWithMessage } from './Alert/message';\nexport { default as DdoughnutChart } from './Chart/doughnut';\nexport { default as LineChart } from './Chart/line';\n\nexport { default as AgentsList } from './List/agents';\nexport { default as AgentAsListItem } from './Agent/item';\nexport { default as AgentItemDetails } from './Agent/details';\n\nexport { default as DataWidget } from './DataWidget/index';\nexport { default as Section } from './Section/index';\n\nexport { default as Select } from './Select/index';\nexport { default as SelectModal } from './Select/modal';\n\nexport { default as TableWidget } from './TableWidget/index';\nexport { default as TableWidgetWithQuotations } from './TableWidget/quotations';\n\nexport { default as Search } from './Search/index';\nexport { default as HorizontalFilter } from './HorizontalFilter/index';\n\nexport { default as CatalogSearch } from './CatalogSearch/index';\nexport {\n default as HorizontalCatalogFilter,\n} from './HorizontalCatalogFilter/index';\n\nexport { default as SelectFilter } from './SearchFilters/select';\nexport {\n default as SelectCollapsibleFilter,\n} from './SearchFilters/selectCollapsible';\nexport { default as MultiselectFilter } from './SearchFilters/multiselect';\nexport {\n default as MultiselectWithIconFilter,\n} from './SearchFilters/multiselectWithIcon';\nexport { default as ChoiceFilter } from './SearchFilters/choice';\nexport { default as BadgeFilter } from './SearchFilters/badge';\n\n// Pagination\nexport { default as Paginator } from './Paginator/index';\nexport { default as QuotationsPaginator } from './Paginator/quotations';\n\nexport { default as CarItemSkeletron } from './Skeletons/carItem';\nexport { default as CarItemsListSkeletron } from './Skeletons/carItemsList';\nexport { default as SeachSkeletron } from './Skeletons/search';\n\nexport { default as Spinner } from './Spinner/index';\n\nexport { default as PrintForm } from './Forms/index';\nexport { default as OfferForm } from './Forms/offer';\n\nexport { default as OfferInfo } from './OfferInfo/index';\nexport { default as OfferPrice } from './OfferPrice/index';\nexport { default as OfferStickyPrice } from './OfferPrice/sticky';\nexport { default as OfferDetails } from './OfferDetails/index';\nexport { default as OfferPrint } from './OfferPrint/index';\n\nexport { default as SidebarPreview } from './Quotation/sidebar-preview';\nexport { default as QuotationInitializer } from './Quotation/initializer';\nexport { default as CustomerForm } from './Quotation/form-customer';\nexport { default as CustomerFormWrapper } from './FormCustomerWrapper';\nexport { default as ConfirmForm } from './Quotation/form-confirm';\nexport { default as DocumentsForm } from './Quotation/form-documents';\n\nexport { default as RightSideModal } from './Modal/right';\n\nexport { default as QuotationSearch } from './QuotationsSearch/index';\n\n// Sorts\nexport { default as QuotationsSort } from './QuotationsSort/index';\n\n// Catalog\nexport { default as CarItemPreview } from './CarItemPreview/index';\nexport { default as CarItemButtonBoard } from './CarItemButtonBoard/index';\nexport { default as CarSelector } from './CarSelector/index';\nexport { default as CarCreator } from './CarCreator/index';\nexport { default as CarImages } from './CarImages/index';\nexport { default as OfferValue } from './OfferValue/index';\nexport { default as OfferServices } from './OfferServices/index';\nexport { default as OfferChilds } from './OfferChilds/index';\nexport { default as CustomizeOffer } from './CustomizeOffer/index';\nexport { default as RequestOffer } from './RequestOffer/index';\n\n// Banners\nexport { default as OffersBanner } from './Banners/offers';\nexport { default as SponsorBanner } from './Banners/sponsor';\n\n// Form\nexport { default as CustomerFormFields } from './CustomerForm/fields'; // @deprecated\nexport { default as OfferFromFields } from './OfferForm/fields';\n\n// Tracking\nexport { default as Tracking } from './Tracking/index';\n\n// Loader\nexport { default as Loader } from './Loader/index';\n\n// Profile\nexport { default as AgentSideColumn } from './Profile/side-column';\nexport { default as FormProfile } from './Profile/form-profile';\nexport { default as FormPassword } from './Profile/form-password';\nexport { default as FormApiKey } from './Profile/form-api-key';\nexport { default as FormRebrand } from './Profile/form-rebrand';\n\n// Provider\nexport { default as HorizontalProvidersFilter } from './HorizontalProvidersFilter';\n\n// Provider\nexport { default as HorizontalProductsFilter } from './HorizontalProductsFilter';\n\nexport { default as AccountActivationTerms } from './Account/activation';\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".doughnut .legend-value-w {\\n display: inline !important; }\\n\\n.doughnut .el-legend .legend-pin {\\n margin-left: 1rem; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferServices .flex-section .flex-section-header {\\n min-width: 20%; }\\n\\n#OfferServices .item-box {\\n min-height: 120px; }\\n #OfferServices .item-box .description {\\n font-size: .8em; }\\n #OfferServices .item-box .addon {\\n position: absolute;\\n bottom: 10px;\\n right: 16px;\\n font-size: 14px; }\\n #OfferServices .item-box .addon input[type=number] {\\n padding-right: 20px; }\\n\", \"\"]);\n\n// exports\n","/*\n *\n * LanguageProvider constants\n *\n */\n\nexport const CHANGE_LOCALE = 'app/LanguageToggle/CHANGE_LOCALE';\n","/*\n *\n * LanguageProvider reducer\n *\n */\n\nimport { fromJS } from 'immutable';\n\nimport { CHANGE_LOCALE } from './constants';\nimport { DEFAULT_LOCALE } from '../../i18n'; // eslint-disable-line\n\nexport const initialState = fromJS({\n locale: DEFAULT_LOCALE,\n});\n\nfunction languageProviderReducer(state = initialState, action) {\n switch (action.type) {\n case CHANGE_LOCALE:\n return state.set('locale', action.locale);\n default:\n return state;\n }\n}\n\nexport default languageProviderReducer;\n","export const getSustainabilityIndexByMonthlyRateAndDeposit = (monthlyRateMax, offerMonthlyRate, depositRequired, offerDeposit, thresholdMonthlyRateMax) => {\n if ((!depositRequired || offerDeposit > 0) && offerMonthlyRate <= monthlyRateMax) {\n return 2;\n }\n\n if (\n (depositRequired === false || offerDeposit > 0)\n && offerMonthlyRate <= (thresholdMonthlyRateMax * 1.1)\n ) {\n return 1;\n }\n\n if (\n depositRequired === true && offerDeposit === 0\n && offerMonthlyRate <= monthlyRateMax\n ) {\n return 1;\n }\n\n return 0;\n}\n\nexport const getSustainabilityMessageByMonthlyRateAndDeposit = (monthlyRateMax, offerMonthlyRate, depositRequired, offerDeposit, thresholdMonthlyRateMax) => {\n if ((!depositRequired || offerDeposit > 0) && offerMonthlyRate <= monthlyRateMax) {\n return 'CONGRATULATIONS_THIS_OFFER';\n }\n\n if (\n (depositRequired === false || offerDeposit > 0)\n && offerMonthlyRate <= (thresholdMonthlyRateMax * 1.1)\n ) {\n return 'MONTHLY_RATE_TRASHOLD';\n }\n\n if (\n depositRequired === true && offerDeposit === 0\n && offerMonthlyRate <= monthlyRateMax\n ) {\n return 'NEED_DEPOSIT';\n }\n\n return 'TOO_MUCH_MONTHLY_RATE';\n}\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Slider } from 'antd';\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nconst inputSlider = React.forwardRef((props, ref) => {\n const {\n range,\n step,\n additionalSteps,\n onChange,\n onAfterChange,\n labelFormatter,\n withStepLabel,\n tooltipVisible,\n disabled\n } = props;\n\n let { min, max, steps, value } = props;\n\n const onChangeHandler = values => {\n if (typeof onChange === 'function') {\n onChange(values);\n }\n };\n\n const onAfterChangeHandler = values => {\n if (typeof onAfterChange === 'function') {\n onAfterChange(values);\n }\n };\n\n if (range) {\n if (step) {\n steps = {}\n\n for (let idx = min; idx <= max; idx += step) {\n if (value.indexOf(idx) >= 0) {\n steps[idx] = {\n label: labelFormatter(idx),\n style: withStepLabel\n ? {\n fontWeight: '600',\n color: 'red'\n }\n : { display: 'none' },\n };\n } else {\n steps[idx] = {\n label: labelFormatter(idx),\n style: withStepLabel\n ? {\n fontSize: '.7em',\n color: 'red'\n }\n : { display: 'none' },\n };\n }\n }\n\n if (additionalSteps && additionalSteps.length) {\n additionalSteps.forEach(step => {\n if (value.indexOf(step) >= 0) {\n steps[step] = {\n label: labelFormatter(step),\n style: withStepLabel\n ? {\n fontWeight: '600',\n color: 'green'\n }\n : { display: 'none' },\n };\n } else {\n steps[step] = {\n label: labelFormatter(step),\n style: withStepLabel\n ? {\n fontSize: '.7em',\n color: 'green'\n }\n : { display: 'none' },\n };\n }\n });\n }\n } else {\n for (let idx in steps) {\n const style = steps[idx].style ? steps[idx].style :\n withStepLabel ? {\n fontWeight: '600',\n color: 'red'\n }\n : { display: 'none' };\n\n steps[idx] = {\n label: labelFormatter(idx),\n style,\n }\n }\n }\n } else if (steps && (!min || !max)) {\n min = parseFloat(Object.keys(steps).sort((val1, val2) => parseFloat(val1) - parseFloat(val2))[0]);\n max = parseFloat(Object.keys(steps).sort((val1, val2) => parseFloat(val1) - parseFloat(val2)).slice(-1)[0]);\n\n for (let idx in steps) {\n const style = steps[idx].style ? steps[idx].style :\n withStepLabel ? {\n fontWeight: '600',\n color: 'red'\n }\n : { display: 'none' };\n\n steps[idx] = {\n label: labelFormatter(idx),\n style,\n }\n }\n }\n\n if (!value && value !== 0) {\n value = max\n }\n\n return (\n
\n node} /*https://github.com/ant-design/ant-design/issues/37004*/\n tipFormatter={value => labelFormatter(value)}\n ref={ref}\n aria-hidden=\"true\"\n className=\"user-select-none\"\n />\n
\n );\n});\n\ninputSlider.defaultProps = {\n withStepLabel: true,\n range: true,\n tooltipVisible: false,\n disabled: false\n};\n\ninputSlider.propTypes = {\n steps: PropTypes.object,\n range: PropTypes.bool,\n min: PropTypes.number,\n max: PropTypes.number,\n value: PropTypes.any,\n onChange: PropTypes.func,\n onAfterChange: PropTypes.func,\n step: PropTypes.number,\n additionalSteps: PropTypes.array,\n labelFormatter: PropTypes.func.isRequired,\n withStepLabel: PropTypes.bool,\n tooltipVisible: PropTypes.bool,\n disabled: PropTypes.bool\n};\n\nexport default inputSlider;\n","const EXAMPLE_MAP = {\n 'offer.car.segmento': [\n {\n value: 'A',\n conditions: [['offer.duration', '<=', 42]],\n multipliedBy: 1,\n },\n {\n value: 'A',\n conditions: [['offer.duration', '>', 42]],\n multipliedBy: 1,\n },\n {\n value: 'B',\n conditions: [['offer.duration', '<=', 42]],\n multipliedBy: 1.333,\n },\n {\n value: 'B',\n conditions: [['offer.duration', '>', 42]],\n multipliedBy: 1,\n },\n ],\n};\n\nexport const getPriceFromMap = (price, priceMap, selectedOffer) => {\n let result = price;\n\n for (const dependencyPath in priceMap) {\n const found = dependencyElementExists(dependencyPath, selectedOffer);\n const dependencies = priceMap[dependencyPath]\n .filter(dep => dep.value == found)\n .filter(dep =>\n dep.conditions.every(condition => {\n const [conditionPath, conditionOperator, conditionValue] = condition;\n const conditionFound = dependencyElementExists(\n conditionPath,\n selectedOffer,\n );\n return evaluateCondition(\n `${conditionFound} ${conditionOperator} ${conditionValue}`,\n );\n }),\n );\n\n if (found && dependencies.length) {\n result *= dependencies[0].multipliedBy;\n }\n }\n\n return Math.round(result);\n};\n\nconst evaluateCondition = evalString => new Function(`'use strict'; return (${evalString})`)();\n\nconst dependencyElementExists = (dependencyPath, selectedOffer) => {\n const keys = dependencyPath.split('.');\n let data = selectedOffer;\n\n for (const key of keys) {\n data = data[key];\n\n if (data === undefined) {\n return undefined;\n }\n }\n\n return data;\n};\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\nimport { getPriceFromMap } from './priceMapParser.js';\n\nconst selectOfferSelector = state =>\n state.get('customizeOfferSelector', initialState);\n\nconst makeSelectOfferSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('offer'),\n );\n\nconst makeSelectMonthlyRateSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('monthlyRate'),\n );\n\nconst makeSelectFeesVisibileSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('feesVisible'),\n );\n\nconst makeSelectFeesSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('fees'),\n );\n\nconst makeSelectDisplayOffers = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('display'),\n );\nconst makeSelectServicesSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('services'),\n );\nconst makeSelectAccessoriesSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('accessories'),\n );\nconst makeSelectColorsSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('colors'),\n );\nconst makeSelectAccessoriesCodesSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('accessoriesCodes'),\n );\nconst makeSelectColorCodesSelector = () =>\n createSelector(selectOfferSelector, offerSelectorState =>\n offerSelectorState.get('colorCodes'),\n );\n\nconst getServicePriceByOfferParams = (service, selectedOffer) => {\n let { price } = service;\n\n if (service.has_price_map && service.price_map && (service, selectedOffer)) {\n const priceMapped = getPriceFromMap(price, service.price_map, selectedOffer);\n\n if (priceMapped) {\n price = priceMapped;\n }\n }\n\n return price;\n}\n\nexport {\n selectOfferSelector,\n makeSelectMonthlyRateSelector,\n makeSelectOfferSelector,\n makeSelectDisplayOffers,\n makeSelectServicesSelector,\n makeSelectAccessoriesSelector,\n makeSelectColorsSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectColorCodesSelector,\n makeSelectFeesVisibileSelector,\n makeSelectFeesSelector,\n getServicePriceByOfferParams,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { GET_OFFER, GET_CHILD_OFFER, OFFER_RECEIVED, SEND_QUOTE } from './constants';\n\nexport const getOffer = code => ({\n type: GET_OFFER,\n code,\n});\n\nexport const selectChildOffer = (childOffer) => ({\n type: GET_CHILD_OFFER,\n childOffer,\n});\n\n\n\nexport function offerLoaded(offer) {\n return {\n type: OFFER_RECEIVED,\n offer,\n };\n}\n\nexport function sendQuote(quote) {\n return {\n type: SEND_QUOTE,\n quote,\n };\n}\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { quotationLoaded } from './actions';\nimport {\n makeSelectQuotationCode,\n makeSelectProposalId,\n makeSelectQuotationStatus,\n} from './selectors';\nimport {\n GET_QUOTATION,\n UPDATE_QUOTATION_STATUS,\n} from './constants';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchQuotes() {\n const proposal_id = yield select(makeSelectProposalId());\n const requestURL = `${API_URL}proposals/${proposal_id}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response && response.data) {\n yield put(quotationLoaded(response.data));\n } else {\n window.location = '/quotations';\n }\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* updateStatus() {\n const code = yield select(makeSelectQuotationCode());\n const newStatus = yield select(makeSelectQuotationStatus());\n const requestURL = `${process.env.API_URL}quotations/${code}/status`;\n const requestBody = {\n status: newStatus,\n };\n\n try {\n const parameters = {\n method: 'PUT',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield fetchQuotes();\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(GET_QUOTATION, fetchQuotes);\n yield takeLatest(UPDATE_QUOTATION_STATUS, updateStatus);\n}\n\nexport default function* quotationData() {\n yield all([actionWatcher()]);\n}\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./badgeStyles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./badgeStyles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./badgeStyles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".OfferPrint {\\n color: #404950;\\n border-radius: 6px;\\n background-color: #fff;\\n padding: .5rem;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12); }\\n .OfferPrint .print {\\n padding: .5rem; }\\n .OfferPrint .title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n .OfferPrint .title .action-button.small {\\n margin-top: .2rem; }\\n .OfferPrint .modal-header {\\n border-bottom: unset !important;\\n color: #404950 !important;\\n margin-top: .5rem;\\n margin-bottom: .5rem; }\\n .OfferPrint .modal-header span {\\n color: #404950 !important; }\\n .OfferPrint .modal-title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n color: #404950; }\\n .OfferPrint .modal-content {\\n box-shadow: unset;\\n border: unset; }\\n .OfferPrint .modal-body, .OfferPrint .modal-header {\\n padding: unset; }\\n .OfferPrint .title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n .OfferPrint .title .action-button.small {\\n margin-top: -.2rem; }\\n .OfferPrint .btn-action {\\n width: 96%;\\n border-radius: .5rem;\\n background-color: #ff4a50;\\n text-align: center;\\n font-size: 1.2vw;\\n font-weight: 600;\\n line-height: 1em;\\n color: white;\\n padding: .8rem;\\n margin-top: .5rem;\\n border: 1px solid #f2f5fe; }\\n .OfferPrint label {\\n color: #404950;\\n font-size: 1.2vw;\\n font-weight: 400;\\n line-height: .3em; }\\n .OfferPrint input, .OfferPrint select, .OfferPrint textarea {\\n margin-bottom: .3rem; }\\n .OfferPrint .form-control {\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1.2vw;\\n line-height: 1em;\\n color: #484848;\\n font-weight: 400;\\n background-color: white;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 6px; }\\n .OfferPrint .is-invalid {\\n border: 2px solid #ff4a50 !important; }\\n .OfferPrint p {\\n padding: .4rem;\\n padding-bottom: 0;\\n color: #404950;\\n font-size: .9em;\\n font-weight: 400;\\n line-height: 1.3em; }\\n .OfferPrint button {\\n margin-top: .4rem;\\n margin-bottom: .2rem; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./simplePost.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./simplePost.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./simplePost.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOffer = state => state.get('offer', initialState);\n\nconst makeSelectOffer = () =>\n createSelector(selectOffer, offerState => offerState.get('offer'));\n\nconst makeSelectOfferCode = () =>\n createSelector(selectOffer, offerState => offerState.get('code'));\n\nconst makeSelectChildOfferCode = () =>\n createSelector(selectOffer, offerState => offerState.get('childOffer'));\n\nexport { selectOffer, makeSelectOffer, makeSelectOfferCode, makeSelectChildOfferCode };\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ui-collapse-list {\\n margin-top: 1rem;\\n width: 100%;\\n padding: 1rem;\\n border: 1px solid #dde2ec;\\n border-radius: 4px !important;\\n color: #404950; }\\n .ui-collapse-list .icon {\\n display: inline;\\n width: 20px;\\n height: 15px; }\\n .ui-collapse-list .icon svg {\\n width: 20px;\\n height: auto;\\n margin-bottom: .4rem;\\n margin-right: .4rem;\\n vertical-align: middle;\\n fill: #484848; }\\n .ui-collapse-list .ui-collapse-pointer {\\n cursor: pointer; }\\n .ui-collapse-list .action-icon, .ui-collapse-list .action-icon-remove {\\n display: inline;\\n width: 20px;\\n height: 15px;\\n transform: rotate(45deg);\\n cursor: pointer; }\\n .ui-collapse-list .action-icon svg, .ui-collapse-list .action-icon-remove svg {\\n width: 20px;\\n height: auto;\\n margin-bottom: .4rem;\\n margin-right: .4rem;\\n vertical-align: middle;\\n fill: #484848; }\\n .ui-collapse-list .action-icon-remove {\\n transform: rotate(90deg); }\\n .ui-collapse-list .ui-collapse-title {\\n width: 100%;\\n display: inline;\\n font-size: 16px;\\n font-weight: 600;\\n line-height: 1.375em;\\n color: #484848;\\n cursor: pointer; }\\n .ui-collapse-list .ui-collapse-title .fa {\\n color: #047bf8; }\\n .ui-collapse-list .ui-collapse-content {\\n padding: 1rem;\\n margin-top: 1rem; }\\n .ui-collapse-list .ui-collapse-content .ui-collapse-title {\\n margin-top: 1rem;\\n word-wrap: break-word;\\n font-size: 1.0em;\\n line-height: 1.4em;\\n color: #484848;\\n font-weight: 500; }\\n .ui-collapse-list .ui-collapse-content ul {\\n list-style-type: none;\\n word-wrap: break-word;\\n font-size: .9em;\\n line-height: 3em;\\n color: #484848;\\n padding-left: unset; }\\n .ui-collapse-list .ui-collapse-content ul li {\\n border-bottom: 1px solid #e4eaee;\\n line-height: 1.5em;\\n padding-top: 11px;\\n padding-bottom: 11px; }\\n .ui-collapse-list .ui-collapse-content ul li .nowrap {\\n white-space: nowrap; }\\n .ui-collapse-list .ui-collapse-content .ui-collapse-items:not(:first-child) {\\n margin-top: 2rem; }\\n .ui-collapse-list .ui-collapse-footer {\\n width: 100%;\\n font-size: .7em;\\n line-height: 1.2em;\\n color: #484848;\\n cursor: pointer;\\n padding-left: 1rem; }\\n\\n.ui-collapse-list:hover {\\n border: 1px solid #047bf8 !important; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferForm {\\n color: #404950;\\n margin-top: .5rem; }\\n #OfferForm .form-title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n #OfferForm .form-user svg {\\n margin-right: .5em;\\n width: 2rem;\\n height: 2.5rem;\\n fill: #484848; }\\n #OfferForm .form-content {\\n text-align: center;\\n padding: .5rem;\\n margin-top: .3em; }\\n #OfferForm .has-error {\\n font-size: 1.2vw;\\n line-height: 1em;\\n color: #dc3545;\\n font-weight: 400;\\n text-align: left;\\n margin-left: 3.5em; }\\n #OfferForm .form-control {\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1.2vw;\\n line-height: 1em;\\n color: #484848;\\n font-weight: 400;\\n background-color: white;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 6px; }\\n #OfferForm .customer-loader {\\n text-align: left;\\n font-size: 1vw;\\n line-height: 1.3em;\\n padding-left: 4em; }\\n #OfferForm .fiscal-code-input {\\n display: inline;\\n position: relative; }\\n #OfferForm .fiscal-code-input .form-control {\\n display: inline;\\n text-align: center;\\n background-color: #dde2ec;\\n font-weight: 700;\\n width: 86%; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#HorizontalFilter .element-wrapper .element-header {\\n margin-bottom: 0.5rem !important;\\n padding-bottom: .5rem; }\\n\\n#HorizontalFilter .element-wrapper {\\n padding-bottom: 1rem; }\\n\\n#HorizontalFilter .clear {\\n cursor: pointer;\\n font-size: 16px;\\n font-weight: 500;\\n color: #1b55e2;\\n text-decoration: underline;\\n display: inline; }\\n\\n#HorizontalFilter .sort-label {\\n font-size: .875rem;\\n font-weight: 500;\\n display: inline;\\n margin-right: .5rem; }\\n #HorizontalFilter .sort-label svg {\\n transform: scale(1, -1);\\n width: 20px;\\n height: 20px; }\\n\", \"\"]);\n\n// exports\n","/*\n* QuotationsReducer\n*/\n\nimport { fromJS, List } from 'immutable';\nimport {\n GET_QUOTATIONS,\n QUOTATIONS_RECEIVED,\n SEARCH_QUOTATIONS,\n FILTERS_RECEIVED,\n UPDATE_SORT,\n REMOVE_ALL,\n REMOVE_FILTER,\n SET_PAGE_NUMBER,\n} from './constants';\n\nimport moment from 'moment';\n\nconst startOfMonth = moment().startOf('month').format('YYYY-MM-DD');\nconst endOfMonth = moment().endOf('month').format('YYYY-MM-DD');\n\n// The initial state of the App\nexport const initialState = fromJS({\n quotations: [],\n loading: false,\n parameters: {\n query: '',\n fiscal_code: '',\n quotation_id: '',\n startDate: startOfMonth,\n endDate: endOfMonth,\n status: [],\n },\n total: 0,\n lastPage: 0,\n itemsPerPage: 10,\n currentPage: 1,\n orders: new List(),\n filters: new List(),\n selectedOrder: 'date',\n});\n\nfunction quotationsReducer(state = initialState, action) {\n switch (action.type) {\n case GET_QUOTATIONS:\n return state.set('loading', true);\n case QUOTATIONS_RECEIVED:\n return state\n .set('quotations', action.quotations)\n .set('total', action.total)\n .set('lastPage', action.lastPage)\n .set('currentPage', action.currentPage)\n .set('loading', false);\n case SEARCH_QUOTATIONS:\n return state\n .set('parameters', fromJS(action.parameters))\n .set('currentPage', 1)\n .set('lastPage', 0)\n .set('loading', true);\n case FILTERS_RECEIVED:\n const { filters } = action;\n const { orders } = filters;\n delete filters.orders;\n return state.set('orders', new List(orders))\n .set('filters', filters);\n case UPDATE_SORT:\n return state\n .set('selectedOrder', action.order)\n .set('currentPage', 1)\n .set('lastPage', 0)\n .set('loading', true);\n case REMOVE_FILTER:\n return state\n .setIn(['parameters', action.filterName], '')\n .set('currentPage', 1)\n .set('lastPage', 0)\n .set('loading', true);\n case REMOVE_ALL:\n return state\n .set(\n 'parameters',\n fromJS({\n query: '',\n fiscal_code: '',\n quotation_id: '',\n }),\n )\n .set('currentPage', 1)\n .set('lastPage', 0)\n .set('loading', true);\n case SET_PAGE_NUMBER:\n return state.set('currentPage', action.pageNumber);\n default:\n return state;\n }\n}\nexport default quotationsReducer;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectQuote = state => state.get('quote', initialState);\n\nconst selectQuotation = state => state.get('quotation', initialState);\n\nconst makeSelectQuote = () =>\n createSelector(selectQuote, quotationState => quotationState.get('quotation'));\n\nconst makeSelectQuotationCode = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('code'));\n\nconst makeSelectProposalId = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('proposal_id'));\n\nconst makeSelectCustomerCode = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerCode'));\n\nconst makeSelectCustomerVat = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerVat'));\n\nconst makeSelectCustomerContractualCategory = () =>\n createSelector(selectQuote, quotationState => quotationState.get('contractualCategory'));\n\nconst makeSelectCustomer = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customer'));\n\nconst makeSelectContractualCategoryTypeSelected = () =>\n createSelector(selectQuote, quotationState => quotationState.get('contractualCategoryType'));\n\nconst makeSelectLoading = () =>\n createSelector(selectQuote, offersState => offersState.get('loading'));\n\nconst makeSelectSearchingCustomer = () =>\n createSelector(selectQuote, quotationState => quotationState.get('search'));\n\nconst makeSelectCustomerFound = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerFound'));\n\nconst makeSelectCustomerUpdatedInput = () =>\n createSelector(selectQuote, quotationState => quotationState.get('customerUpdatedInput'));\n\nconst makeSelectQuotattionAttachments = () =>\n createSelector(selectQuote, quotationState => quotationState.get('attachments'));\n\nconst selectErrors = () =>\n createSelector(selectQuote, quotationState => quotationState.get('errors'));\n\nconst selectHasErrors = () =>\n createSelector(selectQuote, quotationState => quotationState.get('hasErrors'));\n\nconst selectUpdated = () =>\n createSelector(selectQuote, quotationState => quotationState.get('updated'));\n\nexport {\n selectQuotation,\n makeSelectLoading,\n makeSelectQuotationCode,\n makeSelectProposalId,\n makeSelectCustomerContractualCategory,\n makeSelectCustomerCode,\n makeSelectCustomerVat,\n makeSelectSearchingCustomer,\n makeSelectCustomer,\n makeSelectContractualCategoryTypeSelected,\n makeSelectCustomerFound,\n makeSelectCustomerUpdatedInput,\n makeSelectQuote,\n makeSelectQuotattionAttachments,\n selectErrors,\n selectHasErrors,\n selectUpdated,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offer.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offer.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./offer.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import createHistory from 'history/createBrowserHistory';\nconst history = createHistory();\nexport default history;\n","import {\n GET_PAGE_NUMBER,\n SET_PAGE_NUMBER,\n GET_PAGINATOR,\n UPDATE_PAGINATOR,\n SET_ITEMS_PER_PAGE,\n GET_ITEMS_PER_PAGE,\n} from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getPage = () => ({\n type: GET_PAGE_NUMBER,\n});\n\n/**\n *\n * @param pageNumber\n * @returns {{page: *, type: *}}\n */\nexport function setPage(pageNumber) {\n return {\n type: SET_PAGE_NUMBER,\n pageNumber,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getPaginator = () => ({\n type: GET_PAGINATOR,\n});\n\n/**\n *\n * @param total\n * @param lastPage\n * @param currentPage\n * @returns {{total: *, lastPage: *, type: *, currentPage: *}}\n */\nexport function updatePaginator(total, lastPage, currentPage) {\n return {\n type: UPDATE_PAGINATOR,\n total,\n lastPage,\n currentPage,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getItemsPerPage = () => ({\n type: GET_ITEMS_PER_PAGE,\n});\n\n/**\n *\n * @param itemsPerPage\n * @returns {{itemsPerPage: *, type: *}}\n */\nexport function setItemsPerPage(itemsPerPage) {\n return {\n type: SET_ITEMS_PER_PAGE,\n itemsPerPage,\n };\n}\n","import { all, takeLatest, put, select } from 'redux-saga/effects';\nimport { PRESCORING_URL, PRESCORING_AUTH } from 'containers/App/constants';\nimport {\n SET_CONTRACTUAL_CATEGORY,\n SET_CONTRACTUAL_CATEGORY_OFFER,\n CHECK_SUSTAINABILITY_REQUEST,\n CHECK_SUSTAINABILITY_OFFER_REQUEST,\n UPDATE_PROPOSAL,\n SAVE_QUOTATION,\n} from './constants'\nimport {\n toggleLoading,\n receiveLogic,\n receiveOfferLogic,\n receiveSustainabilityResponse,\n receiveSustainabilityOfferResponse,\n closeModal,\n parsePrescoringParamsToFilters,\n} from './actions';\nimport {\n saveQuotationSuccess,\n saveQuotationError,\n setUpdated\n} from '../Quotation/actions';\n\nimport { makeSelectSelectedParams, makeSelectParam } from '../Search/selectors';\n\nimport { makeSelectCheckInputData, makeSelectOfferCheckInputData, makeSelectIsLoading } from './selectors';\nimport { makeSelectUser } from 'containers/App/selectors';\nimport { getRequestHeadersAsLogged, getRefreshToken, responseHandler } from '../../utils/auth';\n\nfunction* fetchLogic({contractualCategory}) {\n const isLoading = yield select(makeSelectIsLoading());\n const user = yield select(makeSelectUser());\n const requestURL = `${PRESCORING_URL}logic/${contractualCategory}`;\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n\n try {\n const parameters = {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${PRESCORING_AUTH}`,\n 'X-Refresh-Tkn': getRefreshToken(),\n 'X-Agent-Id': `${user.code}`,\n 'X-Agent-Email': `${user.email}`,\n },\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(toggleLoading(false));\n\n yield put(receiveLogic(response));\n } catch (err) {\n console.log('request error', err);\n alert('Spiacenti, si è verificato un errore con la richiesta. Si prega di riprovare');\n yield put(receiveLogic({}));\n }\n }\n}\n\nfunction* fetchLogicOffer({contractualCategory}) {\n const isLoading = yield select(makeSelectIsLoading());\n const user = yield select(makeSelectUser());\n const requestURL = `${PRESCORING_URL}logic/${contractualCategory}`;\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n\n try {\n const parameters = {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${PRESCORING_AUTH}`,\n 'X-Refresh-Tkn': getRefreshToken(),\n 'X-Agent-Id': `${user.code}`,\n 'X-Agent-Email': `${user.email}`,\n },\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(toggleLoading(false));\n\n yield put(receiveOfferLogic(response));\n } catch (err) {\n console.log('request error', err);\n alert('Spiacenti, si è verificato un errore con la richiesta. Si prega di riprovare');\n yield put(receiveOfferLogic({}));\n }\n }\n}\n\nfunction* requestCheck() {\n const isLoading = yield select(makeSelectIsLoading());\n const inputData = yield select(makeSelectCheckInputData());\n const user = yield select(makeSelectUser());\n const requestURL = `${PRESCORING_URL}check`;\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n\n try {\n const encodedInputData = inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData;\n const parameters = {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${PRESCORING_AUTH}`,\n 'X-Refresh-Tkn': getRefreshToken(),\n 'X-Agent-Id': `${user.code}`,\n 'X-Agent-Email': `${user.email}`,\n },\n body: JSON.stringify(encodedInputData)\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.success) {\n yield put(receiveSustainabilityResponse(response.data));\n\n if (!location.pathname.startsWith('/quotations/')) {\n if (!(new RegExp('^\\/offers\\/[a-z0-9]+', 'i')).test(location.pathname)) {\n const currentSelectedParams = yield select(makeSelectSelectedParams());\n const currentParams = yield select(makeSelectParam());\n\n yield parsePrescoringParamsToFilters(response.data, currentSelectedParams, currentParams, inputData.contractualCategory);\n }\n }\n\n yield put(toggleLoading(false));\n } else {\n console.log('request error', response.error, response.errorCode);\n alert('Spiacenti, si è verificato un errore 1 con la richiesta. Si prega di riprovare');\n yield put(receiveSustainabilityResponse({}));\n yield put(closeModal());\n }\n } catch (err) {\n // console.log('request error', err);\n // alert('Spiacenti, si è verificato un errore 2 con la richiesta. Si prega di riprovare');\n // yield put(receiveSustainabilityResponse({}));\n // yield put(closeModal());\n }\n }\n}\n\nfunction* requestOfferCheck({offer}) {\n const isLoading = yield select(makeSelectIsLoading());\n const inputData = yield select(makeSelectOfferCheckInputData());\n const user = yield select(makeSelectUser());\n const requestURL = `${PRESCORING_URL}offer-check`;\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n\n try {\n const encodedInputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n encodedInputData.offerData = offer;\n\n const parameters = {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${PRESCORING_AUTH}`,\n 'X-Refresh-Tkn': getRefreshToken(),\n 'X-Agent-Id': `${user.code}`,\n 'X-Agent-Email': `${user.email}`,\n },\n body: JSON.stringify(encodedInputData)\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.success) {\n yield put(toggleLoading(false));\n yield put(receiveSustainabilityOfferResponse(response.data));\n } else {\n console.log('request error', response.error, response.errorCode);\n alert('Spiacenti, si è verificato un errore 1 con la richiesta. Si prega di riprovare');\n yield put(receiveSustainabilityOfferResponse({}));\n }\n } catch (err) {\n console.log('request error', err);\n alert('Spiacenti, si è verificato un errore 2 con la richiesta. Si prega di riprovare');\n yield put(receiveSustainabilityOfferResponse({}));\n }\n }\n}\n\nfunction* updateProposal({proposal}) {\n const isLoading = yield select(makeSelectIsLoading());\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n const requestURL = `${process.env.API_URL}proposals/${proposal.id}`;\n const user = yield select(makeSelectUser());\n\n proposal.contractual_category = proposal.customer.category.id;\n proposal.fiscal_code = proposal.customer.fiscal_code;\n\n try {\n const parameters = {\n method: 'PUT',\n headers: {\n ...getRequestHeadersAsLogged(),\n 'X-Agent-Id': `${user.code}`,\n 'X-Agent-Email': `${user.email}`,\n },\n body: JSON.stringify(proposal),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.data && response.data.id && response.data.sustainability) {\n // window.location.replace('/quotations/' + response.data.id);\n } else {\n alert('Spiacenti, si è verificato un errore con la richiesta. Si prega di riprovare');\n console.error('request error', response);\n }\n yield put(toggleLoading(false));\n } catch (err) {\n console.log('request error', err);\n }\n }\n}\n\nfunction* saveQuotation({quotation}) {\n const isLoading = yield select(makeSelectIsLoading());\n\n if (!isLoading) {\n yield put(toggleLoading(true));\n const requestURL = `${process.env.API_URL}quote`;\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(quotation),\n };\n\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n if (response.data && response.data.quotation && response.data.quotation.data.code) {\n yield put(saveQuotationSuccess(response.data));\n window.location.reload();\n // attenzione: non fare reset prescoring da qui, vengono cancellati alcuni dati nella proposal del db\n } else {\n yield put(saveQuotationError(response.errors));\n }\n yield put(toggleLoading(false));\n } catch (err) {\n console.log('request error', err);\n }\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(SET_CONTRACTUAL_CATEGORY, fetchLogic);\n yield takeLatest(SET_CONTRACTUAL_CATEGORY_OFFER, fetchLogicOffer);\n yield takeLatest(CHECK_SUSTAINABILITY_REQUEST, requestCheck);\n yield takeLatest(CHECK_SUSTAINABILITY_OFFER_REQUEST, requestOfferCheck);\n yield takeLatest(UPDATE_PROPOSAL, updateProposal);\n yield takeLatest(SAVE_QUOTATION, saveQuotation);\n}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#CatalogSearch .catalog-filter-status .chip {\\n width: 86px;\\n text-align: center; }\\n\\n#CatalogSearch.element-box {\\n padding: 1rem 1rem !important;\\n margin-bottom: .1rem; }\\n\\n#CatalogSearch .form-control {\\n display: block;\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 0.9rem;\\n line-height: 1.5;\\n color: #495057;\\n background-color: #fff;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 4px; }\\n\\n#CatalogSearch .SelectCollapsible:last-child {\\n border-bottom: unset !important; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction ServicesIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},[React.createElement(\"path\",{\"d\":\"M245.145,81.237c0-37.127-23.604-70.295-57.4-80.659c-3.041-0.934-6.346-0.368-8.901,1.523\\n\\t\\tc-2.559,1.892-4.068,4.884-4.068,8.064v45.798h-45.468l-0.005-45.799c0-3.181-1.509-6.174-4.066-8.063\\n\\t\\tc-2.559-1.892-5.862-2.458-8.902-1.523C82.535,10.942,58.932,44.11,58.932,81.237c0,28.332,13.015,55.155,35.059,72.77v181.664\\n\\t\\tc-22.044,17.613-35.059,44.436-35.059,72.768c0,37.127,23.604,69.292,57.401,79.655c3.044,0.934,6.345,1.37,8.903-0.521\\n\\t\\tc2.557-1.892,4.065-4.883,4.065-8.064v-45.797h45.473v45.797c0,3.182,1.548,6.122,4.067,8.064c2.549,1.966,6.342,2.307,8.902,1.523\\n\\t\\tc33.807-10.329,57.4-43.53,57.4-80.658c0-28.332-13.014-55.155-35.059-72.768V154.007\\n\\t\\tC232.131,136.393,245.145,109.569,245.145,81.237z M194.252,348.844c19.307,13.706,30.835,35.985,30.835,59.596\\n\\t\\tc0,23.272-11.939,44.45-30.254,55.634v-40.39c0-5.538-4.49-10.028-10.029-10.028h-65.53c-5.538,0-10.029,4.49-10.029,10.028v40.39\\n\\t\\tc-18.316-11.184-30.255-32.362-30.255-55.634c0-23.61,11.527-45.889,30.835-59.596c2.651-1.881,4.225-4.928,4.225-8.178V149.011\\n\\t\\tc0-3.249-1.573-6.298-4.225-8.178c-19.308-13.706-30.835-35.985-30.835-59.596c0-23.272,11.938-44.453,30.257-55.635l0.004,40.392\\n\\t\\tc0.001,5.538,4.491,10.028,10.029,10.028h65.524c5.539,0,10.029-4.49,10.029-10.029V25.604\\n\\t\\tc18.315,11.182,30.254,32.362,30.254,55.633c0,23.61-11.528,45.891-30.835,59.596c-2.65,1.88-4.224,4.929-4.224,8.178v191.655\\n\\t\\tC190.028,343.916,191.602,346.963,194.252,348.844z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M405.995,223.351V101.153l17.539-28.154c1.717-2.755,1.992-6.17,0.743-9.166l-24.07-57.667\\n\\t\\tC398.648,2.432,394.999,0,390.952,0h-40.116c-4.047,0-7.696,2.432-9.255,6.166l-24.07,57.667c-1.249,2.996-0.973,6.411,0.743,9.166\\n\\t\\tl17.539,28.154v122.197c-14.33,3.211-25.073,16.024-25.073,31.309v203.248c0,17.695,14.397,32.093,32.093,32.093h56.163\\n\\t\\tc17.696,0,32.093-14.397,32.093-32.093V254.659C431.068,239.375,420.325,226.561,405.995,223.351z M357.518,20.059h26.753\\n\\t\\tl19.503,46.727l-16.318,26.197c-0.992,1.591-1.517,3.429-1.517,5.302v124.282h-30.088V98.284c0-1.873-0.525-3.711-1.518-5.302\\n\\t\\tl-16.318-26.197L357.518,20.059z M411.011,457.907c0,6.637-5.398,12.034-12.035,12.034h-56.163\\n\\t\\tc-6.636,0-12.035-5.397-12.035-12.034V254.659c0-6.636,5.399-12.034,12.035-12.034h56.163c6.637,0,12.035,5.398,12.035,12.034\\n\\t\\tV457.907z\",\"key\":1})]),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nServicesIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 490 490\",\"style\":{\"enableBackground\":\"new 0 0 490 490\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = ServicesIcon;\n\nServicesIcon.default = ServicesIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".MultiselectWithIcon {\\n margin-bottom: 30px; }\\n .MultiselectWithIcon .multi-select-icons-container {\\n list-style: none;\\n padding: 0px;\\n margin: 0px;\\n margin-bottom: 20px;\\n display: grid;\\n gap: 10px;\\n grid-template-columns: repeat(auto-fit, minmax(5.625rem, 1fr)); }\\n .MultiselectWithIcon .multi-select-icon-item {\\n display: inline-block;\\n white-space: nowrap;\\n vertical-align: middle;\\n border-radius: 4px;\\n margin: 0 5px 22px;\\n height: 4.688rem; }\\n .MultiselectWithIcon .multi-select-icon-item a {\\n border: 2px solid #dde2ec;\\n box-shadow: unset;\\n color: #495057;\\n display: block;\\n background-color: #fff;\\n padding: 10px;\\n border-radius: 6px;\\n margin: 0px;\\n text-decoration: none;\\n text-align: center;\\n transition: all 0.2s ease;\\n cursor: pointer; }\\n .MultiselectWithIcon .multi-select-icon-item a.active {\\n border: 2px solid #047bf8;\\n color: #495057; }\\n .MultiselectWithIcon .multi-select-icon-item a .avatar {\\n border-radius: unset !important;\\n margin-bottom: unset !important;\\n margin: auto auto;\\n width: 50px;\\n height: 50px;\\n background-size: cover;\\n display: block; }\\n .MultiselectWithIcon .multi-select-icon-item a span {\\n font-size: .8em;\\n margin-top: -0.5rem;\\n color: #495057; }\\n .MultiselectWithIcon .multi-select-icon-item a:hover {\\n border: 2px solid white;\\n background-color: #dde2ec;\\n color: #495057; }\\n\\n.todo-sidebar-section-header {\\n font-size: 16px; }\\n\\n.SelectCollapsible, .Multiselect, .MultiselectWithIcon, .Select {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\\n margin-bottom: 10px;\\n padding-bottom: 10px;\\n padding-top: 10px; }\\n\\n.Choice .show-more {\\n cursor: pointer;\\n font-size: 16px;\\n font-weight: 500;\\n color: #1b55e2;\\n text-decoration: underline;\\n display: inline; }\\n\\n.Choice .chip.disabled {\\n opacity: .6;\\n cursor: not-allowed; }\\n .Choice .chip.disabled:hover {\\n background: inherit; }\\n\\n@media (min-width: 1200px) {\\n .range-slider-label-container .d-xl-none {\\n display: none !important; }\\n .range-slider-label-container .d-xl-inline {\\n display: inline !important; } }\\n\\n@media (min-width: 1450px) {\\n .range-slider-label-container .d-xxl-none {\\n display: none !important; }\\n .range-slider-label-container .d-xxl-inline {\\n display: inline !important; } }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".add-button {\\n border-color: #2ec58d;\\n background-color: #2ec58d;\\n color: white !important; }\\n .add-button:hover {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./item.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectRouter = state => state.get('router');\n\nconst makeSelectLocation = () =>\n createSelector(selectRouter, routerState =>\n routerState.get('location').toJS(),\n );\n\nconst selectUser = state => state.get('user', initialState);\n\nconst makeSelectUser = () =>\n createSelector(selectUser, userState => userState.get('user'));\n\nconst makeSelectTokenValidation = () =>\n createSelector(selectUser, userState => userState.get('invalid'));\n\nconst makeSelectFeatures = () =>\n createSelector(selectUser, userState => userState.get('user').features);\n\nconst selectMembers = () =>\n createSelector(selectUser, userState => userState.get('members'));\n\nconst selectTheme = () =>\n createSelector(selectUser, userState => {\n const user = userState.get('user') || {};\n const preferences = (user.hasOwnProperty('_root') ? user.toJS().preference : user.preference) || [];\n\n return (\n preferences.find(preference => preference.name === 'theme') || 'default'\n );\n });\n\nconst selectErrors = () =>\n createSelector(selectUser, userState =>\n userState.get('errors')\n );\n\nconst selectHasErrors = state => errorDomain => {\n if (state && errorDomain) {\n const errors = state.get('user').toJS().errors || {};\n return errors.hasOwnProperty(errorDomain) && Object.keys(errors[errorDomain]).length > 0\n }\n\n return false;\n};\n\ncreateSelector(selectUser, userState => {\n let errors = userState.get('errors');\n\n if (errors.hasOwnProperty('_root')) {\n errors = errors.toJS();\n }\n\n delete errors.member;\n\n return Object.keys(errors).length > 0;\n});\n\nconst selectIsLoading = () =>\n createSelector(selectUser, userState => userState.get('loading'));\n\nconst featureVisible = state => featureSlug =>\n state\n .get('user')\n .get('user')\n .features.some(\n feature => feature.slug === featureSlug && feature.enabled > 0,\n ) || false;\n\nconst featureAllowed = state => featureSlug => {\n const user = state.get('user').get('user');\n const features =\n (user.hasOwnProperty('_root') ? user.toJS().features : user.features) || [];\n\n return (\n features.some(\n feature => feature.slug === featureSlug && feature.enabled > 1,\n ) || false\n );\n};\n\nexport {\n selectIsLoading,\n makeSelectLocation,\n makeSelectUser,\n selectTheme,\n makeSelectTokenValidation,\n makeSelectFeatures,\n featureAllowed,\n featureVisible,\n selectErrors,\n selectHasErrors,\n selectMembers,\n};\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ticket .ticket-description {\\n height: 3.82rem !important;\\n font-size: .9rem; }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction DistanceIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"g\",null,[React.createElement(\"path\",{\"d\":\"M225.278,278.426c0-48.641-39.572-88.213-88.214-88.213c-48.641,0-88.212,39.572-88.212,88.213\\n\\t\\t\\tc0,14.254,3.401,27.727,9.431,39.654l78.781,162.463l78.795-162.488C221.88,306.133,225.278,292.669,225.278,278.426z\\n\\t\\t\\t M137.064,327.243c-26.917,0-48.817-21.9-48.817-48.817s21.9-48.817,48.817-48.817c26.918,0,48.817,21.9,48.817,48.817\\n\\t\\t\\tS163.982,327.243,137.064,327.243z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M387.021,0c-24.63,0-44.669,20.038-44.669,44.668c0,7.218,1.723,14.04,4.776,20.081l39.893,82.267l39.899-82.28\\n\\t\\t\\tc3.049-6.037,4.77-12.855,4.77-20.067C431.69,20.038,411.65,0,387.021,0z M387.021,69.388c-13.631,0-24.72-11.089-24.72-24.72\\n\\t\\t\\tc0-13.63,11.089-24.72,24.72-24.72c13.629,0,24.719,11.09,24.719,24.72C411.74,58.299,400.65,69.388,387.021,69.388z\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M348.116,289.787c-1.812-8.523-4.166-16.875-7.131-25.075c-3.974-10.987-8.74-21.724-12.391-32.836\\n\\t\\t\\tc-6.823-20.771,4.948-38.105,7.16-41.256c3.876-5.517,8.408-10.58,13.19-15.322c9.207-9.128,19.361-17.288,29.984-24.803\\n\\t\\t\\tc-1.316-2.039-2.591-4.1-3.805-6.199c-15.279,5.99-93.854,33.452-91.938,94.121c0.384,12.162,5.083,23.737,7.979,35.526\\n\\t\\t\\tc1.395,5.681,2.605,11.412,3.345,17.218c0.319,2.614,0.515,5.243,0.729,7.87c0.006-0.02,0.004-0.034-0.008-0.045\\n\\t\\t\\tc0.007,0.076,0.202,8.326-0.164,11.9c-1.147,11.189-2.799,22.494-7.516,32.758c-4.387,9.543-11.006,17.842-19.193,24.402\\n\\t\\t\\tc-18.716,14.994-43.514,20.988-66.913,23.398c-1.114,0.117-2.228,0.217-3.342,0.314l-41.779,86.152\\n\\t\\t\\tc20.614-1.281,41.175-4.102,61.235-9.039c23.607-5.811,46.613-14.588,67.227-27.598c20.596-12.996,38.308-30.578,50.099-51.984\\n\\t\\t\\tc12.335-22.391,17.277-48.038,16.225-73.452C350.752,307.156,349.928,298.307,348.116,289.787z\",\"key\":2})])),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nDistanceIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"width\":\"480.543px\",\"height\":\"480.543px\",\"viewBox\":\"0 0 480.543 480.543\",\"style\":{\"enableBackground\":\"new 0 0 480.543 480.543\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = DistanceIcon;\n\nDistanceIcon.default = DistanceIcon;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction MoneyIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"g\",null,React.createElement(\"g\",null,[React.createElement(\"path\",{\"d\":\"M201.496,138.264c-0.036-0.291-3.713-29.019-3.713-43.168c0-12.768,3.671-38.751,3.709-39.013\\n\\t\\t\\t\\tc0.151-1.064-0.198-2.138-0.947-2.908c-0.749-0.77-1.8-1.152-2.879-1.033c-0.646,0.071-65.035,7.205-96.903,7.205\\n\\t\\t\\t\\tc-31.865,0-96.257-7.134-96.903-7.205c-1.077-0.124-2.124,0.26-2.869,1.023c-0.748,0.763-1.103,1.831-0.96,2.891\\n\\t\\t\\t\\tc0.038,0.277,3.712,27.892,3.712,41.486c0,13.327-3.673,40.423-3.71,40.694c-0.127,0.928,0.125,1.868,0.702,2.606\\n\\t\\t\\t\\tc0.575,0.738,1.425,1.213,2.355,1.317c0.651,0.073,65.423,7.249,97.673,7.249s97.022-7.176,97.673-7.249\\n\\t\\t\\t\\tc0.926-0.102,1.771-0.573,2.346-1.306C201.359,140.12,201.615,139.187,201.496,138.264z M100.763,142.459\\n\\t\\t\\t\\tc-27.554,0-79.433-5.334-93.381-6.824c1.013-7.921,3.31-27.101,3.31-38.093c0-10.848-2.156-29.532-3.212-38.02\\n\\t\\t\\t\\tc15.176,1.612,65.929,6.774,93.283,6.774c27.335,0,78.034-5.156,93.249-6.771c-1.069,8.129-3.178,25.454-3.178,35.571\\n\\t\\t\\t\\tc0,11.73,2.338,32.301,3.334,40.536C180.256,137.118,128.338,142.459,100.763,142.459z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M100.763,86.865c3.832,0,6.949,3.117,6.949,6.949c0,1.919,1.556,3.475,3.475,3.475s3.475-1.556,3.475-3.475\\n\\t\\t\\t\\tc0-6.457-4.446-11.85-10.424-13.405v-3.968c0-1.919-1.556-3.475-3.475-3.475s-3.475,1.556-3.475,3.475v3.968\\n\\t\\t\\t\\tc-5.977,1.554-10.424,6.948-10.424,13.405c0,7.664,6.235,13.898,13.898,13.898c3.832,0,6.949,3.117,6.949,6.949\\n\\t\\t\\t\\tc0,3.832-3.117,6.949-6.949,6.949c-3.832,0-6.949-3.117-6.949-6.949c0-1.919-1.556-3.475-3.475-3.475s-3.475,1.556-3.475,3.475\\n\\t\\t\\t\\tc0,6.457,4.446,11.85,10.424,13.405v3.968c0,1.919,1.556,3.475,3.475,3.475s3.475-1.556,3.475-3.475v-3.968\\n\\t\\t\\t\\tc5.977-1.554,10.424-6.948,10.424-13.405c0-7.664-6.235-13.898-13.898-13.898c-3.832,0-6.949-3.117-6.949-6.949\\n\\t\\t\\t\\tC93.814,89.982,96.931,86.865,100.763,86.865z\",\"key\":1}),React.createElement(\"rect\",{\"x\":\"163.305\",\"y\":\"66.018\",\"width\":\"24.322\",\"height\":\"6.949\",\"key\":2}),React.createElement(\"rect\",{\"x\":\"13.899\",\"y\":\"66.018\",\"width\":\"24.322\",\"height\":\"6.949\",\"key\":3}),React.createElement(\"rect\",{\"x\":\"163.305\",\"y\":\"125.086\",\"width\":\"24.322\",\"height\":\"6.949\",\"key\":4}),React.createElement(\"rect\",{\"x\":\"13.899\",\"y\":\"125.086\",\"width\":\"24.322\",\"height\":\"6.949\",\"key\":5})]))),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nMoneyIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Layer_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 201.527 201.527\",\"style\":{\"enableBackground\":\"new 0 0 201.527 201.527\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = MoneyIcon;\n\nMoneyIcon.default = MoneyIcon;\n","/*\n * SelectConstants\n */\n\nexport const UPDATE_OPTION = 'ideal/Select/UPDATE_OPTION';\nexport const UPDATE_MODAL_OPTION = 'ideal/Select/UPDATE_MODAL_OPTION';\n\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./ListItem.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./ListItem.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./ListItem.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport {\n GET_BRANDS,\n BRAND_SELECTED,\n MODEL_SELECTED,\n VERSION_SELECTED,\n CAR_RECEIVED,\n} from './constants';\n\nimport {\n brandsLoaded,\n modelsLoaded,\n versionsLoaded,\n carLoaded,\n carImagesLoaded,\n} from './actions';\nimport {\n makeSelectSelectedBrand,\n makeSelectSelectedModel,\n makeSelectSelectedModelName,\n makeSelectSelectedVersion,\n makeSelectCarCode,\n makeSelectSelectedModelYear\n} from './selectors';\n\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nfunction* fetchBrands() {\n const requestURL = `${API_URL}car/brands`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(brandsLoaded(request.data));\n } catch (err) {\n // yield put(brandsError(err));\n console.log('request error', err);\n }\n}\n\nfunction* fetchModels() {\n const brand = yield select(makeSelectSelectedBrand());\n const requestURL = `${API_URL}car/models?brand=${brand}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(modelsLoaded(request.data));\n } catch (err) {\n // yield put(brandsError(err));\n console.log('request error', err);\n }\n}\n\nfunction* fetchVersions() {\n const model = yield select(makeSelectSelectedModel());\n const modelName = yield select(makeSelectSelectedModelName());\n const modelYear = yield select(makeSelectSelectedModelYear());\n const requestURL = `${API_URL}car/versions/${model}/${modelYear}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const options = request.data;\n options.map(item => (item.name = item.name.replace(modelName, '')));\n yield put(versionsLoaded(options));\n } catch (err) {\n // yield put(brandsError(err));\n console.log('request error', err);\n }\n}\n\nfunction* fetchCar() {\n const selected = yield select(makeSelectSelectedVersion());\n\n if (selected) {\n const [codiceMotornet, codiceEurotax] = selected.split('-');\n const requestURL = `${API_URL}car?motornet=${codiceMotornet}&eurotax=${codiceEurotax}`;\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(carLoaded(request.data));\n } catch (err) {\n // yield put(carError(err));\n console.log('request error', err);\n }\n }\n}\n\nfunction* fetchImages() {\n const carId = yield select(makeSelectCarCode());\n const requestURL = `${API_URL}car/images/${carId}`;\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n yield put(carImagesLoaded({default: request.data}));\n } catch (err) {\n // yield put(carError(err));\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(GET_BRANDS, fetchBrands);\n yield takeLatest(BRAND_SELECTED, fetchModels);\n yield takeLatest(MODEL_SELECTED, fetchVersions);\n yield takeLatest(VERSION_SELECTED, fetchCar);\n yield takeLatest(CAR_RECEIVED, fetchImages);\n}\n\nexport default function* carsData() {\n yield all([actionWatcher()]);\n}\n","import injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nconst withCarSelectorReducer = injectReducer({\n key: 'carSelector',\n reducer,\n});\nconst withCarSelectorSaga = injectSaga({ key: 'carSelector', saga });\n\nexport { withCarSelectorReducer, withCarSelectorSaga };\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".recipeCard__skeleton {\\n display: inline-block;\\n background-color: var(--color__gray--lighter);\\n padding-bottom: var(--spacing__vertical--1); }\\n\\n.recipeCard__skeleton--medium {\\n width: 33%; }\\n\\n.recipeCard__skeleton--large {\\n width: 100%; }\\n\\n.recipeCard__image--skeleton {\\n padding-bottom: 100%;\\n background-color: var(--color__gray--lighter); }\\n\\n.CarItemsListSkeletron .col-md-4 {\\n padding-left: 4px !important;\\n padding-right: 4px !important;\\n padding-bottom: 8px !important; }\\n\\n.CarItemsListSkeletron .row {\\n margin-left: unset !important;\\n margin-right: unset !important; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./fields.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sticky.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sticky.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./sticky.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {\n TOGGLE_WIDGET,\n TOGGLE_MODAL,\n SET_INPUT_DATA,\n SET_INPUT_DATA_OFFER,\n SET_CONTRACTUAL_CATEGORY,\n SET_CONTRACTUAL_CATEGORY_OFFER,\n TOGGLE_LOADING,\n GET_LOGIC_RESPONSE,\n GET_LOGIC_OFFER_RESPONSE,\n CHECK_SUSTAINABILITY_REQUEST,\n CHECK_SUSTAINABILITY_OFFER_REQUEST,\n CHECK_SUSTAINABILITY_RESPONSE,\n CHECK_SUSTAINABILITY_OFFER_RESPONSE,\n SET_SUSTAINABILITY_SELECTED,\n RESET_DATA,\n RESET_OFFER_DATA,\n UPDATE_PROPOSAL,\n SAVE_QUOTATION,\n} from './constants';\n\nimport queryString from 'query-string';\n\nexport function openWidget() {\n return {\n type: TOGGLE_WIDGET,\n isOpen: true\n };\n}\n\nexport function closeWidget() {\n return {\n type: TOGGLE_WIDGET,\n isOpen: false\n };\n}\n\nexport function openModal() {\n return {\n type: TOGGLE_MODAL,\n isOpen: true\n };\n}\n\nexport function closeModal() {\n return {\n type: TOGGLE_MODAL,\n isOpen: false\n };\n}\n\nexport function setContractualCategory(contractualCategory) {\n return {\n type: SET_CONTRACTUAL_CATEGORY,\n contractualCategory\n };\n}\n\nexport function setContractualCategoryOffer(contractualCategory) {\n return {\n type: SET_CONTRACTUAL_CATEGORY_OFFER,\n contractualCategory\n };\n}\n\nexport function setInputData(inputData) {\n return {\n type: SET_INPUT_DATA,\n inputData\n };\n}\n\nexport function setInputDataOffer(inputData) {\n return {\n type: SET_INPUT_DATA_OFFER,\n inputData\n };\n}\n\nexport function toggleLoading(isLoading) {\n return {\n type: TOGGLE_LOADING,\n isLoading\n };\n}\n\nexport function receiveLogic(logicData) {\n return {\n type: GET_LOGIC_RESPONSE,\n logicData,\n };\n}\n\nexport function receiveOfferLogic(logicData) {\n return {\n type: GET_LOGIC_OFFER_RESPONSE,\n logicData,\n };\n}\n\nexport function sendCheckSustainability() {\n return {\n type: CHECK_SUSTAINABILITY_REQUEST,\n };\n}\n\nexport function sendCheckSustainabilityOffer(offer) {\n return {\n type: CHECK_SUSTAINABILITY_OFFER_REQUEST,\n offer\n };\n}\n\nexport function receiveSustainabilityResponse(responseData) {\n return {\n type: CHECK_SUSTAINABILITY_RESPONSE,\n responseData,\n };\n}\n\nexport function receiveSustainabilityOfferResponse(responseData) {\n return {\n type: CHECK_SUSTAINABILITY_OFFER_RESPONSE,\n responseData,\n };\n}\n\nexport function updateSustainabilitySelected(sustainabilitySelected) {\n return {\n type: SET_SUSTAINABILITY_SELECTED,\n sustainabilitySelected,\n };\n}\n\nexport function resetData() {\n return {\n type: RESET_DATA,\n };\n}\n\nexport function resetOfferData() {\n return {\n type: RESET_OFFER_DATA,\n };\n}\n\nexport function updateProposal(params) {\n return {\n type: UPDATE_PROPOSAL,\n proposal: params,\n };\n}\n\nexport function saveQuotation(params) {\n return {\n type: SAVE_QUOTATION,\n quotation: params,\n };\n}\n\nexport function parsePrescoringParamsToFilters(prescoringResponse, currentSelectedParams, currentParams, contractualCategory) {\n let needFetchFilters = false;\n let qs = queryString.parse(location.search, {arrayFormat: 'comma'});\n\n if (prescoringResponse.monthlyRateMax > 0) {\n const currentMonthlyRate = currentSelectedParams.find(currentParam => currentParam.name === 'monthly_rate');\n let monthlyRateMin;\n\n if (currentMonthlyRate) {\n monthlyRateMin = currentMonthlyRate.value[0];\n } else {\n monthlyRateMin = currentParams.monthly_rates ? currentParams.monthly_rates.min : 0;\n }\n\n qs.monthly_rate = [monthlyRateMin, parseInt(prescoringResponse.monthlyRateMax)]\n needFetchFilters = true;\n }\n\n if (prescoringResponse.depositRequired === true) {\n const currentDeposit = currentSelectedParams.find(currentParam => currentParam.name === 'deposit');\n let depositMax;\n\n if (currentDeposit) {\n depositMax = currentDeposit.value[1];\n } else {\n depositMax = currentParams.deposits ? currentParams.deposits.max : 0;\n }\n\n qs.deposit = [1, depositMax]\n needFetchFilters = true;\n }\n\n if (prescoringResponse.chance >= 0 && (location.pathname === '/offers' || location.pathname === '/offers/') && needFetchFilters) {\n setTimeout(() => {\n location.search = queryString.stringify(qs, {arrayFormat: 'comma'});\n },\n 2000);\n }\n}\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./selectOptions.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./selectOptions.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./selectOptions.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.components.UIKit';\n\nexport default defineMessages({\n feeDisclaimer: {\n id: `${scope}.feeDisclaimer`,\n defaultMessage: configs.messages[scope].feeDisclaimer\n },\n feeDisclaimerDescription: {\n id: `${scope}.feeDisclaimerDescription`,\n defaultMessage: configs.messages[scope].feeDisclaimerDescription\n },\n});\n","var React = require('react');\n\nfunction CarIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M289.689798 122.957403h-55.577806c-61.135382 0-111.154589 50.02023-111.154589 111.154589v611.352799c0 61.135382 50.02023 111.154589 111.154589 111.154589h555.774993c61.135382 0 111.154589-50.02023 111.154589-111.154589V234.111992c0-61.135382-50.02023-111.154589-111.154589-111.154589h-50.020231v55.577806h50.020231c33.346479 0 55.577806 22.231327 55.577806 55.577806v611.352799c0 27.788903-22.231327 55.577806-55.577806 55.577806H234.111992c-33.346479 0-55.577806-22.231327-55.577806-55.577806v-611.353822c0-27.788903 22.231327-55.577806 55.577806-55.577806h55.577806v-55.576783z m111.15459 55.576783h222.310201v-55.577806H400.844388v55.577806z m-55.576783-55.576783c0-33.346479 27.788903-55.577806 55.577806-55.577806h222.310201c27.788903 0 55.577806 22.231327 55.577807 55.577806v55.577806c0 33.346479-27.788903 55.577806-55.577807 55.577806H400.844388c-27.788903 0-55.577806-22.231327-55.577807-55.577806v-55.577806z m31.918967 503.68359h55.577806v-55.577806h-55.577806v55.577806z m222.310201 0h55.577806v-55.577806h-55.577806v55.577806z m170.314991-101.912087l-56.018852-43.070958-28.537963-122.722043H358.316805l-36.767392 128.027886-57.192583 36.140105V708.816574h85.041862v54.807257h55.577806V708.816574h222.310202v54.807257h55.577806V708.816574h86.948281V524.728906zM641.119753 414.513712l13.402241 57.633628H383.629307l16.550955-57.633628h240.939491z m73.115228 238.725056h-394.300345v-99.509365l41.147143-26.004257H682.528861l31.707143 24.379247v101.134375z\"}));\n}\n\nCarIcon.defaultProps = {\"className\":\"icon\",\"style\":{\"width\":\"1em\",\"height\":\"1em\",\"verticalAlign\":\"middle\",\"fill\":\"currentColor\",\"overflow\":\"hidden\"},\"viewBox\":\"0 0 1024 1024\",\"version\":\"1.1\"};\n\nmodule.exports = CarIcon;\n\nCarIcon.default = CarIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#RequestOffer {\\n color: #404950;\\n min-width: 100%;\\n margin-bottom: 200px; }\\n #RequestOffer .element-box {\\n margin-bottom: .5rem;\\n box-shadow: unset;\\n background-color: #f2f5fe; }\\n #RequestOffer .request-button {\\n float: right;\\n margin-right: 2rem;\\n box-sizing: border-box;\\n cursor: pointer;\\n display: inline-flex;\\n font-weight: 500;\\n font-size: 18px;\\n height: auto;\\n -webkit-box-pack: center;\\n justify-content: center;\\n min-width: 120px;\\n width: auto;\\n background-color: #FFFFFF;\\n color: #047bf8;\\n outline: none;\\n padding: 5px 10px;\\n border-radius: 3px;\\n border: 1px solid;\\n vertical-align: middle; }\\n #RequestOffer .request-button:hover {\\n background-color: #047bf8;\\n color: #FFFFFF; }\\n #RequestOffer h6 {\\n margin-bottom: unset; }\\n #RequestOffer span {\\n font-size: .8rem;\\n line-height: 1rem; }\\n #RequestOffer a:hover {\\n text-decoration: none; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferPrint {\\n color: #404950;\\n margin-bottom: 1rem; }\\n #OfferPrint .title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n padding-top: unset; }\\n #OfferPrint .action-button.medium {\\n margin-top: .5rem;\\n background-color: #f2f5fe;\\n color: #484848;\\n width: 90%; }\\n #OfferPrint .action-button.medium:hover {\\n background-color: #f2f5fe;\\n color: #047bf8;\\n border: 1px solid #047bf8; }\\n #OfferPrint .action-button.medium:hover svg {\\n fill: #047bf8; }\\n\", \"\"]);\n\n// exports\n","import { all } from 'redux-saga/effects';\n\nfunction* actionWatcher() {}\n\nexport default function* optionData() {\n yield all([actionWatcher()]);\n}\n","import injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nconst withOfferSelectorReducer = injectReducer({\n key: 'customizeOfferSelector',\n reducer,\n});\nconst withOfferSelectorSaga = injectSaga({ key: 'customizeOfferSelector', saga });\n\nexport { withOfferSelectorReducer, withOfferSelectorSaga };\n","export const CONTRACTUAL_CATEGORIES = [\n {\n description: 'Dipendente a tempo indeterminato',\n value: 'tempo-indeterminato',\n type: 'PRIVATE',\n secondaryType: 'PRIVATE',\n requiredData: {\n pi: false,\n rs: false\n }\n },\n {\n description: 'Ditta individuale',\n value: 'ditta-individuale',\n type: 'BUSINESS',\n secondaryType: 'PRIVATE',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n {\n description: 'Libero professionista',\n value: 'libero-professionista',\n type: 'BUSINESS',\n secondaryType: 'PRIVATE',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n {\n description: 'Pensionato',\n value: 'pensionato',\n type: 'PRIVATE',\n secondaryType: 'PRIVATE',\n requiredData: {\n pi: false,\n rs: false\n }\n },\n {\n description: 'Società di capitali (S.p.a. - S.r.l. - S.r.l.s. - S.a.p.a. - Cooperative)',\n value: 'societa-capitale',\n type: 'BUSINESS',\n secondaryType: 'BUSINESS',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n {\n description: 'Società di persone (S.s. - S.n.c. - S.a.s.)',\n value: 'societa-persone',\n type: 'BUSINESS',\n secondaryType: 'BUSINESS',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n {\n description:\n 'Associazioni - Enti - Fondazioni',\n value: 'associazioni-enti-fondazioni',\n type: 'BUSINESS',\n secondaryType: 'BUSINESS',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n {\n description: 'Studi Associati',\n value: 'studi-associati',\n type: 'BUSINESS',\n secondaryType: 'BUSINESS',\n requiredData: {\n pi: true,\n rs: true\n }\n },\n];\n","import { fromJS, List } from 'immutable';\nimport {\n SET_LOADING,\n UNSET_LOADING,\n UPDATE_PARAMS,\n RESET_PARAMS,\n REMOVE_PARAM,\n FILTERS_RECEIVED,\n} from './constants';\nimport { removeObjByAttribute } from '../../utils/common';\n\n// The initial state of the App\nexport const initialState = fromJS({\n params: {},\n selectedParams: new List(),\n loading: false,\n});\n\nfunction searchReducer(state = initialState, action) {\n switch (action.type) {\n case UPDATE_PARAMS:\n let paramsList = state.getIn(['selectedParams']).toArray();\n paramsList = updateSelected(paramsList, action.param);\n return state.setIn(['selectedParams'], new List(paramsList));\n case FILTERS_RECEIVED:\n return state.set('params', action.filters);\n case REMOVE_PARAM:\n let params = state.getIn(['selectedParams']).toArray();\n params = removeObjByAttribute(params, 'name', action.paramName);\n return state.setIn(['selectedParams'], new List(params));\n case RESET_PARAMS:\n return state.setIn(['selectedParams'], new List());\n case SET_LOADING:\n return state.set('loading', true);\n case UNSET_LOADING:\n return state.set('loading', false);\n default:\n return state;\n }\n}\n\n/**\n * Update selected parameters\n * @param selected\n * @param item\n * @returns {*[]}\n */\nfunction updateSelected(selected, item) {\n const obj = { name: item.name, value: item.value, label: item.label };\n const params = removeObjByAttribute(selected, 'name', item.name);\n return [...params, obj];\n}\n\nexport default searchReducer;\n","import { fromJS, List } from 'immutable';\nimport {\n ADD_OPTION,\n REMOVE_OPTION,\n REMOVE_ALL,\n SORTS_RECEIVED,\n TAGS_RECEIVED,\n SHOW_TAG,\n HIDE_TAG,\n SHOW_ALL,\n UPDATE_SORT,\n} from './constants';\nimport { arrayContainsObj, removeObjFromArray } from '../../utils/common';\n\n// The initial state of the App\nexport const initialState = fromJS({\n tags: new List(),\n selectedTags: new List(),\n sorts: new List(),\n selectedSort: 'date',\n});\n\nfunction filtersReducer(state = initialState, action) {\n switch (action.type) {\n case ADD_OPTION:\n const item = { value: action.value, label: action.label };\n let list = state.getIn(['selectedTags']);\n if( list === undefined || list === null ) return state;\n list = list.toArray();\n if (!arrayContainsObj(list, item, 'value'))\n return state.updateIn(['selectedTags'], elem => elem.push(item));\n return state;\n case REMOVE_OPTION:\n let elems = state.getIn(['selectedTags']);\n if( elems === undefined || elems === null ) return state.setIn(['selectedTags'], new List([]));\n elems = elems.toArray();\n elems = removeObjFromArray(elems, { value: action.value }, 'value');\n return state.setIn(['selectedTags'], new List(elems));\n case REMOVE_ALL:\n return state.setIn(['selectedTags'], new List([]));\n case TAGS_RECEIVED:\n return state.setIn(['tags'], new List(action.tags));\n case SHOW_TAG:\n let tagShowList = state.getIn(['tags']).toArray();\n tagShowList = updateTagStatus(tagShowList, action.value, true);\n return state.setIn(['tags'], new List(tagShowList));\n case HIDE_TAG:\n let tagHideList = state.getIn(['tags']).toArray();\n tagHideList = updateTagStatus(tagHideList, action.value, false);\n return state.setIn(['tags'], new List(tagHideList));\n case SHOW_ALL:\n let tagsList = state.getIn(['tags']).toArray();\n tagsList = updateAllTags(tagsList, true);\n return state.setIn(['tags'], new List(tagsList));\n case SORTS_RECEIVED:\n return state.setIn(['sorts'], new List(action.sorts));\n case UPDATE_SORT:\n return state.set('selectedSort', action.sort);\n default:\n return state;\n }\n}\n\n/**\n *\n * @param tags\n * @param value\n * @param status\n * @returns {*}\n */\nfunction updateTagStatus(tags, value, status) {\n return tags.map(\n item => (item.value === value ? { ...item, show: status } : item),\n );\n}\n\n/**\n *\n * @param tags\n * @param status\n * @returns {*}\n */\nfunction updateAllTags(tags, status) {\n return tags.map(item => ({ ...item, show: status }));\n}\n\nexport default filtersReducer;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#CustomerForm {\\n padding: .5rem;\\n padding-bottom: 0rem; }\\n #CustomerForm label {\\n color: #404950;\\n font-size: 1.2vw;\\n font-weight: 400;\\n line-height: .3em; }\\n #CustomerForm input, #CustomerForm select, #CustomerForm textarea {\\n margin-bottom: .3rem; }\\n #CustomerForm .form-control {\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1.2em;\\n line-height: 1em;\\n color: #484848;\\n font-weight: 400;\\n background-color: white;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 6px; }\\n #CustomerForm .is-invalid {\\n border: 2px solid #ff4a50 !important; }\\n #CustomerForm p {\\n padding: .4rem;\\n padding-bottom: 0;\\n color: #404950;\\n font-size: .9em;\\n font-weight: 400;\\n line-height: 1.3em; }\\n #CustomerForm button {\\n margin-top: .4rem;\\n margin-bottom: .2rem; }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction DurationIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"g\",null,React.createElement(\"g\",null,[React.createElement(\"path\",{\"d\":\"M537.423,52.563h-59.836V21.92c0-11.83-9.591-21.42-21.42-21.42c-11.83,0-21.42,9.59-21.42,21.42v30.642H165.364V21.92\\n\\t\\t\\t\\tc0-11.83-9.59-21.42-21.42-21.42c-11.83,0-21.42,9.59-21.42,21.42v30.642H62.687c-32.058,0-58.14,26.082-58.14,58.14v430.77\\n\\t\\t\\t\\tc0,32.059,26.082,58.139,58.14,58.139h474.736c32.059,0,58.141-26.08,58.141-58.139v-430.77\\n\\t\\t\\t\\tC595.564,78.645,569.482,52.563,537.423,52.563z M47.387,110.703c0-8.451,6.85-15.3,15.3-15.3h59.837v24.443\\n\\t\\t\\t\\tc0,11.83,9.59,21.42,21.42,21.42s21.42-9.59,21.42-21.42V95.403h269.383v24.443c0,11.83,9.59,21.42,21.42,21.42\\n\\t\\t\\t\\tc11.829,0,21.42-9.59,21.42-21.42V95.403h59.836c8.45,0,15.3,6.85,15.3,15.3v53.856H47.387V110.703z M552.723,541.473\\n\\t\\t\\t\\tc0,8.449-6.85,15.301-15.3,15.301H62.687c-8.45,0-15.3-6.852-15.3-15.301V207.399h505.336V541.473z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M537.423,600.111H62.687c-32.334,0-58.64-26.306-58.64-58.639v-430.77c0-32.334,26.306-58.64,58.64-58.64h59.336V21.92\\n\\t\\t\\t\\tc0-12.087,9.833-21.92,21.92-21.92c12.086,0,21.92,9.833,21.92,21.92v30.142h268.384V21.92c0-12.087,9.833-21.92,21.92-21.92\\n\\t\\t\\t\\ts21.92,9.833,21.92,21.92v30.143h59.336c32.335,0,58.641,26.306,58.641,58.64v430.77\\n\\t\\t\\t\\tC596.064,573.806,569.758,600.111,537.423,600.111z M62.687,53.062c-31.783,0-57.64,25.857-57.64,57.64v430.77\\n\\t\\t\\t\\tc0,31.782,25.857,57.639,57.64,57.639h474.736c31.783,0,57.641-25.856,57.641-57.639v-430.77c0-31.783-25.857-57.64-57.641-57.64\\n\\t\\t\\t\\th-60.336V21.92c0-11.536-9.385-20.92-20.92-20.92s-20.92,9.385-20.92,20.92v31.142H164.864V21.92\\n\\t\\t\\t\\tc0-11.536-9.385-20.92-20.92-20.92c-11.536,0-20.92,9.385-20.92,20.92v31.142H62.687z M537.423,557.273H62.687\\n\\t\\t\\t\\tc-8.712,0-15.8-7.088-15.8-15.801V206.899h506.336v334.574C553.223,550.186,546.135,557.273,537.423,557.273z M47.887,207.899\\n\\t\\t\\t\\tv333.574c0,8.161,6.639,14.801,14.8,14.801h474.736c8.16,0,14.8-6.64,14.8-14.801V207.899H47.887z M553.223,165.059H46.887\\n\\t\\t\\t\\tv-54.356c0-8.712,7.088-15.8,15.8-15.8h60.337v24.943c0,11.535,9.385,20.92,20.92,20.92s20.92-9.385,20.92-20.92V94.903h270.383\\n\\t\\t\\t\\tv24.943c0,11.535,9.385,20.92,20.92,20.92s20.92-9.385,20.92-20.92V94.903h60.336c8.712,0,15.8,7.088,15.8,15.8V165.059z\\n\\t\\t\\t\\t M47.887,164.059h504.336v-53.356c0-8.161-6.64-14.8-14.8-14.8h-59.336v23.943c0,12.087-9.833,21.92-21.92,21.92\\n\\t\\t\\t\\ts-21.92-9.833-21.92-21.92V95.903H165.864v23.943c0,12.087-9.833,21.92-21.92,21.92s-21.92-9.833-21.92-21.92V95.903H62.687\\n\\t\\t\\t\\tc-8.161,0-14.8,6.639-14.8,14.8V164.059z\",\"key\":1})]))),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nDurationIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"width\":\"600.112px\",\"height\":\"600.111px\",\"viewBox\":\"0 0 600.112 600.111\",\"style\":{\"enableBackground\":\"new 0 0 600.112 600.111\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = DurationIcon;\n\nDurationIcon.default = DurationIcon;\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".OfferDetailsSelectorContent {\\n color: #404950;\\n border-radius: 6px;\\n background-color: #fff;\\n padding: .5rem;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12); }\\n .OfferDetailsSelectorContent .modal-header {\\n border-bottom: unset !important;\\n color: #404950 !important;\\n margin-top: .5rem;\\n margin-bottom: .5rem; }\\n .OfferDetailsSelectorContent .modal-header span {\\n color: #404950 !important; }\\n .OfferDetailsSelectorContent .modal-title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n color: #404950; }\\n .OfferDetailsSelectorContent .modal-content {\\n box-shadow: unset;\\n border: unset; }\\n .OfferDetailsSelectorContent .modal-body, .OfferDetailsSelectorContent .modal-header {\\n padding: unset; }\\n .OfferDetailsSelectorContent .title {\\n font-size: 16px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .5rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n .OfferDetailsSelectorContent .title .action-button.small {\\n margin-top: -.2rem; }\\n .OfferDetailsSelectorContent .btn-action {\\n width: 96%;\\n border-radius: .5rem;\\n background-color: #ff4a50;\\n text-align: center;\\n font-size: 1.2vw;\\n font-weight: 600;\\n line-height: 1em;\\n color: white;\\n padding: .8rem;\\n border: 1px solid #f2f5fe; }\\n .OfferDetailsSelectorContent .detail-item {\\n text-align: left;\\n padding: .5rem; }\\n .OfferDetailsSelectorContent .detail-item .item {\\n cursor: pointer;\\n height: 100%;\\n border-radius: .5rem;\\n background-color: #f2f5fe;\\n display: inline-block;\\n width: 30%;\\n text-align: center;\\n margin: .3rem;\\n color: #404950;\\n padding: .8rem;\\n border: 1px solid #f2f5fe; }\\n .OfferDetailsSelectorContent .detail-item .item.selected {\\n color: #047bf8;\\n border-color: #047bf8; }\\n .OfferDetailsSelectorContent .detail-item .item.selected svg {\\n fill: #047bf8; }\\n .OfferDetailsSelectorContent .detail-item .item:hover {\\n color: #047bf8;\\n border-color: #047bf8; }\\n .OfferDetailsSelectorContent .detail-item .item:hover svg {\\n fill: #047bf8; }\\n .OfferDetailsSelectorContent .detail-item .item .value {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 700;\\n line-height: 1em; }\\n .OfferDetailsSelectorContent .detail-item .item .description {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 400;\\n line-height: 1em; }\\n .OfferDetailsSelectorContent .detail-item .item svg {\\n width: 25px;\\n height: 25px;\\n margin-bottom: .4rem;\\n vertical-align: middle;\\n fill: #404950; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CollapseItem {\\n padding: 0.9rem 1.1rem;\\n background-color: #fff;\\n border-right: 1px solid rgba(0, 0, 0, 0.03);\\n margin-top: .2rem;\\n width: 100%;\\n color: #484848;\\n border-radius: 6px;\\n -webkit-box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12);\\n box-shadow: 0px 2px 4px rgba(126, 142, 177, 0.12); }\\n .CollapseItem .header {\\n width: 100%;\\n font-size: 1em;\\n font-weight: 600;\\n line-height: 1.375em;\\n color: #484848;\\n display: flex;\\n cursor: pointer; }\\n .CollapseItem .header .title {\\n min-width: 30%;\\n align-items: center;\\n display: flex;\\n flex-grow: 1;\\n margin-top: auto;\\n margin-bottom: auto; }\\n .CollapseItem .header .description {\\n font-weight: 400;\\n word-wrap: break-word;\\n font-size: .9em;\\n line-height: 1.375em;\\n opacity: 0.54;\\n flex-grow: 1;\\n display: flex;\\n width: 100%;\\n margin-top: auto;\\n margin-bottom: auto; }\\n .CollapseItem .header .icon {\\n font-size: .6em;\\n line-height: 1.375em;\\n font-weight: 600;\\n margin-top: auto;\\n margin-bottom: auto; }\\n .CollapseItem .content {\\n margin-top: 1em;\\n padding-top: .4em;\\n border-top: 1px solid rgba(0, 0, 0, 0.05); }\\n .CollapseItem .content.content-hide {\\n opacity: 0;\\n overflow: hidden;\\n visibility: hidden;\\n height: 0;\\n margin: 0;\\n padding: 0; }\\n\\n.CollapseItem-space {\\n margin-bottom: .8rem; }\\n\", \"\"]);\n\n// exports\n","export const TOGGLE_WIDGET = 'ideal/components/Prescoring/TOGGLE_WIDGET';\nexport const TOGGLE_MODAL = 'ideal/components/Prescoring/TOGGLE_MODAL';\nexport const TOGGLE_LOADING = 'ideal/components/Prescoring/TOGGLE_LOADING';\nexport const SET_SUSTAINABILITY_SELECTED = 'ideal/components/Prescoring/SET_SUSTAINABILITY_SELECTED';\nexport const GET_LOGIC_RESPONSE = 'ideal/components/Prescoring/GET_LOGIC_RESPONSE';\nexport const GET_LOGIC_OFFER_RESPONSE = 'ideal/components/Prescoring/GET_LOGIC_OFFER_RESPONSE';\nexport const SET_CONTRACTUAL_CATEGORY = 'ideal/components/Prescoring/SET_CONTRACTUAL_CATEGORY';\nexport const SET_CONTRACTUAL_CATEGORY_OFFER = 'ideal/components/Prescoring/SET_CONTRACTUAL_CATEGORY_OFFER';\nexport const SET_INPUT_DATA = 'ideal/components/Prescoring/SET_INPUT_DATA';\nexport const SET_INPUT_DATA_OFFER = 'ideal/components/Prescoring/SET_INPUT_DATA_OFFER';\nexport const CHECK_SUSTAINABILITY_REQUEST = 'ideal/components/Prescoring/CHECK_SUSTAINABILITY_REQUEST';\nexport const CHECK_SUSTAINABILITY_OFFER_REQUEST = 'ideal/components/Prescoring/CHECK_SUSTAINABILITY_OFFER_REQUEST';\nexport const CHECK_SUSTAINABILITY_RESPONSE = 'ideal/components/Prescoring/CHECK_SUSTAINABILITY_RESPONSE';\nexport const CHECK_SUSTAINABILITY_OFFER_RESPONSE = 'ideal/components/Prescoring/CHECK_SUSTAINABILITY_OFFER_RESPONSE';\nexport const RESET_DATA = 'ideal/components/Prescoring/RESET_DATA';\nexport const RESET_OFFER_DATA = 'ideal/components/Prescoring/RESET_OFFER_DATA';\nexport const UPDATE_PROPOSAL = 'ideal/components/Prescoring/UPDATE_PROPOSAL';\nexport const SAVE_PROPOSAL_ERROR = 'ideal/components/Prescoring/SAVE_PROPOSAL_ERROR';\nexport const SAVE_QUOTATION = 'ideal/components/Prescoring/SAVE_QUOTATION';\n\nexport const MAPPED_FIELDS = {\n 'q': {\n 'TRIAL_PERIOD_END': 'Hai terminato il periodo di prova (eventuale)?',\n 'MONTHLY_REVENUE': 'Qual è il reddito/stipendio mensile netto del cliente?',\n 'AMOUNT_OTHER_EXPENSES': 'Hai finanziamenti, mutui, prestiti ecc? Se sì, a quanto ammonta il loro valore mensile?',\n 'HAVE_GUARANTOR': 'Hai possibilità di inserire un garante?',\n 'HAVE_GUARANTOR_IF_NEEDED': 'Qualora la società noleggiatrice lo richiedesse, hai possibilità di inserire un garante?',\n 'CRIF': 'Sei iscritto nelle centrali rischi CRIF come cattivo pagatore?',\n 'IS_GREATER_THAN_AGE': 'Hai più di 72 anni?',\n 'HOW_OLD_COMPANY': 'Da quanto è avviata l’attività?',\n 'YEARLY_REVENUE': 'Qual è il reddito complessivo/fatturato annuo del cliente?',\n 'SHARE_CAPITAL': 'A quanto ammonta il capitale sociale (interamente versato)?',\n },\n 'list': {\n 'CHOICE_LESS_2_YEARS_NO_TAX_FILLINGS': 'Meno di 2 anni e nessuna dichiarazione dei redditi',\n 'CHOICE_LESS_2_YEARS_ONE_TAX_FILLING': 'Massimo 2 anni e 1 sola dichiarazione dei redditi',\n 'CHOICE_MORE_2_YEARS_TWO_TAX_FILLINGS': 'Più di 2 anni e 2 dichiarazioni dei redditi',\n 'CHOICE_LESS_2_YEARS_NO_BALANCE': 'Meno di 2 anni e nessun bilancio depositato',\n 'CHOICE_LESS_2_YEARS_ONE_BALANCE': 'Massimo 2 anni e almeno 1 deposito di bilancio o C.U.',\n 'CHOICE_MORE_2_YEARS_TWO_BALANCES': 'Più di 2 anni e 2 bilanci depositati',\n },\n 'a': {\n 'CONGRATULATIONS_OFFERS': 'Complimenti! Il tuo cliente ha buone probabilità di accedere alle offerte di Noleggio a Lungo Termine.',\n 'CONGRATULATIONS_THIS_OFFER': 'Complimenti! Il tuo cliente ha buone probabilità di accedere a questa offerta di Noleggio a Lungo Termine.',\n 'TRIAL_PERIOD_END_NO': 'Il cliente per poter accedere al Noleggio Lungo Termine deve attendere la fine del periodo di prova e presentare le ultime 2 buste paga con il contratto di lavoro.',\n 'IN_CRIF': 'Siamo spiacenti, il cliente non risulta conforme alle condizioni richieste dai nostri partner per accedere al Noleggio a Lungo Termine.',\n 'INSUFFICIENT_REVENUE': 'Siamo spiacenti ma la situazione economica del cliente non è conforme a quanto richiesto dai nostri partner per l’accesso al Noleggio Lungo Termine.',\n 'NEED_GUARANTEES': 'Siamo spiacenti, senza le garanzie richieste il cliente non risulta conforme alle condizioni richieste per accedere al Noleggio a Lungo Termine',\n 'NEED_MORE_DEPOSIT_OR_RATES': 'Ti confermiamo che il cliente può richiedere l’accesso al servizio di Noleggio ma sarà necessario fornire delle garanzie massime pari ad un anticipo o deposito del 30% del valore vettura o di 9/12 canoni.',\n 'NEED_MORE_DEPOSIT_OR_RATES_OR_GUARANTEE': 'Ti confermiamo che il cliente può richiedere l’accesso al servizio di Noleggio ma sarà necessario fornire delle garanzie massime come un garante e/o quota anticipo o deposito pari al 30% del valore vettura.',\n 'NEED_DEPOSIT_GUARANTEE': 'Ti confermiamo la possibilità del cliente di richiedere accesso al Noleggio a fronte della richiesta di una garanzia come quota anticipo o deposito.',\n 'EXCEED_AGE': 'Siamo spiacenti, il cliente non risulta conforme ai limiti di età richiesti dai provider per accedere al Noleggio a Lungo Termine.',\n // questo è solo per la logica del frontend quando anticipo è richiesto ma viene selezionato 0, da implementare\n 'NEED_DEPOSIT': 'Per avere maggiori probabilità di accedere a questa offerta di noleggio è consigliato selezionare l’importo di anticipo.',\n // questo è solo per la logica del frontend quando rata mensile è > di rataMax ma entro il 10%, da implementare\n 'MONTHLY_RATE_TRASHOLD': 'Per avere maggiori probabilità di accedere a questa offerta di noleggio è consigliato selezionare una diversa combinazione dei parametri dell`offerta.',\n // questo è solo per la logica del frontend quando diventi rosso per i parametri del preventivo\n 'TOO_MUCH_MONTHLY_RATE': 'Siamo spiacenti, ma con i parametri selezionati il cliente avrà poche probabilità di accedere a questa offerta di noleggio. Seleziona una diversa combinazione dei parametri.',\n }\n}\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ant-tag {\\n padding: 0.25rem 0.5rem; }\\n\", \"\"]);\n\n// exports\n","import {\n GET_QUOTATIONS,\n QUOTATIONS_RECEIVED,\n SEARCH_QUOTATIONS,\n FILTERS_RECEIVED,\n UPDATE_SORT,\n REMOVE_ALL,\n REMOVE_FILTER,\n LOAD_FILTERS,\n SET_PAGE_NUMBER,\n DOWNLOAD_QUOTATIONS,\n} from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getQuotations = () => ({\n type: GET_QUOTATIONS,\n});\n\n/**\n *\n * @param quotations\n * @param total\n * @param lastPage\n * @param currentPage\n * @returns {{total: *, lastPage: *, quotations: *, type: *, currentPage: *}}\n */\nexport function quotationsLoaded(quotations, total, lastPage, currentPage) {\n return {\n type: QUOTATIONS_RECEIVED,\n quotations,\n total,\n lastPage,\n currentPage,\n };\n}\n\n/**\n *\n * @param parameters\n * @returns {{query: *, type: *}}\n */\nexport function searchQuotations(parameters) {\n return {\n type: SEARCH_QUOTATIONS,\n parameters,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const loadFilters = () => ({\n type: LOAD_FILTERS,\n});\n\n/**\n *\n * @param filters\n * @returns {{filters: *, type: string}}\n */\nexport const filtersLoaded = filters => ({\n type: FILTERS_RECEIVED,\n filters,\n});\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const removeAll = () => ({\n type: REMOVE_ALL,\n});\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const removeFilter = filterName => ({\n type: REMOVE_FILTER,\n filterName,\n});\n\n/**\n *\n * @param sort\n * @returns {{type: string, sort: string}}\n */\nexport function orderBy(order) {\n return {\n type: UPDATE_SORT,\n order,\n };\n}\n\n/**\n *\n * @param pageNumber\n * @returns {{page: *, type: *}}\n */\nexport function setPage(pageNumber) {\n return {\n type: SET_PAGE_NUMBER,\n pageNumber,\n };\n}\n\n/**\n */\nexport function downloadQuotations() {\n return {\n type: DOWNLOAD_QUOTATIONS,\n };\n}\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CarItem {\\n height: 100% !important;\\n transition: all 0.25s ease; }\\n .CarItem:hover {\\n transform: translateY(-5px) scale(1.02);\\n box-shadow: 0px 5px 12px rgba(126, 142, 177, 0.2); }\\n .CarItem .offer-star {\\n position: absolute;\\n right: 1vw;\\n top: 74px; }\\n .CarItem .ant-card-cover > a > img {\\n width: 100%; }\\n .CarItem .ant-card {\\n border-color: white !important;\\n box-shadow: gainsboro 0px 1px 7px 0px;\\n padding: 1vw;\\n border-radius: .2rem;\\n cursor: pointer;\\n height: 100% !important; }\\n .CarItem .ant-card .ant-card-body {\\n padding: 0; }\\n .CarItem .ant-card .card-title {\\n text-align: right;\\n background-color: #e8e9ea;\\n border-radius: calc(.25rem - 1px);\\n height: 3rem;\\n padding-top: 0.7rem;\\n z-index: 2;\\n overflow-wrap: break-word !important;\\n font-size: 16px;\\n line-height: 20px !important;\\n letter-spacing: normal !important;\\n font-weight: 600 !important;\\n margin-bottom: unset !important; }\\n .CarItem .ant-card .card-title > span {\\n font-size: 18px !important;\\n line-height: 26px !important;\\n font-weight: 800 !important; }\\n .CarItem .ant-card .card-title .old-price {\\n text-decoration: line-through;\\n font-size: 14px !important; }\\n .CarItem .ant-card .card-title .new-price {\\n color: #2ec58d; }\\n .CarItem .ant-card .card-img-top {\\n width: 92% !important; }\\n @media (min-width: 1600px) {\\n .CarItem .ant-card .card-img-top {\\n width: 60% !important;\\n margin: 0 auto !important; } }\\n .CarItem .ant-card .toggle-button {\\n position: absolute;\\n top: 16px; }\\n .CarItem .ant-card .card-body {\\n padding: unset;\\n text-align: center; }\\n .CarItem .ant-card .card-body img {\\n margin-top: .4rem;\\n margin-bottom: .4rem; }\\n .CarItem .ant-card .card-body .img-fluid {\\n width: auto;\\n height: 27vh; }\\n .CarItem .ant-card .card-text {\\n text-align: center;\\n font-size: 16px;\\n margin-bottom: .6rem;\\n line-height: 20px;\\n color: #97a1aa; }\\n .CarItem .ant-card .card-text span {\\n font-weight: 600;\\n font-size: 18px;\\n color: #404950; }\\n .CarItem .ant-card .type {\\n font-size: 14px !important;\\n font-weight: 500 !important;\\n text-align: center;\\n text-transform: uppercase; }\\n .CarItem .ant-card .type hr {\\n margin-top: .4rem;\\n width: 5rem;\\n height: .2rem; }\\n .CarItem .ant-card .type .rent {\\n background-color: #ff4a50 !important; }\\n .CarItem .ant-card .type .sell {\\n background-color: #2ec58d !important; }\\n .CarItem .ant-card .description {\\n position: absolute;\\n top: 0;\\n opacity: .95;\\n height: 80%;\\n width: 100%;\\n transition: .5s ease;\\n background-color: #e8e9ea;\\n padding: .8rem;\\n font-size: 14px;\\n border-top-left-radius: .6rem;\\n border-top-right-radius: .6rem;\\n border-bottom: 0 !important; }\\n .CarItem .ant-card .description p {\\n margin: 0px !important;\\n word-wrap: break-word !important;\\n font-size: 12px !important;\\n line-height: 16px !important;\\n letter-spacing: normal !important; }\\n .CarItem .ant-card .description p strong {\\n font-size: 14px;\\n line-height: 20px !important;\\n font-weight: 600 !important; }\\n .CarItem .ant-card .description > hr {\\n margin-top: 7px; }\\n .CarItem .car-labels-container {\\n position: absolute;\\n font-weight: 600;\\n top: 0.9vw;\\n left: 1vw; }\\n .CarItem .car-label {\\n margin-bottom: 5px; }\\n .CarItem .car-label, .CarItem .car-label-secondary, .CarItem .car-label-tertiary {\\n background-color: #f2f5fe;\\n color: #047bf8;\\n border-radius: 15px;\\n border: none;\\n font-size: 0.8vw;\\n height: 1.5vw;\\n line-height: 1vw;\\n display: inline; }\\n @media (max-width: 768px) {\\n .CarItem .car-label, .CarItem .car-label-secondary, .CarItem .car-label-tertiary {\\n font-size: 1vw;\\n line-height: 0.8vw; } }\\n .CarItem .car-label-secondary {\\n top: 5px;\\n color: #104632;\\n background-color: rgba(46, 197, 141, 0.3); }\\n .CarItem .car-label-tertiary {\\n right: -8px;\\n top: -1.5vw;\\n font-size: .73vw;\\n line-height: 1.1vw; }\\n .CarItem .offer-card-top-right {\\n display: grid;\\n grid-auto-flow: column;\\n width: 100%;\\n -webkit-box-pack: justify;\\n justify-content: space-between;\\n white-space: pre;\\n column-gap: 10px; }\\n .CarItem .car-price {\\n font-size: 1.35vw;\\n font-weight: 700;\\n margin-bottom: -8px; }\\n .CarItem .clone-btn-container {\\n position: absolute;\\n top: 5px;\\n right: 5px; }\\n .CarItem .car-price-desc {\\n font-size: 1.2vw;\\n font-weight: 400; }\\n .CarItem .car-price-vat {\\n display: inline-block;\\n font-size: 1vw;\\n line-height: .8vw;\\n font-weight: 400; }\\n .CarItem .car-reference-code {\\n font-weight: normal;\\n margin-left: 14px;\\n font-size: 1.05vw; }\\n .CarItem .car-price-container {\\n top: 0.5vw;\\n right: 1vw; }\\n .CarItem .car-price-container.has-dropdown-menu {\\n right: 2vw; }\\n .CarItem .car-name {\\n font-size: 1.35vw;\\n line-height: 1.35vw;\\n font-weight: 700;\\n margin: unset !important;\\n position: relative; }\\n .CarItem .car-version {\\n margin-top: .2vw;\\n font-size: 1.05vw;\\n line-height: 1.35vw;\\n font-weight: 600;\\n display: block;\\n min-height: 2.7vw; }\\n .CarItem .offer-reference {\\n font-size: 1.05vw;\\n opacity: 0.8; }\\n .CarItem .offer-reference::after {\\n content: '_';\\n color: transparent;\\n font-size: 1.05vw; }\\n .CarItem .car-color {\\n margin-top: .1vw;\\n font-size: .9vw;\\n line-height: 1.1vw;\\n font-weight: 500;\\n display: block; }\\n .CarItem .multi {\\n border-radius: 50%;\\n color: #047bf8;\\n width: 2vw;\\n height: 2vw;\\n line-height: 1.6vw;\\n padding: 0;\\n background-color: #fef2f2; }\\n .CarItem .is-multi {\\n display: none; }\\n .CarItem .car-extra-info {\\n font-size: .73vw;\\n line-height: 1.4vw;\\n font-weight: 400;\\n margin: unset !important; }\\n .CarItem .car-extra-info ul {\\n list-style: none;\\n margin: unset !important;\\n padding-left: unset !important; }\\n .CarItem .car-extra-info ul li {\\n display: inline;\\n white-space: pre; }\\n .CarItem .car-extra-info ul li:after {\\n content: \\\" \\\\B7 \\\";\\n font-weight: 800;\\n color: #047bf8; }\\n .CarItem .car-extra-info ul li:last-child:after {\\n content: \\\"\\\"; }\\n\\n.Car {\\n background-color: #f0f0f0 !important;\\n height: 100% !important; }\\n .Car.suggested .ant-card {\\n border-color: #007BFF !important;\\n box-shadow: #dcdcdc 0px 1px 7px 0px, inset #007BFF 0px 1px 3px 0px; }\\n .Car .CarCatalog a {\\n color: #404950; }\\n .Car a {\\n text-decoration: none !important;\\n height: 100% !important; }\\n .Car a:hover {\\n color: #047bf8; }\\n .Car .el-tablo {\\n padding-right: unset !important; }\\n\", \"\"]);\n\n// exports\n","/*\n * PaginatorConstants\n */\n\nexport const SET_PAGE_NUMBER = 'ideal/Paginator/SET_PAGE_NUMBER';\nexport const GET_PAGE_NUMBER = 'ideal/Paginator/GET_PAGE_NUMBER';\n\nexport const SET_ITEMS_PER_PAGE = 'ideal/Paginator/SET_ITEMS_PER_PAGE';\nexport const GET_ITEMS_PER_PAGE = 'ideal/Paginator/GET_ITEMS_PER_PAGE';\n\nexport const GET_PAGINATOR = 'ideal/Paginator/GET_PAGINATOR';\nexport const UPDATE_PAGINATOR = 'ideal/Paginator/UPDATE_PAGINATOR';\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".simple-post .post-box .post-text {\\n color: #3E4B5B; }\\n\", \"\"]);\n\n// exports\n","var map = {\n\t\"./af\": \"665e8ef2f818dedc60ab\",\n\t\"./af.js\": \"665e8ef2f818dedc60ab\",\n\t\"./ar\": \"2c5d0d6cfeadc6dc1628\",\n\t\"./ar-dz\": \"ab94eecf7fc34b20ba86\",\n\t\"./ar-dz.js\": \"ab94eecf7fc34b20ba86\",\n\t\"./ar-kw\": \"1f47a110fc724cdf3a7e\",\n\t\"./ar-kw.js\": \"1f47a110fc724cdf3a7e\",\n\t\"./ar-ly\": \"b2344c5862c2f1879c2e\",\n\t\"./ar-ly.js\": \"b2344c5862c2f1879c2e\",\n\t\"./ar-ma\": \"55baaaaeed3fedfe2f7f\",\n\t\"./ar-ma.js\": \"55baaaaeed3fedfe2f7f\",\n\t\"./ar-sa\": \"f0475e5f58aaca231498\",\n\t\"./ar-sa.js\": \"f0475e5f58aaca231498\",\n\t\"./ar-tn\": \"63937e95271c3fba61f0\",\n\t\"./ar-tn.js\": \"63937e95271c3fba61f0\",\n\t\"./ar.js\": \"2c5d0d6cfeadc6dc1628\",\n\t\"./az\": \"85b644578e780357b950\",\n\t\"./az.js\": \"85b644578e780357b950\",\n\t\"./be\": \"dc504dfc310acf3e8b5a\",\n\t\"./be.js\": \"dc504dfc310acf3e8b5a\",\n\t\"./bg\": \"f66eeaa5ee413a061dfc\",\n\t\"./bg.js\": \"f66eeaa5ee413a061dfc\",\n\t\"./bm\": \"2155dedf767ecd316396\",\n\t\"./bm.js\": \"2155dedf767ecd316396\",\n\t\"./bn\": \"3b961c1ba30d2b3489fe\",\n\t\"./bn-bd\": \"9d5491d131e31b223349\",\n\t\"./bn-bd.js\": \"9d5491d131e31b223349\",\n\t\"./bn.js\": \"3b961c1ba30d2b3489fe\",\n\t\"./bo\": \"80fb7fce133b160140fa\",\n\t\"./bo.js\": \"80fb7fce133b160140fa\",\n\t\"./br\": \"693726fb120298227d58\",\n\t\"./br.js\": \"693726fb120298227d58\",\n\t\"./bs\": \"440dd1387583eefc5be1\",\n\t\"./bs.js\": \"440dd1387583eefc5be1\",\n\t\"./ca\": \"d873effe2f6b79724c51\",\n\t\"./ca.js\": \"d873effe2f6b79724c51\",\n\t\"./cs\": \"04cc8e5f921a10b8898a\",\n\t\"./cs.js\": \"04cc8e5f921a10b8898a\",\n\t\"./cv\": \"91d00a4c489e6868594e\",\n\t\"./cv.js\": \"91d00a4c489e6868594e\",\n\t\"./cy\": \"d542495d3cf12829be35\",\n\t\"./cy.js\": \"d542495d3cf12829be35\",\n\t\"./da\": \"8f6aba9263832dc49561\",\n\t\"./da.js\": \"8f6aba9263832dc49561\",\n\t\"./de\": \"f761b3035d790f5a1e41\",\n\t\"./de-at\": \"4f1ae2001b76046d96a2\",\n\t\"./de-at.js\": \"4f1ae2001b76046d96a2\",\n\t\"./de-ch\": \"0077a50c90365a4136bc\",\n\t\"./de-ch.js\": \"0077a50c90365a4136bc\",\n\t\"./de.js\": \"f761b3035d790f5a1e41\",\n\t\"./dv\": \"94835571dcf1d8105193\",\n\t\"./dv.js\": \"94835571dcf1d8105193\",\n\t\"./el\": \"2e196dc99a49d837baa9\",\n\t\"./el.js\": \"2e196dc99a49d837baa9\",\n\t\"./en-au\": \"cd64a3c48cb16ee50dac\",\n\t\"./en-au.js\": \"cd64a3c48cb16ee50dac\",\n\t\"./en-ca\": \"e7dde7cea655fabac9b3\",\n\t\"./en-ca.js\": \"e7dde7cea655fabac9b3\",\n\t\"./en-gb\": \"ebffe7901e5d6487915f\",\n\t\"./en-gb.js\": \"ebffe7901e5d6487915f\",\n\t\"./en-ie\": \"7918bf598b4d5e37dbf8\",\n\t\"./en-ie.js\": \"7918bf598b4d5e37dbf8\",\n\t\"./en-il\": \"7b1267a60e12fc4de757\",\n\t\"./en-il.js\": \"7b1267a60e12fc4de757\",\n\t\"./en-in\": \"882a65c17bbfe8eed2b1\",\n\t\"./en-in.js\": \"882a65c17bbfe8eed2b1\",\n\t\"./en-nz\": \"85b50eab9fd0fd6e90d9\",\n\t\"./en-nz.js\": \"85b50eab9fd0fd6e90d9\",\n\t\"./en-sg\": \"d17d61b68a1fd0bdbc79\",\n\t\"./en-sg.js\": \"d17d61b68a1fd0bdbc79\",\n\t\"./eo\": \"2d1a77730a48e0d04591\",\n\t\"./eo.js\": \"2d1a77730a48e0d04591\",\n\t\"./es\": \"eb700932ae91e49c629c\",\n\t\"./es-do\": \"4dd91dcf5bcc888414f6\",\n\t\"./es-do.js\": \"4dd91dcf5bcc888414f6\",\n\t\"./es-mx\": \"0aae787653727193ccfb\",\n\t\"./es-mx.js\": \"0aae787653727193ccfb\",\n\t\"./es-us\": \"2752f262cb20daec5019\",\n\t\"./es-us.js\": \"2752f262cb20daec5019\",\n\t\"./es.js\": \"eb700932ae91e49c629c\",\n\t\"./et\": \"70191cd15a7cb64b54e4\",\n\t\"./et.js\": \"70191cd15a7cb64b54e4\",\n\t\"./eu\": \"484c20cd44ca8b056fc2\",\n\t\"./eu.js\": \"484c20cd44ca8b056fc2\",\n\t\"./fa\": \"29afe6ff49411fcc1471\",\n\t\"./fa.js\": \"29afe6ff49411fcc1471\",\n\t\"./fi\": \"bdb50191d7cf9b18ce26\",\n\t\"./fi.js\": \"bdb50191d7cf9b18ce26\",\n\t\"./fil\": \"636c809cacfb1c120e7b\",\n\t\"./fil.js\": \"636c809cacfb1c120e7b\",\n\t\"./fo\": \"619044a7c1309495b821\",\n\t\"./fo.js\": \"619044a7c1309495b821\",\n\t\"./fr\": \"db42961f7dfd7ea7693b\",\n\t\"./fr-ca\": \"8147281f0709a22d7137\",\n\t\"./fr-ca.js\": \"8147281f0709a22d7137\",\n\t\"./fr-ch\": \"90c042ec6bf837264744\",\n\t\"./fr-ch.js\": \"90c042ec6bf837264744\",\n\t\"./fr.js\": \"db42961f7dfd7ea7693b\",\n\t\"./fy\": \"121ad50d209f78710b93\",\n\t\"./fy.js\": \"121ad50d209f78710b93\",\n\t\"./ga\": \"dce57c5a912f9bb7b50e\",\n\t\"./ga.js\": \"dce57c5a912f9bb7b50e\",\n\t\"./gd\": \"5cb89443292582ee6ea3\",\n\t\"./gd.js\": \"5cb89443292582ee6ea3\",\n\t\"./gl\": \"1438446c70ef04186744\",\n\t\"./gl.js\": \"1438446c70ef04186744\",\n\t\"./gom-deva\": \"468c9b9067cfcdc791c1\",\n\t\"./gom-deva.js\": \"468c9b9067cfcdc791c1\",\n\t\"./gom-latn\": \"0772830b50bd96035661\",\n\t\"./gom-latn.js\": \"0772830b50bd96035661\",\n\t\"./gu\": \"85910449a8f41305d2d9\",\n\t\"./gu.js\": \"85910449a8f41305d2d9\",\n\t\"./he\": \"abb9847ec0b105a1739c\",\n\t\"./he.js\": \"abb9847ec0b105a1739c\",\n\t\"./hi\": \"202ef5c5232cb96fc40c\",\n\t\"./hi.js\": \"202ef5c5232cb96fc40c\",\n\t\"./hr\": \"2b1fc540ca9764005197\",\n\t\"./hr.js\": \"2b1fc540ca9764005197\",\n\t\"./hu\": \"5b268a19c19ab75f336f\",\n\t\"./hu.js\": \"5b268a19c19ab75f336f\",\n\t\"./hy-am\": \"711a0b8f2470d00f903d\",\n\t\"./hy-am.js\": \"711a0b8f2470d00f903d\",\n\t\"./id\": \"402264ac986b72c38562\",\n\t\"./id.js\": \"402264ac986b72c38562\",\n\t\"./is\": \"91f63aac3a3578ac6d40\",\n\t\"./is.js\": \"91f63aac3a3578ac6d40\",\n\t\"./it\": \"77baaa42bb185c741c47\",\n\t\"./it-ch\": \"18804a589870d505139a\",\n\t\"./it-ch.js\": \"18804a589870d505139a\",\n\t\"./it.js\": \"77baaa42bb185c741c47\",\n\t\"./ja\": \"2ba6489aba708eaa27f3\",\n\t\"./ja.js\": \"2ba6489aba708eaa27f3\",\n\t\"./jv\": \"425e2b96a9c74eea940b\",\n\t\"./jv.js\": \"425e2b96a9c74eea940b\",\n\t\"./ka\": \"8214335285c71b8f2367\",\n\t\"./ka.js\": \"8214335285c71b8f2367\",\n\t\"./kk\": \"95df1f47296229bab55b\",\n\t\"./kk.js\": \"95df1f47296229bab55b\",\n\t\"./km\": \"613f2bc52d54e08d66ff\",\n\t\"./km.js\": \"613f2bc52d54e08d66ff\",\n\t\"./kn\": \"8696f317551c19a3f20a\",\n\t\"./kn.js\": \"8696f317551c19a3f20a\",\n\t\"./ko\": \"53116d711b17a6ae0834\",\n\t\"./ko.js\": \"53116d711b17a6ae0834\",\n\t\"./ku\": \"7a339cd518d3607231ac\",\n\t\"./ku.js\": \"7a339cd518d3607231ac\",\n\t\"./ky\": \"3ee6c56be65e90f8132c\",\n\t\"./ky.js\": \"3ee6c56be65e90f8132c\",\n\t\"./lb\": \"b3e370af972a63494846\",\n\t\"./lb.js\": \"b3e370af972a63494846\",\n\t\"./lo\": \"413f03944c6f5265e312\",\n\t\"./lo.js\": \"413f03944c6f5265e312\",\n\t\"./lt\": \"c48bb04253340f2f448f\",\n\t\"./lt.js\": \"c48bb04253340f2f448f\",\n\t\"./lv\": \"e86717854732e116f3ea\",\n\t\"./lv.js\": \"e86717854732e116f3ea\",\n\t\"./me\": \"eabcc0c4c45fac03ed7c\",\n\t\"./me.js\": \"eabcc0c4c45fac03ed7c\",\n\t\"./mi\": \"d78d1984ee15b7de3b01\",\n\t\"./mi.js\": \"d78d1984ee15b7de3b01\",\n\t\"./mk\": \"caa305a284aa2a43de12\",\n\t\"./mk.js\": \"caa305a284aa2a43de12\",\n\t\"./ml\": \"420c93df2e869e44a6be\",\n\t\"./ml.js\": \"420c93df2e869e44a6be\",\n\t\"./mn\": \"88bef9084b87f22bec78\",\n\t\"./mn.js\": \"88bef9084b87f22bec78\",\n\t\"./mr\": \"976853ceeabe59f92081\",\n\t\"./mr.js\": \"976853ceeabe59f92081\",\n\t\"./ms\": \"75d1a728ac1d1845e0fb\",\n\t\"./ms-my\": \"a397ce6f5031e6970d84\",\n\t\"./ms-my.js\": \"a397ce6f5031e6970d84\",\n\t\"./ms.js\": \"75d1a728ac1d1845e0fb\",\n\t\"./mt\": \"94ee10fcc6513bba6740\",\n\t\"./mt.js\": \"94ee10fcc6513bba6740\",\n\t\"./my\": \"beb270a3edb687940192\",\n\t\"./my.js\": \"beb270a3edb687940192\",\n\t\"./nb\": \"74f060cefe7f9f9f81e3\",\n\t\"./nb.js\": \"74f060cefe7f9f9f81e3\",\n\t\"./ne\": \"583c03067c3bbb68f372\",\n\t\"./ne.js\": \"583c03067c3bbb68f372\",\n\t\"./nl\": \"14483154d747e4f43f87\",\n\t\"./nl-be\": \"ce13ab9894b454c7857b\",\n\t\"./nl-be.js\": \"ce13ab9894b454c7857b\",\n\t\"./nl.js\": \"14483154d747e4f43f87\",\n\t\"./nn\": \"1b9c0da3b693c12b9b50\",\n\t\"./nn.js\": \"1b9c0da3b693c12b9b50\",\n\t\"./oc-lnc\": \"2c67eced9316b6b1ee0d\",\n\t\"./oc-lnc.js\": \"2c67eced9316b6b1ee0d\",\n\t\"./pa-in\": \"43153f005fce46bd4e03\",\n\t\"./pa-in.js\": \"43153f005fce46bd4e03\",\n\t\"./pl\": \"fccbbd2bff7a11470b83\",\n\t\"./pl.js\": \"fccbbd2bff7a11470b83\",\n\t\"./pt\": \"6c3490486614abd97aba\",\n\t\"./pt-br\": \"a28756c102a221ef1766\",\n\t\"./pt-br.js\": \"a28756c102a221ef1766\",\n\t\"./pt.js\": \"6c3490486614abd97aba\",\n\t\"./ro\": \"0ec91a5bf4797cae8621\",\n\t\"./ro.js\": \"0ec91a5bf4797cae8621\",\n\t\"./ru\": \"78d0335e54c8cfe1af1f\",\n\t\"./ru.js\": \"78d0335e54c8cfe1af1f\",\n\t\"./sd\": \"79da947e9c66ac06470d\",\n\t\"./sd.js\": \"79da947e9c66ac06470d\",\n\t\"./se\": \"8cd947d64fb304a936fe\",\n\t\"./se.js\": \"8cd947d64fb304a936fe\",\n\t\"./si\": \"f294c1fef873dab789bf\",\n\t\"./si.js\": \"f294c1fef873dab789bf\",\n\t\"./sk\": \"71fea0bf4c82fb4875e4\",\n\t\"./sk.js\": \"71fea0bf4c82fb4875e4\",\n\t\"./sl\": \"efb3d36c3201efa78aef\",\n\t\"./sl.js\": \"efb3d36c3201efa78aef\",\n\t\"./sq\": \"987887407309def44131\",\n\t\"./sq.js\": \"987887407309def44131\",\n\t\"./sr\": \"aa91a44e85e940a2bf7c\",\n\t\"./sr-cyrl\": \"c2fbfe9f52af058339b3\",\n\t\"./sr-cyrl.js\": \"c2fbfe9f52af058339b3\",\n\t\"./sr.js\": \"aa91a44e85e940a2bf7c\",\n\t\"./ss\": \"3618c3e69bd60abdec1e\",\n\t\"./ss.js\": \"3618c3e69bd60abdec1e\",\n\t\"./sv\": \"90cb8fe18973cc8ad619\",\n\t\"./sv.js\": \"90cb8fe18973cc8ad619\",\n\t\"./sw\": \"0f62dc3ba954a9b4f96f\",\n\t\"./sw.js\": \"0f62dc3ba954a9b4f96f\",\n\t\"./ta\": \"844086e807f1c4449104\",\n\t\"./ta.js\": \"844086e807f1c4449104\",\n\t\"./te\": \"ec5fa44904a426c7d6b4\",\n\t\"./te.js\": \"ec5fa44904a426c7d6b4\",\n\t\"./tet\": \"eb17a5fb5f570139b4d9\",\n\t\"./tet.js\": \"eb17a5fb5f570139b4d9\",\n\t\"./tg\": \"ac7de847d34b8f8ccb86\",\n\t\"./tg.js\": \"ac7de847d34b8f8ccb86\",\n\t\"./th\": \"36f3a0f56888ee4a2254\",\n\t\"./th.js\": \"36f3a0f56888ee4a2254\",\n\t\"./tk\": \"157c3bfb4332ecb968e3\",\n\t\"./tk.js\": \"157c3bfb4332ecb968e3\",\n\t\"./tl-ph\": \"390050c5a7e4fad52e39\",\n\t\"./tl-ph.js\": \"390050c5a7e4fad52e39\",\n\t\"./tlh\": \"c1d4f179f2c86899fe32\",\n\t\"./tlh.js\": \"c1d4f179f2c86899fe32\",\n\t\"./tr\": \"4747541623aa22be1628\",\n\t\"./tr.js\": \"4747541623aa22be1628\",\n\t\"./tzl\": \"04156e73628668d3361f\",\n\t\"./tzl.js\": \"04156e73628668d3361f\",\n\t\"./tzm\": \"d741cb96012ece2aa9bd\",\n\t\"./tzm-latn\": \"db884e1824018fc373fe\",\n\t\"./tzm-latn.js\": \"db884e1824018fc373fe\",\n\t\"./tzm.js\": \"d741cb96012ece2aa9bd\",\n\t\"./ug-cn\": \"18d0a09a76f484093f7f\",\n\t\"./ug-cn.js\": \"18d0a09a76f484093f7f\",\n\t\"./uk\": \"d15fe98eab566cf93e9c\",\n\t\"./uk.js\": \"d15fe98eab566cf93e9c\",\n\t\"./ur\": \"f6cf585ce966451b6ecf\",\n\t\"./ur.js\": \"f6cf585ce966451b6ecf\",\n\t\"./uz\": \"1c0702e50d269335856d\",\n\t\"./uz-latn\": \"986b1eb823c9bfd22dd9\",\n\t\"./uz-latn.js\": \"986b1eb823c9bfd22dd9\",\n\t\"./uz.js\": \"1c0702e50d269335856d\",\n\t\"./vi\": \"45a4a2dd7d7ec31c8414\",\n\t\"./vi.js\": \"45a4a2dd7d7ec31c8414\",\n\t\"./x-pseudo\": \"e444a523a4d8bf9a593a\",\n\t\"./x-pseudo.js\": \"e444a523a4d8bf9a593a\",\n\t\"./yo\": \"a774c10d43430863530d\",\n\t\"./yo.js\": \"a774c10d43430863530d\",\n\t\"./zh-cn\": \"bd6f01a1dfb233a3dea4\",\n\t\"./zh-cn.js\": \"bd6f01a1dfb233a3dea4\",\n\t\"./zh-hk\": \"4d18f839c259bd2ab031\",\n\t\"./zh-hk.js\": \"4d18f839c259bd2ab031\",\n\t\"./zh-mo\": \"1ca69eb96ab275531ed1\",\n\t\"./zh-mo.js\": \"1ca69eb96ab275531ed1\",\n\t\"./zh-tw\": \"1f7a7ab81ea3f26f4d4d\",\n\t\"./zh-tw.js\": \"1f7a7ab81ea3f26f4d4d\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) { // check for number or string\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn id;\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"7c24b247221fc6294d68\";","import { fromJS } from 'immutable';\nimport {\n TOGGLE_WIDGET,\n TOGGLE_MODAL,\n SET_SUSTAINABILITY_SELECTED,\n SET_INPUT_DATA,\n SET_INPUT_DATA_OFFER,\n SET_CONTRACTUAL_CATEGORY,\n SET_CONTRACTUAL_CATEGORY_OFFER,\n TOGGLE_LOADING,\n GET_LOGIC_RESPONSE,\n GET_LOGIC_OFFER_RESPONSE,\n CHECK_SUSTAINABILITY_RESPONSE,\n CHECK_SUSTAINABILITY_OFFER_RESPONSE,\n RESET_DATA,\n RESET_OFFER_DATA,\n} from './constants';\n\nconst checkInputDefaultData = {\n contractualCategory: null,\n step: null,\n answers: {}\n};\n\nconst prescoringStorage = getFromLocalStorage();\n\n// The initial state of forms\nexport const initialState = fromJS({\n checkInput: {\n contractualCategory: prescoringStorage.contractualCategory || null,\n step: prescoringStorage.step || null,\n answers: prescoringStorage.clientAnswers || {}\n },\n checkResponse: prescoringStorage.checkResponse || {},\n logic: prescoringStorage.logic || [],\n offerSustainability: {\n checkInput: {\n contractualCategory: prescoringStorage.contractualCategory || null,\n step: prescoringStorage.step || null,\n answers: prescoringStorage.clientAnswers || {}\n },\n checkResponse: prescoringStorage.checkResponse || {},\n logic: prescoringStorage.logic || [],\n },\n widgetIsOpen: false,\n modalIsOpen: false,\n sustainabilitySelected: prescoringStorage.checkResponse\n && typeof prescoringStorage.checkResponse.chance === 'number'\n ? [prescoringStorage.checkResponse.chance] : [],\n loading: false\n});\n\nfunction offerSelectorReducer(state = initialState, action) {\n switch (action.type) {\n case TOGGLE_WIDGET:\n return state.set('widgetIsOpen', action.isOpen);\n case TOGGLE_MODAL:\n return state.set('modalIsOpen', action.isOpen);\n case SET_SUSTAINABILITY_SELECTED:\n return state.set('sustainabilitySelected', fromJS(action.sustainabilitySelected));\n case SET_CONTRACTUAL_CATEGORY:\n updateLocalStorage({\n contractualCategory: action.contractualCategory,\n step: null,\n clientAnswers: {}\n });\n\n return state.setIn(['checkInput', 'contractualCategory'], fromJS(action.contractualCategory))\n .setIn(['checkInput', 'step'], null)\n .set('checkResponse', fromJS({}))\n .setIn(['checkInput', 'answers'], fromJS({}));\n case SET_CONTRACTUAL_CATEGORY_OFFER:\n return state.setIn(['offerSustainability', 'checkInput', 'contractualCategory'], fromJS(action.contractualCategory))\n .setIn(['offerSustainability', 'checkInput', 'step'], null)\n .setIn(['offerSustainability', 'checkResponse'], fromJS({}))\n .setIn(['offerSustainability', 'checkInput', 'answers'], fromJS({}));\n case SET_INPUT_DATA:\n updateLocalStorage({\n step: action.inputData.step,\n clientAnswers: {\n ...action.inputData.answers,\n }\n });\n\n return state.set('checkInput', fromJS(action.inputData))\n .setIn(['offerSustainability', 'checkInput'], fromJS(action.inputData));\n case SET_INPUT_DATA_OFFER:\n return state.setIn(['offerSustainability', 'checkInput'], fromJS(action.inputData));\n case TOGGLE_LOADING:\n return state.set('loading', action.isLoading);\n case GET_LOGIC_RESPONSE:\n updateLocalStorage({\n logic: action.logicData,\n step: action.logicData[0].q\n });\n\n return state.set('logic', fromJS(action.logicData))\n .setIn(['checkInput', 'step'], action.logicData[0].q)\n .set('loading', false);\n case GET_LOGIC_OFFER_RESPONSE:\n return state.setIn(['offerSustainability', 'logic'], fromJS(action.logicData))\n .setIn(['offerSustainability', 'checkInput', 'step'], action.logicData[0].q)\n .set('loading', false);\n case CHECK_SUSTAINABILITY_RESPONSE:\n updateLocalStorage({\n checkResponse: action.responseData,\n step: action.responseData.currentStep\n });\n\n const responseChance = action.responseData.chance;\n let sustainabilitySelected = state.get('sustainabilitySelected');\n\n if (typeof responseChance === 'number') {\n sustainabilitySelected = fromJS([responseChance]);\n }\n\n return state.set('checkResponse', action.responseData)\n .setIn(['checkInput', 'step'], action.responseData.currentStep)\n .set('sustainabilitySelected', sustainabilitySelected)\n .setIn(['offerSustainability', 'checkResponse'], action.responseData)\n .setIn(['offerSustainability', 'checkInput', 'step'], action.responseData.currentStep)\n .set('loading', false);\n case CHECK_SUSTAINABILITY_OFFER_RESPONSE:\n return state.setIn(['offerSustainability', 'checkResponse'], action.responseData)\n .setIn(['offerSustainability', 'checkInput', 'step'], action.responseData.currentStep);\n case RESET_DATA:\n localStorage.removeItem('prescoring')\n return state.set('checkInput', fromJS(checkInputDefaultData))\n .set('checkResponse', fromJS({}))\n .set('sustainabilitySelected', fromJS([]))\n .set('logic', fromJS([]))\n .set('loading', false);\n case RESET_OFFER_DATA:\n return state.setIn(['offerSustainability', 'checkInput'], fromJS(checkInputDefaultData))\n .setIn(['offerSustainability', 'checkResponse'], fromJS({}))\n .setIn(['offerSustainability', 'logic'], fromJS([]))\n .set('loading', false);\n default:\n return state;\n }\n}\n\nfunction updateLocalStorage(data) {\n let storageData = JSON.parse(localStorage.getItem('prescoring'));\n const now = new Date();\n\n storageData = {\n ...storageData,\n ...data,\n expiry: now.getTime() + (3600 * 1000)\n };\n\n localStorage.setItem('prescoring', JSON.stringify(storageData))\n}\n\nfunction getFromLocalStorage() {\n const itemStr = localStorage.getItem('prescoring');\n\n\tif (!itemStr) {\n\t\treturn {};\n\t}\n\n\tconst item = JSON.parse(itemStr);\n\tconst now = new Date();\n\n\tif (now.getTime() > item.expiry) {\n\t\tlocalStorage.removeItem('prescoring');\n\t\treturn {};\n\t}\n\n updateLocalStorage({});\n\n\treturn item;\n}\n\nexport default offerSelectorReducer;\n","import { fromJS, List } from 'immutable';\nimport {\n ADD_OPTION,\n REMOVE_OPTION,\n REMOVE_ALL,\n SORTS_RECEIVED,\n TAGS_RECEIVED,\n SHOW_TAG,\n HIDE_TAG,\n SHOW_ALL,\n UPDATE_SORT,\n TOGGLE_TAGS_ENABLED,\n} from './constants';\nimport { arrayContainsObj, removeObjFromArray } from '../../utils/common';\n\n// The initial state of the App\nexport const initialState = fromJS({\n tags: new List(),\n selectedTags: new List(),\n sorts: new List(),\n selectedSort: 'price-up',\n isTagsEnabled: true\n});\n\nfunction filtersReducer(state = initialState, action) {\n switch (action.type) {\n case ADD_OPTION:\n const item = { value: action.value, label: action.label };\n let list = state.getIn(['selectedTags']);\n if( list === undefined || list === null ) return state;\n list = list.toArray();\n if (!arrayContainsObj(list, item, 'value'))\n return state.updateIn(['selectedTags'], elem => elem.push(item));\n return state;\n case REMOVE_OPTION:\n let elems = state.getIn(['selectedTags']);\n if( elems === undefined || elems === null ) return state.setIn(['selectedTags'], new List([]));\n elems = elems.toArray();\n elems = removeObjFromArray(elems, { value: action.value }, 'value');\n return state.setIn(['selectedTags'], new List(elems));\n case REMOVE_ALL:\n return state.setIn(['selectedTags'], new List([]));\n case TAGS_RECEIVED:\n return state.setIn(['tags'], new List(action.tags));\n case SHOW_TAG:\n let tagShowList = state.getIn(['tags']).toArray();\n tagShowList = updateTagStatus(tagShowList, action.value, true);\n return state.setIn(['tags'], new List(tagShowList));\n case HIDE_TAG:\n let tagHideList = state.getIn(['tags']).toArray();\n tagHideList = updateTagStatus(tagHideList, action.value, false);\n return state.setIn(['tags'], new List(tagHideList));\n case SHOW_ALL:\n let tagsList = state.getIn(['tags']).toArray();\n tagsList = updateAllTags(tagsList, true);\n return state.setIn(['tags'], new List(tagsList));\n case SORTS_RECEIVED:\n return state.setIn(['sorts'], new List(action.sorts));\n case UPDATE_SORT:\n return state.set('selectedSort', action.sort);\n case TOGGLE_TAGS_ENABLED:\n return state.set('isTagsEnabled', action.isEnabled);\n default:\n return state;\n }\n}\n\n/**\n *\n * @param tags\n * @param value\n * @param status\n * @returns {*}\n */\nfunction updateTagStatus(tags, value, status) {\n return tags.map(\n item => (item.value === value ? { ...item, show: status } : item),\n );\n}\n\n/**\n *\n * @param tags\n * @param status\n * @returns {*}\n */\nfunction updateAllTags(tags, status) {\n return tags.map(item => ({ ...item, show: status }));\n}\n\nexport default filtersReducer;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OffersBanner {\\n margin: -1.9rem !important;\\n margin-bottom: 1rem !important; }\\n #OffersBanner .element-box {\\n background-color: inherit !important; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".MultiselectWithIcon {\\n margin-bottom: 30px; }\\n .MultiselectWithIcon .multi-select-icons-container {\\n list-style: none;\\n padding: 0px;\\n margin: 0px;\\n margin-bottom: 20px;\\n display: grid;\\n gap: 10px;\\n grid-template-columns: repeat(auto-fit, minmax(5.625rem, 1fr)); }\\n .MultiselectWithIcon .multi-select-icon-item {\\n display: inline-block;\\n white-space: nowrap;\\n vertical-align: middle;\\n border-radius: 4px;\\n margin: 0 5px 22px;\\n height: 4.688rem; }\\n .MultiselectWithIcon .multi-select-icon-item a {\\n border: 2px solid #dde2ec;\\n box-shadow: unset;\\n color: #495057;\\n display: block;\\n background-color: #fff;\\n padding: 10px;\\n border-radius: 6px;\\n margin: 0px;\\n text-decoration: none;\\n text-align: center;\\n transition: all 0.2s ease;\\n cursor: pointer; }\\n .MultiselectWithIcon .multi-select-icon-item a.active {\\n border: 2px solid #047bf8;\\n color: #495057; }\\n .MultiselectWithIcon .multi-select-icon-item a .avatar {\\n border-radius: unset !important;\\n margin-bottom: unset !important;\\n margin: auto auto;\\n width: 50px;\\n height: 50px;\\n background-size: cover;\\n display: block; }\\n .MultiselectWithIcon .multi-select-icon-item a span {\\n font-size: .8em;\\n margin-top: -0.5rem;\\n color: #495057; }\\n .MultiselectWithIcon .multi-select-icon-item a:hover {\\n border: 2px solid white;\\n background-color: #dde2ec;\\n color: #495057; }\\n\\n.todo-sidebar-section-header {\\n font-size: 16px; }\\n\\n.SelectCollapsible, .Multiselect, .MultiselectWithIcon, .Select {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\\n margin-bottom: 10px;\\n padding-bottom: 10px;\\n padding-top: 10px; }\\n\\n.Choice {\\n clear: both; }\\n .Choice .show-more {\\n cursor: pointer;\\n font-size: 16px;\\n font-weight: 500;\\n color: #1b55e2;\\n text-decoration: underline;\\n display: inline; }\\n\", \"\"]);\n\n// exports\n","import {\n ADD_OPTION,\n REMOVE_OPTION,\n REMOVE_ALL,\n SORTS_RECEIVED,\n TAGS_RECEIVED,\n SHOW_TAG,\n HIDE_TAG,\n SHOW_ALL,\n UPDATE_SORT,\n TOGGLE_TAGS_ENABLED,\n} from './constants';\n\n/**\n *\n * @param sort\n * @returns {{filters: *, type: string}}\n */\nexport const sortsLoaded = sorts => ({\n type: SORTS_RECEIVED,\n sorts,\n});\n/**\n *\n * @param tags\n * @returns {{filters: *, type: string}}\n */\nexport const tagsLoaded = tags => ({\n type: TAGS_RECEIVED,\n tags,\n});\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const removeAllOptions = () => ({\n type: REMOVE_ALL,\n});\n\n/**\n * @param value\n * @param label\n * @returns {{label: *, type: string, value: *}}\n */\nexport function addOption(value, label) {\n return {\n type: ADD_OPTION,\n label,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function removeOption(value) {\n return {\n type: REMOVE_OPTION,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function showTag(value) {\n return {\n type: SHOW_TAG,\n value,\n };\n}\n\n/**\n *\n * @param value\n * @returns {{type: string, value: *}}\n */\nexport function hideTag(value) {\n return {\n type: HIDE_TAG,\n value,\n };\n}\n\n/**\n *\n * @returns {{type: string}}\n */\nexport const showAllTags = () => ({\n type: SHOW_ALL,\n});\n\n/**\n *\n * @param sort\n * @returns {{type: string, sort: string}}\n */\nexport function orderBy(sort) {\n return {\n type: UPDATE_SORT,\n sort,\n };\n}\n\nexport function enableTags() {\n return {\n type: TOGGLE_TAGS_ENABLED,\n isEnabled: true\n };\n}\n\nexport function disableTags() {\n return {\n type: TOGGLE_TAGS_ENABLED,\n isEnabled: false\n };\n}\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".recipeCard__skeleton {\\n display: inline-block;\\n background-color: var(--color__gray--lighter);\\n padding-bottom: var(--spacing__vertical--1); }\\n\\n.recipeCard__skeleton--medium {\\n width: 33%; }\\n\\n.recipeCard__skeleton--large {\\n width: 100%; }\\n\\n.recipeCard__image--skeleton {\\n padding-bottom: 100%;\\n background-color: var(--color__gray--lighter); }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction SortIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"title\",{\"key\":0},\"drover_icon_library\"),React.createElement(\"rect\",{\"className\":\"cls-1\",\"fill\":\"none\",\"width\":\"83.33\",\"height\":\"83.33\",\"rx\":\"41.67\",\"ry\":\"41.67\",\"key\":1}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"9.43\",\"width\":\"33.72\",\"height\":\"7\",\"key\":2}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"28.59\",\"width\":\"28.1\",\"height\":\"7\",\"key\":3}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"47.75\",\"width\":\"22.48\",\"height\":\"7\",\"key\":4}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"66.9\",\"width\":\"16.86\",\"height\":\"7\",\"key\":5}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"57.34\",\"y\":\"12.93\",\"width\":\"7\",\"height\":\"57.47\",\"key\":6}),React.createElement(\"path\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"d\":\"M60.84,73.9A3.47,3.47,0,0,1,58.45,73l-19.33-18L43.9,49.8,60.84,65.61,77.78,49.8l4.77,5.12L63.23,73A3.51,3.51,0,0,1,60.84,73.9Z\",\"key\":7})]);\n}\n\nSortIcon.defaultProps = {\"id\":\"Sort_Layer\",\"viewBox\":\"0 0 83.33 83.33\",\"className\":\"asc order\"};\n\nmodule.exports = SortIcon;\n\nSortIcon.default = SortIcon;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItemsList.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItemsList.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItemsList.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction Lock (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M13 5.496L11.571 4 6.47 9.342 4.43 7.205 3 8.701l3.47 3.632z\",\"fill\":\"#047bf8\"}));\n}\n\nLock.defaultProps = {\"width\":\"16\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"className\":\"SVG SVG--inline c-bw-9\"};\n\nmodule.exports = Lock;\n\nLock.default = Lock;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectServices = state => state.get('services', initialState);\n\nconst makeSelectServices = () =>\n createSelector(selectServices, servicesState =>\n servicesState.getIn(['services']),\n );\n\nconst makeSelectError = () =>\n createSelector(selectServices, servicesState => servicesState.get('error'));\n\nconst makeSelectLoading = () =>\n createSelector(selectServices, servicesState => servicesState.get('loading'));\n\nconst makeSelectSelectedServices = () =>\n createSelector(selectServices, servicesState =>\n servicesState.get('selected'),\n );\n\nconst makeSelectProductServices = () =>\n createSelector(selectServices, servicesState =>\n servicesState.get('productServices'),\n );\n\nexport {\n selectServices,\n makeSelectServices,\n makeSelectError,\n makeSelectLoading,\n makeSelectSelectedServices,\n makeSelectProductServices,\n};\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for NotFoundPage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/*\n * OffersConstants\n */\n\nexport const GET_OFFERS = 'ideal/Offers/GET_OFFERS';\nexport const OFFERS_RECEIVED = 'ideal/Offers/OFFERS_RECEIVED';\nexport const SET_LOADING = 'ideal/Offers/SET_LOADING';\n","/*\n* OfferReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport { GET_OFFERS, OFFERS_RECEIVED, SET_LOADING } from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n offers: [],\n total: 0,\n loading: true,\n});\n\nfunction offersReducer(state = initialState, action) {\n switch (action.type) {\n case GET_OFFERS:\n return state;\n case OFFERS_RECEIVED:\n return state\n .set('offers', action.offers)\n .set('total', action.total)\n .set('loading', false);\n case SET_LOADING:\n return state.set('loading', action.loading);\n default:\n return state;\n }\n}\n\nexport default offersReducer;\n","import { GET_OFFERS, OFFERS_RECEIVED, SET_LOADING } from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getOffers = () => ({\n type: GET_OFFERS,\n});\n\n/**\n *\n * @param offers\n * @param total\n * @returns {{offers: *, total: *, type: *}}\n */\nexport function offersLoaded(offers, total) {\n return {\n type: OFFERS_RECEIVED,\n offers,\n total,\n };\n}\n\n/**\n *\n * @param loading\n * @returns {{type: string, loading: boolean}}\n */\nexport function setLoading(loading) {\n return {\n type: SET_LOADING,\n loading,\n };\n}\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { offersLoaded, setLoading } from './actions';\nimport { updatePaginator, setPage } from 'components/Paginator/actions';\nimport { resetData } from 'components/PrescoringTool/actions';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\n\nimport { makeSelectSelectedParams } from 'components/Search/selectors';\nimport { makeSelectSustainabilitySelected, makeSelectCheckInputData, makeSelectCheckResponse } from 'components/PrescoringTool/selectors';\n\nimport {\n makeSelectCurrentPage,\n makeSelectItemsPerPage,\n} from 'components/Paginator/selectors';\n\nimport {\n makeSelectSelectedSort,\n makeSelectSelectedTags,\n} from 'components/HorizontalFilter/selectors';\n\n/* Action watchers */\nimport { GET_OFFERS } from './constants';\nimport {\n REMOVE_ALL,\n ADD_OPTION,\n REMOVE_OPTION,\n UPDATE_SORT,\n} from 'components/HorizontalFilter/constants';\nimport { UPDATE_PARAMS, REMOVE_PARAM } from 'components/Search/constants';\nimport { SET_PAGE_NUMBER } from 'components/Paginator/constants';\nimport { SET_SUSTAINABILITY_SELECTED } from 'components/PrescoringTool/constants';\n\nfunction* fetchOffers(action) {\n const { type } = action;\n // Handle loading\n yield put(setLoading(true));\n\n if ([UPDATE_PARAMS, REMOVE_PARAM, REMOVE_OPTION, SET_SUSTAINABILITY_SELECTED].indexOf(type) >= 0) {\n if (\n (action.value && ['piva', 'privati'].indexOf(action.value) >= 0) ||\n (action.paramName && ['monthly_rate', 'deposit'].indexOf(action.paramName) >= 0) ||\n (action.param && ['monthly_rate', 'deposit'].indexOf(action.param.name) >= 0)\n ) {\n yield put(resetData());\n }\n\n yield put(setPage(1));\n }\n\n if ([REMOVE_ALL].indexOf(type) >= 0) {\n yield put(resetData());\n yield put(setPage(1));\n }\n\n const params = yield select(makeSelectSelectedParams());\n const sustainability = yield select(makeSelectSustainabilitySelected());\n let prescoringResponse = yield select(makeSelectCheckResponse());\n let inputData = yield select(makeSelectCheckInputData());\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n inputData = inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData;\n\n const requestParams = [];\n params.map(param => (requestParams[param.name] = param.value));\n\n requestParams['answers'] = inputData.answers || {};\n requestParams['contractualCategory'] = inputData.contractualCategory;\n\n if (sustainability) {\n requestParams['sustainability'] = sustainability || [];\n }\n\n const tags = yield select(makeSelectSelectedTags());\n const requestTags = [];\n tags.map(tag => requestTags.push(tag.value));\n\n const requestSort = yield select(makeSelectSelectedSort());\n\n const page = yield select(makeSelectCurrentPage());\n const items = yield select(makeSelectItemsPerPage());\n\n const requestURL = `${API_URL}search/offers`;\n const requestBody = {\n ...requestParams,\n ...prescoringResponse || {},\n sort: requestSort,\n tags: requestTags,\n page,\n items,\n };\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield all([\n put(offersLoaded(request.items.data, request.total)),\n put(\n updatePaginator(request.total, request.lastPage, request.currentPage),\n ),\n ]);\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(\n [\n SET_PAGE_NUMBER,\n UPDATE_PARAMS,\n REMOVE_PARAM,\n REMOVE_ALL,\n REMOVE_OPTION,\n UPDATE_SORT,\n ADD_OPTION,\n GET_OFFERS,\n SET_SUSTAINABILITY_SELECTED,\n ],\n fetchOffers,\n );\n}\n\nexport default function* offersData() {\n yield all([actionWatcher()]);\n}\n","/*\n * HomePage Messages\n *\n * This contains all the text for the HomePage container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.containers.HomePage';\n\nexport default defineMessages({\n header: {\n id: `${scope}.header`,\n defaultMessage: 'This is the HomePage container!',\n },\n noOfferFound: {\n id: `${scope}.noOfferFound`,\n defaultMessage: `Oops, al momento non abbiamo risultati per la tua ricerca.\n
\n Prova a modificare o a cancellare i filtri selezionati.`,\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Row, Col } from 'reactstrap';\nimport CarItem from '../CarItem';\nimport './styles.scss';\n\nconst index = props => {\n const { cars, selectedFilters } = props;\n const isCatalogoFilterSelected = selectedFilters.some(selectedFilter => selectedFilter.value === 'catalogo');\n const carsTpl = cars.map((offer, key) => {\n let link = `/offers/${offer.code}?duration=${offer.duration}&deposit=${offer.deposit}&distance=${offer.distance}`;\n\n if (offer.bundle && offer.bundle.trim() !== '') {\n link += `&bundle=${offer.bundle}`;\n }\n\n return \n \n \n });\n\n return (\n
\n {carsTpl}\n
\n );\n};\n\nindex.propTypes = {\n cars: PropTypes.any.isRequired,\n};\n\nexport default index;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOffers = state => state.get('offers', initialState);\n\nconst makeSelectOffers = () =>\n createSelector(selectOffers, offersState => offersState.getIn(['offers']));\n\nconst makeSelectOffersNumber = () =>\n createSelector(selectOffers, offersState => offersState.get('total'));\n\nconst makeSelectLoading = () =>\n createSelector(selectOffers, offersState => offersState.get('loading'));\n\nexport { selectOffers, makeSelectOffers, makeSelectOffersNumber, makeSelectLoading };\n","import React from 'react';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Row, Col } from 'reactstrap';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { getOffers } from './actions';\n\nimport { Search, HorizontalFilter, Paginator, Loader, RequestOffer, SponsorBanner } from 'components';\nimport { FormattedHTMLMessage } from 'react-intl';\nimport messages from './messages';\nimport CarItemList from 'components/CarItemsList';\nimport { featureAllowed } from 'containers/App/selectors';\n\nimport {\n makeSelectOffers,\n makeSelectLoading,\n makeSelectOffersNumber,\n} from './selectors';\n\nimport { makeSelectSelectedTags } from 'components/HorizontalFilter/selectors';\n\nimport './styles.scss';\n\nexport class OffersPage extends React.Component {\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n this.props.loadOffers();\n }\n\n render() {\n const { offers, loading, total, selectedFilters, featureAllowed } = this.props;\n\n return (\n <>\n \n \n \n
\n \n
\n \n \n
\n \n Vai ai Filtri\n \n
\n
\n \n \n {\n !loading &&\n (offers.length ? \n :
\n \n
)\n }\n {featureAllowed('offer-request') &&\n \n }\n \n
\n \n
\n \n );\n }\n}\n\nOffersPage.propTypes = {};\n\nexport function mapDispatchToProps(dispatch) {\n return {\n loadOffers: () => dispatch(getOffers()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n offers: makeSelectOffers(),\n loading: makeSelectLoading(),\n total: makeSelectOffersNumber(),\n selectedFilters: makeSelectSelectedTags(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withReducer = injectReducer({ key: 'offers', reducer });\nconst withSaga = injectSaga({ key: 'offers', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(OffersPage);\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for HomePage\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","import configs from 'configs';\n\nimport WelcomePage from 'containers/WelcomePage/Loadable';\nimport FaqPage from 'containers/FaqPage/Loadable';\nimport SupportPage from 'containers/SupportPage/Loadable';\nimport Dashboard from 'containers/Dashboard/Loadable';\nimport OffersPage from 'containers/Offers/';\nimport OfferPage from 'containers/Offer/Loadable';\nimport RequestOfferPage from 'containers/RequestOffer/Loadable';\nimport QuotationsPage from 'containers/Quotations/Loadable';\nimport QuotationPage from 'containers/Quotation/Loadable';\n\nimport AdminPage from 'containers/Admin/Loadable';\nimport AgentQuotationsPage from 'containers/AgentQuotations/Loadable';\n\nimport MarketingPage from 'containers/Marketing/Loadable';\n\nimport CustomersPage from 'containers/Customers/Loadable';\nimport CustomerPage from 'containers/Customer/Loadable';\n\nimport CatalogAddPage from 'containers/CatalogAdd/Loadable';\nimport CatalogEditPage from 'containers/CatalogEdit/Loadable';\nimport CatalogShowPage from 'containers/CatalogShow/Loadable';\n\nimport ProvidersList from 'containers/ProvidersList/Loadable';\nimport ProviderAdd from 'containers/ProviderAdd/Loadable';\nimport ProviderEdit from 'containers/ProviderEdit/Loadable';\n\nimport ProductsList from 'containers/ProductsList/Loadable';\nimport ProductAdd from 'containers/ProductAdd/Loadable';\nimport ProductEdit from 'containers/ProductEdit/Loadable';\n\nimport ProfilePage from 'containers/Profile/Loadable';\n\nconst routes = [\n {\n path: '/',\n name: 'Home',\n icon: 'os-icon os-icon-ui-55',\n component: WelcomePage,\n role: 0,\n show: true,\n },\n {\n path: '/offers',\n name: 'Offerte',\n icon: 'os-icon os-icon-cv-2',\n component: OffersPage,\n role: 0,\n show: true,\n },\n {\n path: '/offers/:offer',\n component: OfferPage,\n show: false,\n },\n {\n path: '/offer/request',\n component: RequestOfferPage,\n show: false,\n feature: 'offer-request',\n },\n {\n path: '/quotations',\n name: 'Preventivi Salvati',\n icon: 'os-icon os-icon-phone-21',\n component: QuotationsPage,\n role: 0,\n show: true,\n },\n {\n path: '/quotation/',\n component: QuotationPage,\n show: false,\n },\n {\n path: '/quotations/:quotation',\n component: QuotationPage,\n hasFaqSalesBot: false,\n show: false,\n },\n {\n path: '/dashboard',\n name: 'Dashboard',\n icon: 'os-icon os-icon-layout',\n component: Dashboard,\n role: 0,\n show: true,\n },\n {\n path: '/agents/:agent',\n component: AgentQuotationsPage,\n show: false,\n },\n {\n path: '/admin',\n name: 'Rete',\n icon: 'os-icon os-icon-hierarchy-structure-2',\n component: AdminPage,\n role: 1,\n show: true,\n feature: 'network',\n },\n {\n path: '/catalog',\n name: 'Catalogo',\n icon: 'os-icon os-icon-package',\n component: CatalogShowPage,\n role: 0,\n show: true,\n feature: 'catalog',\n },\n {\n path: '/catalog/new',\n component: CatalogAddPage,\n show: false,\n },\n {\n path: '/catalog/:offer/edit',\n component: CatalogEditPage,\n show: false,\n },\n {\n path: '/providers',\n name: 'Provider',\n icon: 'os-icon os-icon-grid-squares2',\n component: ProvidersList,\n role: 0,\n show: true,\n feature: 'provider-product',\n },\n {\n path: '/providers/new',\n component: ProviderAdd,\n show: false,\n },\n {\n path: '/providers/:provider/edit',\n component: ProviderEdit,\n show: false,\n },\n {\n path: '/products',\n name: 'Prodotti',\n icon: 'os-icon os-icon-ui-44',\n component: ProductsList,\n role: 0,\n show: true,\n feature: 'provider-product',\n },\n {\n path: '/products/new',\n component: ProductAdd,\n show: false,\n },\n {\n path: '/products/:product/edit',\n component: ProductEdit,\n show: false,\n },\n {\n path: '/customers',\n component: CustomersPage,\n show: false,\n },\n {\n path: '/customers/:customer',\n component: CustomerPage,\n show: false,\n },\n {\n path: '/profile',\n component: ProfilePage,\n show: false,\n },\n {\n path: '/marketing',\n name: 'Materiale pubblicitario',\n icon: 'os-icon os-icon-window-content',\n component: MarketingPage,\n role: 0,\n show: configs.marketingSection,\n feature: 'marketing-stuff',\n },\n {\n path: '/faq',\n name: 'Domande Frequenti',\n icon: 'os-icon os-icon-robot-1',\n component: FaqPage,\n role: 0,\n show: true,\n },\n {\n path: '/support',\n name: 'Supporto',\n icon: 'os-icon os-icon-mail-01',\n component: SupportPage,\n role: 0,\n show: true,\n feature: 'support',\n },\n // { redirect: true, path: '/', to: '/', name: 'Dashboard' },\n];\n\nexport default routes;\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","/**\n * Asynchronously loads the component for Offers\n */\nimport loadable from 'loadable-components';\n\nexport default loadable(() => import('./index'));\n","import React from 'react';\nimport { NavLink } from 'react-router-dom';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport { makeSelectUser, featureAllowed } from 'containers/App/selectors';\nimport configs from 'configs';\nimport routes from './routes';\nimport './styles.scss';\n\nclass NavBar extends React.Component {\n constructor(props) {\n super(props);\n }\n\n routeIsVisible = route =>\n !route.hasOwnProperty('role') ||\n (Array.isArray(route.role) && route.role.some(roleNum => roleNum === parseInt(this.propsagentProfile.role || 0)))\n\n render() {\n const { match, agentProfile, featureAllowed } = this.props;\n let { role } = agentProfile;\n role = parseInt(role);\n const isGroupLeader = role === 1\n const onlyGroupLeaderSections = configs.onlyGroupLeaderSections || []\n\n return (\n \n
    \n {routes.map((route, key) => {\n if (\n (\n (!route.hasOwnProperty('feature') && onlyGroupLeaderSections.indexOf(route.path) < 0)\n ||\n (!route.hasOwnProperty('feature') && onlyGroupLeaderSections.indexOf(route.path) >= 0 && isGroupLeader)\n ||\n (route.hasOwnProperty('feature') && featureAllowed(route.feature))\n ) &&\n (route.show && !route.hasOwnProperty('redirect') && parseInt(route.role) <= parseInt(role))\n ) {\n return (\n
  • \n \n route.path === match.path ||\n (route.path !== '/' && match.path.startsWith(route.path))\n }\n >\n
    \n
    \n
    {route.name}
    \n
    \n \n
  • \n );\n }\n\n return null\n })}\n
\n \n );\n }\n}\n\nconst mapStateToProps = createStructuredSelector({\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n agentProfile: makeSelectUser(),\n});\n\nconst withConnect = connect(mapStateToProps);\n\nexport default compose(withConnect)(NavBar);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nimport './styles.scss';\nimport { APP_LOGO_INVERTED } from 'containers/App/constants';\n\nimport injectReducer from 'utils/injectReducer';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\n\nimport reducer from 'containers/App/reducer';\nimport { makeSelectUser, makeSelectTokenValidation, featureAllowed } from 'containers/App/selectors';\nimport { logout } from 'containers/App/actions';\nimport Favicon from \"react-favicon\";\nimport configs from 'configs';\nimport { APP_MAIN_LOGO } from '../../containers/App/constants';\n\nclass Header extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isOpen: false,\n dropdownOpen: false,\n color: 'transparent',\n chatbotLoaded: false,\n route: '',\n };\n this.toggle = this.toggle.bind(this);\n this.dropdownToggle = this.dropdownToggle.bind(this);\n }\n\n toggle() {\n if (this.state.isOpen) {\n this.setState({\n color: 'transparent',\n });\n } else {\n this.setState({\n color: 'white',\n });\n }\n this.setState({\n isOpen: !this.state.isOpen,\n });\n }\n\n dropdownToggle(e) {\n this.setState({\n dropdownOpen: !this.state.dropdownOpen,\n });\n }\n\n openSidebar() {\n document.documentElement.classList.toggle('nav-open');\n this.refs.sidebarToggle.classList.toggle('toggled');\n }\n\n // function that adds color white/transparent to the navbar on resize (this is for the collapse)\n updateColor() {\n if (window.innerWidth < 993 && this.state.isOpen) {\n this.setState({\n color: 'white',\n });\n } else {\n this.setState({\n color: 'transparent',\n });\n }\n }\n\n initChatBot() {\n if (this.props.hasFaqSalesBot === true && !this.state.chatbotLoaded && process.env.CHATBOT_FAQ_ID) {\n const { user: {name, email, business_name, code} } = this.props;\n\n window.__be = window.__be || {};\n window.__be.id = process.env.CHATBOT_FAQ_ID;\n (function() {\n var be = document.createElement('script');\n be.type = 'text/javascript';\n be.async = true;\n be.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'cdn.chatbot.com/widget/plugin.js';\n var s = document.getElementsByTagName('script')[0];\n s.parentNode.insertBefore(be, s);\n })();\n\n window.BE_API = window.BE_API || {};\n\n const userAttributes = {\n name,\n email,\n business_name,\n id: code,\n default_name: name,\n default_username: name,\n };\n\n const sessionAttributes = {\n agent_name: name,\n };\n\n this.setState({chatbotLoaded: true});\n\n setTimeout(() => {\n if (window.BE_API && typeof window.BE_API.isInitialized === 'function' && window.BE_API.isInitialized() && window.BE_API.isChatWindowHidden()) {\n window.BE_API.resetSession()\n }\n }, 2000);\n\n window.BE_API.onChatWindowOpen = function () {\n try {\n window.BE_API.setSessionAttributes(sessionAttributes)\n window.BE_API.setUserAttributes(userAttributes)\n } catch (e) { }\n };\n\n window.BE_API.onSessionReset = () => {\n try {\n window.BE_API.setSessionAttributes(sessionAttributes)\n window.BE_API.setUserAttributes(userAttributes)\n } catch (e) { }\n }\n\n } else if (!this.props.hasFaqSalesBot && this.state.chatbotLoaded) {\n window.BE_API.hideChatWindow();\n this.setState({chatbotLoaded: false});\n }\n }\n\n routeChanged(currentRoute) {\n this.setState({ route: currentRoute });\n\n this.initChatBot();\n }\n\n componentDidMount() {\n window.addEventListener('resize', this.updateColor.bind(this));\n\n this.routeChanged(location.pathname);\n }\n\n componentDidUpdate() {\n if (location.pathname && location.pathname !== this.state.route) {\n this.routeChanged(location.pathname);\n }\n }\n\n onLogOut = () => {\n this.props.logout();\n };\n\n handleKeyboard = ev => {\n if (ev.keyCode === 13) {\n this.setState({ visibility: 'visible' });\n this.setState({ opacity: 1 });\n }\n };\n\n render() {\n const { user: {name, business_name, roleName, logo}, featureAllowed } = this.props;\n\n return (\n
\n \n\n
\n \n {featureAllowed('rebrand') && logo ?\n \"Logo\"\n :\n \"Logo\"\n }\n \n
\n
\n
\n
\n
{name || business_name}
\n
{roleName}
\n
\n
\n
\n
\n
\n
\n
\n
{name || business_name}
\n
{roleName}
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n );\n }\n}\n\nexport function mapDispatchToProps(dispatch) {\n return {\n logout: () => dispatch(logout()),\n };\n}\n\nconst withReducer = injectReducer({ key: 'user', reducer });\n\nconst mapStateToProps = createStructuredSelector({\n user: makeSelectUser(),\n isTokenInvalid: makeSelectTokenValidation(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nHeader.defaultProps = {\n hasFaqSalesBot: true,\n};\n\nHeader.propTypes = {\n user: PropTypes.object,\n hasFaqSalesBot: PropTypes.bool,\n};\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withConnect,\n)(Header);\n","/*\n * Header Messages\n *\n * This contains all the text for the Header component.\n */\n\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'boilerplate.components.Footer';\n\nexport default defineMessages({\n powered:{\n id: `${scope}.powered`,\n defaultMessage: 'powered by'\n },\n disclaimer:{\n id: `${scope}.disclaimer`,\n defaultMessage: 'piattaforma che abilita alla vendita di Noleggio a Lungo Termine, ideata e brevettata da Daicar Rent Srl'\n },\n});\n","import React from 'react';\nimport configs from 'configs';\nimport messages from './messages';\nimport './styles.scss';\nimport {FormattedMessage} from 'react-intl';\n\nclass Footer extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n return (\n \n );\n }\n}\n\nexport default Footer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert, Button, Modal, Form, Input, InputNumber, Select, Radio, Row, Col, Progress } from 'antd';\nimport { Loader } from 'components'\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport { CONTRACTUAL_CATEGORIES } from 'containers/App/contractualCategories';\nimport { FILTERS_LABELS } from '../Search/constants';\nimport { MAPPED_FIELDS } from './constants'\n\nimport {\n makeSelectIsLoading,\n makeSelectModalIsOpen,\n makeSelectLogic,\n makeSelectCheckResponse,\n makeSelectCheckInputData,\n} from './selectors'\n\nimport {\n setInputData,\n setContractualCategory,\n sendCheckSustainability,\n resetData,\n resetOfferData,\n closeModal\n} from './actions'\nimport {\n addOption,\n hideTag,\n removeOption,\n showTag,\n enableTags,\n} from '../HorizontalFilter/actions';\nimport { removeParam } from '../Search/actions';\n\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nclass PrescoringModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n inputHasChanged: false,\n inputIsChanging: false,\n };\n\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleCancel = this.handleCancel.bind(this);\n this.handleReset = this.handleReset.bind(this);\n this.handleContractualCategoryChange = this.handleContractualCategoryChange.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n }\n\n handleSubmit = (inputName, inputValue) => {\n let { inputData } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n\n if (typeof inputName === 'string' && inputValue && !inputData.answers.hasOwnProperty(inputName)) {\n this.handleInputChange(inputName, inputValue);\n }\n\n this.props.sendCheckSustainability();\n\n this.setState({\n inputHasChanged: true,\n inputIsChanging: false,\n });\n\n this.updateFiltersFromResponse()\n };\n\n handleCancel = () => {\n this.props.closeModal();\n };\n\n handleReset = () => {\n this.props.resetData();\n this.props.resetOfferData();\n this.props.enableTags();\n this.resetPrescoringFilters();\n };\n\n handleContractualCategoryChange = value => {\n this.props.removeOption('piva');\n this.props.removeOption('privati');\n this.props.setContractualCategory(value);\n };\n\n handleInputChange = (inputName, inputValue) => {\n let { logic, inputData } = this.props;\n inputData = inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData;\n logic = logic && logic.hasOwnProperty('_root') ? [...logic.toJS()] : [...logic] || [];\n\n if (!Array.isArray(logic)) {\n logic = [];\n }\n\n let lastLogicIndex = logic.findLastIndex(logicStep =>\n logicStep.q === inputName\n );\n\n if (lastLogicIndex < 0) {\n lastLogicIndex = 0;\n }\n\n logic.splice(lastLogicIndex, logic.length);\n\n const oldFilteredInputDataAnswers = {};\n\n logic.forEach(logicStep => {\n if (inputData.answers.hasOwnProperty(logicStep.q)) {\n oldFilteredInputDataAnswers[logicStep.q] = inputData.answers[logicStep.q];\n }\n });\n\n logic[lastLogicIndex] = null;\n\n const newInputData = {\n ...inputData,\n step: inputName,\n answers: {\n ...oldFilteredInputDataAnswers,\n [inputName]: inputValue\n }\n };\n\n this.props.setInputData(newInputData);\n\n this.setState({\n inputHasChanged: false,\n inputIsChanging: inputName,\n });\n };\n\n get isLastStep() {\n let { logic } = this.props;\n logic = logic && logic.hasOwnProperty('_root') ? logic.toJS() : logic || [];\n\n return logic.length > 0 && logic.length === this.logicSteps.length;\n }\n\n get canSubmit() {\n let { inputData, logic } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n logic = logic && logic.hasOwnProperty('_root') ? logic.toJS() : logic || [];\n const answers = Object.keys(inputData.answers || {});\n\n return (!this.response || !this.response.chance) && logic && logic.length > 0 && answers.length === logic.length;\n }\n\n get canReset() {\n return this.logicSteps.length > 0\n }\n\n get response() {\n let { response } = this.props;\n response = response && response.hasOwnProperty('_root') ? response.toJS() : response;\n\n return response && typeof response.description !== 'undefined' ? response : null;\n }\n\n get logicSteps() {\n let { logic, inputData } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n logic = logic && logic.hasOwnProperty('_root') ? logic.toJS() : logic || [];\n\n if (!inputData || !inputData.contractualCategory) {\n return [];\n }\n\n return logic.filter(logicStep => {\n const lastAnswer = inputData.answers[inputData.step] || null;\n\n if (lastAnswer) {\n // cerco in tutte le risposte se ce n'è una che ha come action il goto all'attuale step\n const lastLogicStep = logic.find(logicStep2 => logicStep2.q === inputData.step);\n\n if (lastLogicStep) {\n const lastLogicAnswer = lastLogicStep.a[Number(lastAnswer)];\n\n if (lastLogicAnswer && lastLogicAnswer.action === 'goto' && lastLogicAnswer.hasOwnProperty('to') && lastLogicAnswer.to === logicStep.q) {\n return true;\n }\n }\n }\n\n return inputData.answers.hasOwnProperty(logicStep.q) || logicStep.q === inputData.step\n });\n }\n\n get alertType() {\n switch (this.response.chance) {\n case 0: return 'danger';\n case 1: return 'warning';\n case 2: return 'success';\n default: return 'info';\n }\n }\n\n getCustomerTypeByContractualCategory = contractualCategory => {\n const contractualCategoryFound = CONTRACTUAL_CATEGORIES.find(contractualCategoryItem => contractualCategoryItem.value === contractualCategory);\n\n if (contractualCategoryFound) {\n return contractualCategoryFound.type === 'BUSINESS' ? 'piva' : 'privati';\n }\n\n return null;\n }\n\n componentDidUpdate(prevProps) {\n let { inputData, response } = this.props;\n let { inputData: inputDataPrev, response: responsePrev } = prevProps;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n response = response && response.hasOwnProperty('_root') ? response.toJS() : response || {};\n inputDataPrev = inputDataPrev && inputDataPrev.hasOwnProperty('_root') ? inputDataPrev.toJS() : inputDataPrev || {};\n responsePrev = responsePrev && responsePrev.hasOwnProperty('_root') ? responsePrev.toJS() : responsePrev || {};\n\n if (JSON.stringify(inputDataPrev) !== JSON.stringify(inputData) || JSON.stringify(responsePrev) !== JSON.stringify(response)) {\n this.setDefaultAnswerForCurrentStep()\n }\n }\n\n setDefaultAnswerForCurrentStep() {\n let { logic, inputData } = this.props;\n logic = logic && logic.hasOwnProperty('_root') ? logic.toJS() : logic || {};\n const { step, answers } = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n const logicStep = logic.find(logicStep => logicStep.q === step);\n\n if (logicStep && logicStep.hasOwnProperty('default') && !answers.hasOwnProperty(step)) {\n this.handleInputChange(step, logicStep.default);\n }\n }\n\n updateFiltersFromResponse() {\n let { inputData, response } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n response = response && response.hasOwnProperty('_root') ? response.toJS() : response || {};\n\n if (inputData.contractualCategory) {\n const customerType = this.getCustomerTypeByContractualCategory(inputData.contractualCategory);\n this.props.addOption(customerType, FILTERS_LABELS[customerType]);\n this.props.hideTag(customerType);\n } else {\n this.resetCustomerTypeFilter();\n }\n }\n\n resetCustomerTypeFilter() {\n this.props.removeOption('piva');\n this.props.showTag('piva');\n this.props.removeOption('privati');\n this.props.showTag('privati');\n }\n\n resetPrescoringFilters() {\n this.props.removeParam('monthly_rate');\n this.props.removeParam('deposit');\n this.resetCustomerTypeFilter();\n }\n\n render() {\n const { isLoading, isOpen } = this.props;\n let { inputData, logic } = this.props;\n inputData = inputData && inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData || {};\n logic = logic && logic.hasOwnProperty('_root') ? logic.toJS() : logic || [];\n\n return (\n this.handleSubmit()}\n size=\"large\"\n disabled={!this.canSubmit || (!this.state.inputHasChanged && this.state.inputIsChanging)}\n >\n Calcola sostenibilità\n ,\n \n Reset\n ,\n logic && this.logicSteps.length > 0 && \n `${this.logicSteps.length} / ${logic.length}`}\n status={this.logicSteps.length !== logic.length ? 'active' : 'normal'}\n />\n
\n ]}\n >\n
\n \n \n \n \n this.handleContractualCategoryChange(value)}\n >\n {\n CONTRACTUAL_CATEGORIES.map(contractualCategoryItem => (\n \n {contractualCategoryItem.description}\n \n ))\n }\n \n \n \n {this.logicSteps.length > 0 && this.logicSteps.map(logicField => (\n this.handleInputChange(logicField.q, value)}\n onChangeSubmit={value => this.handleSubmit(logicField.q, value)}\n value={typeof inputData.answers[logicField.q] !== 'undefined' ? inputData.answers[logicField.q] : (logicField.default || null)}\n hasSubmitButton={logicField.type === 'TYPE_INPUT' && (this.state.inputIsChanging === logicField.q)}\n />\n )\n )}\n \n {this.response && this.response.chance !== null &&\n \n \n \n \n \n }\n \n \n );\n }\n}\n\nconst ResponseFeedback = ({ type, responseDescription }) => {\n responseDescription = responseDescription === 'CONGRATULATIONS_THIS_OFFER' ? 'CONGRATULATIONS_OFFERS' : responseDescription;\n const text = MAPPED_FIELDS.a[responseDescription] || MAPPED_FIELDS.a['CONGRATULATIONS_OFFERS'];\n const TextComponent = () => {text} Vai alla vetrina offerte;\n\n return } className={`alertWithMessage alert alert-${type}`} />;\n}\n\nconst LogicField = ({type, q, options, onChange, onChangeSubmit, value, hasSubmitButton}) => {\n switch (type) {\n case 'TYPE_BOOL':\n return ;\n case 'TYPE_INPUT':\n return ;\n case 'TYPE_CHOICE':\n return ;\n default: return <>;\n }\n}\n\nconst LogicFieldBool = ({q, onChange, onChangeSubmit, value}) => \n {onChange(value); onChangeSubmit(value);}}\n value={value}\n >\n \n Sì\n \n \n No\n \n \n\n\nconst LogicFieldInput = ({q, onChange, onChangeSubmit, value, hasSubmitButton}) => \n \n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.')}\n parser={value => value.replace(/\\.*/g, '')}\n onChange={onChange}\n value={value}\n step={1}\n min={0}\n style={{width: '30%'}}\n />\n {hasSubmitButton &&\n onChangeSubmit(value)}\n >Ok\n }\n \n\n\nconst LogicFieldChoice = ({q, options, onChange, onChangeSubmit, value}) => \n {onChange(value); onChangeSubmit(value);}}\n >\n {\n options.map(option => (\n \n {MAPPED_FIELDS.list[option]}\n \n ))\n }\n \n\n\nPrescoringModal.defaultProps = {\n isLoading: false,\n isOpen: false,\n};\n\nPrescoringModal.propTypes = {\n isLoading: PropTypes.bool.isRequired,\n inputData: PropTypes.any,\n isOpen: PropTypes.bool.isRequired,\n logic: PropTypes.any,\n response: PropTypes.any,\n};\n\nconst withReducer = injectReducer({ key: 'prescoring', reducer });\nconst withSaga = injectSaga({ key: 'prescoring', saga });\n\nconst mapStateToProps = createStructuredSelector({\n isLoading: makeSelectIsLoading(),\n inputData: makeSelectCheckInputData(),\n isOpen: makeSelectModalIsOpen(),\n logic: makeSelectLogic(),\n response: makeSelectCheckResponse(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n closeModal: () => dispatch(closeModal()),\n setInputData: inputData => dispatch(setInputData(inputData)),\n setContractualCategory: contractualCategory => dispatch(setContractualCategory(contractualCategory)),\n sendCheckSustainability: () => dispatch(sendCheckSustainability()),\n resetData: () => dispatch(resetData()),\n resetOfferData: () => dispatch(resetOfferData()),\n addOption: (value, label) => dispatch(addOption(value, label)),\n hideTag: value => dispatch(hideTag(value)),\n removeOption: (value) => dispatch(removeOption(value)),\n showTag: value => dispatch(showTag(value)),\n enableTags: value => dispatch(enableTags()),\n removeParam: name => dispatch(removeParam(name)),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\nexport default compose(\n withSaga,\n withReducer,\n withConnect,\n)(PrescoringModal);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { notification, Button, } from 'antd';\n\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport {\n makeSelectWidgetIsOpen,\n makeSelectCheckInputData\n} from './selectors'\n\nimport {\n openWidget,\n closeWidget,\n openModal,\n} from './actions'\n\nimport configs from 'configs';\n\nimport './styles.scss';\nimport 'antComponentsStyle';\n\nclass PrescoringWidget extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n\n this.handleGo = this.handleGo.bind(this);\n this.handleOpen = this.handleOpen.bind(this);\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.isOpen !== this.props.isOpen) {\n if (this.props.isOpen) {\n this.openNotification();\n } else {\n notification.close(\"creditCheck\");\n }\n }\n }\n\n openNotification = () => {\n notification.open({\n key: \"creditCheck\",\n message: \"Scopri quali sono le offerte più adatte al tuo cliente!\",\n description: <>\n
\n In pochi semplici passi potrai effettuare una prima verifica creditizia del tuo cliente e capire le offerte più adatte da proporgli.\n
\n this.handleOpen()}\n className=\"mt-4\"\n >Inizia\n ,\n duration: 0,\n placement: \"bottomRight\",\n bottom: '55%',\n onClose: this.props.closeWidget,\n style: {\n width: 280,\n marginLeft: 87,\n },\n });\n };\n\n handleOpen = () => {\n this.props.closeWidget();\n this.props.openModal();\n }\n\n handleGo = () => {\n if (this.hasPrescoringResponse()) {\n this.props.openModal();\n } else {\n this.props.openWidget();\n }\n };\n\n handleKeyboard = ev => {\n if (ev.keyCode === 13) {\n this.handleGo();\n }\n };\n\n hasPrescoringResponse = () => this.props.inputData.toJS().contractualCategory !== null;\n\n render() {\n return (\n
\n \n \n {configs.messages[\"app.components.PrescoringTool\"].widgetLabel}\n \n
\n );\n }\n}\n\nPrescoringWidget.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n};\n\nconst withReducer = injectReducer({ key: 'prescoring', reducer });\nconst withSaga = injectSaga({ key: 'prescoring', saga });\n\nconst mapStateToProps = createStructuredSelector({\n isOpen: makeSelectWidgetIsOpen(),\n inputData: makeSelectCheckInputData(),\n});\n\nexport function mapDispatchToProps(dispatch) {\n return {\n openWidget: () => dispatch(openWidget()),\n closeWidget: () => dispatch(closeWidget()),\n openModal: () => dispatch(openModal()),\n };\n}\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withSaga,\n withReducer,\n withConnect,\n)(PrescoringWidget);\n","/**\n *\n * App.js\n *\n * This component is the skeleton around the actual pages, and should only\n * contain code that should be seen on all pages. (e.g. navigation bar)\n *\n */\n\nimport React from 'react';\nimport { Route, Redirect } from 'react-router-dom';\nimport * as Sentry from \"@sentry/react\";\n\nimport NavBar from 'components/NavBar';\nimport Header from 'components/Header';\nimport Footer from 'components/Footer';\n\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\nimport { makeSelectUser, makeSelectTokenValidation, featureAllowed } from './selectors';\nimport { getUser } from './actions';\nimport { closeWidget } from 'components/PrescoringTool/actions'\nimport { default as PrescoringModal } from 'components/PrescoringTool/modal'\nimport { default as PrescoringWidget } from 'components/PrescoringTool/widget'\n\nimport { Tracking } from 'components';\n\nclass PrivateRoute extends React.Component {\n componentDidMount() {\n if(this.props.authentication && !this.props.user.hasOwnProperty('role')) {\n this.props.getUserInfo();\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.path !== this.props.path) {\n this.props.closeWidget();\n }\n }\n\n get hasPrescoringWidget() {\n const regex = new RegExp('^\\/offers\\/[a-z0-9]+', 'i');\n return this.props.featureAllowed('prescoring') &&\n !location.pathname.startsWith('/quotations/')\n && location.pathname !== '/quotation/'\n && (!location.pathname || !regex.test(location.pathname))\n }\n\n render() {\n const {\n user,\n isTokenInvalid,\n component: Component,\n authentication,\n hasFaqSalesBot = true,\n ...rest\n } = this.props;\n\n if (isTokenInvalid) {\n window.location = '/login';\n return null;\n } else if (user.hasOwnProperty('termsAccepted') && !user.termsAccepted) {\n window.location = '/sso/activate';\n // console.log(user)\n return null;\n }\n\n if (authentication && ( user === undefined || !user.hasOwnProperty('role'))) return null;\n\n Sentry.setUser({ id: user.code, email: user.email });\n\n let name = '';\n try {\n name = (user.business_name !== null && user.business_name.length > 0 ) ? user.business_name : user.name;\n } catch (e) {\n name = 'utente';\n }\n\n return (\n \n authentication === true ? (\n
\n \n {/*\n nel dettaglio offerta è disattivato\n perchè il feedback dato nella modale può essere differente da quello dato nello sticky price\n */}\n {this.hasPrescoringWidget &&\n \n }\n \n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n ) : (\n \n )\n }\n />\n );\n }\n}\n\nconst withReducer = injectReducer({ key: 'user', reducer });\nconst withSaga = injectSaga({ key: 'user', saga });\n\nexport function mapDispatchToProps(dispatch) {\n return {\n getUserInfo: () => dispatch(getUser()),\n closeWidget: () => dispatch(closeWidget()),\n };\n}\n\nconst mapStateToProps = createStructuredSelector({\n user: makeSelectUser(),\n isTokenInvalid: makeSelectTokenValidation(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withConnect = connect(\n mapStateToProps,\n mapDispatchToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(PrivateRoute);\n","/**\n *\n * App.js\n *\n * This component is the skeleton around the actual pages, and should only\n * contain code that should be seen on all pages. (e.g. navigation bar)\n *\n */\n\nimport React, { useEffect } from 'react';\nimport { Switch, Route } from 'react-router-dom';\nimport { createStructuredSelector } from 'reselect';\nimport { connect } from 'react-redux';\nimport { compose } from 'redux';\nimport injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\nimport reducer from './reducer';\nimport saga from './saga';\n\nimport AccountActivatePage from 'containers/Account/Activate/Loadable';\nimport AccountActivationSsoPage from 'containers/Account/ActivateSso/Loadable';\nimport LoginPage from 'containers/LoginPage/Loadable';\nimport SsoPage from 'containers/Account/Sso/Loadable';\nimport ForgotPassword from 'containers/Account/ForgotPassword/Loadable';\nimport ResetPassword from 'containers/Account/ResetPassword/Loadable';\n\nimport NotFoundPage from 'containers/NotFoundPage/Loadable';\n\nimport routes from 'components/NavBar/routes.js';\nimport PrivateRoute from './private';\nimport { selectTheme, featureAllowed } from './selectors';\n\nimport { hasAuthToken } from '../../utils/auth';\nimport './style.scss';\nimport configs from 'configs';\nconst { style } = configs\nimport ('../../styles/customizations/' + style + '/style.scss');\n\n\nfunction isLoggedIn() {\n return hasAuthToken();\n}\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n const pageTitle = document.querySelector('title');\n\n pageTitle.innerText = configs.appTitle;\n }\n\n componentDidUpdate() {\n if (isLoggedIn()) {\n if (this.props.featureAllowed('rebrand')) {\n document.body.classList.add(`theme-${this.props.theme}`);\n }\n }\n }\n\n render() {\n return (\n \n \n \n \n \n \n \n {routes.map((route, key) => {\n if (route.component &&\n (!route.hasOwnProperty('feature') || this.props.featureAllowed(route.feature))\n ) {\n let RouteComponent = route.component;\n\n return ;\n }\n })}\n \n \n );\n }\n}\n\nconst mapStateToProps = createStructuredSelector({\n theme: selectTheme(),\n featureAllowed: (state, featureSlug) => featureAllowed(state, featureSlug),\n});\n\nconst withReducer = injectReducer({ key: 'user', reducer });\nconst withSaga = injectSaga({ key: 'user', saga });\n\nconst withConnect = connect(\n mapStateToProps,\n);\n\nexport default compose(\n withReducer,\n withSaga,\n withConnect,\n)(App);\n","import { createGlobalStyle } from 'styled-components';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport configs from 'configs';\n\nconst { gradient } = configs.colors;\n\nconst GlobalStyle = createGlobalStyle`\n\n body:before{\n content: \"\";\n position: absolute;\n z-index: -1;\n background: -webkit-gradient(linear, left top, right bottom, from(${gradient.from}), to(${gradient.to}))!important;\n background: linear-gradient(to bottom right, ${gradient.from}, ${gradient.to})!important;\n top: 0px;\n left: 0px;\n bottom: 0px;\n right: 0px;\n }\n\n .content-w{\n background-color: $background-color-page !important;\n }\n\n strike {\n position: relative;\n text-decoration: none;\n }\n\n strike:before {\n position: absolute;\n content: \"\";\n left: 0;\n top: 50%;\n right: 0;\n border-top: 1px solid;\n border-color: inherit;\n\n -webkit-transform:rotate(-15deg);\n -moz-transform:rotate(-15deg);\n -ms-transform:rotate(-15deg);\n -o-transform:rotate(-15deg);\n transform:rotate(-15deg);\n }\n .text-medium{\n font-size: 1.25rem;\n margin: 0;\n padding: 0;\n }\n\n .element-invisible {\n margin: 0;\n padding: 0;\n width: 1px;\n position: absolute !important;\n clip: rect(1px 1px 1px 1px);\n clip: rect(1px,1px,1px,1px);\n overflow: hidden;\n height: 1px;\n color: #fff;\n background: #0a0b0b;\n }\n .element-invisible.element-focusable:active,\n .element-invisible.element-focusable:focus {\n position: static !important;\n clip: auto;\n overflow: visible;\n height: auto;\n }\n`;\n\nexport default GlobalStyle;\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\n/**\n * Direct selector to the languageToggle state domain\n */\nconst selectLanguage = state => state.get('language', initialState);\n\n/**\n * Select the language locale\n */\n\nconst makeSelectLocale = () =>\n createSelector(selectLanguage, languageState => languageState.get('locale'));\n\nexport { selectLanguage, makeSelectLocale };\n","/*\n *\n * LanguageProvider\n *\n * this component connects the redux state language locale to the\n * IntlProvider component and i18n messages (loaded from `app/translations`)\n */\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { createSelector } from 'reselect';\nimport { IntlProvider } from 'react-intl';\n\nimport { makeSelectLocale } from './selectors';\n\nexport class LanguageProvider extends React.PureComponent {\n // eslint-disable-line react/prefer-stateless-function\n\n handleError(e){}\n render() {\n return (\n \n {React.Children.only(this.props.children)}\n \n );\n }\n}\n\nLanguageProvider.propTypes = {\n locale: PropTypes.string,\n messages: PropTypes.object,\n children: PropTypes.element.isRequired,\n};\n\nconst mapStateToProps = createSelector(makeSelectLocale(), locale => ({\n locale,\n}));\n\nfunction mapDispatchToProps(dispatch) {\n return {\n dispatch,\n };\n}\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(LanguageProvider);\n","/**\n * Create the store with dynamic reducers\n */\n\nimport { createStore, applyMiddleware, compose } from 'redux';\nimport { fromJS } from 'immutable';\nimport { routerMiddleware } from 'connected-react-router/immutable';\nimport createSagaMiddleware from 'redux-saga';\nimport createReducer from './reducers';\nimport history from 'utils/history';\n\nconst sagaMiddleware = createSagaMiddleware();\n\nconst store = function configureStore(initialState = {}, history) {\n // Create the store with two middlewares\n // 1. sagaMiddleware: Makes redux-sagas work\n // 2. routerMiddleware: Syncs the location/URL path to the state\n const middlewares = [sagaMiddleware, routerMiddleware(history)];\n\n const enhancers = [applyMiddleware(...middlewares)];\n\n // If Redux DevTools Extension is installed use it, otherwise use Redux compose\n /* eslint-disable no-underscore-dangle, indent */\n const composeEnhancers =\n process.env.NODE_ENV !== 'production' &&\n typeof window === 'object' &&\n window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({})\n : compose;\n /* eslint-enable */\n\n const store = createStore(\n createReducer(),\n fromJS(initialState),\n composeEnhancers(...enhancers),\n );\n\n // Extensions\n store.runSaga = sagaMiddleware.run;\n store.injectedReducers = {}; // Reducer registry\n store.injectedSagas = {}; // Saga registry\n\n // Make reducers hot reloadable, see http://mxs.is/googmo\n /* istanbul ignore next */\n if (module.hot) {\n module.hot.accept('./reducers', () => {\n store.replaceReducer(createReducer(store.injectedReducers));\n });\n }\n\n return store;\n}\n\nexport default store({}, history);\n","/**\n * app.js\n *\n * This is the entry file for the application, only setup and boilerplate\n * code.\n */\n\n// Needed for redux-saga es6 generator support\nimport '@babel/polyfill';\n\n// Import all the third party stuff\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from 'react-redux';\nimport { ConnectedRouter } from 'connected-react-router/immutable';\nimport history from 'utils/history';\nimport * as Sentry from '@sentry/react';\nimport { BrowserTracing } from '@sentry/tracing';\n\n// Import root app\nimport App from 'containers/App';\nimport configs from 'configs';\nimport GlobalStyle from './global-styles';\n\n// Import Language Provider\nimport LanguageProvider from 'containers/LanguageProvider';\n\n// Load the favicon and the .htaccess file\n/* eslint-disable import/no-unresolved, import/extensions */\nimport '!file-loader?name=[name].[ext]!./images/favicon.ico';\nimport 'file-loader?name=.htaccess!./.htaccess';\n/* eslint-enable import/no-unresolved, import/extensions */\n\nimport store from './configureStore';\n\n// Import i18n messages\nimport { translationMessages } from './i18n';\n\n// Import GTM\nimport TagManager from 'react-gtm-module';\n\nconst MOUNT_NODE = document.getElementById('app');\n\nSentry.init({\n dsn: configs.sentry.dsn,\n integrations: [new BrowserTracing()],\n environment: process.env.SENTRY_ENVIRONMENT,\n enabled: configs.sentry.enabled,\n\n // Set tracesSampleRate to 1.0 to capture 100%\n // of transactions for performance monitoring.\n // We recommend adjusting this value in production\n tracesSampleRate: 1.0,\n});\n\n// Create Tag Manager Container\nconst tagManagerArgs = { gtmId: 'GTM-NG94KN3' };\nTagManager.initialize(tagManagerArgs);\n\nconst render = messages => {\n ReactDOM.render(\n \n \n \n <>\n \n \n \n \n \n ,\n MOUNT_NODE,\n );\n};\n\nif (module.hot) {\n // Hot reloadable React components and translation json files\n // modules.hot.accept does not accept dynamic dependencies,\n // have to be constants at compile-time\n module.hot.accept(['./i18n', 'containers/App'], () => {\n ReactDOM.unmountComponentAtNode(MOUNT_NODE);\n render(translationMessages);\n });\n}\n\n// Chunked polyfill for browsers without Intl support\nif (!window.Intl) {\n new Promise(resolve => {\n resolve(import('intl'));\n })\n .then(() => Promise.all([import('intl/locale-data/jsonp/en.js')]))\n .then(() => render(translationMessages))\n .catch(err => {\n throw err;\n });\n} else {\n render(translationMessages);\n}\n\n// Install ServiceWorker and AppCache in the end since\n// it's not most important operation and if main code fails,\n// we do not want it installed\n// if (process.env.NODE_ENV === 'production') {\n// require('offline-plugin/runtime').install(); // eslint-disable-line global-require\n// }\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#Paginator .pagination-links li:first-child {\\n margin-right: 7px; }\\n\\n#Paginator .pagination-links li:last-child {\\n margin-left: 7px; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./right.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./right.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./right.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./customer.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./customer.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./customer.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferInfo {\\n color: #404950;\\n min-width: 100%;\\n padding: 0;\\n width: 100%;\\n border-radius: 6px !important;\\n border-top-right-radius: unset !important;\\n border-top-left-radius: unset !important;\\n font-size: .8rem;\\n color: #484848;\\n font-weight: 600;\\n text-transform: none;\\n letter-spacing: unset; }\\n #OfferInfo .ant-tabs-tab-arrow-show:not(.ant-tabs-tab-btn-disabled).ant-tabs-tab-prev {\\n box-shadow: 3px 0 4px 4px rgba(130, 130, 130, 0.2); }\\n #OfferInfo .ant-tabs-tab-arrow-show:not(.ant-tabs-tab-btn-disabled).ant-tabs-tab-next {\\n box-shadow: -3px 0 4px 4px rgba(130, 130, 130, 0.2); }\\n #OfferInfo .ant-tabs-tabpane {\\n padding-left: 1rem;\\n padding-right: 1rem; }\\n #OfferInfo .ant-tabs-tab, #OfferInfo .ant-tabs-tab-active {\\n font-size: .8rem;\\n color: #484848;\\n font-weight: 600;\\n margin: 0 2px 0 0; }\\n #OfferInfo .ant-tabs-ink-bar {\\n height: 3px;\\n background-color: #047bf8; }\\n #OfferInfo svg {\\n width: 1.2em !important;\\n height: 1.2em !important;\\n margin-right: 3px;\\n margin-top: -4px; }\\n #OfferInfo .equipped-accessories .items {\\n border-top: none;\\n margin-left: .9rem; }\\n #OfferInfo .equipped-accessories .items .item {\\n border-bottom: 1px solid #e4eaee;\\n line-height: 2em;\\n padding-top: 11px;\\n padding-bottom: 11px;\\n font-size: 14px; }\\n #OfferInfo .element-box {\\n margin-top: 1rem;\\n padding: 1rem 1rem 1rem 1rem !important; }\\n\", \"\"]);\n\n// exports\n","/*\n * CatalogAdd Messages\n *\n * This contains all the text for the Catalog Add container.\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.containers.Loader';\n\nexport default defineMessages({\n message: {\n id: `${scope}.message`,\n defaultMessage: 'Caricamento in corso...',\n },\n\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { BounceLoader } from 'react-spinners';\nimport './styles.scss';\nimport configs from 'configs';\n\nimport _ from 'lodash';\nimport messages from './messages';\n\nconst loader = props => {\n const { loading, message } = props;\n const id = _.uniqueId('Loader-');\n\n if (loading) {\n return (\n
\n \n {message || }\n
\n );\n }\n\n return null;\n};\n\nloader.defaultProps = {\n loading: false,\n};\n\nloader.propTypes = {\n loading: PropTypes.bool,\n};\n\nexport default loader;\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction EngineIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"g\",null,React.createElement(\"path\",{\"d\":\"M494.32,196.801l-4.858-8.131h-85.516v39.564h-8.557v-57.371h-44.32l-28.138-24.95h-46.53v-22.695h14.966V89.827H172.742\\n\\t\\t\\tv33.391h14.966v22.695h-48.443l-28.138,24.95H55.791v16.696v66.236h-22.4v-42.616H0v118.625h33.391v-42.617h22.4v66.236v16.696\\n\\t\\t\\th83.474l58.709,52.054h197.414v-58.444h8.557v39.565h85.516l4.858-8.132c1.81-3.027,17.68-31.537,17.68-99.181\\n\\t\\t\\tS496.13,199.829,494.32,196.801z M221.101,123.22h21.909v22.695h-21.909V123.22z M468.927,369.902h-31.59v-39.565h-75.34v58.444\\n\\t\\t\\tH210.646l-58.709-52.054H89.183V204.255h34.617l28.138-24.95h158.32l28.138,24.95h23.601v57.371h75.34v-39.564h31.59\\n\\t\\t\\tc3.873,11.386,9.681,34.956,9.681,73.921C478.609,334.947,472.801,358.516,468.927,369.902z\"}))),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nEngineIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Layer_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 511.999 511.999\",\"style\":{\"enableBackground\":\"new 0 0 511.999 511.999\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = EngineIcon;\n\nEngineIcon.default = EngineIcon;\n","var React = require('react');\n\nfunction AddIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M20 2a18 18 0 1018 18A18 18 0 0020 2zm7.425 23.303l-2.122 2.122L20 22.12l-5.303 5.304-2.122-2.122L17.88 20l-5.304-5.303 2.122-2.122L20 17.88l5.303-5.304 2.122 2.122L22.12 20z\",\"fill\":\"#047bf8\"}));\n}\n\nAddIcon.defaultProps = {\"viewBox\":\"0 0 40 40\",\"className\":\"icon color--primary\"};\n\nmodule.exports = AddIcon;\n\nAddIcon.default = AddIcon;\n","import {\n SAVE_PROPOSAL,\n SAVE_QUOTATION,\n SAVE_QUOTATION_SUCCESS,\n SAVE_QUOTATION_ERROR,\n SAVE_PROPOSAL_SUCCESS,\n SAVE_PROPOSAL_ERROR,\n UPDATE_QUOTATION,\n SEARCH_CUSTOMER_BY_FISCAL,\n SEARCH_CUSTOMER_BY_VAT,\n CUSTOMER_RECEIVED,\n CUSTOMER_FOUND,\n UPDATE_CUSTOMER_INPUT,\n RESET_CUSTOMER,\n SET_UPDATED,\n SET_CONTRACTUAL_CATEGORY_TYPE,\n FILE_UPLOADED,\n} from './constants';\n\nexport function saveProposal(params) {\n return {\n type: SAVE_PROPOSAL,\n proposal: params,\n };\n}\n\n// export function saveQuotation(params) {\n// return {\n// type: SAVE_QUOTATION,\n// quotation: params,\n// };\n// }\n\nexport function saveQuotationSuccess(data) {\n return {\n type: SAVE_QUOTATION_SUCCESS,\n data,\n };\n}\n\nexport function saveQuotationError(errors) {\n return {\n type: SAVE_QUOTATION_ERROR,\n errors,\n };\n}\n\nexport function saveProposalSuccess(data) {\n return {\n type: SAVE_PROPOSAL_SUCCESS,\n data,\n };\n}\n\nexport function saveProposalError(errors) {\n return {\n type: SAVE_PROPOSAL_ERROR,\n errors,\n };\n}\n\nexport function updateQuotation(params) {\n return {\n type: UPDATE_QUOTATION,\n quotation: params,\n };\n}\n\nexport function setUpdated(value) {\n return {\n type: SET_UPDATED,\n value,\n };\n}\n\nexport function searchCustomerByFiscal(fiscalCode, contractualCategory = null) {\n return {\n type: SEARCH_CUSTOMER_BY_FISCAL,\n fiscalCode,\n contractualCategory\n };\n}\n\nexport function searchCustomerByVat(vatNumber, contractualCategory = null) {\n return {\n type: SEARCH_CUSTOMER_BY_VAT,\n vatNumber,\n contractualCategory\n };\n}\n\nexport function selectContractualCategoryType(contractualCategoryType) {\n return {\n type: SET_CONTRACTUAL_CATEGORY_TYPE,\n contractualCategoryType\n };\n}\n\nexport function customerLoaded(customer) {\n return {\n type: CUSTOMER_RECEIVED,\n customer,\n };\n}\n\nexport function customerFound(found) {\n return {\n type: CUSTOMER_FOUND,\n found,\n };\n}\n\nexport function resetCustomer() {\n return {\n type: RESET_CUSTOMER,\n };\n}\n\nexport function updateCustomerInput(field, value) {\n return {\n type: UPDATE_CUSTOMER_INPUT,\n field,\n value\n };\n}\n\nexport function fileUploaded(data) {\n return {\n type: FILE_UPLOADED,\n data\n };\n}\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#Profile .profile-tile {\\n position: relative;\\n border-bottom: none;\\n padding-top: 1rem;\\n padding-bottom: 0; }\\n #Profile .profile-tile:not(:first-child) {\\n border-top: 1px solid rgba(0, 0, 0, 0.1); }\\n #Profile .profile-tile.is-child:before {\\n content: \\\" \\\";\\n border-bottom: 1px solid rgba(0, 0, 0, 0.1);\\n border-left: 1px solid rgba(0, 0, 0, 0.1);\\n width: 24px;\\n height: 151px;\\n position: absolute;\\n left: -24px;\\n top: -75px;\\n z-index: 1;\\n background-color: #F2F4F8; }\\n\\n#Profile .user-profile .user-intro {\\n border: none;\\n margin-bottom: -3rem; }\\n\\n#Profile .pt-avatar-w {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 60px;\\n width: 60px;\\n text-align: center;\\n margin: 0 auto; }\\n\\n#Profile .profile-tile-box {\\n position: relative;\\n z-index: 2; }\\n #Profile .profile-tile-box .icon-edit {\\n position: absolute;\\n display: none;\\n top: 3px;\\n left: 5px; }\\n #Profile .profile-tile-box:hover .icon-edit {\\n display: block; }\\n #Profile .profile-tile-box .status-pill {\\n position: absolute;\\n top: 3px;\\n right: 3px; }\\n\\n#Profile .profile-tile-meta .agent-role-name:after {\\n content: \\\" | \\\"; }\\n\\n#Profile .profile-tile-meta .badge-warning-inverted {\\n border: 1px solid #ffc107;\\n color: #ffc107; }\\n\\n#Profile .profile-tile-meta ul {\\n text-transform: none;\\n font-size: 1rem; }\\n\\n#Profile .profile-tile-meta .btn-sm {\\n padding: 0.25rem 0.5rem;\\n font-size: 0.775rem; }\\n\\n#RebrandForm .custom-control.default .custom-control-label::before {\\n background-color: #007bff !important;\\n border-color: #007bff !important; }\\n\\n#RebrandForm .custom-control.red .custom-control-label::before {\\n background-color: #FB404B !important;\\n border-color: #FB404B !important; }\\n\\n#RebrandForm .custom-control.green .custom-control-label::before {\\n background-color: #008e57 !important;\\n border-color: #008e57 !important; }\\n\\n#RebrandForm .custom-control.dark .custom-control-label::before {\\n background-color: #5e5e5e !important;\\n border-color: #5e5e5e !important; }\\n\\n#RebrandForm .ant-upload-select-picture-card {\\n margin: 0 auto;\\n float: none;\\n width: 200px;\\n height: 200px; }\\n\", \"\"]);\n\n// exports\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectSearch = state => state.get('search', initialState);\n\nconst makeSelectParam = () =>\n createSelector(selectSearch, selectedState => selectedState.get('params'));\n\nconst makeSelectLoading = () =>\n createSelector(selectSearch, selectedState => selectedState.get('loading'));\n\nconst makeSelectSelectedParams = () =>\n createSelector(selectSearch, selectedState =>\n selectedState.get('selectedParams').toArray(),\n );\n\nconst makeSelectLabels = () =>\n createSelector(selectSearch, selectedState => {\n const params = selectedState.get('selectedParams').toArray();\n return params\n .map(item => {\n if (\n item.value !== undefined &&\n item.value !== null &&\n item.value.length > 0\n )\n return {\n value: item.value,\n name: item.name,\n label: item.label,\n };\n return false;\n })\n .filter(obj => obj.hasOwnProperty('value'));\n });\n\nexport {\n selectSearch,\n makeSelectLoading,\n makeSelectParam,\n makeSelectLabels,\n makeSelectSelectedParams,\n};\n","var map = {\n\t\"./af\": \"4fe50ffc7983d80569ba\",\n\t\"./af.js\": \"4fe50ffc7983d80569ba\",\n\t\"./ar\": \"3f7f6568c894fbb46c29\",\n\t\"./ar-dz\": \"0a4b0969f58fca504d02\",\n\t\"./ar-dz.js\": \"0a4b0969f58fca504d02\",\n\t\"./ar-kw\": \"9dc1adf1367a833c5dde\",\n\t\"./ar-kw.js\": \"9dc1adf1367a833c5dde\",\n\t\"./ar-ly\": \"cccb904b2f064b592b02\",\n\t\"./ar-ly.js\": \"cccb904b2f064b592b02\",\n\t\"./ar-ma\": \"d81c92a0aa9e6c084db4\",\n\t\"./ar-ma.js\": \"d81c92a0aa9e6c084db4\",\n\t\"./ar-sa\": \"dee24f02b8ecd3a36176\",\n\t\"./ar-sa.js\": \"dee24f02b8ecd3a36176\",\n\t\"./ar-tn\": \"df08077061459e88529b\",\n\t\"./ar-tn.js\": \"df08077061459e88529b\",\n\t\"./ar.js\": \"3f7f6568c894fbb46c29\",\n\t\"./az\": \"9a25880d1491856f4e1e\",\n\t\"./az.js\": \"9a25880d1491856f4e1e\",\n\t\"./be\": \"ffa801cad665eebbfdc8\",\n\t\"./be.js\": \"ffa801cad665eebbfdc8\",\n\t\"./bg\": \"c81c2298ba3a83bd3b5b\",\n\t\"./bg.js\": \"c81c2298ba3a83bd3b5b\",\n\t\"./bm\": \"0d5fb61f772f2aaaf82c\",\n\t\"./bm.js\": \"0d5fb61f772f2aaaf82c\",\n\t\"./bn\": \"fa658b93b3c6b01c668e\",\n\t\"./bn-bd\": \"e7114e48cf4eb0e1e35a\",\n\t\"./bn-bd.js\": \"e7114e48cf4eb0e1e35a\",\n\t\"./bn.js\": \"fa658b93b3c6b01c668e\",\n\t\"./bo\": \"b30d6122d9094906930a\",\n\t\"./bo.js\": \"b30d6122d9094906930a\",\n\t\"./br\": \"ee0a94b9013e4e7ae788\",\n\t\"./br.js\": \"ee0a94b9013e4e7ae788\",\n\t\"./bs\": \"89a9e5355865ee89e959\",\n\t\"./bs.js\": \"89a9e5355865ee89e959\",\n\t\"./ca\": \"0a16bdb66e0525c325dc\",\n\t\"./ca.js\": \"0a16bdb66e0525c325dc\",\n\t\"./cs\": \"b7a0f42b9110b4ba030f\",\n\t\"./cs.js\": \"b7a0f42b9110b4ba030f\",\n\t\"./cv\": \"2b90ff6f0e337e46d5d6\",\n\t\"./cv.js\": \"2b90ff6f0e337e46d5d6\",\n\t\"./cy\": \"0d0ea3473f47b0d7b396\",\n\t\"./cy.js\": \"0d0ea3473f47b0d7b396\",\n\t\"./da\": \"7a8735ec68591dea5f8e\",\n\t\"./da.js\": \"7a8735ec68591dea5f8e\",\n\t\"./de\": \"5f6fa986f8050423684e\",\n\t\"./de-at\": \"7f7e87a36ad679cf294c\",\n\t\"./de-at.js\": \"7f7e87a36ad679cf294c\",\n\t\"./de-ch\": \"f949125f8f7b0502a634\",\n\t\"./de-ch.js\": \"f949125f8f7b0502a634\",\n\t\"./de.js\": \"5f6fa986f8050423684e\",\n\t\"./dv\": \"3073d71361f604d2822a\",\n\t\"./dv.js\": \"3073d71361f604d2822a\",\n\t\"./el\": \"4130747efcded86a1698\",\n\t\"./el.js\": \"4130747efcded86a1698\",\n\t\"./en-au\": \"517cd2b76c171df54c77\",\n\t\"./en-au.js\": \"517cd2b76c171df54c77\",\n\t\"./en-ca\": \"eb450040fb739424b607\",\n\t\"./en-ca.js\": \"eb450040fb739424b607\",\n\t\"./en-gb\": \"594dc41e90bb0b4ce7b3\",\n\t\"./en-gb.js\": \"594dc41e90bb0b4ce7b3\",\n\t\"./en-ie\": \"7f1a2a614d100ed33e07\",\n\t\"./en-ie.js\": \"7f1a2a614d100ed33e07\",\n\t\"./en-il\": \"3d148bdee40eb371501e\",\n\t\"./en-il.js\": \"3d148bdee40eb371501e\",\n\t\"./en-in\": \"efab154d10d71a47a002\",\n\t\"./en-in.js\": \"efab154d10d71a47a002\",\n\t\"./en-nz\": \"a04dc64dfdfc9ac4210a\",\n\t\"./en-nz.js\": \"a04dc64dfdfc9ac4210a\",\n\t\"./en-sg\": \"c6c8169a849376a0792c\",\n\t\"./en-sg.js\": \"c6c8169a849376a0792c\",\n\t\"./eo\": \"d8aa3f4072118ba0c74b\",\n\t\"./eo.js\": \"d8aa3f4072118ba0c74b\",\n\t\"./es\": \"8dca363c55e082fe5270\",\n\t\"./es-do\": \"24f7ae66e6bdc8652fba\",\n\t\"./es-do.js\": \"24f7ae66e6bdc8652fba\",\n\t\"./es-mx\": \"45bf59610a785a7235b4\",\n\t\"./es-mx.js\": \"45bf59610a785a7235b4\",\n\t\"./es-us\": \"8c156bbc319a64186fe9\",\n\t\"./es-us.js\": \"8c156bbc319a64186fe9\",\n\t\"./es.js\": \"8dca363c55e082fe5270\",\n\t\"./et\": \"0207368f4fca00662d61\",\n\t\"./et.js\": \"0207368f4fca00662d61\",\n\t\"./eu\": \"4d24b542827f0d35c2d4\",\n\t\"./eu.js\": \"4d24b542827f0d35c2d4\",\n\t\"./fa\": \"9cf1585e02829dff5f9a\",\n\t\"./fa.js\": \"9cf1585e02829dff5f9a\",\n\t\"./fi\": \"5b8ee8fca9bd9b066e05\",\n\t\"./fi.js\": \"5b8ee8fca9bd9b066e05\",\n\t\"./fil\": \"9b23dccf1a6c4a581e0a\",\n\t\"./fil.js\": \"9b23dccf1a6c4a581e0a\",\n\t\"./fo\": \"cef1ea44f0d3f6eb36e0\",\n\t\"./fo.js\": \"cef1ea44f0d3f6eb36e0\",\n\t\"./fr\": \"74e23c69ccb5a5eec403\",\n\t\"./fr-ca\": \"f79130304d5016e13ffb\",\n\t\"./fr-ca.js\": \"f79130304d5016e13ffb\",\n\t\"./fr-ch\": \"f08607bde9b355fddbe5\",\n\t\"./fr-ch.js\": \"f08607bde9b355fddbe5\",\n\t\"./fr.js\": \"74e23c69ccb5a5eec403\",\n\t\"./fy\": \"0d86e36306113c72bd77\",\n\t\"./fy.js\": \"0d86e36306113c72bd77\",\n\t\"./ga\": \"d67fee5c3c35fb7cd073\",\n\t\"./ga.js\": \"d67fee5c3c35fb7cd073\",\n\t\"./gd\": \"d9d35cbb598c476f7045\",\n\t\"./gd.js\": \"d9d35cbb598c476f7045\",\n\t\"./gl\": \"29e2d221e75f936e25f1\",\n\t\"./gl.js\": \"29e2d221e75f936e25f1\",\n\t\"./gom-deva\": \"e231ee82d139822aa7a7\",\n\t\"./gom-deva.js\": \"e231ee82d139822aa7a7\",\n\t\"./gom-latn\": \"d91ea0088c3c0ebdc87f\",\n\t\"./gom-latn.js\": \"d91ea0088c3c0ebdc87f\",\n\t\"./gu\": \"d1841a848065084c621c\",\n\t\"./gu.js\": \"d1841a848065084c621c\",\n\t\"./he\": \"624c722243ab1968c264\",\n\t\"./he.js\": \"624c722243ab1968c264\",\n\t\"./hi\": \"061d025a8797acc49a77\",\n\t\"./hi.js\": \"061d025a8797acc49a77\",\n\t\"./hr\": \"6a0c124ead216c897c0f\",\n\t\"./hr.js\": \"6a0c124ead216c897c0f\",\n\t\"./hu\": \"dce09320209f9a044b94\",\n\t\"./hu.js\": \"dce09320209f9a044b94\",\n\t\"./hy-am\": \"39a71a00fd6cfabeef30\",\n\t\"./hy-am.js\": \"39a71a00fd6cfabeef30\",\n\t\"./id\": \"a8eb5357a53ddba4d83c\",\n\t\"./id.js\": \"a8eb5357a53ddba4d83c\",\n\t\"./is\": \"0ccb71e8f62bf567199f\",\n\t\"./is.js\": \"0ccb71e8f62bf567199f\",\n\t\"./it\": \"35f77a330b2b59f483b2\",\n\t\"./it-ch\": \"0a856ed5497f738d0cf5\",\n\t\"./it-ch.js\": \"0a856ed5497f738d0cf5\",\n\t\"./it.js\": \"35f77a330b2b59f483b2\",\n\t\"./ja\": \"239d00735eb311c1c046\",\n\t\"./ja.js\": \"239d00735eb311c1c046\",\n\t\"./jv\": \"92711492583b83951b6d\",\n\t\"./jv.js\": \"92711492583b83951b6d\",\n\t\"./ka\": \"d31914898082af20b314\",\n\t\"./ka.js\": \"d31914898082af20b314\",\n\t\"./kk\": \"83d94a8a59b81194ec02\",\n\t\"./kk.js\": \"83d94a8a59b81194ec02\",\n\t\"./km\": \"331957b72f4beeaf2d4a\",\n\t\"./km.js\": \"331957b72f4beeaf2d4a\",\n\t\"./kn\": \"a0c1a30a96f4369ead33\",\n\t\"./kn.js\": \"a0c1a30a96f4369ead33\",\n\t\"./ko\": \"6de7f88f5c7d1ec2d27f\",\n\t\"./ko.js\": \"6de7f88f5c7d1ec2d27f\",\n\t\"./ku\": \"a9d2ef0fc91d568bdfab\",\n\t\"./ku.js\": \"a9d2ef0fc91d568bdfab\",\n\t\"./ky\": \"0747c8ca89dcf60580a2\",\n\t\"./ky.js\": \"0747c8ca89dcf60580a2\",\n\t\"./lb\": \"62019114b63dbd69721a\",\n\t\"./lb.js\": \"62019114b63dbd69721a\",\n\t\"./lo\": \"c2110f526b1ce19817cc\",\n\t\"./lo.js\": \"c2110f526b1ce19817cc\",\n\t\"./lt\": \"6df32c33af3d2e5fc11c\",\n\t\"./lt.js\": \"6df32c33af3d2e5fc11c\",\n\t\"./lv\": \"55b3e93988104c60a071\",\n\t\"./lv.js\": \"55b3e93988104c60a071\",\n\t\"./me\": \"e66100575f1ac6d00d4a\",\n\t\"./me.js\": \"e66100575f1ac6d00d4a\",\n\t\"./mi\": \"fd0033b452a90713b091\",\n\t\"./mi.js\": \"fd0033b452a90713b091\",\n\t\"./mk\": \"1ffc46d9756a7dd1c823\",\n\t\"./mk.js\": \"1ffc46d9756a7dd1c823\",\n\t\"./ml\": \"18c9a4d7cd02df34341e\",\n\t\"./ml.js\": \"18c9a4d7cd02df34341e\",\n\t\"./mn\": \"c6f0bab67f50b43fe8bb\",\n\t\"./mn.js\": \"c6f0bab67f50b43fe8bb\",\n\t\"./mr\": \"48ce3e4e5fdba4499ebb\",\n\t\"./mr.js\": \"48ce3e4e5fdba4499ebb\",\n\t\"./ms\": \"d892199478d896774453\",\n\t\"./ms-my\": \"de1a2ccd001fe36ceecc\",\n\t\"./ms-my.js\": \"de1a2ccd001fe36ceecc\",\n\t\"./ms.js\": \"d892199478d896774453\",\n\t\"./mt\": \"9b8ee8b32ab81129ffce\",\n\t\"./mt.js\": \"9b8ee8b32ab81129ffce\",\n\t\"./my\": \"b403e02a2233207d0c4d\",\n\t\"./my.js\": \"b403e02a2233207d0c4d\",\n\t\"./nb\": \"cb288475654d715d144b\",\n\t\"./nb.js\": \"cb288475654d715d144b\",\n\t\"./ne\": \"89e8ae3a87cc919f89a4\",\n\t\"./ne.js\": \"89e8ae3a87cc919f89a4\",\n\t\"./nl\": \"301790a531e8a33e9796\",\n\t\"./nl-be\": \"3daa408e1685eb5e8fbd\",\n\t\"./nl-be.js\": \"3daa408e1685eb5e8fbd\",\n\t\"./nl.js\": \"301790a531e8a33e9796\",\n\t\"./nn\": \"643270e1e47cf81f688e\",\n\t\"./nn.js\": \"643270e1e47cf81f688e\",\n\t\"./oc-lnc\": \"92d0c721d19969ceab74\",\n\t\"./oc-lnc.js\": \"92d0c721d19969ceab74\",\n\t\"./pa-in\": \"5c40bc9eec89d0d6802d\",\n\t\"./pa-in.js\": \"5c40bc9eec89d0d6802d\",\n\t\"./pl\": \"a4a8376f7fdb2d708907\",\n\t\"./pl.js\": \"a4a8376f7fdb2d708907\",\n\t\"./pt\": \"6177d8a6abfd93127496\",\n\t\"./pt-br\": \"e20444730613ccb91ab4\",\n\t\"./pt-br.js\": \"e20444730613ccb91ab4\",\n\t\"./pt.js\": \"6177d8a6abfd93127496\",\n\t\"./ro\": \"b2de2f54a02115863ee5\",\n\t\"./ro.js\": \"b2de2f54a02115863ee5\",\n\t\"./ru\": \"a884f82f1fcf323b0ed1\",\n\t\"./ru.js\": \"a884f82f1fcf323b0ed1\",\n\t\"./sd\": \"60abb66915d33f1d36b4\",\n\t\"./sd.js\": \"60abb66915d33f1d36b4\",\n\t\"./se\": \"40bfee84281d9b77f113\",\n\t\"./se.js\": \"40bfee84281d9b77f113\",\n\t\"./si\": \"a975fe4573e5d9e39086\",\n\t\"./si.js\": \"a975fe4573e5d9e39086\",\n\t\"./sk\": \"e0600ff36ac1e0dece75\",\n\t\"./sk.js\": \"e0600ff36ac1e0dece75\",\n\t\"./sl\": \"46cd6d95bdea594f4775\",\n\t\"./sl.js\": \"46cd6d95bdea594f4775\",\n\t\"./sq\": \"c043969c123ab5cd2b70\",\n\t\"./sq.js\": \"c043969c123ab5cd2b70\",\n\t\"./sr\": \"77fd666a52737f1efd7b\",\n\t\"./sr-cyrl\": \"6868054dbb36f02db227\",\n\t\"./sr-cyrl.js\": \"6868054dbb36f02db227\",\n\t\"./sr.js\": \"77fd666a52737f1efd7b\",\n\t\"./ss\": \"bbaffbb41ef7f4fd8c3a\",\n\t\"./ss.js\": \"bbaffbb41ef7f4fd8c3a\",\n\t\"./sv\": \"be84e9b3b463cb96fa5a\",\n\t\"./sv.js\": \"be84e9b3b463cb96fa5a\",\n\t\"./sw\": \"c35940c6626d2bccf0f9\",\n\t\"./sw.js\": \"c35940c6626d2bccf0f9\",\n\t\"./ta\": \"73e1ad1f793625d5e923\",\n\t\"./ta.js\": \"73e1ad1f793625d5e923\",\n\t\"./te\": \"96fe0dfde527a883c0a4\",\n\t\"./te.js\": \"96fe0dfde527a883c0a4\",\n\t\"./tet\": \"73089628077a1b3908a1\",\n\t\"./tet.js\": \"73089628077a1b3908a1\",\n\t\"./tg\": \"0481860a8ba35ca9d22d\",\n\t\"./tg.js\": \"0481860a8ba35ca9d22d\",\n\t\"./th\": \"4331da7acfa5f52746d6\",\n\t\"./th.js\": \"4331da7acfa5f52746d6\",\n\t\"./tk\": \"b71b455def61f8c8e7e9\",\n\t\"./tk.js\": \"b71b455def61f8c8e7e9\",\n\t\"./tl-ph\": \"b965a0000a1179485d25\",\n\t\"./tl-ph.js\": \"b965a0000a1179485d25\",\n\t\"./tlh\": \"a42a137c2d01e40c18cd\",\n\t\"./tlh.js\": \"a42a137c2d01e40c18cd\",\n\t\"./tr\": \"183a75bd2437f11817b2\",\n\t\"./tr.js\": \"183a75bd2437f11817b2\",\n\t\"./tzl\": \"42e54a873080a091cf1e\",\n\t\"./tzl.js\": \"42e54a873080a091cf1e\",\n\t\"./tzm\": \"48caaadb1d262b8d3df6\",\n\t\"./tzm-latn\": \"d974062d0d2321cab039\",\n\t\"./tzm-latn.js\": \"d974062d0d2321cab039\",\n\t\"./tzm.js\": \"48caaadb1d262b8d3df6\",\n\t\"./ug-cn\": \"2453f05ed409711cc1e1\",\n\t\"./ug-cn.js\": \"2453f05ed409711cc1e1\",\n\t\"./uk\": \"917876f36b35aa56a2cd\",\n\t\"./uk.js\": \"917876f36b35aa56a2cd\",\n\t\"./ur\": \"9c29a77b375c4c9c03a3\",\n\t\"./ur.js\": \"9c29a77b375c4c9c03a3\",\n\t\"./uz\": \"3b78af3fb5d1ef120da2\",\n\t\"./uz-latn\": \"54ff3dc03d2cb362f2dc\",\n\t\"./uz-latn.js\": \"54ff3dc03d2cb362f2dc\",\n\t\"./uz.js\": \"3b78af3fb5d1ef120da2\",\n\t\"./vi\": \"63f81a840f588ddc77ce\",\n\t\"./vi.js\": \"63f81a840f588ddc77ce\",\n\t\"./x-pseudo\": \"51f18a209d286b73de60\",\n\t\"./x-pseudo.js\": \"51f18a209d286b73de60\",\n\t\"./yo\": \"cc6e20f395448f8d5fc0\",\n\t\"./yo.js\": \"cc6e20f395448f8d5fc0\",\n\t\"./zh-cn\": \"a25e83e8799759c246e1\",\n\t\"./zh-cn.js\": \"a25e83e8799759c246e1\",\n\t\"./zh-hk\": \"1bec13affc76a58d17d9\",\n\t\"./zh-hk.js\": \"1bec13affc76a58d17d9\",\n\t\"./zh-mo\": \"d29754b2bb9cc48d33bc\",\n\t\"./zh-mo.js\": \"d29754b2bb9cc48d33bc\",\n\t\"./zh-tw\": \"dba649134b180837c44d\",\n\t\"./zh-tw.js\": \"dba649134b180837c44d\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) { // check for number or string\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn id;\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"94e4968e996275b7b27a\";","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CustomerFields .anticon {\\n margin-left: 5px; }\\n\\n.CustomerFields .form-group {\\n padding: 5px;\\n padding-bottom: unset; }\\n .CustomerFields .form-group .required::after {\\n content: ' *';\\n color: red; }\\n\\n.CustomerFields .form-control {\\n display: block;\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 0.9rem;\\n line-height: 1.5;\\n color: #495057;\\n background-color: #fff;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 4px;\\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }\\n\\n.CustomerFields input::-webkit-input-placeholder {\\n color: #495057;\\n opacity: .4; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".InputSlider {\\n margin-top: 40px; }\\n .InputSlider .ant-slider .ant-slider-mark-text {\\n white-space: nowrap; }\\n .InputSlider .ant-slider .ant-slider-track {\\n background-color: #1b55e2; }\\n .InputSlider .ant-slider:hover .ant-slider-track {\\n background-color: #1b55e2; }\\n .InputSlider .ant-slider:hover .ant-slider-handle:not(.ant-tooltip-open) {\\n border-color: #1b55e2; }\\n .InputSlider .ant-slider .ant-slider-dot-active {\\n border-color: #1b55e2; }\\n .InputSlider .ant-slider .ant-slider-handle {\\n border-color: #1b55e2;\\n cursor: grabbing; }\\n .InputSlider .ant-slider .ant-slider-handle:focus {\\n box-shadow: 0 0 0 5px #1b55e2; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction Arrow (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M2 8l18 17L38 8v7L20 32 2 15z\",\"fill\":\"#047bf8\"}));\n}\n\nArrow.defaultProps = {\"viewBox\":\"0 0 40 40\",\"className\":\"icon color--grey-500\"};\n\nmodule.exports = Arrow;\n\nArrow.default = Arrow;\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./brand.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./brand.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./brand.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Sticky-Bottom {\\n position: sticky;\\n bottom: 0; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n* QuotesReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n GET_QUOTATION,\n PRINT_QUOTATION,\n QUOTATION_RECEIVED,\n DISPLAY_QUOTATION_ASSISTANT,\n UPDATE_QUOTATION_STATUS,\n} from './constants';\nimport { SAVE_QUOTATION_SUCCESS, SAVE_PROPOSAL_SUCCESS } from 'components/Quotation/constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n quotation: {},\n newStatus: 'OPEN',\n quotationLoaded: false,\n displayAssistant: false,\n});\n\nfunction quotationPageReducer(state = initialState, action) {\n switch (action.type) {\n case GET_QUOTATION:\n return state\n .set('proposal_id', action.proposal_id)\n .set('loading', true);\n case PRINT_QUOTATION:\n return state.set('code', action.id);\n case UPDATE_QUOTATION_STATUS:\n return state.set('loading', true).set('newStatus', action.newStatus);\n case QUOTATION_RECEIVED:\n return state\n .set('quotation', action.quotation)\n .set('newStatus', action.quotation.status || 'OPEN')\n .set('quotationLoaded', true)\n .set('loading', false);\n case SAVE_PROPOSAL_SUCCESS:\n case SAVE_QUOTATION_SUCCESS:\n return state\n .set('quotation', action.data)\n .set('newStatus', action.data.status)\n .set('quotationLoaded', true)\n .set('loading', false);\n case DISPLAY_QUOTATION_ASSISTANT:\n return state.set('displayAssistant', action.display);\n default:\n return state;\n }\n}\n\nexport default quotationPageReducer;\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./item.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".posts .post-box .post-text {\\n color: #3E4B5B; }\\n\", \"\"]);\n\n// exports\n","module.exports = __webpack_public_path__ + \"favicon.ico\";","/**\n * Search params constants\n * @type {string}\n */\nexport const UPDATE_PARAMS = 'ideal/components/CatalogSearch/UPDATE_PARAMS';\nexport const REMOVE_PARAM = 'ideal/components/CatalogSearch/REMOVE_PARAM';\nexport const RESET_PARAMS = 'ideal/components/CatalogSearch/RESET_PARAMS';\nexport const DOWNLOAD_OFFERS = 'ideal/components/CatalogSearch/DOWNLOAD_OFFERS';\n\nexport const FILTERS_RECEIVED =\n 'ideal/components/CatalogSearch/FILTERS_RECEIVED';\nexport const GET_FILTERS = 'ideal/components/CatalogSearch/GET_FILTERS';\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectCatalogEdit = state => state.get('catalogEdit', initialState);\n\nconst makeSelectOfferCode = () =>\n createSelector(selectCatalogEdit, catalogEditState =>\n catalogEditState.get('code'),\n );\n\nconst makeSelectOfferId = () =>\n createSelector(selectCatalogEdit, catalogEditState =>\n catalogEditState.get('id'),\n );\n\nconst makeSelectCatalogResponse = () =>\n createSelector(selectCatalogEdit, catalogEditState =>\n catalogEditState.get('response'),\n );\n\nconst makeSelectIsLoading = () =>\n createSelector(selectCatalogEdit, catalogEditState =>\n catalogEditState.get('loading'),\n );\n\nconst makeSelectRedirect = () =>\n createSelector(selectCatalogEdit, catalogEditState =>\n catalogEditState.get('redirect'),\n );\n\nexport {\n selectCatalogEdit,\n makeSelectOfferCode,\n makeSelectOfferId,\n makeSelectIsLoading,\n makeSelectCatalogResponse,\n makeSelectRedirect,\n};\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./collapse.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./collapse.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./collapse.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n* OfferChildsReducer\n*/\n\nimport { fromJS, List } from 'immutable';\nimport {\n SET_CHILD_OFFERS,\n ADD_CHILD_OFFER,\n REPLACE_CHILD_OFFER,\n REMOVE_CHILD_OFFER,\n EDIT_CHILD_OFFER,\n EDIT_CHILD_OFFER_END,\n VALIDATE_USER_INPUT,\n SET_ERROR_MESSAGE,\n RESET,\n RESET_ERRORS,\n SET_LOADING,\n} from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n loading: false,\n offers: [],\n hasError: false,\n errorMsg: '',\n editMode: false,\n});\n\nfunction childOffersReducer(state = initialState, action) {\n switch (action.type) {\n case SET_LOADING:\n return state.set('loading', action.loading);\n case SET_CHILD_OFFERS:\n return state.set('offers', action.offers);\n case EDIT_CHILD_OFFER:\n return state.set('editMode', action.id)\n .set('hasError', false)\n .set('errorMsg', '')\n .set('loading', false);\n case EDIT_CHILD_OFFER_END:\n return state.set('editMode', false)\n .set('hasError', false)\n .set('errorMsg', '')\n .set('loading', action.loading);\n case ADD_CHILD_OFFER:\n return state.update('offers', offers => {\n let offersList = new List(offers)\n return offersList.push({...action.offer, isChild: true}).toJS()\n }).set('loading', action.loading);\n case REPLACE_CHILD_OFFER:\n return state.update('offers', offers => {\n let offerIdx = offers.findIndex(offer => offer.ref === action.offer.ref);\n offers.splice(offerIdx, 1, action.offer);\n return offers;\n }).set('loading', action.loading);\n case REMOVE_CHILD_OFFER:\n return state.update('offers', offers => offers.filter(offer => offer.ref !== action.id)).set('loading', false);\n case VALIDATE_USER_INPUT:\n return state.set('hasError', action.hasError);\n case SET_ERROR_MESSAGE:\n return state.set('errorMsg', action.msg).set('hasError', true).set('loading', false);\n case RESET:\n return initialState;\n case RESET_ERRORS:\n return state.set('errorMsg', '').set('hasError', false);\n default:\n return state;\n }\n}\n\nexport default childOffersReducer;\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Interactive-List {\\n width: 100%;\\n color: #484848;\\n /*\\n & .icon {\\n display: inline;\\n width: 20px;\\n height: 15px;\\n\\n & svg {\\n width: 20px;\\n height: auto;\\n margin-bottom: .4rem;\\n margin-right: .4rem;\\n vertical-align: middle;\\n fill: $ideal-blue;\\n }\\n }\\n*/ }\\n .Interactive-List h6 {\\n word-wrap: break-word !important;\\n font-size: 16px !important;\\n font-weight: 600 !important;\\n line-height: 1.33em !important;\\n color: #404950 !important;\\n display: inline;\\n margin-top: 10px; }\\n .Interactive-List .reset {\\n font-size: 11px;\\n color: #047bf8;\\n cursor: pointer;\\n padding-right: .6rem;\\n padding-top: .2rem; }\\n .Interactive-List .reset i {\\n font-size: 10px;\\n padding-right: 2px;\\n vertical-align: text-bottom; }\\n .Interactive-List .reset:hover {\\n text-decoration: underline; }\\n .Interactive-List.with-border {\\n border-top: 1px solid #e4e4e4;\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n padding-top: 10px; }\\n .Interactive-List .title {\\n width: 100%;\\n display: inline;\\n font-size: 16px;\\n font-weight: 600;\\n line-height: 1.375em;\\n color: #484848; }\\n .Interactive-List .items {\\n padding: .6rem;\\n padding-top: .2rem;\\n padding-bottom: 0 !important;\\n display: block; }\\n .Interactive-List ul {\\n padding: 0;\\n list-style-type: none;\\n margin-bottom: 0.3rem !important; }\\n .Interactive-List .show-more {\\n cursor: pointer;\\n font-size: 12px;\\n color: #047bf8;\\n padding-left: .6rem;\\n display: block; }\\n .Interactive-List .show-more svg {\\n width: 12px;\\n height: auto;\\n margin: auto;\\n padding-left: 2px;\\n vertical-align: middle; }\\n .Interactive-List .show-more .active svg {\\n transform: rotate(180deg); }\\n .Interactive-List .show-more:hover {\\n text-decoration: underline; }\\n\", \"\"]);\n\n// exports\n","export function validatePhone(phone) {\n const regex = /^[0-9]{5,10}$/;\n return regex.test(phone);\n}\n\nexport function validateFiscalCode(fiscalCode) {\n const regex = /^(?:(?:[B-DF-HJ-NP-TV-Z]|[AEIOU])[AEIOU][AEIOUX]|[B-DF-HJ-NP-TV-Z]{2}[A-Z]){2}[\\dLMNP-V]{2}(?:[A-EHLMPR-T](?:[04LQ][1-9MNP-V]|[1256LMRS][\\dLMNP-V])|[DHPS][37PT][0L]|[ACELMRT][37PT][01LM])(?:[A-MZ][1-9MNP-V][\\dLMNP-V]{2}|[A-M][0L](?:[1-9MNP-V][\\dLMNP-V]|[0L][1-9MNP-V]))[A-Z]$/i;\n return regex.test(fiscalCode);\n}\n\nexport function validateVatNumber(vatNumber) {\n const regex = /^[0-9]{11}$/;\n return regex.test(vatNumber);\n}\n\nexport function validateEmail(email) {\n const regex = /^[\\w\\-\\.]*[\\w\\.]\\@[\\w\\.]*[\\w\\-\\.]+[\\w\\-]+[\\w]\\.{1}[\\w]+[\\w $]/;\n return regex.test(email);\n}\n\nexport function validatePostalCode(postalCode) {\n const regex = /^\\d{5}$/;\n return regex.test(postalCode);\n}\n","import {\n LOGOUT,\n LOAD_USER,\n LOAD_USER_SUCCESS,\n LOAD_USER_ERROR,\n PROFILE_UPDATED_ERROR,\n UPDATE_PROFILE,\n UPDATE_PASSWORD,\n PASSWORD_UPDATED_ERROR,\n PASSWORD_UPDATED,\n REQUEST_API_KEY,\n REQUEST_API_KEY_SUCCEED,\n REQUEST_API_KEY_ERROR,\n SET_LOADING,\n TOGGLE_MEMBER,\n TOGGLE_MEMBER_SUCCEED,\n TOGGLE_MEMBER_ERROR,\n ADD_MEMBER,\n ADD_MEMBER_SUCCEED,\n ADD_MEMBER_ERROR,\n UPDATE_MEMBER,\n UPDATE_MEMBER_SUCCEED,\n UPDATE_MEMBER_ERROR,\n UPLOAD_LOGO,\n UPLOAD_LOGO_SUCCEED,\n UPLOAD_LOGO_ERROR,\n} from './constants';\nimport {AGENT_MEMBERS_LOADED, GET_AGENT_MEMBERS} from \"../Profile/constants\";\n\nexport function logout() {\n return {\n type: LOGOUT,\n };\n}\n\nexport function getUser() {\n return {\n type: LOAD_USER,\n };\n}\n\nexport function setUser(user) {\n return {\n type: LOAD_USER_SUCCESS,\n user,\n };\n}\n\nexport function loginError() {\n return {\n type: LOAD_USER_ERROR,\n };\n}\n\nexport function profileUpdatedError(errors) {\n return {\n type: PROFILE_UPDATED_ERROR,\n errors,\n };\n}\n\nexport function sendUpdateProfile(profile) {\n return {\n type: UPDATE_PROFILE,\n profile,\n };\n}\n\nexport function sendUpdatePassword(passwords) {\n return {\n type: UPDATE_PASSWORD,\n passwords,\n };\n}\n\nexport function sendRequestApiKey() {\n return {\n type: REQUEST_API_KEY,\n };\n}\n\nexport function apiKeyReceived(apiKey) {\n return {\n type: REQUEST_API_KEY_SUCCEED,\n apiKey,\n };\n}\n\nexport function apiKeyFailed(errors) {\n return {\n type: REQUEST_API_KEY_ERROR,\n errors,\n };\n}\n\nexport function toggleMember(agentId) {\n return {\n type: TOGGLE_MEMBER,\n agentId,\n };\n}\n\nexport function toggleMemberSuccess(agent) {\n return {\n type: TOGGLE_MEMBER_SUCCEED,\n agent,\n };\n}\n\nexport function toggleMemberFailed(errors) {\n return {\n type: TOGGLE_MEMBER_ERROR,\n errors,\n };\n}\n\nexport function addMember(agent) {\n return {\n type: ADD_MEMBER,\n agent,\n };\n}\n\nexport function addMemberSuccess(agent) {\n return {\n type: ADD_MEMBER_SUCCEED,\n agent,\n };\n}\n\nexport function addMemberFailed(errors) {\n return {\n type: ADD_MEMBER_ERROR,\n errors,\n };\n}\n\nexport function updateMember(agent) {\n return {\n type: UPDATE_MEMBER,\n agent,\n };\n}\n\nexport function updateMemberSuccess(agent) {\n return {\n type: UPDATE_MEMBER_SUCCEED,\n agent,\n };\n}\n\nexport function updateMemberFailed(errors) {\n return {\n type: UPDATE_MEMBER_ERROR,\n errors,\n };\n}\n\nexport function uploadLogo(file) {\n return {\n type: UPLOAD_LOGO,\n file,\n };\n}\n\nexport function uploadLogoSuccess(user) {\n return {\n type: UPLOAD_LOGO_SUCCEED,\n user,\n };\n}\n\nexport function uploadLogoFailed(errors) {\n return {\n type: UPLOAD_LOGO_ERROR,\n errors,\n };\n}\n\nexport function passwordUpdated() {\n return {\n type: PASSWORD_UPDATED,\n };\n}\n\nexport function passwordUpdatedError(errors) {\n return {\n type: PASSWORD_UPDATED_ERROR,\n errors,\n };\n}\n\nexport function setLoading(loading) {\n return {\n type: SET_LOADING,\n loading,\n };\n}\n\nexport function getMembers() {\n return {\n type: GET_AGENT_MEMBERS,\n };\n}\n\nexport function loadedMembers(members) {\n return {\n type: AGENT_MEMBERS_LOADED,\n members,\n };\n}\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectQuotation = state => state.get('quotation', initialState);\n\nconst selectOfferSelector = state => state.get('offer', initialState);\n\nconst selectCustomizeOfferSelector = state =>\n state.get('customizeOfferSelector', initialState);\n\nconst makeSelectQuotation = () =>\n createSelector(selectQuotation, quotationState =>\n quotationState.get('quotation'),\n );\n\nconst makeSelectQuotationCode = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('quotation').quotation.data.code);\n\nconst makeSelectProposalId = () =>\n createSelector(selectQuotation, quotationState => quotationState.get('proposal_id'));\n\nconst makeSelectDispalyAssistant = () =>\n createSelector(selectQuotation, quotationState =>\n quotationState.get('displayAssistant'),\n );\n\nconst makeSelectQuotationStatus = () =>\n createSelector(selectQuotation, quotationState =>\n quotationState.get('newStatus'),\n );\n\nconst makeSelectQuotationLoaded = () =>\n createSelector(selectQuotation, quotationState =>\n quotationState.get('quotationLoaded'),\n );\n\nconst makeSelectOfferSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('offer'),\n );\n\nconst makeSelectAccessoriesCodesSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('accessoriesCodes'),\n );\n\nconst makeSelectAccessoriesSelector = () =>\n createSelector(selectCustomizeOfferSelector, offerSelectorState =>\n offerSelectorState.get('accessories'),\n );\n\nconst makeSelectColorCodesSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('colorCodes'),\n );\n\nconst makeSelectColorsSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('colors'),\n );\n\nconst makeSelectServicesSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('services'),\n );\n\nconst makeSelectOriginalOffer = () =>\n createSelector(selectOfferSelector, quotationState =>\n quotationState.get('offer'),\n );\n\nconst makeSelectMonthlyRateSelector = () =>\n createSelector(selectCustomizeOfferSelector, quotationState =>\n quotationState.get('monthlyRate'),\n );\n\nexport {\n selectQuotation,\n makeSelectQuotation,\n makeSelectQuotationCode,\n makeSelectProposalId,\n makeSelectDispalyAssistant,\n makeSelectQuotationStatus,\n makeSelectQuotationLoaded,\n makeSelectOfferSelector,\n makeSelectAccessoriesCodesSelector,\n makeSelectAccessoriesSelector,\n makeSelectColorCodesSelector,\n makeSelectColorsSelector,\n makeSelectServicesSelector,\n makeSelectOriginalOffer,\n makeSelectMonthlyRateSelector,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction EditIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"g\",null,React.createElement(\"path\",{\"d\":\"m468.1,43.9c-21.2-21.2-49.4-32.9-79.3-32.9-30,0-58.2,11.7-79.4,32.9l-261,261c-2.9,2.9-4.8,6.5-5.6,10.5l-31.4,161.3c-1.3,6.7 1.1,13.3 5.6,18.3 6.7,7.6 17,5.9 18.3,5.6l161.3-31.4c4-0.8 7.7-2.7 10.5-5.6l261-261c43.8-43.7 43.8-115 0-158.7zm-285.4,386.4l-125.4,24.5 24.4-125.4 207.1-207.1 101,101-207.1,207zm256.6-256.5l-20.6,20.6-101-101 20.6-20.6c45.6-40 85.8-15.2 101,0 27.8,27.8 27.8,73.1 0,101z\"})));\n}\n\nEditIcon.defaultProps = {\"version\":\"1.1\",\"viewBox\":\"0 0 512 512\",\"enableBackground\":\"new 0 0 512 512\"};\n\nmodule.exports = EditIcon;\n\nEditIcon.default = EditIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".chip {\\n border: 2px solid #dde2ec;\\n background: #fff;\\n color: #495057;\\n border-radius: 4px;\\n flex: 0 0 auto;\\n cursor: pointer;\\n display: inline-block;\\n margin-right: .5rem;\\n margin-bottom: .5rem;\\n padding: .25rem .5rem;\\n font-size: .875rem; }\\n .chip:hover {\\n background: #dde2ec; }\\n .chip.active {\\n background: #1b55e2;\\n border-color: #1b55e2;\\n color: white; }\\n .chip svg {\\n margin-top: -3px;\\n width: 12px;\\n height: 12px; }\\n\\n.chip-multi-icon {\\n width: 1.6vw;\\n height: 1.6vw;\\n line-height: 1.4vw;\\n font-size: 1em;\\n padding: 0;\\n background-color: white;\\n cursor: pointer;\\n display: inline;\\n color: #047bf8; }\\n .chip-multi-icon svg {\\n width: 100%;\\n margin: auto; }\\n\", \"\"]);\n\n// exports\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { quotationsLoaded, filtersLoaded } from './actions';\nimport {\n GET_QUOTATIONS,\n LOAD_FILTERS,\n UPDATE_SORT,\n REMOVE_ALL,\n REMOVE_FILTER,\n SEARCH_QUOTATIONS,\n SET_PAGE_NUMBER,\n DOWNLOAD_QUOTATIONS,\n} from './constants';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\nimport { makeSelectQuotationsRequest, makeSelectQuotationsParameters } from './selectors';\n\nfunction* fetchQuotations() {\n const requestURL = `${process.env.API_URL}quotations`;\n const requestBody = yield select(makeSelectQuotationsRequest());\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(\n quotationsLoaded(\n request.items.data,\n request.total,\n request.lastPage,\n request.currentPage,\n ),\n );\n } catch (err) {\n console.log('request error', err);\n }\n}\n\nfunction* fetchFilters() {\n const requestURL = `${process.env.API_URL}quotations/filters`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n const response = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n yield put(filtersLoaded(response));\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* downloadQuotations() {\n const requestURL = `${process.env.API_URL}quotations/export`;\n const requestBody = yield select(makeSelectQuotationsRequest());\n\n try {\n const parameters = {\n method: 'POST',\n headers: getRequestHeadersAsLogged(),\n body: JSON.stringify(requestBody),\n };\n\n yield fetch(requestURL, parameters)\n .then(response => response.blob())\n .then(blob => download(blob, `Preventivi.xlsx`));\n } catch (error) {\n console.log('request error', error);\n }\n}\n\nfunction* actionWatcher() {\n yield takeLatest(LOAD_FILTERS, fetchFilters);\n yield takeLatest(DOWNLOAD_QUOTATIONS, downloadQuotations);\n yield takeLatest(\n [\n GET_QUOTATIONS,\n UPDATE_SORT,\n REMOVE_ALL,\n REMOVE_FILTER,\n SEARCH_QUOTATIONS,\n SET_PAGE_NUMBER,\n ],\n fetchQuotations,\n );\n}\n\nexport default function* quotationsData() {\n yield all([actionWatcher()]);\n}\n","import injectReducer from 'utils/injectReducer';\nimport injectSaga from 'utils/injectSaga';\n\nimport reducer from './reducer';\nimport saga from './saga';\n\nconst withQuotationReducer = injectReducer({ key: 'quotations', reducer });\nconst withQuotationSaga = injectSaga({ key: 'quotations', saga });\n\nexport { withQuotationSaga, withQuotationReducer };\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Placeholders-List-Item {\\n margin: 1rem;\\n background-color: #f2f5fe;\\n padding: 1rem;\\n text-align: center;\\n font-size: 14px;\\n border: 2px dashed #e4e4e4;\\n border-radius: 6px;\\n font-weight: 500; }\\n .Placeholders-List-Item span {\\n display: block;\\n font-size: 12px;\\n font-weight: 400; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".InputText {\\n width: 100%; }\\n .InputText .input-group-text {\\n background-color: white;\\n border: 0;\\n border-radius: 0;\\n border-bottom: 1px solid #dde2ec;\\n color: #484848 !important; }\\n .InputText .input-group-text .has-error {\\n border-color: #ff4a50; }\\n .InputText .form-control {\\n padding: 0.375rem 0.75rem;\\n font-size: .9rem;\\n line-height: 1.2rem;\\n color: #484848;\\n background-color: white;\\n background-clip: padding-box;\\n outline: 0;\\n border: 0;\\n border-bottom: 1px solid #dde2ec;\\n border-radius: 0; }\\n .InputText .form-control:focus {\\n box-shadow: unset; }\\n .InputText .input-group {\\n width: 65%; }\\n .InputText .input-group .has-error {\\n border-color: #e65252; }\\n .InputText .has-error {\\n color: #ff4a50; }\\n .InputText .input-feedback {\\n word-wrap: break-word;\\n font-size: .8em;\\n line-height: 1.375em;\\n width: 100%; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".car-item-button-board {\\n width: 250px;\\n position: sticky;\\n top: 34px; }\\n .car-item-button-board .btn-clone {\\n background-color: #2ec58d;\\n border-color: #2ec58d;\\n color: white; }\\n .car-item-button-board .btn-clone:hover {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n\", \"\"]);\n\n// exports\n","export const RESTART_ON_REMOUNT = '@@saga-injector/restart-on-remount';\nexport const DAEMON = '@@saga-injector/daemon';\nexport const ONCE_TILL_UNMOUNT = '@@saga-injector/once-till-unmount';\n","import invariant from 'invariant';\nimport { isEmpty, isFunction, isString, conformsTo } from 'lodash';\n\nimport checkStore from './checkStore';\nimport { DAEMON, ONCE_TILL_UNMOUNT, RESTART_ON_REMOUNT } from './constants';\n\nconst allowedModes = [RESTART_ON_REMOUNT, DAEMON, ONCE_TILL_UNMOUNT];\n\nconst checkKey = key =>\n invariant(\n isString(key) && !isEmpty(key),\n '(app/utils...) injectSaga: Expected `key` to be a non empty string',\n );\n\nconst checkDescriptor = descriptor => {\n const shape = {\n saga: isFunction,\n mode: mode => isString(mode) && allowedModes.includes(mode),\n };\n invariant(\n conformsTo(descriptor, shape),\n '(app/utils...) injectSaga: Expected a valid saga descriptor',\n );\n};\n\nexport function injectSagaFactory(store, isValid) {\n return function injectSaga(key, descriptor = {}, args) {\n if (!isValid) checkStore(store);\n\n const newDescriptor = {\n ...descriptor,\n mode: descriptor.mode || RESTART_ON_REMOUNT,\n };\n const { saga, mode } = newDescriptor;\n\n checkKey(key);\n checkDescriptor(newDescriptor);\n\n let hasSaga = Reflect.has(store.injectedSagas, key);\n\n if (process.env.NODE_ENV !== 'production') {\n const oldDescriptor = store.injectedSagas[key];\n // enable hot reloading of daemon and once-till-unmount sagas\n if (hasSaga && oldDescriptor.saga !== saga && oldDescriptor.task) {\n oldDescriptor.task.cancel();\n hasSaga = false;\n }\n }\n\n if (\n !hasSaga ||\n (hasSaga && mode !== DAEMON && mode !== ONCE_TILL_UNMOUNT)\n ) {\n /* eslint-disable no-param-reassign */\n store.injectedSagas[key] = {\n ...newDescriptor,\n task: store.runSaga(saga, args),\n };\n /* eslint-enable no-param-reassign */\n }\n };\n}\n\nexport function ejectSagaFactory(store, isValid) {\n return function ejectSaga(key) {\n if (!isValid) checkStore(store);\n\n checkKey(key);\n\n if (Reflect.has(store.injectedSagas, key)) {\n const descriptor = store.injectedSagas[key];\n if (descriptor.mode !== DAEMON && descriptor.task) {\n descriptor.task.cancel();\n // Clean up in production; in development we need `descriptor.saga` for hot reloading\n if (process.env.NODE_ENV === 'production') {\n // Need some value to be able to detect `ONCE_TILL_UNMOUNT` sagas in `injectSaga`\n store.injectedSagas[key] = 'done'; // eslint-disable-line no-param-reassign\n }\n }\n }\n };\n}\n\nexport default function getInjectors(store) {\n checkStore(store);\n\n return {\n injectSaga: injectSagaFactory(store, true),\n ejectSaga: ejectSagaFactory(store, true),\n };\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nimport getInjectors from './sagaInjectors';\n\n/**\\\n * Dynamically injects a saga, passes component's props as saga arguments\n *\n * @param {string} key A key of the saga\n * @param {function} saga A root saga that will be injected\n * @param {string} [mode] By default (constants.RESTART_ON_REMOUNT) the saga will be started on component mount and\n * cancelled with `task.cancel()` on component un-mount for improved performance. Another two options:\n * - constants.DAEMON—starts the saga on component mount and never cancels it or starts again,\n * - constants.ONCE_TILL_UNMOUNT—behaves like 'RESTART_ON_REMOUNT' but never runs it again.\n *\n */\nexport default ({ key, saga, mode }) => WrappedComponent => {\n class InjectSaga extends React.Component {\n static WrappedComponent = WrappedComponent;\n\n static contextTypes = {\n store: PropTypes.object.isRequired,\n };\n\n static displayName = `withSaga(${WrappedComponent.displayName ||\n WrappedComponent.name ||\n 'Component'})`;\n\n componentWillMount() {\n const { injectSaga } = this.injectors;\n\n injectSaga(key, { saga, mode }, this.props);\n }\n\n componentWillUnmount() {\n const { ejectSaga } = this.injectors;\n\n ejectSaga(key);\n }\n\n injectors = getInjectors(this.context.store);\n\n render() {\n return ;\n }\n }\n\n return hoistNonReactStatics(InjectSaga, WrappedComponent);\n};\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"body.theme-dark .top-bar {\\n background-color: #293145; }\\n\\nbody.theme-dark .menu-w {\\n background-image: none !important;\\n background-color: #202124; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ClickableItem {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n min-height: 5rem;\\n padding: .70588rem .88235rem;\\n text-align: center;\\n box-sizing: border-box;\\n border-spacing: 0;\\n overflow: hidden;\\n flex-direction: column;\\n border: 1px solid #e4e4e4;\\n border-radius: 4px !important;\\n cursor: pointer;\\n color: #404950;\\n font-size: 16px;\\n line-height: 18px;\\n letter-spacing: .007em; }\\n .ClickableItem.active {\\n border: 2px solid #047bf8 !important; }\\n .ClickableItem:hover {\\n border-color: #047bf8 !important; }\\n .ClickableItem .title {\\n display: inline-block;\\n margin-left: .4rem;\\n font-weight: 800;\\n padding: 0.4rem !important;\\n border: unset !important; }\\n .ClickableItem .title small {\\n font-size: 12px;\\n line-height: 11px;\\n font-weight: 400; }\\n .ClickableItem .description {\\n display: inline-block;\\n margin-left: .4rem;\\n font-size: 12px;\\n line-height: 12px; }\\n\", \"\"]);\n\n// exports\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst small = props => {\n const { text, icon, onClick } = props;\n\n return (\n
\n {icon}{text}\n
\n );\n};\n\nsmall.defaultProps = {\n onClick: () => null,\n};\n\nsmall.propTypes = {\n text: PropTypes.string.isRequired,\n icon: PropTypes.any.isRequired,\n onClick: PropTypes.func,\n};\n\nexport default small;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\nimport small from './small';\n\nconst medium = props => {\n const { text, icon, onClick } = props;\n\n return (\n onClick()}\n >\n {icon}\n {text}\n \n );\n};\n\nmedium.defaultProps = {\n onClick: () => null,\n};\n\nmedium.propTypes = {\n text: PropTypes.string.isRequired,\n icon: PropTypes.any.isRequired,\n onClick: PropTypes.func,\n};\n\nexport default medium;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst offer = props => {\n const { label, description, className } = props;\n\n return (\n
\n {label}\n {description}\n
\n );\n};\n\noffer.defaultProps = {\n description: '',\n};\n\noffer.propTypes = {\n label: PropTypes.string.isRequired,\n description: PropTypes.string,\n};\n\nexport default offer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport './styles.scss';\n\nconst itemBox = props => {\n const { title, description, icon, isSelected, onClick, children } = props;\n\n return (\n \n {isSelected && }\n
\n {icon.length > 2 && {title}}\n
{title}
\n
{description}
\n {children &&
{children}
}\n
\n \n );\n};\n\nitemBox.defaultProps = {\n icon: '',\n description: '',\n isSelected: false,\n};\n\nitemBox.propTypes = {\n title: PropTypes.string.isRequired,\n description: PropTypes.string,\n icon: PropTypes.string,\n isSelected: PropTypes.bool,\n onClick: PropTypes.func,\n};\n\nexport default itemBox;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport ItemBox from './index';\nimport './styles.scss';\n\nconst itemBoxList = props => {\n const { services } = props;\n\n return (\n
\n \n {services.map((item, key) => (\n \n {item.franchise}
\n }\n />\n \n ))}\n \n \n );\n};\n\nitemBoxList.propTypes = {\n services: PropTypes.array.isRequired,\n};\n\nexport default itemBoxList;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\n\nconst list = props => {\n const { title, items, icon } = props;\n\n return (\n
\n
{ icon }
\n
{ title }
\n
    \n { items.map( (item, key) => (\n
  • \n ))\n }\n
\n
\n );\n};\n\nlist.defaultProps = {\n icon: null,\n items: [],\n};\n\nlist.propTypes = {\n title: PropTypes.string.isRequired,\n items: PropTypes.array,\n icon: PropTypes.any,\n};\n\nexport default list;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\n\nclass PrivateNotes extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false\n };\n }\n\n toggle = () => {\n this.setState(prevState => ({\n show: !prevState.show,\n }));\n };\n\n render() {\n const { title, icon, text } = this.props;\n const { show } = this.state;\n\n return (\n
\n
{icon}
\n
\n {title}\n \n
\n {!show && (\n \n Clicca per visualizzare le note venditore\n
\n )}\n\n {show &&\n
    \n
  • \n
\n }\n \n );\n }\n}\n\nPrivateNotes.defaultProps = {\n icon: null,\n};\n\nPrivateNotes.propTypes = {\n title: PropTypes.string.isRequired,\n icon: PropTypes.any,\n text: PropTypes.any,\n};\n\nexport default PrivateNotes;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Row, Col } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport Arrow from '-!svg-react-loader!./assets/img/arrow.svg?name=Arrow';\nimport Check from '-!svg-react-loader!./assets/img/check.svg?name=Check';\nimport AddIcon from '-!svg-react-loader!./assets/img/add.svg?name=AddIcon';\nimport RemoveIcon from '-!svg-react-loader!./assets/img/remove.svg?name=RemoveIcon';\nimport './collapse.scss';\n\nclass Collapse extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n show: false,\n };\n this.handleOnClick = this.handleOnClick.bind(this);\n }\n\n handleOnClick() {\n const { show } = this.state;\n const { withAction } = this.props;\n this.setState({ show: !show });\n\n if(!show && withAction){\n const element = document.getElementById('OfferDetails-padding');\n ReactDOM.findDOMNode(element).style.minHeight = '200vh';\n } else if (show && withAction){\n const element = document.getElementById('OfferDetails-padding');\n ReactDOM.findDOMNode(element).style.minHeight = '0vh';\n }\n\n }\n\n handleOnHover() {\n this.setState({ hover: !this.state.hover });\n }\n\n handleOnActionClick(itemCode) {\n this.props.onActionClick(itemCode);\n\n if (this.props.closeOnAction) {\n this.setState({ show: false });\n }\n }\n\n render() {\n const { title, list, showPrice, priceMessage, info, withAction } = this.props;\n const { show } = this.state;\n const hasGroups = list.length > true;\n\n return (\n
\n
\n
{title}
\n \n
\n {\n show &&\n <>\n
\n {list.map((elem, elemKey) =>\n
\n {\n hasGroups &&\n {elem.title}\n }\n
    \n {elem.items.map((item, key) =>\n
  • \n \n {item.description}\n \n {\n showPrice &&\n <>\n + {parseInt(item.price).toLocaleString('it')}€\n {\n withAction && !item.selected && this.handleOnActionClick(item.code)}/>\n }\n {\n withAction && item.selected && this.handleOnActionClick(item.code)}/>\n }\n \n }\n {\n !showPrice &&\n <>\n {\n ( parseInt(item.price) <= false && priceMessage.length > 0 ) &&\n <>\n {priceMessage} \n \n }\n \n }\n \n \n
  • ,\n )}\n
\n
,\n )}\n
\n {\n info.length > 0 &&\n
{info}
\n }\n \n }\n
\n );\n }\n}\n\n\nCollapse.defaultProps = {\n list: [],\n showPrice: true,\n priceMessage: 'Di Serie',\n info: '',\n withAction: false,\n closeOnAction: false,\n onActionClick: () => {},\n};\n\nCollapse.propTypes = {\n title: PropTypes.string.isRequired,\n list: PropTypes.array,\n showPrice: PropTypes.bool,\n priceMessage: PropTypes.string,\n info: PropTypes.string,\n withAction: PropTypes.bool,\n closeOnAction: PropTypes.bool,\n onActionClick: PropTypes.func,\n};\n\nexport default Collapse;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\n\nclass Downloadable extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n const { src, button, binary, name } = this.props;\n return (\n
\n \n \n
\n );\n }\n}\n\nDownloadable.defaultProps = {\n button: 'Scarica Immagine',\n name: 'img.jpg',\n binary: null,\n};\n\nDownloadable.propTypes = {\n button: PropTypes.string,\n src: PropTypes.string.isRequired,\n name: PropTypes.string,\n binary: PropTypes.any,\n};\n\nexport default Downloadable;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Col, Row } from 'reactstrap';\nimport { default as DownloadableImage } from '../Image/downloadable';\nimport './posts.scss';\n\nexport class Post extends React.Component {\n constructor(props) {\n super(props);\n\n }\n\n copyCodeToClipboard = () => {\n this.textArea.select();\n document.execCommand(\"copy\");\n }\n\n render() {\n const { title, description, items, hasAttachment, onClick } = this.props;\n const size = 3;\n return (\n
\n
\n
\n
\n
\n this.copyCodeToClipboard()}\n id={'MarketingCopyPost'}\n style={{cursor: 'pointer', fontWeight: 600}}\n >\n \n {' Copia'}\n \n
{title}
\n {description}\n this.textArea = textarea}\n value={description}\n readOnly={true}\n />\n
\n
\n \n {\n items.map(\n (item, key) =>\n \n \n \n )\n }\n \n
\n {\n hasAttachment &&\n \n \n \n {'Scarica come allegato'}\n \n \n \n }\n
\n
\n
\n
\n );\n }\n}\n\nPost.defaultProps = {\n items: [],\n title: '',\n onClick: () => null,\n hasAttachment: false,\n};\n\nPost.propTypes = {\n title: PropTypes.string,\n description: PropTypes.string.isRequired,\n items: PropTypes.array,\n onClick: PropTypes.func,\n hasAttachment: PropTypes.bool,\n};\n\nexport default Post;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './simplePost.scss';\n\nconst simplePost = props => {\n const { title, hasAttachment, onClick } = props;\n return (\n
\n
\n
\n
\n
\n
{title}
\n {\n hasAttachment &&\n \n {'Scarica PDF'}\n \n }\n
\n
\n
\n
\n
\n );\n};\n\nsimplePost.defaultProps = {\n title: '',\n onClick: () => null,\n hasAttachment: false,\n};\n\nsimplePost.propTypes = {\n title: PropTypes.string,\n onClick: PropTypes.func,\n hasAttachment: PropTypes.bool,\n};\n\nexport default simplePost;\n","/*\n * InteractiveList Messages\n *\n * This contains all the text for the InteractiveList .\n */\nimport { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.UIKit.InteractiveList';\n\nexport default defineMessages({\n placeholderTitle: {\n id: `${scope}.placeholder.title`,\n defaultMessage: 'Aggiungi optional',\n },\n placeholderDescription: {\n id: `${scope}.placeholder.description`,\n defaultMessage: 'Per aggiungere optional vai nella scheda Equipaggiamenti, Optional.',\n },\n remove: {\n id: `${scope}.remove`,\n defaultMessage: 'Rimuovi tutti',\n },\n show: {\n id: `${scope}.show`,\n defaultMessage: 'Mostra tutti',\n },\n hide: {\n id: `${scope}.hide`,\n defaultMessage: 'Nascondi',\n },\n removeItem: {\n id: `${scope}.removeItem`,\n defaultMessage: 'Clicca per rimuovere',\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport messages from './messages';\nimport { Icon } from 'antd';\n\nimport './item.scss';\nimport 'antComponentsStyle';\n\nconst item = (props) => {\n const { text, code, symbol, price, unit, callback } = props;\n\n return (\n callback(code) }\n title={messages.removeItem.defaultMessage}\n >\n \n  \n {text}\n \n \n {symbol} {price} {unit}\n \n \n );\n};\n\n\nitem.defaultProps = {\n symbol: '',\n unit: '€',\n callback: () => {},\n};\n\nitem.propTypes = {\n text: PropTypes.string.isRequired,\n code: PropTypes.string.isRequired,\n symbol: PropTypes.string,\n unit: PropTypes.string,\n price: PropTypes.number.isRequired,\n callback: PropTypes.func,\n};\n\nexport default item;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport messages from './messages';\n\nimport Item from './item';\nimport Arrow from '-!svg-react-loader!./assets/img/arrow.svg?name=Arrow';\n\nconst list = (props) => {\n const { items, showButton, showAll, onShowClick, itemCallback } = props;\n\n\n return (\n <>\n
    \n {\n items.map((item, key) =>\n ,\n )\n }\n
\n onShowClick()}\n >\n {\n showButton && !showAll &&\n {messages.show.defaultMessage} \n }\n {\n showButton && showAll &&\n {messages.hide.defaultMessage} \n }\n \n \n );\n};\n\n\nlist.defaultProps = {\n showAll: false,\n showButton: false,\n onShowClick: () => {},\n itemCallback: () => {},\n};\n\nlist.propTypes = {\n showAll: PropTypes.bool,\n onShowClick: PropTypes.func,\n itemCallback: PropTypes.func,\n showButton: PropTypes.bool,\n items: PropTypes.arrayOf(PropTypes.shape({\n price: PropTypes.number.isRequired,\n code: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n short_description: PropTypes.string,\n standard_description: PropTypes.string,\n })).isRequired,\n};\n\nexport default list;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './ListItem.scss';\n\nconst item = (props) => {\n const { title, description, callback } = props;\n\n return (\n
callback()}>\n {title}\n {description}\n
\n );\n};\n\n\nitem.defaultProps = {\n description: '',\n callback: () => {\n },\n};\n\nitem.propTypes = {\n title: PropTypes.string.isRequired,\n description: PropTypes.string,\n callback: PropTypes.func,\n};\n\nexport default item;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport messages from './messages';\n\nimport { Row, Col } from 'reactstrap';\nimport { Icon } from 'antd';\nimport List from './items';\nimport {default as PlaceholderListItem} from '../Placeholders/ListItem';\n\nimport './style.scss';\nimport 'antComponentsStyle';\n\nclass InteractiveList extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n showAll: false,\n };\n this.handleOnShowAllClick = this.handleOnShowAllClick.bind(this);\n }\n\n handleOnShowAllClick() {\n this.setState({ showAll: !this.state.showAll });\n }\n\n\n render() {\n const { title, withBorder, withPlaceholder, limit, items, itemCallback, removeAllCallback } = this.props;\n const { showAll } = this.state;\n\n const className = \"Interactive-List\";\n\n const hasItems = items.length > false;\n const hasManyItems = items.length > limit;\n\n let visibleItems = [...items];\n if ( !showAll )\n visibleItems = visibleItems.splice(0, limit );\n\n\n return (\n
\n {title &&\n
{title}
\n }\n \n \n {\n hasItems &&\n \n }\n {\n !hasItems && withPlaceholder &&\n \n }\n \n \n
\n );\n }\n}\n\n\nInteractiveList.defaultProps = {\n withBorder: true,\n withPlaceholder: true,\n limit: 3,\n items: [],\n itemCallback: () => {},\n removeAllCallback: () => {},\n};\n\nInteractiveList.propTypes = {\n withBorder: PropTypes.bool,\n withPlaceholder: PropTypes.bool,\n limit: PropTypes.number,\n itemCallback: PropTypes.func,\n removeAllCallback: PropTypes.func,\n items: PropTypes.arrayOf(PropTypes.shape({\n price: PropTypes.number.isRequired,\n code: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n short_description: PropTypes.string,\n standard_description: PropTypes.string,\n })),\n};\n\nexport default InteractiveList;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from 'antd';\n\nimport './styles.scss';\n\nexport class CollapseItem extends React.PureComponent {\n constructor(props) {\n super(props);\n\n this.state = {\n open: props.isOpen,\n };\n\n this.togglePanel = this.togglePanel.bind(this);\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (this.props.isOpen !== prevProps.isOpen) {\n this.setState({ open: this.props.isOpen });\n }\n }\n\n togglePanel() {\n this.setState({ open: !this.state.open });\n }\n\n render() {\n const { title, children, description, withSpace, hasError, errorMessage, hasHtml, onClick } = this.props;\n\n const onClickHandler = () => {\n if (typeof onClick === 'function') {\n onClick()\n }\n\n this.togglePanel()\n }\n\n return (\n <>\n
\n
\n \n {title}\n {hasError &&\n <>\n \n {errorMessage &&\n {errorMessage}\n }\n }\n \n {description && (!errorMessage || !errorMessage.length) &&\n {description}\n }\n \n
\n\n {hasHtml ?\n
\n :\n
{children}
\n }\n
\n { this.state.open && withSpace ?
: null }\n \n );\n }\n}\n\nCollapseItem.defaultProps = {\n description: '',\n isOpen: false,\n withSpace: true,\n hasError: false,\n hasHtml: false,\n};\n\nCollapseItem.propTypes = {\n title: PropTypes.string.isRequired,\n children: PropTypes.any.isRequired,\n description: PropTypes.string,\n withSpace: PropTypes.bool,\n isOpen: PropTypes.bool,\n hasError: PropTypes.bool,\n hasHtml: PropTypes.bool,\n onClick: PropTypes.func,\n};\n\nexport default CollapseItem;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'antd';\n\nimport './styles.scss';\n\nconst index = props => {\n const { text, onClick, className, disabled } = props;\n\n return (\n \n );\n};\n\nindex.defaultProps = {\n className: '',\n disabled: false,\n};\n\nindex.propTypes = {\n text: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n};\n\nexport default index;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport FormButton from './index';\nimport './styles.scss';\n\nconst submit = props => (\n \n);\n\nsubmit.defaultProps = {\n disabled: false,\n};\nsubmit.propTypes = {\n text: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n};\n\nexport default submit;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { default as FormButton } from './index';\nimport './styles.scss';\n\nconst cancel = props => (\n \n);\n\ncancel.propTypes = {\n text: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n};\n\nexport default cancel;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst index = props => {\n const { text, osIcon, onClick, btnClass } = props;\n return (\n \n \n {text}\n \n );\n};\n\nindex.defaultProps = {\n onClick: () => null,\n osIcon: 'os-icon-plus-circle',\n btnClass: 'btn-grey',\n};\n\nindex.propTypes = {\n text: PropTypes.string.isRequired,\n osIcon: PropTypes.string.isRequired,\n btnClass: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport default index;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst toggle = props => {\n const { status, title, onClick, dataAttribute } = props;\n\n return (\n \n
\n
\n
\n
\n );\n};\n\ntoggle.defaultProps = {\n onClick: () => null,\n title: '',\n dataAttribute: '',\n};\n\ntoggle.propTypes = {\n status: PropTypes.bool.isRequired,\n title: PropTypes.string,\n onClick: PropTypes.func,\n dataAttribute: PropTypes.string,\n};\n\nexport default toggle;\n","import React from 'react';\nimport { Menu, Dropdown, Icon } from 'antd';\n\nimport 'antComponentsStyle';\n\nconst ThreeVerticalDots = () => (\n \n \n \n);\n\nconst DropdownMenu = ({ trigger, items }) => {\n let triggerEvents;\n\n if (trigger && Array.isArray(trigger)) {\n triggerEvents = trigger;\n } else if (trigger) {\n triggerEvents = [trigger];\n } else {\n triggerEvents = ['click'];\n }\n\n return (\n \n {items.map((item, key) => (\n {item}\n ))}\n \n }\n trigger={triggerEvents}\n >\n \n \n );\n};\n\nexport default DropdownMenu;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupText,\n Input as ReactstrapInput,\n} from 'reactstrap';\nimport './styles.scss';\n\nconst inputText = props => {\n const {\n name,\n value,\n onChange,\n placeholder,\n symbol,\n hasError,\n errorMsg,\n } = props;\n return (\n
\n \n \n {symbol.length > 0 && (\n \n \n {symbol}\n \n \n )}\n \n {hasError &&\n errorMsg.length > 0 && (\n
{errorMsg}
\n )}\n
\n );\n};\n\ninputText.defaultProps = {\n value: null,\n placeholder: 'Inserisci un valore',\n onChange: () => null,\n symbol: '',\n hasError: false,\n errorMsg: 'Il valore inserito non è valido',\n};\ninputText.propTypes = {\n name: PropTypes.any.isRequired,\n value: PropTypes.any,\n symbol: PropTypes.string,\n onChange: PropTypes.func,\n hasError: PropTypes.bool,\n errorMsg: PropTypes.string,\n placeholder: PropTypes.string,\n};\n\nexport default inputText;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Input as ReactstrapInput,\n} from 'reactstrap';\nimport './styles.scss';\n\nconst Select = props => {\n const {\n name,\n items,\n value,\n onChange,\n hasError,\n errorMsg,\n } = props;\n\n items.unshift({value: null, label: ''})\n\n return (\n
\n \n {items.map(({value, label}) =>\n \n )}\n \n {hasError &&\n errorMsg.length > 0 && (\n
{errorMsg}
\n )}\n
\n );\n};\n\nSelect.defaultProps = {\n value: null,\n onChange: () => null,\n hasError: false,\n errorMsg: 'Il valore inserito non è valido',\n};\nSelect.propTypes = {\n name: PropTypes.any.isRequired,\n items: PropTypes.arrayOf(PropTypes.shape({\n value: PropTypes.any.isRequired,\n label: PropTypes.any.isRequired,\n })).isRequired,\n value: PropTypes.any,\n onChange: PropTypes.func,\n hasError: PropTypes.bool,\n errorMsg: PropTypes.string,\n};\n\nexport default Select;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDropzone } from 'react-dropzone';\n\nimport './styles.scss';\n\nconst index = props => {\n const { title, description } = props;\n\n const [files, setFiles] = useState([]);\n const { getRootProps, getInputProps } = useDropzone({\n accept: 'image/*',\n onDrop: acceptedFiles => {\n setFiles(\n acceptedFiles.map(file =>\n Object.assign(file, {\n preview: URL.createObjectURL(file),\n }),\n ),\n );\n },\n });\n\n const thumbsContainer = {\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n marginTop: 16,\n };\n\n const thumb = {\n display: 'inline-flex',\n borderRadius: 2,\n border: '1px solid #eaeaea',\n marginBottom: 8,\n marginRight: 8,\n width: 100,\n height: 100,\n padding: 4,\n boxSizing: 'border-box',\n };\n\n const thumbInner = {\n display: 'flex',\n minWidth: 0,\n overflow: 'hidden',\n };\n\n const img = {\n display: 'block',\n width: 'auto',\n height: '100%',\n };\n\n const thumbs = files.map(file => (\n
\n
\n {'Thumbnail\n
\n
\n ));\n\n useEffect(\n () => () => {\n // Make sure to revoke the data uris to avoid memory leaks\n files.forEach(file => URL.revokeObjectURL(file.preview));\n },\n [files],\n );\n\n return (\n
\n
\n \n

Drag 'n' drop some files here, or click to select files

\n
\n \n
\n );\n};\n\nindex.defaultProps = {\n // files: [],\n title: 'Carica i file',\n description: 'Carica i file',\n};\n\nindex.propTypes = {\n title: PropTypes.string,\n description: PropTypes.string,\n// files: PropTypes.array,\n};\n\nexport default index;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\n\nconst flexSection = props => {\n const { title, children, description } = props;\n return (\n
\n {title &&\n
{title}
\n }\n
\n {description.length > 0 && (\n
{description}
\n )}\n {children}\n
\n
\n );\n};\n\nflexSection.defaultProps = {\n description: '',\n};\nflexSection.propTypes = {\n title: PropTypes.string,\n description: PropTypes.string,\n children: PropTypes.any.isRequired,\n};\n\nexport default flexSection;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './item.scss';\n\nconst item = (props) => {\n const { title, value, unit, id, description, isActive, callback, disabled } = props;\n let className = 'Item';\n if (isActive && !disabled)\n className += ' active';\n\n if (disabled)\n className += ' disabled';\n\n className += ' ' + id;\n\n return (\n callback(value) }\n data-value={value}\n data-key={id}\n >\n \n {title}\n {\n unit.length > 0 &&\n { ' ' } { unit } \n }\n\n \n {\n description &&\n \n {React.isValidElement(description) ? description : `${description}`}\n \n }\n
\n );\n};\n\n\nitem.defaultProps = {\n id: '',\n unit: '',\n isActive: false,\n disabled: false,\n callback: () => {},\n};\n\nitem.propTypes = {\n title: PropTypes.any.isRequired,\n id: PropTypes.string,\n unit: PropTypes.string,\n description: PropTypes.node,\n isActive: PropTypes.bool,\n disabled: PropTypes.bool,\n callback: PropTypes.func\n};\n\nexport default item;\n\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport Item from './Item';\nimport './style.scss';\n\nconst selectOption = (props) => {\n const {title, items, active, withBorder, callback, colSize, id, label } = props;\n\n let className = \"Select-Option\";\n\n if(withBorder)\n className += ' with-border';\n\n if(!active)\n className += ' disabled';\n\n return (\n
\n
\n \n {\n label.length > 0 &&\n {label}\n }\n
\n \n {\n items.map((item, index) =>\n \n \n \n )}\n \n
\n );\n};\n\n\nselectOption.defaultProps = {\n id: '',\n subtitle: '',\n active: false,\n withBorder: true,\n colSize: 3,\n callback: () => {},\n label: '',\n};\n\nselectOption.propTypes = {\n title: PropTypes.string.isRequired,\n id: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({\n label: PropTypes.any,\n value: PropTypes.any.isRequired,\n unit: PropTypes.string,\n selected: PropTypes.bool.isRequired,\n disabled: PropTypes.bool,\n description: PropTypes.node\n })).isRequired,\n active: PropTypes.bool,\n withBorder: PropTypes.bool,\n colSize: PropTypes.number,\n callback: PropTypes.func,\n label: PropTypes.string\n};\n\nexport default selectOption;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './clickableItem.scss';\n\nconst clickableItem = (props) => {\n const { title, id, description, additionalText, value, isActive, callback } = props;\n let className = 'ClickableItem ' + id;\n\n if (isActive){\n className += ' active';\n }\n\n let descriptionText = description;\n\n if (value > 0) {\n descriptionText = `${value}€ al mese`;\n } else {\n descriptionText = additionalText;\n }\n\n return (\n callback(id) }\n data-value={value}\n data-key={id}\n >\n {title}\n\n \n {\n {descriptionText}\n }\n
\n );\n};\n\n\nclickableItem.defaultProps = {\n description: '',\n isActive: false,\n callback: () => {},\n};\n\nclickableItem.propTypes = {\n title: PropTypes.string.isRequired,\n id: PropTypes.number,\n description: PropTypes.string,\n value: PropTypes.any.isRequired,\n isActive: PropTypes.bool,\n callback: PropTypes.func\n};\n\nexport default clickableItem;\n\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { Select, Icon, Tooltip } from 'antd';\nimport './clickableItemWithSelect.scss';\n\nconst clickableItemWithSelect = props => {\n const { title, id, description, additionalText, value, isActive, options, callback } = props;\n const [ optionSelected, setOptionSelected ] = useState(options[0])\n const [ totPrice, setTotPrice ] = useState(value)\n\n let className = 'ClickableItemWithSelect ' + id;\n\n if (isActive) {\n className += ' active';\n }\n\n useEffect(() => {\n const calculatedPrice = value * optionSelected;\n setTotPrice(calculatedPrice);\n });\n\n const handleOnSelectChange = optionValue => {\n const calculatedPrice = value * optionValue;\n setOptionSelected(optionValue);\n setTotPrice(calculatedPrice);\n callback(id, calculatedPrice, optionValue);\n }\n\n const handleOnClick = () => {\n callback(id, isActive ? null : totPrice)\n }\n\n return (\n \n {title}\n event.stopPropagation()}>\n {options && options.length ? (\n \n {options.map(option => (\n \n {option} ({(value * option)}€)\n \n ))}\n \n ) : null}\n {additionalText && {additionalText}}\n \n {description && \n \n }\n \n );\n};\n\nclickableItemWithSelect.defaultProps = {\n description: '',\n isActive: false,\n callback: () => {},\n};\n\nclickableItemWithSelect.propTypes = {\n title: PropTypes.string.isRequired,\n id: PropTypes.number,\n description: PropTypes.string,\n value: PropTypes.any.isRequired,\n isActive: PropTypes.bool,\n callback: PropTypes.func,\n};\n\nexport default clickableItemWithSelect;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\n\nimport ClickableItem from './ClickableItem';\nimport ClickableItemWithSelect from './ClickableItemWithSelect';\n\nimport './selectOptions.scss';\n\nconst selectOptions = props => {\n const { title, items, withBorder, colSize, id, selected, callback } = props;\n\n let className = 'Select-Options';\n\n if (withBorder) className += ' with-border';\n\n const range = (from, to) => [...Array(to - (from - 1)).keys()].map(i => i + from);\n\n return (\n
\n
\n \n
\n \n {items.map((item, index) =>\n \n {item.hasOwnProperty('min_quantity') && item.min_quantity !== item.max_quantity ?\n item.id === selectedItem.id )}\n callback={callback}\n options={range(item.min_quantity, item.max_quantity)}\n />\n :\n item.id === selectedItem.id )}\n callback={callback}\n />\n }\n \n )}\n \n
\n );\n};\n\nselectOptions.defaultProps = {\n id: '',\n withBorder: true,\n colSize: 6,\n callback: () => {},\n};\n\nselectOptions.propTypes = {\n title: PropTypes.string.isRequired,\n id: PropTypes.string,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n slug: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n description: PropTypes.string,\n price: PropTypes.any,\n callback: PropTypes.func,\n }),\n ).isRequired,\n selected: PropTypes.any.isRequired,\n withBorder: PropTypes.bool,\n colSize: PropTypes.number,\n callback: PropTypes.func,\n};\n\nexport default selectOptions;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nconst index = props => {\n const { html } = props;\n return (\n
\n );\n};\n\n\nindex.defaultProps = {};\n\nindex.propTypes = {\n html: PropTypes.any.isRequired,\n};\n\nexport default index;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './style.scss';\n\nconst badge = (props) => {\n const { title } = props;\n\n return (\n {title}\n );\n};\n\n\nbadge.propTypes = {\n title: PropTypes.string.isRequired,\n};\n\nexport default badge;\n","import React from 'react';\nimport { Tag as AntTag } from 'antd';\n\nimport 'antComponentsStyle';\nimport './styles.scss';\n\nconst typeColors = {\n info: 'rgb(4, 123, 248)',\n success: 'rgb(133, 199, 81)',\n alert: 'rgb(230, 82, 82)',\n}\n\nconst Tag = ({type, text}) => {text}\n\nexport default Tag\n","import React from 'react';\nimport { Tooltip, Icon } from 'antd';\nimport { FormattedHTMLMessage } from 'react-intl';\nimport messages from 'containers/Quotation/messages';\n\nexport const AlertIcon = ({size}) => {\n return (\n \n );\n};\n\nconst ExpiredTooltip = ({children, showIcon, size}) => {\n return (\n }>\n {children}\n {showIcon &&\n \n }\n \n );\n};\n\nexport default ExpiredTooltip;\n","export { default as SmallActionButton } from './Buttons/Action/small';\nexport { default as MediumActionButton } from './Buttons/Action/medium';\nexport { default as OfferLabel } from './Label/offer';\n\nexport { default as ItemBox } from './ItemBox/index';\nexport { default as ItemBoxList } from './ItemBox/list';\n\nexport { default as List } from './List';\nexport { default as FeeList } from './List/fee';\nexport { default as PrivateNotes } from './List/private_notes';\nexport { default as CollapseList } from './List/collapse';\nexport { default as PostList } from './List/post';\nexport { default as SimplePostList } from './List/simplePost';\n\nexport { default as InteractiveList } from './InteractiveList/index';\n\nexport { default as CollapseItem } from './Collapse/item';\n\nexport { default as FromSubmitButton } from './Buttons/Form/submit';\nexport { default as FromCancelButton } from './Buttons/Form/cancel';\nexport { default as FromButton } from './Buttons/Form/index';\nexport { default as ItemButton } from './Buttons/Item/index';\n\nexport { default as ToggleButton } from './Buttons/Toggle/index';\nexport { default as DropdownMenu } from './Dropdown/index';\n\nexport { default as InputText } from './Input/Text/index';\nexport { default as Select } from './Input/Select/index';\nexport { default as InputSlider } from './Input/Slider/index';\nexport { default as InputFile } from './Input/File/index';\n\nexport { default as FlexSection } from './Section/index';\n\nexport { default as PlaceholderListItem } from './Placeholders/ListItem';\n\nexport { default as SelectOption } from './Select/SelectOption';\nexport { default as SelectOptions } from './Select/SelectOptions';\n\nexport { default as TopBanner } from './Banner/Top';\nexport { default as DownloadableImage } from './Image/downloadable';\n\nexport { default as StickyBottom } from './Sticky/bottom';\n\nexport { default as Badge } from './Badge/index';\nexport { default as Tag } from './Tag/index';\n\nexport { default as ExpiredTooltip, AlertIcon } from './ExpiredOffer';\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CarSelectorBrandLogo {\\n border-radius: 50%;\\n vertical-align: middle;\\n margin-right: 10px; }\\n\\n#CarSelectorModel .flex-section {\\n margin-bottom: 0; }\\n\", \"\"]);\n\n// exports\n","var React = require('react');\n\nfunction DepositIcon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M336,151.913v-36.132l46.313-92.625c2.477-4.961,2.211-10.852-0.703-15.57C378.695,2.875,373.547,0,368,0h-64 c-4.242,0-8.313,1.688-11.313,4.688L272,25.375L251.313,4.688c-3-3-7.07-4.688-11.313-4.688h-96c-5.547,0-10.695,2.875-13.609,7.586 c-2.914,4.719-3.18,10.609-0.703,15.57L176,115.781v36.132C104.824,204.277,48,309.69,48,391.648C48,512,153.742,512,256,512 s208,0,208-120.352C464,309.69,407.176,204.277,336,151.913z M208,128h96v16h-96V128z M233.375,32l27.313,27.313 c6.25,6.25,16.375,6.25,22.625,0L310.625,32h31.484l-32,64H201.891l-32-64H233.375z M256,480c-125.063,0-176-7.992-176-88.352 C80,326.914,126.844,226,197.008,176h117.984C385.156,226,432,326.914,432,391.648C432,472.008,381.063,480,256,480z\"}));\n}\n\nDepositIcon.defaultProps = {\"version\":\"1.1\",\"viewBox\":\"0 0 512 512\",\"enableBackground\":\"new 0 0 512 512\"};\n\nmodule.exports = DepositIcon;\n\nDepositIcon.default = DepositIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferDetails {\\n color: #404950;\\n border-radius: 6px; }\\n #OfferDetails .title {\\n font-size: 15px;\\n line-height: 1.2;\\n font-weight: 600;\\n padding: .1rem;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.05); }\\n #OfferDetails .title .action-button.small {\\n margin-top: -.2rem; }\\n #OfferDetails .detail-item {\\n text-align: center;\\n padding: .5rem; }\\n #OfferDetails .detail-item .item {\\n cursor: pointer;\\n height: 100%;\\n border-radius: .5rem;\\n background-color: #f2f5fe;\\n display: inline-block;\\n width: 30%;\\n text-align: center;\\n margin: .3rem;\\n color: #404950;\\n padding: .8rem;\\n border: 1px solid #f2f5fe; }\\n #OfferDetails .detail-item .item.selected {\\n color: #047bf8;\\n border-color: #047bf8; }\\n #OfferDetails .detail-item .item.selected svg {\\n fill: #047bf8; }\\n #OfferDetails .detail-item .item:hover {\\n color: #047bf8;\\n border-color: #047bf8; }\\n #OfferDetails .detail-item .item:hover svg {\\n fill: #047bf8; }\\n #OfferDetails .detail-item .item .value {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 700;\\n line-height: 1em; }\\n #OfferDetails .detail-item .item .description {\\n word-wrap: break-word;\\n font-size: 1.2vw;\\n font-weight: 400;\\n line-height: 1em; }\\n #OfferDetails .detail-item .item svg {\\n width: 25px;\\n height: 25px;\\n margin-bottom: .4rem;\\n vertical-align: middle;\\n fill: #404950; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".selected-car {\\n display: inline;\\n margin-right: .4rem; }\\n\", \"\"]);\n\n// exports\n","/*\n * OfferServices Constants\n */\n\nexport const GET_SERVICES = 'ideal/OfferServices/GET_SERVICES';\nexport const SERVICES_RECEIVED = 'ideal/OfferServices/SERVICES_RECEIVED';\nexport const SERVICES_ERROR = 'ideal/OfferServices/SERVICES_ERROR';\nexport const SERVICE_SELECTED = 'ideal/OfferServices/SERVICE_SELECTED';\nexport const SET_OFFER_PRODUCT_SERVICES = 'ideal/OfferServices/SET_OFFER_PRODUCT_SERVICES';\nexport const RESET = 'ideal/OfferServices/RESET';\n","var React = require('react');\n\nfunction SellerIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"path\",{\"d\":\"M477.7,454.8v-26c0-26.5-12.4-52-33.1-68.1c-48.2-37.4-97.3-63.5-114.5-72.2v-29.7c3.5-7.8,6.4-16.3,8.6-25.5\\n\\t\\tc12.8-4.6,19.8-23.4,24.5-40c6.3-22.1,5.6-37.6-1.8-46.2c7.8-42.5,4.3-73.8-10.3-93.1c-7.7-10.1-16.7-14.4-22.7-16.3\\n\\t\\tc-4.3-6-13-16.1-27.7-24.2C285.5,4.5,268.4,0,249.6,0c-3.4,0-6.8,0.2-9.8,0.4c-8.4,0.4-16.7,2-24.9,4.7c-0.1,0-0.2,0.1-0.3,0.1\\n\\t\\tc-9,3.1-17.8,7.6-26.3,13.4c-9.7,6.2-18.6,13.6-26.3,21.8c-15.1,15.5-25.1,33-29.4,51.7c-4.1,15.5-4.4,31.1-1,46.4\\n\\t\\tc-1.8,1.3-3.4,2.8-4.8,4.6c-6.9,9.1-7.2,23.4-1.1,45.1c4.2,15,9.8,30.3,19.3,37.2c2.8,14.4,7.5,27.5,13.8,39.1v24.1\\n\\t\\tc-17.2,8.7-66.3,34.7-114.5,72.2c-20.7,16.1-33.1,41.5-33.1,68.1v26c0,18.8,15.3,34,34,34h398.5\\n\\t\\tC462.4,488.9,477.7,473.6,477.7,454.8z M35.6,454.8v-26c0-19,8.8-37.2,23.6-48.7c52-40.3,104.9-66.9,115-71.8\\n\\t\\tc5.6-2.7,9.1-8.3,9.1-14.6v-32.5c0-2.2-0.6-4.3-1.7-6.2c-6.6-11.2-11.2-24.6-13.5-39.9c-0.8-4.9-4.4-8.8-9.1-10\\n\\t\\tc-1.3-1.5-5-6.9-9.7-23.6c-3.9-13.8-3.6-20.2-3.2-22.5c3.9,0.2,7.8-1.6,10.3-4.7c2.6-3.3,3.3-7.7,1.9-11.6\\n\\t\\tc-5.2-14.5-5.8-29.4-1.8-44.6c3.4-14.6,11.2-28.2,23.3-40.6c6.5-7,14-13.1,22-18.2c0.1-0.1,0.3-0.2,0.4-0.3\\n\\t\\tc6.7-4.7,13.7-8.2,20.6-10.6c0.1,0,0.2-0.1,0.2-0.1c5.9-2,12-3.1,18.4-3.4c17.5-1.5,33.2,1.8,47.1,9.9\\n\\t\\tc15.2,8.4,21.4,19.4,21.4,19.4c1.9,3.9,5.3,6.2,9.7,6.5c0.3,0,6.8,1,12.4,8.9c5.9,8.4,14.3,30,3.8,80.4c-1.2,5.6,1.7,11.2,6.8,13.6\\n\\t\\tc0.5,1.8,1.3,7.9-3,23.1c-3.8,13.4-6.9,19.5-8.7,22.2c-2.3-0.4-4.7-0.2-6.9,0.8c-3.8,1.6-6.6,5.1-7.3,9.1c-2.1,12-5.5,22.8-9.9,32\\n\\t\\tc-0.8,1.7-1.2,3.5-1.2,5.3v37.6c0,6.3,3.5,11.8,9.1,14.6c10.1,4.9,63,31.6,114.9,71.8c14.8,11.5,23.6,29.7,23.6,48.7v26\\n\\t\\tc0,5.2-4.3,9.5-9.5,9.5H45.2C39.9,464.4,35.6,460.1,35.6,454.8z\"})),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nSellerIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 488.9 488.9\",\"style\":{\"enableBackground\":\"new 0 0 488.9 488.9\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = SellerIcon;\n\nSellerIcon.default = SellerIcon;\n","var React = require('react');\n\nfunction SortIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"title\",{\"key\":0},\"drover_icon_library\"),React.createElement(\"rect\",{\"className\":\"cls-1\",\"fill\":\"none\",\"width\":\"83.33\",\"height\":\"83.33\",\"rx\":\"41.67\",\"ry\":\"41.67\",\"key\":1}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"9.43\",\"width\":\"33.72\",\"height\":\"7\",\"key\":2}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"28.59\",\"width\":\"28.1\",\"height\":\"7\",\"key\":3}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"47.75\",\"width\":\"22.48\",\"height\":\"7\",\"key\":4}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"3.17\",\"y\":\"66.9\",\"width\":\"16.86\",\"height\":\"7\",\"key\":5}),React.createElement(\"rect\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"x\":\"57.34\",\"y\":\"12.93\",\"width\":\"7\",\"height\":\"57.47\",\"key\":6}),React.createElement(\"path\",{\"className\":\"cls-2\",\"fill\":\"#1b1b1b\",\"d\":\"M60.84,73.9A3.47,3.47,0,0,1,58.45,73l-19.33-18L43.9,49.8,60.84,65.61,77.78,49.8l4.77,5.12L63.23,73A3.51,3.51,0,0,1,60.84,73.9Z\",\"key\":7})]);\n}\n\nSortIcon.defaultProps = {\"id\":\"Sort_Layer\",\"viewBox\":\"0 0 83.33 83.33\",\"className\":\"asc order\"};\n\nmodule.exports = SortIcon;\n\nSortIcon.default = SortIcon;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".InputSelect {\\n width: 100%; }\\n .InputSelect .form-control {\\n padding: 0.375rem 0.75rem;\\n font-size: .9rem;\\n line-height: 1.2rem;\\n color: #484848;\\n background-color: white;\\n background-clip: padding-box;\\n outline: 0;\\n border: 0;\\n border-bottom: 1px solid #dde2ec;\\n border-radius: 0; }\\n .InputSelect .form-control:focus {\\n box-shadow: unset; }\\n .InputSelect .has-error {\\n color: #ff4a50; }\\n .InputSelect .input-feedback {\\n word-wrap: break-word;\\n font-size: .8em;\\n line-height: 1.375em;\\n width: 100%; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#OfferChilds .nowrap {\\n white-space: nowrap; }\\n\\n#Loader {\\n padding-top: 0 !important;\\n margin: 0 !important; }\\n #Loader span {\\n width: 40px;\\n height: 40px; }\\n #Loader p {\\n visibility: hidden;\\n opacity: 0;\\n font-size: 0; }\\n\\n.alert-child {\\n font-weight: 400;\\n text-align: center;\\n margin: auto;\\n word-wrap: break-word;\\n font-size: .9em;\\n line-height: 1.375em;\\n flex-grow: 1;\\n display: flex;\\n width: 100%; }\\n .alert-child strong {\\n font-weight: 600; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#CarImages .ghost {\\n opacity: 0.3;\\n filter: alpha(opacity=30);\\n position: relative; }\\n #CarImages .ghost::before {\\n content: '';\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n z-index: 50; }\\n\\n#CarImages .card {\\n min-height: 195px;\\n max-height: 195px;\\n overflow: hidden; }\\n\\n#CarImages img {\\n cursor: pointer;\\n height: 100% !important;\\n width: 100% !important;\\n max-width: 100% !important;\\n display: table-cell;\\n vertical-align: middle;\\n transition: all .4s ease-in-out;\\n border-radius: 6px;\\n border: 1px solid #f2f5fe; }\\n #CarImages img:hover {\\n filter: brightness(50%); }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ideal-alert .element-box {\\n padding: 0 !important; }\\n\\n.ideal-alert h5, .ideal-alert p {\\n color: #404950; }\\n\\n.ideal-alert .chat-btn {\\n padding: 0.25rem 0.5rem;\\n font-size: 0.775rem;\\n line-height: 1.5;\\n border-radius: 4px;\\n text-align: center;\\n margin-bottom: .2rem;\\n margin-left: auto;\\n margin-right: auto; }\\n\\n.alertWithMessage .btn {\\n background-color: white !important; }\\n\", \"\"]);\n\n// exports\n","/*\n * QuotationConstants\n */\n\nexport const GET_QUOTATION = 'ideal/Quotation/GET_QUOTATION';\nexport const PRINT_QUOTATION = 'ideal/Quotation/PRINT_QUOTATION';\nexport const UPDATE_QUOTATION_STATUS =\n 'ideal/Quotation/UPDATE_QUOTATION_STATUS';\nexport const QUOTATION_RECEIVED = 'ideal/Quotation/QUOTATION_RECEIVED';\nexport const DISPLAY_QUOTATION_ASSISTANT =\n 'ideal/Quotation/DISPLAY_QUOTATION_ASSISTANT';\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".OfferFields .form-group {\\n padding: 5px;\\n padding-bottom: unset; }\\n\\n.OfferFields .flex-section {\\n margin-top: 0;\\n margin-bottom: -20px; }\\n .OfferFields .flex-section .select-search {\\n width: 100%; }\\n\\n.OfferFields .required::after {\\n content: ' *';\\n color: red; }\\n\\n.OfferFields .form-control {\\n display: block;\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 0.9rem;\\n line-height: 1.5;\\n color: #495057;\\n background-color: #fff;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 4px;\\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }\\n\\n.OfferFields input::-webkit-input-placeholder, .OfferFields textarea::-webkit-input-placeholder {\\n color: #495057;\\n opacity: .4; }\\n\", \"\"]);\n\n// exports\n","import { defineMessages } from 'react-intl';\nimport configs from \"configs\"\n\nexport const scope = 'app.containers.Quotation';\n\nexport default defineMessages({\n step1_title: {\n id: `${scope}.step1_title`,\n defaultMessage: 'Dati personali',\n },\n step1_title_short: {\n id: `${scope}.step1_title_short`,\n defaultMessage: 'Anagrafica',\n },\n step2_title: {\n id: `${scope}.step2_title`,\n defaultMessage: 'Conferma dati',\n },\n step2_title_short: {\n id: `${scope}.step2_title_short`,\n defaultMessage: 'Conferma',\n },\n step3_title: {\n id: `${scope}.step3_title`,\n defaultMessage: 'Sostenibilità',\n },\n step3_title_short: {\n id: `${scope}.step3_title_short`,\n defaultMessage: 'Sostenibilità',\n },\n step4_title: {\n id: `${scope}.step4_title`,\n defaultMessage: 'Carica documenti',\n },\n step4_title_short: {\n id: `${scope}.step4_title_short`,\n defaultMessage: 'Documenti',\n },\n step5_title: {\n id: `${scope}.step5_title`,\n defaultMessage: 'Stato pratica',\n },\n step5_result_info: {\n id: `${scope}.step5_result_info`,\n defaultMessage: 'In lavorazione',\n },\n step5_result_info_description: {\n id: `${scope}.step5_result_info_description`,\n defaultMessage: 'La tua richiesta è stata ricevuta ed è al momento in fase di elaborazione',\n },\n step5_result_won: {\n id: `${scope}.step5_result_won`,\n defaultMessage: 'Richiesta approvata',\n },\n step5_result_won_description: {\n id: `${scope}.step5_result_won_description`,\n defaultMessage: 'La tua richiesta è stata approvata',\n },\n step5_result_lost: {\n id: `${scope}.step5_result_lost`,\n defaultMessage: 'Richiesta respinta',\n },\n step5_result_lost_description: {\n id: `${scope}.step5_result_lost_description`,\n defaultMessage: 'La tua richiesta è stata respinta',\n },\n btnSetToLost: {\n id: `${scope}.btnSetToLost`,\n defaultMessage: 'Rifiuta preventivo',\n },\n btnSetToWon: {\n id: `${scope}.btnSetToWon`,\n defaultMessage: 'Accetta preventivo',\n },\n back: {\n id: `${scope}.back`,\n defaultMessage: 'Indietro',\n },\n expiredOffer: {\n id: `${scope}.expiredOffer`,\n defaultMessage: configs.messages[scope].expiredOffer,\n },\n});\n","import { fromJS } from 'immutable';\n\nimport {\n LOAD_USER_SUCCESS,\n LOAD_USER_ERROR,\n PROFILE_UPDATED_ERROR,\n REQUEST_API_KEY_SUCCEED,\n REQUEST_API_KEY_ERROR,\n TOGGLE_MEMBER_SUCCEED,\n TOGGLE_MEMBER_ERROR,\n ADD_MEMBER_SUCCEED,\n ADD_MEMBER_ERROR,\n UPDATE_MEMBER_SUCCEED,\n UPDATE_MEMBER_ERROR,\n UPLOAD_LOGO_SUCCEED,\n UPLOAD_LOGO_ERROR,\n PASSWORD_UPDATED_ERROR,\n SET_LOADING,\n} from './constants';\nimport { AGENT_MEMBERS_LOADED } from '../Profile/constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n loading: false,\n invalid: false,\n user: {\n preferences: [],\n },\n members: [],\n errors: {},\n});\n\nfunction appReducer(state = initialState, action) {\n switch (action.type) {\n case LOAD_USER_SUCCESS:\n case UPLOAD_LOGO_SUCCEED:\n return state\n .set('user', action.user)\n .set('invalid', false)\n .set('loading', false);\n case LOAD_USER_ERROR:\n return state.set('invalid', true).set('loading', false);\n case REQUEST_API_KEY_SUCCEED:\n return state\n .set('user', { ...state.get('user'), apiKey: action.apiKey })\n .set('errors', {})\n .set('loading', false);\n case PASSWORD_UPDATED_ERROR:\n case PROFILE_UPDATED_ERROR:\n case UPLOAD_LOGO_ERROR:\n case ADD_MEMBER_ERROR:\n case UPDATE_MEMBER_ERROR:\n case TOGGLE_MEMBER_ERROR:\n case REQUEST_API_KEY_ERROR:\n return state\n .set('errors', { ...state.get('errors'), ...action.errors })\n .set('loading', false);\n case ADD_MEMBER_SUCCEED:\n var members = state.get('members');\n members.push(action.agent);\n return state\n .set('members', { members })\n .set('errors', {})\n .set('loading', false);\n case UPDATE_MEMBER_SUCCEED:\n case TOGGLE_MEMBER_SUCCEED:\n var members = [...state.get('members')];\n var memberIdx = members.findIndex(\n currentMember => currentMember.code === action.agent.code,\n );\n members[memberIdx] = action.agent;\n return state\n .set('members', members)\n .set('errors', {})\n .set('loading', false);\n case AGENT_MEMBERS_LOADED:\n return state\n .set('members', action.members)\n .set('errors', {})\n .set('loading', false);\n case SET_LOADING:\n return state.set('loading', action.loading);\n default:\n return state;\n }\n}\n\nexport default appReducer;\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { defineMessages } from 'react-intl';\n\nexport const scope = 'app.components.Profile';\n\nexport default defineMessages({\n profile: {\n id: `${scope}.profile`,\n defaultMessage: 'Profilo',\n },\n password: {\n id: `${scope}.password`,\n defaultMessage: 'Password',\n },\n api: {\n id: `${scope}.api`,\n defaultMessage: 'Chiave API',\n },\n apiInputLabel: {\n id: `${scope}.apiInputLabel`,\n defaultMessage: 'Chiave API personale',\n },\n landingpage: {\n id: `${scope}.landingpage`,\n defaultMessage: 'Landing page',\n },\n rebrand: {\n id: `${scope}.rebrand`,\n defaultMessage: 'Tema e logo',\n },\n rebrandThemeLabel: {\n id: `${scope}.rebrandThemeLabel`,\n defaultMessage: 'Scegli la palette di colori',\n },\n rebrandLogoLabel: {\n id: `${scope}.rebrandLogoLabel`,\n defaultMessage: 'Carica il tuo logo personalizzato',\n },\n rebrandSubmit: {\n id: `${scope}.rebrandSubmit`,\n defaultMessage: 'Salva preferenze',\n },\n requestNewApiKey: {\n id: `${scope}.requestNewApiKey`,\n defaultMessage: 'Crea una nuova chiave API',\n },\n alertSuccess: {\n id: `${scope}.alertSuccess`,\n defaultMessage: 'Aggiornamento avvenuto con successo',\n },\n alertError: {\n id: `${scope}.alertError`,\n defaultMessage: 'Si sono verificati degli errori, controllare i dati inseriti',\n },\n businessName: {\n id: `${scope}.businessName`,\n defaultMessage: 'Ragione sociale'\n },\n name: {\n id: `${scope}.name`,\n defaultMessage: 'Nome completo',\n },\n requiredField: {\n id: `${scope}.requiredField`,\n defaultMessage: 'Questo campo è obbligatorio',\n },\n phone: {\n id: `${scope}.phone`,\n defaultMessage: 'Numero di telefono',\n },\n phoneNotValid: {\n id: `${scope}.phoneNotValid`,\n defaultMessage: 'Indicare un numero di telefono valido',\n },\n contactInfo: {\n id: `${scope}.contactInfo`,\n defaultMessage: 'Informazioni di contatto',\n },\n updateProfile: {\n id: `${scope}.updateProfile`,\n defaultMessage: 'Aggiorna profilo',\n },\n updatePassword: {\n id: `${scope}.updatePassword`,\n defaultMessage: 'Aggiorna password',\n },\n currentPassword: {\n id: `${scope}.currentPassword`,\n defaultMessage: 'Password attuale',\n },\n currentPasswordErrorEmpty: {\n id: `${scope}.currentPasswordErrorEmpty`,\n defaultMessage: `Indicare l'attuale password`,\n },\n newPassword: {\n id: `${scope}.newPassword`,\n defaultMessage: 'Nuova password',\n },\n newPasswordErrorMinLength: {\n id: `${scope}.newPasswordErrorMinLength`,\n defaultMessage: 'La nuova password deve essere almeno di 8 caratteri',\n },\n confirmPassword: {\n id: `${scope}.confirmPassword`,\n defaultMessage: 'Conferma password',\n },\n confirmPasswordErrorNotEqual: {\n id: `${scope}.confirmPasswordErrorNotEqual`,\n defaultMessage: 'Le due password non coincidono',\n },\n});\n","import { put, takeLatest, all, select } from 'redux-saga/effects';\nimport { API_URL } from 'containers/App/constants';\nimport { offerLoaded } from './actions';\nimport { offerSelected } from 'components/CustomizeOffer/actions';\nimport { GET_OFFER } from './constants';\nimport { makeSelectOfferCode, makeSelectChildOfferCode } from './selectors';\nimport { makeSelectCheckResponse, makeSelectCheckInputData } from 'components/PrescoringTool/selectors';\nimport { getRequestHeadersAsLogged, responseHandler } from '../../utils/auth';\nimport queryString from 'query-string';\n\nfunction* fetchOffer() {\n const code = yield select(makeSelectOfferCode());\n const childOffer = yield select(makeSelectChildOfferCode());\n let inputData = yield select(makeSelectCheckInputData());\n let prescoringResponse = yield select(makeSelectCheckResponse());\n inputData = inputData.hasOwnProperty('_root') ? inputData.toJS() : inputData;\n prescoringResponse = prescoringResponse.hasOwnProperty('_root') ? prescoringResponse.toJS() : prescoringResponse;\n\n const qs = queryString.stringify(prescoringResponse);\n const answers = Object.keys(inputData.answers).map(key => key + '=' + inputData.answers[key]).join(',');\n\n const requestURL = `${API_URL}offers/${code}?${qs}&contractualCategory=${inputData.contractualCategory}&answers=${answers}`;\n\n try {\n const parameters = {\n method: 'GET',\n headers: getRequestHeadersAsLogged(),\n };\n const request = yield fetch(requestURL, parameters).then(response =>\n responseHandler(response)\n );\n\n const offer = {\n ref: request.data.ref,\n distance: request.data.distance,\n duration: request.data.duration,\n deposit: request.data.deposit,\n bundle: request.data.bundle,\n monthly_rate: request.data.monthly_rate,\n tag: request.data.tag,\n secondaryTag: request.data.secondaryTag,\n };\n\n if (request.data.hasOwnProperty('child') && Object.keys(childOffer).length > 0) {\n const selected = searchChild(request.data.child.data, childOffer);\n\n if (selected !== undefined) {\n yield put(offerSelected({...selected, tag: request.data.tag, secondaryTag: request.data.secondaryTag}));\n } else {\n yield put(offerSelected(offer));\n }\n } else {\n yield put(offerSelected(offer));\n }\n\n yield put(offerLoaded(request.data));\n } catch (err) {}\n}\n\nfunction searchChild(offers, selectedChild) {\n return offers.filter(\n item =>\n parseInt(item.deposit) === parseInt(selectedChild.deposit) &&\n parseInt(item.distance) === parseInt(selectedChild.distance) &&\n parseInt(item.duration) === parseInt(selectedChild.duration) &&\n (!item.bundle || (item.bundle === selectedChild.bundle))\n )[0];\n}\n\nfunction* actionWatcher() {\n yield takeLatest(GET_OFFER, fetchOffer);\n}\n\nexport default function* offersData() {\n yield all([actionWatcher()]);\n}\n","import {\n OFFER_SELECTED,\n OFFER_MONTHLY_RATE_CALCULATED,\n DISPLAY_OFFERS,\n SERVICE_SELECTED,\n ACCESSORIES_SELECTED,\n ACCESSORIES_CODES_SELECTED,\n ACCESSORIES_CODES_COLOR_SELECTED,\n COLORS_SELECTED,\n FEES_UPDATE,\n FEES_RESET,\n} from './constants';\n\n/**\n *\n * @param offer\n * @returns {{offer: *, type: *}}\n */\nexport function offerSelected(offer) {\n return {\n type: OFFER_SELECTED,\n offer,\n };\n}\n\n/**\n *\n * @param monthlyRate\n * @returns {{monthlyRate: *, type: *}}\n */\nexport function calculateNewMonthlyRate(monthlyRate) {\n return {\n type: OFFER_MONTHLY_RATE_CALCULATED,\n monthlyRate,\n };\n}\n\n/**\n *\n * @returns {{fees: *}}\n */\nexport function resetFees() {\n return {\n type: FEES_RESET\n };\n}\n\n/**\n *\n * @param fees\n * @returns {{fees: *, type: *}}\n */\nexport function updateFees(fees) {\n return {\n type: FEES_UPDATE,\n fees,\n };\n}\n\n/**\n *\n * @param display\n * @returns {{display: *, type: *}}\n */\nexport function displayOffers(display = true) {\n return {\n type: DISPLAY_OFFERS,\n display,\n };\n}\n\n/**\n *\n * @param services\n * @returns {{services: *, type: *}}\n */\nexport function selectServices(services) {\n return {\n type: SERVICE_SELECTED,\n services,\n };\n}\n\n/**\n *\n * @param accessories\n * @returns {{services: *, type: *}}\n */\nexport function selectAccessories(accessories) {\n return {\n type: ACCESSORIES_SELECTED,\n accessories,\n };\n}\n\n/**\n * @param colors\n * @returns {{accessories: *, type: string}}\n */\nexport function selectColors(colors) {\n return {\n type: COLORS_SELECTED,\n colors,\n };\n}\n\n/**\n * @param codes\n * @returns {{codes, type: string}}\n */\nexport function selectAccessoriesCodes(codes) {\n return {\n type: ACCESSORIES_CODES_SELECTED,\n codes,\n };\n}\n\n/**\n * @param codes\n * @returns {{codes, type: string}}\n */\nexport function selectColorCodes(codes) {\n return {\n type: ACCESSORIES_CODES_COLOR_SELECTED,\n codes,\n };\n}\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#QuotationsSearch {\\n margin-bottom: 10px;\\n padding-bottom: 10px;\\n padding-top: 10px; }\\n #QuotationsSearch .form-control {\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1.2vw;\\n line-height: 1em;\\n color: #484848;\\n font-weight: 400;\\n background-color: white;\\n background-clip: padding-box;\\n border: 2px solid #dde2ec;\\n border-radius: 6px; }\\n #QuotationsSearch .todo-sidebar-section-header {\\n margin-bottom: 32px; }\\n @media (max-width: 1024px) {\\n #QuotationsSearch .btn-primary {\\n display: block;\\n width: 100%; }\\n #QuotationsSearch .filter-status-buttons-container {\\n width: 100%; }\\n #QuotationsSearch .filter-status-button {\\n display: block;\\n width: 100%;\\n border-radius: 0 !important;\\n margin: 0; } }\\n\\n@media (max-width: 1024px) {\\n .date-range-picker {\\n height: 60px;\\n width: 100%; }\\n .date-range-picker .ant-calendar-picker-input.ant-input {\\n height: 100%;\\n padding: 4px; }\\n .date-range-picker .ant-calendar-range-picker-input {\\n width: 100%;\\n height: 50%;\\n display: block; }\\n .date-range-picker .ant-calendar-range-picker-separator {\\n display: none; } }\\n\", \"\"]);\n\n// exports\n","import 'antd/lib/style/index.css';\nimport 'antd/lib/alert/style/index.css';\nimport 'antd/lib/avatar/style/index.css';\nimport 'antd/lib/badge/style/index.css';\nimport 'antd/lib/button/style/index.css';\nimport 'antd/lib/card/style/index.css';\nimport 'antd/lib/checkbox/style/index.css';\nimport 'antd/lib/collapse/style/index.css';\nimport 'antd/lib/date-picker/style/index.css';\nimport 'antd/lib/divider/style/index.css';\nimport 'antd/lib/drawer/style/index.css';\nimport 'antd/lib/dropdown/style/index.css';\nimport 'antd/lib/form/style/index.css';\nimport 'antd/lib/grid/style/index.css';\nimport 'antd/lib/icon/style/index.css';\nimport 'antd/lib/input/style/index.css';\nimport 'antd/lib/input-number/style/index.css';\nimport 'antd/lib/list/style/index.css';\nimport 'antd/lib/menu/style/index.css';\nimport 'antd/lib/modal/style/index.css';\nimport 'antd/lib/notification/style/index.css';\nimport 'antd/lib/pagination/style/index.css';\nimport 'antd/lib/progress/style/index.css';\nimport 'antd/lib/radio/style/index.css';\nimport 'antd/lib/rate/style/index.css';\nimport 'antd/lib/result/style/index.css';\nimport 'antd/lib/select/style/index.css';\nimport 'antd/lib/slider/style/index.css';\nimport 'antd/lib/steps/style/index.css';\nimport 'antd/lib/tabs/style/index.css';\nimport 'antd/lib/tag/style/index.css';\nimport 'antd/lib/tooltip/style/index.css';\nimport 'antd/lib/upload/style/index.css';\n","export const SAVE_PROPOSAL = 'ideal/components/Quotation/SAVE_PROPOSAL';\nexport const UPDATE_PROPOSAL = 'ideal/components/Quotation/UPDATE_PROPOSAL';\nexport const SAVE_QUOTATION = 'ideal/components/Quotation/SAVE_QUOTATION';\nexport const SAVE_QUOTATION_SUCCESS = 'ideal/components/Quotation/SAVE_QUOTATION_SUCCESS';\nexport const SAVE_QUOTATION_ERROR = 'ideal/components/Quotation/SAVE_QUOTATION_ERROR';\nexport const SAVE_PROPOSAL_SUCCESS = 'ideal/components/Quotation/SAVE_PROPOSAL_SUCCESS';\nexport const SAVE_PROPOSAL_ERROR = 'ideal/components/Quotation/SAVE_PROPOSAL_ERROR';\nexport const UPDATE_QUOTATION = 'ideal/components/Quotation/UPDATE_QUOTATION';\nexport const SEARCH_CUSTOMER_BY_FISCAL = 'ideal/components/Quotation/SEARCH_CUSTOMER_BY_FISCAL';\nexport const SEARCH_CUSTOMER_BY_VAT = 'ideal/components/Quotation/SEARCH_CUSTOMER_BY_VAT';\nexport const CUSTOMER_RECEIVED = 'ideal/components/Quotation/CUSTOMER_RECEIVED';\nexport const CUSTOMER_FOUND = 'ideal/components/Quotation/CUSTOMER_FOUND';\nexport const UPDATE_CUSTOMER_INPUT = 'ideal/components/Quotation/UPDATE_CUSTOMER_INPUT';\nexport const RESET_CUSTOMER = 'ideal/components/Quotation/RESET_CUSTOMER';\nexport const SET_UPDATED = 'ideal/components/Quotation/SET_UPDATED';\nexport const SET_CONTRACTUAL_CATEGORY_TYPE = 'ideal/components/Quotation/SET_CONTRACTUAL_CATEGORY_TYPE';\nexport const PRINT_QUOTATION = 'ideal/components/quotationSidebar/PRINT_QUOTATION';\nexport const FILE_UPLOADED = 'ideal/components/quotationSidebar/FILE_UPLOADED';\n","import { conformsTo, isFunction, isObject } from 'lodash';\nimport invariant from 'invariant';\n\n/**\n * Validate the shape of redux store\n */\nexport default function checkStore(store) {\n const shape = {\n dispatch: isFunction,\n subscribe: isFunction,\n getState: isFunction,\n replaceReducer: isFunction,\n runSaga: isFunction,\n injectedReducers: isObject,\n injectedSagas: isObject,\n };\n invariant(\n conformsTo(store, shape),\n '(app/utils...) injectors: Expected a valid redux store',\n );\n}\n","/*\n * QuotationsConstants\n */\n\nexport const GET_QUOTATIONS = 'ideal/Quotations/GET_QUOTATIONS';\nexport const SEARCH_QUOTATIONS = 'ideal/Quotations/SEARCH_QUOTATIONS';\nexport const QUOTATIONS_RECEIVED = 'ideal/Quotations/QUOTATIONS_RECEIVED';\n\nexport const LOAD_FILTERS = 'ideal/Quotations/LOAD_FILTERS';\nexport const FILTERS_RECEIVED = 'ideal/Quotations/FILTERS_RECEIVED';\nexport const UPDATE_SORT = 'ideal/Quotations/UPDATE_SORT';\n\nexport const REMOVE_ALL = 'ideal/Quotations/REMOVE_ALL';\nexport const REMOVE_FILTER = 'ideal/Quotations/REMOVE_FILTER';\n\nexport const SET_PAGE_NUMBER = 'ideal/Quotations/SET_PAGE_NUMBER';\n\nexport const DOWNLOAD_QUOTATIONS = 'ideal/Quotations/DOWNLOAD_QUOTATIONS';\n\nexport const SET_LOADING = 'ideal/Quotations/SET_LOADING';\n\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectFilters = state => state.get('catalogFilter', initialState);\n\nconst makeSelectTags = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('tags').toArray(),\n );\n\nconst makeSelectFiltersOption = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedTags').toArray(),\n );\n\nconst makeSelectSelectedTags = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedTags').toArray(),\n );\n\nconst makeSelectSort = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('sorts').toArray(),\n );\n\nconst makeSelectSelectedSort = () =>\n createSelector(selectFilters, selectedState =>\n selectedState.get('selectedSort'),\n );\n\nexport {\n selectFilters,\n makeSelectTags,\n makeSelectSelectedTags,\n makeSelectFiltersOption,\n makeSelectSort,\n makeSelectSelectedSort,\n};\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#ProgressWidget {\\n margin: 2rem 0px; }\\n\\n#TableWidgetQuotations .el-tablo.project-box {\\n text-decoration: none; }\\n #TableWidgetQuotations .el-tablo.project-box:hover {\\n color: #047bf8; }\\n\\n#TableWidgetQuotations .el-tablo .value {\\n font-size: 0.9rem; }\\n\\n#TableWidgetQuotations .quotation-agent-business-name {\\n font-size: 0.75rem;\\n text-transform: none; }\\n\", \"\"]);\n\n// exports\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectOfferValue = state => state.get('offerValue', initialState);\n\nconst makeSelectMonthlyRate = () =>\n createSelector(selectOfferValue, offerValueState =>\n parseInt(offerValueState.get('monthlyRate')),\n );\n\nconst makeSelectDeposit = () =>\n createSelector(selectOfferValue, offerValueState =>\n parseInt(offerValueState.get('deposit')),\n );\n\nconst makeSelectRightLabel = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('rightLabel'),\n );\n\nconst makeSelectFastDelivery = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('fastDelivery'),\n );\n\nconst makeSelectDeliveryTime = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('deliveryTime'),\n );\n\nconst makeSelectDeliveryTimes = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('deliveryTimes'),\n );\n\nconst makeSelectBroker = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('broker'),\n );\n\nconst makeSelectBrokers = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('brokers'),\n );\n\nconst makeSelectProduct = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('product'),\n );\n\nconst makeSelectProducts = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('products'),\n );\n\nconst makeSelectNotes = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('notes'),\n );\n\nconst makeSelectPrivateNotes = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('private_notes'),\n );\n\nconst makeSelectDuration = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('duration'),\n );\n\nconst makeSelectDistance = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('distance'),\n );\n\nconst makeSelectReference = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('reference_code'),\n );\n\nconst makeSelectHasError = () =>\n createSelector(selectOfferValue, offerValueState =>\n offerValueState.get('hasError'),\n );\n\nconst makeIsOfferValueComplete = () =>\n createSelector(selectOfferValue, offerValueState => {\n return offerValueState.get('monthlyRate') > 0\n && offerValueState.get('deposit') !== null\n && offerValueState.get('broker') !== null\n && offerValueState.get('product') !== null\n && !isNaN(offerValueState.get('deposit'))\n && offerValueState.get('deposit') >= 0\n && offerValueState.get('duration') > 0\n && offerValueState.get('distance') > 0\n });\n\nexport {\n selectOfferValue,\n makeSelectMonthlyRate,\n makeSelectDeposit,\n makeSelectDuration,\n makeSelectRightLabel,\n makeSelectDistance,\n makeSelectHasError,\n makeIsOfferValueComplete,\n makeSelectNotes,\n makeSelectPrivateNotes,\n makeSelectReference,\n makeSelectFastDelivery,\n makeSelectDeliveryTime,\n makeSelectDeliveryTimes,\n makeSelectBroker,\n makeSelectBrokers,\n makeSelectProducts,\n makeSelectProduct\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction Check (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"fill\":\"#434c56\",\"d\":\"M31.967 6.993l-15.96 15.961-7.974-7.974-5 5 12.891 13.027 21.043-21.014-5-5z\"}));\n}\n\nCheck.defaultProps = {\"viewBox\":\"0 0 40 40\",\"className\":\"version-optionals__item__icon version-optionals__item__icon--standard icon color--grey-700\"};\n\nmodule.exports = Check;\n\nCheck.default = Check;\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nexport const FormattedMessageWithClass = props => (\n \n {(txt) => (\n \n {txt}\n \n )}\n \n);\n","import {\n GET_QUOTATION,\n PRINT_QUOTATION,\n QUOTATION_RECEIVED,\n DISPLAY_QUOTATION_ASSISTANT,\n UPDATE_QUOTATION_STATUS,\n} from './constants';\n\n/**\n *\n * @param code\n * @returns {{code: *, type: *}}\n */\nexport const getQuotation = proposal_id => ({\n type: GET_QUOTATION,\n proposal_id,\n});\n\n/**\n *\n * @param id\n * @returns {{id: *, type: *}}\n */\nexport const printQuotation = id => ({\n type: PRINT_QUOTATION,\n id,\n});\n\n/**\n *\n * @param display\n * @returns {{display: *, type: *}}\n */\nexport const displayAssistant = display => ({\n type: DISPLAY_QUOTATION_ASSISTANT,\n display,\n});\n\n/**\n *\n * @param quotation\n * @returns {{type: *, quotation: *}}\n */\nexport function quotationLoaded(quotation) {\n return {\n type: QUOTATION_RECEIVED,\n quotation,\n };\n}\n\nexport const updateStatus = newStatus => ({\n type: UPDATE_QUOTATION_STATUS,\n newStatus,\n});\n","var map = {\n\t\"./default/style.scss\": [\n\t\t\"8db17ad4e6650750e4f8\",\n\t\t25\n\t],\n\t\"./generali/style.scss\": [\n\t\t\"914309a803a4a8684c3a\",\n\t\t26\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tvar ids = map[req];\n\tif(!ids) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\tvar id = ids[0];\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"d37482342753ac7c2edf\";\nmodule.exports = webpackAsyncContext;","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#Spinner {\\n position: fixed;\\n z-index: 1;\\n top: 0;\\n left: 0;\\n background-color: white;\\n width: 100%;\\n height: 100%; }\\n #Spinner .sub-title {\\n position: absolute;\\n left: 8.5em;\\n top: 3.1em;\\n font-size: 24px;\\n line-height: 28px;\\n font-weight: 600;\\n color: #404950; }\\n @media (max-width: 576px) {\\n #Spinner .sub-title {\\n left: 1em;\\n top: 9em; } }\\n #Spinner .content {\\n display: inline-block;\\n position: absolute;\\n left: 7.4em;\\n top: 10em;\\n font-size: 18px;\\n line-height: 28px;\\n font-weight: 400;\\n color: #404950; }\\n @media (max-width: 576px) {\\n #Spinner .content {\\n left: 1em;\\n top: 19em; } }\\n #Spinner .content .spinner-item {\\n padding-top: .4em; }\\n #Spinner .content .spinner-item strong {\\n font-weight: 600; }\\n #Spinner .timer {\\n width: 55px;\\n position: absolute;\\n left: 3.07em;\\n top: 1.74em;\\n font-size: 2.5em;\\n font-weight: 500;\\n color: #047bf8;\\n text-align: center; }\\n @media (max-width: 576px) {\\n #Spinner .timer {\\n width: 90px;\\n left: 2.97em;\\n top: 2.37em;\\n font-size: 3em; } }\\n #Spinner .spin:empty {\\n position: absolute;\\n left: 7.4em;\\n top: 3.6em;\\n width: 4em;\\n height: 4em;\\n border: 0.4em solid rgba(140, 149, 157, 0.2);\\n border-left: 0.4em solid #047bf8;\\n border-radius: 50%;\\n animation: loadSpin 1.1s infinite linear; }\\n @media (max-width: 576px) {\\n #Spinner .spin:empty {\\n width: 6em;\\n height: 6em;\\n border: 0.6em solid rgba(140, 149, 157, 0.2);\\n border-left: 0.6em solid #047bf8;\\n left: 8.7em;\\n top: 5.6em; } }\\n\\n@keyframes loadSpin {\\n 0% {\\n transform: rotate(0deg); }\\n 100% {\\n transform: rotate(360deg); } }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".item-box {\\n border: 1px solid #EBEBEB;\\n border-radius: 6px;\\n padding: 24px;\\n margin-left: 6px;\\n margin-right: 6px;\\n height: 100% !important; }\\n .item-box .box {\\n width: 100% !important; }\\n .item-box.clickable {\\n cursor: pointer; }\\n .item-box .title {\\n margin: 0px;\\n word-wrap: break-word;\\n font-size: 16px;\\n font-weight: 600;\\n line-height: 1.375em;\\n color: #484848;\\n margin-bottom: 3px; }\\n .item-box .description {\\n margin-top: 6px;\\n word-wrap: break-word;\\n font-size: 16px;\\n font-weight: 400;\\n line-height: 1.375em;\\n color: #484848; }\\n .item-box .icon {\\n width: 1.5em;\\n height: 1.5em;\\n margin-bottom: 0;\\n vertical-align: middle;\\n float: left;\\n margin-right: 10px; }\\n .item-box.selected {\\n border: 2px solid #047bf8; }\\n .item-box.selected .select-icon {\\n position: absolute;\\n top: 3px;\\n right: 9px;\\n border: 3px;\\n background: #047bf8;\\n color: white;\\n border-radius: 50%; }\\n\\n.item-box-container .padding-bottom {\\n margin-bottom: 8px;\\n margin-top: 8px; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./car.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./car.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./car.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction Print (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},[React.createElement(\"path\",{\"d\":\"M290.32,78.031h-18.116l-12.892-41.52c-2.743-8.836-10.803-14.773-20.056-14.773H59.635\\n\\t\\tc-9.331,0-17.411,6.002-20.106,14.937l-12.47,41.355H9c-4.971,0-9,4.029-9,9v134.956c0,4.971,4.029,9,9,9h22.568l-6.672,35.952\\n\\t\\tc-0.488,2.629,0.219,5.34,1.929,7.396c1.71,2.056,4.245,3.246,6.92,3.246h231.83c2.675,0,5.21-1.189,6.92-3.246\\n\\t\\tc1.71-2.057,2.417-4.767,1.929-7.396l-6.672-35.952h22.568c4.971,0,9-4.029,9-9V87.031C299.32,82.061,295.291,78.031,290.32,78.031\\n\\t\\tz M56.762,41.873c0.386-1.276,1.54-2.134,2.873-2.134h179.622c1.321,0,2.473,0.848,2.865,2.11l11.235,36.182H45.859L56.762,41.873z\\n\\t\\t M254.751,259.582H44.569l13.381-72.106h183.42L254.751,259.582z M281.32,212.987h-16.909l-6.709-36.154\\n\\t\\tc-0.791-4.265-4.512-7.358-8.849-7.358H50.467c-4.337,0-8.058,3.093-8.849,7.358l-6.709,36.154H18V96.031h15.762\\n\\t\\tc0.038,0,0.076,0,0.114,0h231.635c0.02,0,0.04,0.002,0.061,0.002c0.011,0,0.022-0.002,0.032-0.002h15.716V212.987z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M261.726,111.55h-27.26c-4.971,0-9,4.029-9,9s4.029,9,9,9h27.26c4.971,0,9-4.029,9-9S266.696,111.55,261.726,111.55z\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M215.536,227.779H83.784c-4.971,0-9,4.029-9,9s4.029,9,9,9h131.752c4.971,0,9-4.029,9-9S220.507,227.779,215.536,227.779z\",\"key\":2})]),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nPrint.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 299.32 299.32\",\"style\":{\"enableBackground\":\"new 0 0 299.32 299.32\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = Print;\n\nPrint.default = Print;\n","export const SECTION_TITLE = 'Offerte trovate';\nexport const SECTION_SINGLE_TITLE = 'Offerta trovata';\nexport const SECTION_DESCRIPTION = 'Ordina per: ';\nexport const DOWNLOAD_LIST = 'Scarica in formato .xlsx';\n\n/**\n * Order constants\n * @type {string}\n */\n\nexport const SORTS_RECEIVED = 'ideal/components/HorizontalCatalogFilter/SORTS_RECEIVED';\nexport const UPDATE_SORT = 'ideal/components/HorizontalCatalogFilter/UPDATE_SORT';\n\n/**\n * Available filters constants\n * @type {string}\n */\nexport const TAGS_RECEIVED = 'ideal/components/HorizontalCatalogFilter/TAGS_RECEIVED';\nexport const SHOW_TAG = 'ideal/components/HorizontalCatalogFilter/SHOW_TAG';\nexport const SHOW_ALL = 'ideal/components/HorizontalCatalogFilter/SHOW_ALL';\nexport const HIDE_TAG = 'ideal/components/HorizontalCatalogFilter/HIDE_TAG';\n\n/**\n * Active filters constants\n * @type {string}\n */\nexport const ADD_OPTION = 'ideal/components/HorizontalCatalogFilter/ADD_OPTION';\nexport const REMOVE_OPTION = 'ideal/components/HorizontalCatalogFilter/REMOVE_OPTION';\nexport const REMOVE_ALL = 'ideal/components/HorizontalCatalogFilter/REMOVE_ALL';\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction MoneyMoreIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"path\",{\"d\":\"M475.462,163.15l-279.8-161.5c-3.8-2.2-10.1-2.2-13.9,0l-166.8,96.9c-3.8,2.2-3.8,5.8,0,8.1l279.8,161.5\\n\\t\\tc3.9,2.2,10.1,2.2,13.9,0l166.8-96.9C479.363,168.95,479.363,165.35,475.462,163.15z M329.663,230.85c-1.5-1.5-3.4-2.9-5.6-4.1\\n\\t\\tc-14.2-8.2-37.2-8.2-51.4,0c-1.1,0.6-2,1.3-2.9,2l-188.5-108.9c1.8-0.7,3.5-1.5,5.2-2.5c14.1-8.2,14.1-21.5-0.2-29.8\\n\\t\\tc-1.6-0.9-3.2-1.7-5-2.4l77.7-45.2c1.2,1,2.5,2,4.1,2.9c14.2,8.2,37.2,8.2,51.4,0c1.6-0.9,3-1.9,4.2-3l189.1,109.2\\n\\t\\tc-2.5,0.9-4.9,1.9-7,3.2c-14.1,8.2-14.1,21.5,0.2,29.8c2.2,1.3,4.6,2.3,7.2,3.2L329.663,230.85z M352.462,189.65l-12.3,7.2\\n\\t\\tc-1.9,1.1-5,1.1-6.9,0l-21.6-12.5c-1.9-1.1-1.9-2.9,0-4l12.3-7.2c1.9-1.1,5-1.1,6.9,0l21.6,12.5\\n\\t\\tC354.363,186.75,354.363,188.55,352.462,189.65z M166.563,96.55c-1.9,1.1-5,1.1-6.9,0l-21.6-12.4c-1.9-1.1-1.9-2.9,0-4l12.3-7.2\\n\\t\\tc1.9-1.1,5-1.1,6.9,0l21.6,12.5c1.9,1.1,1.9,2.9,0,4L166.563,96.55z M456.563,212.85l21.8,12.6l-174.8,101.5l-5.7-3.3l-16.1-9.3\\n\\t\\tl-269.8-155.9l21.6-12.6l269.8,155.9L456.563,212.85z M282.063,369.05l-270.1-156.2l21.6-12.5l270.1,156.2l152.6-88.7l21.7,12.5\\n\\t\\tl-174.1,101.2l-5.6-3.3L282.063,369.05z M456.563,321.55l21.8,12.6l-174.8,101.5l-5.7-3.3l-16.1-9.3l-269.8-155.8l21.6-12.6\\n\\t\\tl269.8,155.9L456.563,321.55z M456.263,376.55l21.7,12.5l-174.1,101.3l-5.6-3.3l-16.1-9.3l-270.2-156.2l21.6-12.5l270.1,156.2\\n\\t\\tL456.263,376.55z M300.462,102.65c-30.8-17.8-80.6-17.8-111.3,0c-30.6,17.8-30.4,46.6,0.4,64.4s80.6,17.8,111.2,0\\n\\t\\tC331.363,149.35,331.263,120.45,300.462,102.65z M291.063,115.75l-7.8,4.5c3.6,3.2,5.3,6.5,4.8,9.9c-0.4,3.3-2.7,6.4-7,9.2\\n\\t\\tc-1.1,0.7-3,0.7-4.1,0l-10.6-5.9c-1-0.6-1.2-1.6-0.3-2.2c2.1-1.4,3.2-2.8,3.5-4.1c0.3-1.6-0.5-3-2.6-4.2s-4.2-1.7-6.5-1.5\\n\\t\\tc-2.2,0.2-4.4,0.8-6.3,2c-2,1.2-3.1,2.4-3.2,3.7c-0.2,1.3,0.5,3.2,2.2,5.6c3.9,5.5,6,10.1,6.3,13.6s-2.2,6.8-7.5,9.8\\n\\t\\tc-5,2.9-10.6,4.4-16.9,4.3c-5.3,0-10.5-1.1-15.6-3.1l-7.3,4.3c-1,0.6-2.5,0.5-3.5,0l-6.3-3.7c-1-0.6-1-1.5,0-2l7.1-4.1\\n\\t\\tc-4.7-3.5-7.3-7.2-7.6-11.1c-0.4-3.7,2.1-7.2,7.3-10.5c1.1-0.7,3-0.7,4.1,0l10.6,5.9c1,0.6,1.2,1.6,0.3,2.2\\n\\t\\tc-2.4,1.7-3.6,3.2-3.6,4.7c0,1.8,1.2,3.5,3.7,4.9c2.1,1.2,4.3,1.8,6.6,1.7s4.5-0.7,6.4-1.8c2.3-1.3,3.5-2.7,3.6-4\\n\\t\\tc0.2-1.4-0.6-3.2-2.2-5.5c-4.2-5.5-6.4-10-6.7-13.4c-0.4-3.4,2.2-6.7,7.6-9.9c4.9-2.8,10.6-4.2,17-4.1c5.9,0.1,11.6,1.3,17.1,3.7\\n\\t\\tl7.6-4.4c1-0.6,2.6-0.6,3.5,0l6.3,3.7C292.063,114.35,292.063,115.25,291.063,115.75z\"})),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nMoneyMoreIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 490.35 490.35\",\"style\":{\"enableBackground\":\"new 0 0 490.35 490.35\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = MoneyMoreIcon;\n\nMoneyMoreIcon.default = MoneyMoreIcon;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".menu-active {\\n background-color: #007BFF; }\\n\\n.menu-mobile.color-scheme-dark {\\n background-image: linear-gradient(to bottom, #1b55e2 100%, #1b55e2 100%);\\n background-repeat: repeat-x;\\n background-color: #007bff; }\\n\\n.menu-description {\\n font-size: 12px !important;\\n color: white; }\\n\\n.menu-w.color-style-bright {\\n background-image: linear-gradient(to bottom, #1b55e2 100%, #1b55e2 100%); }\\n\\n@media (max-width: 1024px) {\\n .menu-w {\\n display: flex !important; }\\n .menu-w.color-scheme-dark.color-style-bright ul.main-menu .icon-w {\\n color: #babed0 !important;\\n padding: 10px 5px !important; } }\\n\", \"\"]);\n\n// exports\n","import invariant from 'invariant';\nimport { isEmpty, isFunction, isString } from 'lodash';\n\nimport checkStore from './checkStore';\nimport createReducer from '../reducers';\n\nexport function injectReducerFactory(store, isValid) {\n return function injectReducer(key, reducer) {\n if (!isValid) checkStore(store);\n\n invariant(\n isString(key) && !isEmpty(key) && isFunction(reducer),\n '(app/utils...) injectReducer: Expected `reducer` to be a reducer function',\n );\n\n // Check `store.injectedReducers[key] === reducer` for hot reloading when a key is the same but a reducer is different\n if (\n Reflect.has(store.injectedReducers, key) &&\n store.injectedReducers[key] === reducer\n )\n return;\n\n store.injectedReducers[key] = reducer; // eslint-disable-line no-param-reassign\n store.replaceReducer(createReducer(store.injectedReducers));\n };\n}\n\nexport default function getInjectors(store) {\n checkStore(store);\n\n return {\n injectReducer: injectReducerFactory(store, true),\n };\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nimport getInjectors from './reducerInjectors';\n\n/**\n * Dynamically injects a reducer\n *\n * @param {string} key A key of the reducer\n * @param {function} reducer A reducer that will be injected\n *\n */\nexport default ({ key, reducer }) => WrappedComponent => {\n class ReducerInjector extends React.Component {\n static WrappedComponent = WrappedComponent;\n\n static contextTypes = {\n store: PropTypes.object.isRequired,\n };\n\n static displayName = `withReducer(${WrappedComponent.displayName ||\n WrappedComponent.name ||\n 'Component'})`;\n\n componentWillMount() {\n const { injectReducer } = this.injectors;\n\n injectReducer(key, reducer);\n }\n\n injectors = getInjectors(this.context.store);\n\n render() {\n return ;\n }\n }\n\n return hoistNonReactStatics(ReducerInjector, WrappedComponent);\n};\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","/*\n * ProfileConstants\n */\n\nexport const GET_AGENT_MEMBERS = 'ideal/Profile/GET_AGENT_MEMBERS';\nexport const AGENT_MEMBERS_LOADED = 'ideal/Profile/AGENT_MEMBERS_LOADED';\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","var React = require('react');\n\nfunction Arrow (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M2 8l18 17L38 8v7L20 32 2 15z\",\"fill\":\"#434c56\"}));\n}\n\nArrow.defaultProps = {\"viewBox\":\"0 0 40 40\",\"className\":\"icon color--grey-500\"};\n\nmodule.exports = Arrow;\n\nArrow.default = Arrow;\n","/**\n * Search params constants\n * @type {string}\n */\nexport const UPDATE_PARAMS = 'ideal/components/Search/UPDATE_PARAMS';\nexport const REMOVE_PARAM = 'ideal/components/Search/REMOVE_PARAM';\nexport const RESET_PARAMS = 'ideal/components/Search/RESET_PARAMS';\n\nexport const FILTERS_RECEIVED =\n 'ideal/components/Search/FILTERS_RECEIVED';\nexport const GET_FILTERS = 'ideal/components/Search/GET_FILTERS';\nexport const SET_LOADING = 'ideal/components/Search/SET_LOADING';\nexport const UNSET_LOADING = 'ideal/components/Search/UNSET_LOADING';\n\nexport const FILTERS_ALLOWED = [\n 'brands',\n 'brokers',\n 'catalogo',\n 'categories',\n 'delivery_time',\n 'fast_delivery',\n 'deposit',\n 'distance',\n 'duration',\n 'fuels',\n 'gear',\n 'monthly_rate',\n 'noviceDriver',\n 'piva',\n 'privati',\n 'products',\n 'stocks',\n 'areas',\n]\n\nexport const FILTERS_LABELS = {\n 'brands': 'Marca',\n 'brokers': 'Provider',\n 'catalogo': 'Offerte catalogo',\n 'categories': 'Categoria',\n 'delivery_time': 'Tempi di consegna',\n 'fast_delivery': 'Consegna veloce',\n 'deposit': 'Anticipo',\n 'distance': 'Km/anno',\n 'duration': 'Durata',\n 'fuels': 'Alimentazione',\n 'gear': 'Cambio',\n 'kwh': 'Capacità batteria',\n 'monthly_rate': 'Rata',\n 'noviceDriver': 'Solo per neopatentati',\n 'piva': 'P.IVA',\n 'privati': 'Privati',\n 'products': 'Prodotti',\n 'stocks': 'Disponibilità',\n 'areas': 'Area',\n}\n\nexport const FILTERS_LABELS_SHORT = {\n 'delivery_time': 'Consegna',\n}\n\nexport const FILTERS_AS_TAG = [\n 'piva',\n 'privati',\n 'noviceDriver',\n 'catalogo',\n 'fast_delivery',\n]\n","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectPaginator = state => state.get('paginator', initialState);\n\nconst makeSelectCurrentPage = () =>\n createSelector(selectPaginator, selectedState => selectedState.get('currentPage'));\n\nconst makeSelectItemsPerPage = () =>\n createSelector(selectPaginator, selectedState =>\n selectedState.get('itemsPerPage'),\n );\n\nconst makeSelectPaginator = () =>\n createSelector(selectPaginator, selectedState => ({\n total: selectedState.get('total'),\n lastPage: selectedState.get('lastPage'),\n itemsPerPage: selectedState.get('itemsPerPage'),\n currentPage: selectedState.get('currentPage'),\n }));\n\n\n\nexport {\n selectPaginator,\n makeSelectCurrentPage,\n makeSelectItemsPerPage,\n makeSelectPaginator,\n};\n","var React = require('react');\n\nfunction SizesIcon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"g\",{\"key\":0},React.createElement(\"g\",null,[React.createElement(\"polygon\",{\"points\":\"13.36,7.623 62.939,7.623 62.939,10.836 67.347,10.836 67.347,0 62.939,0 62.939,3.215 13.36,3.215 13.36,0 \\n\\t\\t\\t8.949,0 8.949,10.836 13.36,10.836 \\t\\t\",\"key\":0}),React.createElement(\"polygon\",{\"points\":\"85.157,21.524 85.157,17.115 74.319,17.115 74.319,21.524 77.534,21.524 77.534,89.441 74.319,89.441 \\n\\t\\t\\t74.319,93.85 85.157,93.85 85.157,89.441 81.943,89.441 81.943,21.524 \\t\\t\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M8.693,93.85h58.912V17.115H8.693V93.85z M13.47,21.893h49.358v67.182H13.47V21.893z\",\"key\":2})])),React.createElement(\"g\",{\"key\":1}),React.createElement(\"g\",{\"key\":2}),React.createElement(\"g\",{\"key\":3}),React.createElement(\"g\",{\"key\":4}),React.createElement(\"g\",{\"key\":5}),React.createElement(\"g\",{\"key\":6}),React.createElement(\"g\",{\"key\":7}),React.createElement(\"g\",{\"key\":8}),React.createElement(\"g\",{\"key\":9}),React.createElement(\"g\",{\"key\":10}),React.createElement(\"g\",{\"key\":11}),React.createElement(\"g\",{\"key\":12}),React.createElement(\"g\",{\"key\":13}),React.createElement(\"g\",{\"key\":14}),React.createElement(\"g\",{\"key\":15})]);\n}\n\nSizesIcon.defaultProps = {\"version\":\"1.1\",\"id\":\"Capa_1\",\"x\":\"0px\",\"y\":\"0px\",\"width\":\"93.849px\",\"height\":\"93.85px\",\"viewBox\":\"0 0 93.849 93.85\",\"style\":{\"enableBackground\":\"new 0 0 93.849 93.85\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = SizesIcon;\n\nSizesIcon.default = SizesIcon;\n","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ClickableItemWithSelect {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n min-height: 5rem;\\n padding: .70588rem .88235rem;\\n text-align: center;\\n box-sizing: border-box;\\n border-spacing: 0;\\n overflow: hidden;\\n flex-direction: column;\\n border: 1px solid #e4e4e4;\\n border-radius: 4px !important;\\n cursor: pointer;\\n color: #404950;\\n font-size: 16px;\\n line-height: 18px;\\n letter-spacing: .007em; }\\n .ClickableItemWithSelect.active {\\n border: 2px solid #047bf8 !important; }\\n .ClickableItemWithSelect:hover {\\n border-color: #047bf8 !important; }\\n .ClickableItemWithSelect .title {\\n display: inline-block;\\n margin-left: .4rem;\\n font-weight: 800;\\n padding: 0.4rem !important;\\n border: unset !important; }\\n .ClickableItemWithSelect .title small {\\n font-size: 12px;\\n line-height: 11px;\\n font-weight: 400; }\\n .ClickableItemWithSelect .description {\\n display: inline-block;\\n margin-left: .4rem;\\n font-size: 12px;\\n line-height: 12px; }\\n .ClickableItemWithSelect .offer-service-description-tooltip {\\n position: absolute;\\n top: 4px;\\n right: 5px; }\\n\", \"\"]);\n\n// exports\n","import {fromJS} from 'immutable';\nimport {\n SAVE_QUOTATION,\n SAVE_PROPOSAL,\n UPDATE_PROPOSAL,\n SAVE_QUOTATION_SUCCESS,\n SAVE_QUOTATION_ERROR,\n SAVE_PROPOSAL_SUCCESS,\n SAVE_PROPOSAL_ERROR,\n UPDATE_QUOTATION,\n SEARCH_CUSTOMER_BY_FISCAL,\n SEARCH_CUSTOMER_BY_VAT,\n CUSTOMER_RECEIVED,\n CUSTOMER_FOUND,\n UPDATE_CUSTOMER_INPUT,\n RESET_CUSTOMER,\n SET_UPDATED,\n SET_CONTRACTUAL_CATEGORY_TYPE,\n FILE_UPLOADED,\n} from './constants';\nimport {\n QUOTATION_RECEIVED,\n} from 'containers/Quotation/constants';\n\nexport const initialState = fromJS({\n loading: false,\n quotation: {},\n attachments: {},\n search: false,\n customerCode: '',\n customerVat: '',\n contractualCategory: null,\n contractualCategoryType: null,\n customer: {},\n customerUpdatedInput: {},\n errors: {},\n hasErrors: false,\n updated: false\n});\n\nfunction quotationReducer(state = initialState, action) {\n switch (action.type) {\n case SAVE_PROPOSAL:\n return state.set('quotation', action.proposal).set('loading', true);\n case UPDATE_PROPOSAL:\n return state.set('quotation', action.proposal).set('loading', true);\n // case SAVE_QUOTATION:\n // return state.set('quotation', action.quotation).set('loading', true);\n case UPDATE_QUOTATION:\n return state\n .set('quotation', action.quotation)\n .set('customer', action.customer)\n .set('loading', true);\n case SAVE_PROPOSAL_SUCCESS:\n case SAVE_QUOTATION_SUCCESS:\n return state\n .set('quotation', action.quotation)\n .set('customerUpdatedInput', {})\n .set('errors', {})\n .set('hasErrors', false)\n .set('loading', false);\n case SAVE_PROPOSAL_ERROR:\n case SAVE_QUOTATION_ERROR:\n return state\n .set('errors', action.errors)\n .set('hasErrors', true)\n .set('loading', false);\n case SET_UPDATED:\n return state.set('updated', action.value);\n case SET_CONTRACTUAL_CATEGORY_TYPE:\n return state.set('contractualCategoryType', action.contractualCategoryType);\n case SEARCH_CUSTOMER_BY_FISCAL:\n return state\n .set('customer', action.customer)\n .set('customerUpdatedInput', {})\n .set('customerCode', action.fiscalCode)\n .set('customerVat', '')\n .set('contractualCategory', action.contractualCategory)\n .set('search', true)\n .set('loading', true);\n case SEARCH_CUSTOMER_BY_VAT:\n return state\n .set('customer', action.customer)\n .set('customerUpdatedInput', {})\n .set('customerVat', action.vatNumber)\n .set('customerCode', '')\n .set('contractualCategory', action.contractualCategory)\n .set('search', true)\n .set('loading', true);\n case CUSTOMER_FOUND:\n return state.set('customerFound', action.found).set('customerUpdatedInput', {});\n case CUSTOMER_RECEIVED:\n return state.set('customer', action.customer).set('customerUpdatedInput', {}).set('search', false).set('loading', false);\n case RESET_CUSTOMER:\n return state.set('customer', {}).set('customerUpdatedInput', {});\n case UPDATE_CUSTOMER_INPUT:\n return state.set('customerUpdatedInput', {...state.get('customerUpdatedInput'), [action.field]: action.value});\n case QUOTATION_RECEIVED:\n return state.set('customerUpdatedInput', {});\n case FILE_UPLOADED:\n const {data: fileData} = action;\n let quotationAttachments = state.get('attachments').toJS ? state.get('attachments').toJS() : state.get('attachments');\n\n if (!quotationAttachments.hasOwnProperty(fileData.group)) {\n quotationAttachments[fileData.group] = [];\n }\n\n quotationAttachments[fileData.group].push(fileData.filename);\n return state.set('attachments', quotationAttachments);\n default:\n return state;\n }\n}\n\nexport default quotationReducer;\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".footer {\\n display: none;\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n height: 50px;\\n margin-bottom: 20px; }\\n .footer > p > img {\\n width: 60px; }\\n\", \"\"]);\n\n// exports\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".logo > img {\\n height: 30px !important; }\\n .logo > img + img {\\n margin-left: 20px; }\\n\\n.top-bar.color-scheme-bright {\\n background-color: #007bff; }\\n\\n.logged-user-role,\\n.logged-user-name {\\n color: white !important; }\\n\\n.logged-user-role {\\n text-transform: uppercase !important; }\\n\\n.top-bar .logged-user-w .logged-user-menu {\\n top: -3px; }\\n\\n.top-bar .logged-user-w .logged-user-i {\\n display: unset !important; }\\n\\n.logged-user-info-w {\\n margin-top: -1.3rem;\\n padding-right: 1.4rem; }\\n\\n.top-bar .logo-w {\\n padding: 0px; }\\n .top-bar .logo-w .logo {\\n width: 100%;\\n padding: 10px 20px; }\\n\\n@media (max-width: 1024px) and (min-width: 768px) {\\n .top-bar .logo-w {\\n display: unset !important; } }\\n\\n.anticon svg {\\n vertical-align: initial; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".from-button {\\n font-size: 1.2vw;\\n font-weight: 600;\\n line-height: .6em;\\n color: white;\\n width: 12em;\\n border-radius: .5rem;\\n text-align: center;\\n padding: .8rem;\\n margin-right: .5em; }\\n .from-button.submit {\\n opacity: .8;\\n background-color: #ff4a50;\\n border: 1px solid #f2f5fe; }\\n .from-button.submit:hover {\\n opacity: 1; }\\n .from-button.submit:disabled {\\n opacity: .5; }\\n .from-button.cancel {\\n border: 2px solid #dde2ec;\\n color: #484848; }\\n .from-button.cancel:hover {\\n background: #dde2ec; }\\n\", \"\"]);\n\n// exports\n","/*\n* SelectReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport { UPDATE_OPTION, UPDATE_MODAL_OPTION } from './constants';\n\n// The initial state of the App\nexport const initialState = fromJS({\n option: 'today',\n modalOption: 'today',\n});\n\nfunction selectReducer(state = initialState, action) {\n switch (action.type) {\n case UPDATE_OPTION:\n return state.set('option', action.option);\n case UPDATE_MODAL_OPTION:\n return state.set('modalOption', action.option);\n default:\n return state;\n }\n}\n\nexport default selectReducer;\n","/*\n* CarSelectorReducer\n*/\n\nimport { fromJS } from 'immutable';\nimport {\n GET_BRANDS,\n MODELS_RECEIVED,\n BRANDS_ERROR,\n BRANDS_RECEIVED,\n MODELS_ERROR,\n BRAND_SELECTED,\n VERSIONS_RECEIVED,\n VERSIONS_ERROR,\n MODEL_SELECTED,\n VERSION_SELECTED,\n CAR_ERROR,\n CAR_RECEIVED,\n CAR_IMAGES_ERROR,\n GET_CAR_IMAGES,\n CAR_IMAGES_RECEIVED,\n CAR_IMAGES_NEW,\n RESET,\n} from './constants';\nimport {\n UPLOAD_REQUEST,\n UPLOAD_SUCCESS,\n UPLOAD_FAILURE,\n SET_MAIN,\n SET_MAIN_SUCCESS,\n DELETE_SUCCESS,\n DELETE_ALL_SUCCESS,\n DOWNLOAD_CAR_IMAGES_REQUEST,\n DOWNLOAD_CAR_IMAGES_SUCCESS,\n} from '../CarImages/constants'\n\nexport const initialState = fromJS({\n brands: [],\n models: [],\n versions: [],\n car: fromJS({}),\n images: {\n default: [],\n custom: [],\n },\n selectedBrand: null,\n selectedModel: null,\n selectedModelName: \"\",\n selectedModelYear: \"\",\n selectedVersion: null,\n error: null,\n loading: false,\n downloadLoading: false,\n});\n\nfunction carSelectorReducer(state = initialState, action) {\n switch (action.type) {\n case GET_BRANDS:\n case GET_CAR_IMAGES:\n case UPLOAD_REQUEST:\n case SET_MAIN:\n return state.set('loading', true);\n case DOWNLOAD_CAR_IMAGES_REQUEST:\n return state.set('downloadLoading', true);\n case BRAND_SELECTED:\n return state\n .set('selectedBrand', action.selectedBrand)\n .set('models', [])\n .set('selectedModel', null)\n .set('selectedModelName', \"\")\n .set('selectedVersion', null)\n .set('versions', [])\n .set('loading', true);\n case MODEL_SELECTED:\n return state\n .set('selectedModel', action.selectedModel)\n .set('selectedModelName', action.selectedModelName)\n .set('selectedModelYear', action.selectedModelYear)\n .set('selectedVersion', null)\n .set('versions', [])\n .set('loading', true);\n case VERSION_SELECTED:\n return state.set('selectedVersion', action.selectedVersion);\n // Responses\n case CAR_IMAGES_RECEIVED:\n const receivedImages = action.images;\n let currentStateImages = state.get('images');\n if (currentStateImages.hasOwnProperty('__altered')) {\n currentStateImages = currentStateImages.toJS();\n }\n\n let imagesToSet = {\n default: currentStateImages.default,\n custom: currentStateImages.custom\n }\n\n if (typeof receivedImages.custom !== 'undefined' && receivedImages.custom.length >= 0) {\n imagesToSet.custom = receivedImages.custom;\n }\n if (typeof receivedImages.default !== 'undefined' && receivedImages.default.length >= 0) {\n imagesToSet.default = receivedImages.default;\n }\n\n return state.set('images', imagesToSet);\n case CAR_IMAGES_NEW:\n const images = state.get('images');\n return state.set('images', {default: images.default, custom: [...images.custom, ...action.images]});\n case DELETE_SUCCESS:\n let currentImages = state.get('images');\n const newCustomImages = currentImages.custom.filter(image => image.id !== action.imageId);\n return state.set('images', {default: currentImages.default, custom: [...newCustomImages]});\n case DELETE_ALL_SUCCESS:\n return state.set('images', {default: state.get('images').default, custom: []});\n case MODELS_RECEIVED:\n return state\n .set('models', action.models)\n .set('loading', false)\n .set('error', null);\n case BRANDS_RECEIVED:\n return state\n .set('brands', action.brands)\n .set('loading', false)\n .set('error', null);\n case VERSIONS_RECEIVED:\n return state\n .set('versions', action.versions)\n .set('loading', false)\n .set('error', null);\n case CAR_RECEIVED:\n return state\n .set('car', fromJS(action.car))\n .set('loading', false)\n .set('error', null);\n // Errors\n case BRANDS_ERROR:\n return state\n .set('brands', [])\n .set('loading', false)\n .set('error', action.error);\n case MODELS_ERROR:\n return state\n .set('models', [])\n .set('loading', false)\n .set('error', action.error);\n case VERSIONS_ERROR:\n return state\n .set('versions', [])\n .set('loading', false)\n .set('error', action.error);\n case CAR_ERROR:\n return state\n .set('car', null)\n .set('loading', false)\n .set('error', action.error);\n case CAR_IMAGES_ERROR:\n return state\n .set('images', [])\n .set('loading', false)\n .set('error', action.error);\n case UPLOAD_SUCCESS:\n case UPLOAD_FAILURE:\n case SET_MAIN_SUCCESS:\n return state.set('loading', false);\n case DOWNLOAD_CAR_IMAGES_SUCCESS:\n return state.set('downloadLoading', false);\n case RESET:\n return initialState;\n default:\n return state;\n }\n}\n\nexport default carSelectorReducer;\n","import {\n GET_BRANDS,\n MODELS_RECEIVED,\n BRANDS_ERROR,\n BRANDS_RECEIVED,\n MODELS_ERROR,\n BRAND_SELECTED,\n VERSIONS_RECEIVED,\n VERSIONS_ERROR,\n MODEL_SELECTED,\n VERSION_SELECTED,\n CAR_ERROR,\n CAR_RECEIVED,\n GET_CAR_IMAGES,\n CAR_IMAGES_ERROR,\n CAR_IMAGES_RECEIVED,\n CAR_IMAGES_NEW,\n RESET,\n} from './constants';\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getBrands = () => ({\n type: GET_BRANDS,\n});\n\n/**\n *\n * @returns {{type: *}}\n */\nexport const getCarImages = () => ({\n type: GET_CAR_IMAGES,\n});\n\n/**\n *\n * @param brands\n * @returns {{brands: *, type: *}}\n */\nexport function brandsLoaded(brands) {\n return {\n type: BRANDS_RECEIVED,\n brands,\n };\n}\n\n/**\n *\n * @param images\n * @returns {{images: *, type: *}}\n */\nexport function carImagesLoaded(images) {\n return {\n type: CAR_IMAGES_RECEIVED,\n images,\n };\n}\n\n/**\n *\n * @param images\n * @returns {{image: *, type: *}}\n */\nexport function carImagesNew(images) {\n return {\n type: CAR_IMAGES_NEW,\n images,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function brandsError(error) {\n return {\n type: BRANDS_ERROR,\n error,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function carImagesError(error) {\n return {\n type: CAR_IMAGES_ERROR,\n error,\n };\n}\n\n/**\n *\n * @param selectedBrand\n * @returns {{selectedBrand: *, type: *}}\n */\nexport function selectBrand(selectedBrand) {\n return {\n type: BRAND_SELECTED,\n selectedBrand,\n };\n}\n\n/**\n *\n * @param models\n * @returns {{models: *, type: *}}\n */\nexport function modelsLoaded(models) {\n return {\n type: MODELS_RECEIVED,\n models,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function modelsError(error) {\n return {\n type: MODELS_ERROR,\n error,\n };\n}\n\n/**\n *\n * @param selectedModel\n * @param selectedModelName\n * @param selectedModelYear\n * @returns {{selectedModelName: *, type: *, selectedModel: *}}\n */\nexport function selectModel(selectedModel, selectedModelName, selectedModelYear) {\n return {\n type: MODEL_SELECTED,\n selectedModel,\n selectedModelName,\n selectedModelYear\n };\n}\n\n/**\n *\n * @param versions\n * @returns {{versions: *, type: *}}\n */\nexport function versionsLoaded(versions) {\n return {\n type: VERSIONS_RECEIVED,\n versions,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function versionsError(error) {\n return {\n type: VERSIONS_ERROR,\n error,\n };\n}\n\n/**\n *\n * @param selectedVersion\n * @returns {{selectedVersion: *, type: *}}\n */\nexport function selectVersion(selectedVersion) {\n return {\n type: VERSION_SELECTED,\n selectedVersion,\n };\n}\n\n/**\n *\n * @param car\n * @returns {{car: *, type: *}}\n */\nexport function carLoaded(car) {\n return {\n type: CAR_RECEIVED,\n car,\n };\n}\n\n/**\n *\n * @param error\n * @returns {{type: *, error: *}}\n */\nexport function carError(error) {\n return {\n type: CAR_ERROR,\n error,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport function resetStore() {\n return {\n type: RESET,\n };\n}\n","\nvar content = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#QuotationInitializer {\\n color: #484848;\\n line-height: 1.2;\\n padding: 0.5rem;\\n padding-top: unset; }\\n #QuotationInitializer button {\\n background-color: #2ec58d;\\n border-color: #2ec58d;\\n color: white; }\\n #QuotationInitializer button:hover {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n #QuotationInitializer .quotation-steps-content .ant-alert-closable {\\n margin-bottom: 24px; }\\n #QuotationInitializer .quotation-steps-content .ant-alert-closable .ant-alert-close-icon {\\n line-height: inherit; }\\n\\n@media (max-width: 1024px) {\\n #QuotationInitializer {\\n width: 100%; }\\n #QuotationInitializer button {\\n width: 100%;\\n padding: 0;\\n font-size: 1.3vw; }\\n #QuotationInitializer button span {\\n margin: 0 auto; } }\\n\\ninput[name=fiscal_code] {\\n text-transform: uppercase; }\\n input[name=fiscal_code]::-webkit-input-placeholder {\\n text-transform: none; }\\n input[name=fiscal_code]:-moz-placeholder {\\n text-transform: none; }\\n input[name=fiscal_code]::-moz-placeholder {\\n text-transform: none; }\\n input[name=fiscal_code]:-ms-input-placeholder {\\n text-transform: none; }\\n input[name=fiscal_code]::placeholder {\\n text-transform: none; }\\n\\n.modal-btn-primary {\\n background-color: #2ec58d;\\n border-color: #2ec58d;\\n color: white;\\n width: 360px;\\n height: 67px;\\n font-size: 24px;\\n font-weight: 700;\\n line-height: 36px;\\n letter-spacing: normal; }\\n\\n.ant-affix {\\n z-index: 1; }\\n\\n.info-icon-span {\\n margin-right: 5px;\\n margin-top: 2px;\\n padding-bottom: 40px;\\n float: left; }\\n\\n#quotation-steps-content {\\n position: relative; }\\n\\n#Loader {\\n position: absolute;\\n z-index: 999;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(255, 255, 255, 0.5);\\n padding-top: 22%; }\\n\\n.ant-btn.btn-primary {\\n min-width: 150px; }\\n .ant-btn.btn-primary[disabled] {\\n color: rgba(0, 0, 0, 0.25);\\n background-color: #f5f5f5;\\n border-color: #d9d9d9; }\\n\\n.ant-btn-link {\\n color: inherit; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#TopBanner {\\n box-shadow: unset;\\n color: #404950;\\n min-width: 100%;\\n font-size: .9rem; }\\n #TopBanner.element-box {\\n margin-bottom: 0 !important;\\n padding: 1rem 1rem;\\n box-shadow: unset;\\n background-color: #f2f5fe !important; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".label.offer {\\n z-index: 2;\\n font-size: 1.2vw;\\n font-weight: 400;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n text-align: center;\\n height: 1.85vw;\\n line-height: 1.5vw;\\n background-color: #f2f5fe;\\n color: #047bf8;\\n padding: 1.2vw .7vw;\\n border-radius: 15px;\\n position: absolute;\\n top: .7rem;\\n left: 2rem; }\\n .label.offer strong {\\n font-weight: 600; }\\n .label.offer.secondary {\\n margin-top: 3vw;\\n background-color: rgba(46, 197, 141, 0.3);\\n color: #104632; }\\n .label.offer.tertiary {\\n right: 2vw;\\n left: unset;\\n color: rgba(0, 0, 0, 0.85);\\n font-weight: 100; }\\n .label.offer.tertiary.right-padded {\\n right: 16vw; }\\n\", \"\"]);\n\n// exports\n","import {\n STORE_CHILD_OFFER,\n ADD_CHILD_OFFER,\n REPLACE_CHILD_OFFER,\n DELETE_CHILD_OFFER,\n REMOVE_CHILD_OFFER,\n VALIDATE_USER_INPUT,\n SET_ERROR_MESSAGE,\n SET_CHILD_OFFERS,\n RESET,\n RESET_ERRORS,\n UPDATE_CHILD_OFFER,\n EDIT_CHILD_OFFER,\n EDIT_CHILD_OFFER_END,\n SET_LOADING,\n} from './constants';\n\n/**\n *\n * @param offer\n * @returns {{type: *, offer: *}}\n */\nexport function storeChildOffer(offer) {\n return {\n type: STORE_CHILD_OFFER,\n offer,\n };\n}\n\n/**\n * @param id\n * @param data\n * @returns {{type: *, id: *, data: *}}\n */\nexport function updateChildOffer(id, data) {\n return {\n type: UPDATE_CHILD_OFFER,\n id,\n data,\n };\n}\n\n/**\n * @param id\n * @returns {{type: *, id: *}}\n */\nexport function setEditMode(id) {\n return {\n type: EDIT_CHILD_OFFER,\n id,\n };\n}\n\n/**\n * @returns {{type: *}}\n */\nexport function unsetEditMode() {\n return {\n type: EDIT_CHILD_OFFER_END,\n };\n}\n\nexport function setLoading(loading) {\n return {\n type: SET_LOADING,\n loading,\n };\n}\n\n/**\n *\n * @param offer\n * @returns {{type: *, offer: *}}\n */\nexport function addChildOffer(offer) {\n return {\n type: ADD_CHILD_OFFER,\n offer,\n };\n}\n\n/**\n *\n * @param offer\n * @returns {{type: *, offer: *}}\n */\nexport function replaceChildOffer(offer) {\n return {\n type: REPLACE_CHILD_OFFER,\n offer,\n };\n}\n\n/**\n *\n * @param id\n * @returns {{type: *, id: *}}\n */\nexport function deleteChildOffer(id) {\n return {\n type: DELETE_CHILD_OFFER,\n id,\n };\n}\n\n/**\n *\n * @param id\n * @returns {{type: *, id: *}}\n */\nexport function removeChildOffer(id) {\n return {\n type: REMOVE_CHILD_OFFER,\n id,\n };\n}\n\n/**\n *\n * @param hasError\n * @returns {{hasError: *, type: *}}\n */\nexport function setHasError(hasError) {\n return {\n type: VALIDATE_USER_INPUT,\n hasError,\n };\n}\n\n/**\n *\n * @param msg\n * @returns {{msg: *, type: *}}\n */\nexport function setErrorMsg(msg) {\n return {\n type: SET_ERROR_MESSAGE,\n msg,\n };\n}\n\n/**\n *\n * @param offers\n * @returns {{offers: *, type: *}}\n */\nexport function setChildOffers(offers) {\n return {\n type: SET_CHILD_OFFERS,\n offers,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport function resetStore() {\n return {\n type: RESET,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport function resetErrors() {\n return {\n type: RESET_ERRORS,\n };\n}\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".save-btn {\\n background-color: #2ec58d;\\n border-color: #2ec58d;\\n color: white !important; }\\n\\n.save-btn:hover, .save-btn:active, .save-btn:focus {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n\\n#OfferChilds input[type=\\\"number\\\"] {\\n padding-right: 40px; }\\n\", \"\"]);\n\n// exports\n","import {\n LOAD_DELIVERY_TIMES,\n LOAD_BROKERS,\n LOAD_PRODUCTS,\n SET_OFFER_DEPOSIT,\n SET_OFFER_DISTANCE,\n SET_OFFER_DURATION,\n SET_OFFER_NOTES,\n SET_OFFER_PRIVATE_NOTES,\n SET_OFFER_REFERENCE,\n SET_OFFER_RIGHT_LABEL,\n SET_OFFER_MONTHLY_RATE,\n SET_OFFER_FAST_DELIVERY,\n SET_OFFER_DELIVERY_TIME,\n SET_OFFER_DELIVERY_TIMES,\n SET_OFFER_BROKER,\n SET_OFFER_BROKERS,\n SET_OFFER_PRODUCT,\n SET_OFFER_PRODUCTS,\n VALIDATE_USER_INPUT,\n SET_ERROR_MESSAGE,\n RESET,\n} from './constants';\n\n/**\n *\n */\nexport function loadDeliveryTimes() {\n return {\n type: LOAD_DELIVERY_TIMES,\n };\n}\n\n/**\n *\n */\nexport function loadBrokers() {\n return {\n type: LOAD_BROKERS,\n };\n}\n\nexport function loadProducts() {\n return {\n type: LOAD_PRODUCTS,\n };\n}\n\n/**\n *\n * @param monthlyRate\n * @returns {{price: *, type: *}}\n */\nexport function setMonthlyRate(monthlyRate) {\n return {\n type: SET_OFFER_MONTHLY_RATE,\n monthlyRate,\n };\n}\n\n/**\n *\n * @param duration\n * @returns {{duration: *, type: *}}\n */\nexport function setDuration(duration) {\n return {\n type: SET_OFFER_DURATION,\n duration,\n };\n}\n\n/**\n *\n * @param key\n * @param label\n */\nexport function setRightLabel(key, label) {\n return {\n type: SET_OFFER_RIGHT_LABEL,\n key,\n label,\n };\n}\n\n/**\n *\n * @param distance\n * @returns {{distance: *, type: *}}\n */\nexport function setDistance(distance) {\n return {\n type: SET_OFFER_DISTANCE,\n distance,\n };\n}\n\n/**\n *\n * @param notes\n * @returns {{notes: *, type: *}}\n */\nexport function setNotes(notes) {\n return {\n type: SET_OFFER_NOTES,\n notes,\n };\n}\n\n/**\n *\n * @param private_notes\n * @returns {{notes: *, type: *}}\n */\nexport function setPrivateNotes(private_notes) {\n return {\n type: SET_OFFER_PRIVATE_NOTES,\n private_notes,\n };\n}\n\n/**\n *\n * @param reference\n * @returns {{reference: *, type: *}}\n */\nexport function setReference(reference) {\n return {\n type: SET_OFFER_REFERENCE,\n reference,\n };\n}\n\n/**\n *\n * @param fastDelivery\n * @returns {{fastDelivery: *, type: *}}\n */\nexport function setFastDelivery(fastDelivery) {\n return {\n type: SET_OFFER_FAST_DELIVERY,\n fastDelivery,\n };\n}\n\n/**\n *\n * @param deliveryTime\n * @returns {{deliveryTime: *, type: *}}\n */\nexport function setDeliveryTime(deliveryTime) {\n return {\n type: SET_OFFER_DELIVERY_TIME,\n deliveryTime,\n };\n}\n\n/**\n *\n * @param deliveryTimes\n * @returns {{deliveryTimes: *, type: *}}\n */\nexport function setDeliveryTimes(deliveryTimes) {\n return {\n type: SET_OFFER_DELIVERY_TIMES,\n deliveryTimes,\n };\n}\n\n/**\n *\n * @param broker\n * @returns {{broker: *, type: *}}\n */\nexport function setBroker(broker) {\n return {\n type: SET_OFFER_BROKER,\n broker,\n };\n}\n\n/**\n *\n * @param brokers\n * @returns {{brokers: *, type: *}}\n */\nexport function setBrokers(brokers) {\n return {\n type: SET_OFFER_BROKERS,\n brokers,\n };\n}\n\n/**\n *\n * @param product\n * @returns {{product: *, type: *}}\n */\nexport function setProduct(product) {\n return {\n type: SET_OFFER_PRODUCT,\n product,\n };\n}\n\n/**\n *\n * @param products\n * @returns {{products: *, type: *}}\n */\nexport function setProducts(products) {\n return {\n type: SET_OFFER_PRODUCTS,\n products,\n };\n}\n\n/**\n *\n * @param deposit\n * @returns {{deposit: *, type: *}}\n */\nexport function setDeposit(deposit) {\n return {\n type: SET_OFFER_DEPOSIT,\n deposit,\n };\n}\n\n/**\n *\n * @param hasError\n * @returns {{hasError: *, type: *}}\n */\nexport function hasError(hasError) {\n return {\n type: VALIDATE_USER_INPUT,\n hasError,\n };\n}\n\n\n/**\n *\n * @param msg\n * @returns {{msg: *, type: *}}\n */\nexport function setErrorMsg(msg) {\n return {\n type: SET_ERROR_MESSAGE,\n msg,\n };\n}\n\n/**\n *\n * @returns {{type: *}}\n */\nexport function resetStore() {\n return {\n type: RESET,\n };\n}\n","import {\n UPDATE_PARAMS,\n RESET_PARAMS,\n GET_FILTERS,\n SET_LOADING,\n UNSET_LOADING,\n FILTERS_RECEIVED,\n REMOVE_PARAM,\n} from './constants';\n\n/**\n *\n * @returns {{type: string}}\n */\nexport function getFilters() {\n return {\n type: GET_FILTERS,\n };\n}\n\n/**\n * @returns {{type: string}}\n */\nexport function setLoading() {\n return {\n type: SET_LOADING,\n };\n}\n\n/**\n * @returns {{type: string}}\n */\nexport function unsetLoading() {\n return {\n type: UNSET_LOADING,\n };\n}\n\n/**\n *\n * @param filters\n * @returns {{type: string, params: *}}\n */\nexport function filtersLoaded(filters) {\n return {\n type: FILTERS_RECEIVED,\n filters,\n };\n}\n\n/**\n *\n * @param param\n * @returns {{type: string, param: {}}}\n */\nexport function updateParam(param) {\n return {\n type: UPDATE_PARAMS,\n param,\n };\n}\n\n/**\n *\n * @returns {{type: string}}\n */\nexport function resetParams() {\n return {\n type: RESET_PARAMS,\n };\n}\n\n/**\n *\n * @param paramName\n * @returns {{paramName: *, type: string}}\n */\nexport function removeParam(paramName) {\n return {\n type: REMOVE_PARAM,\n paramName,\n };\n}\n\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import { createSelector } from 'reselect';\nimport { initialState } from './reducer';\n\nconst selectCarSelector = state => state.get('carSelector', initialState);\n\nconst makeSelectIsLoading = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('loading'),\n );\n\nconst makeSelectDownloadIsLoading = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('downloadLoading'),\n );\n\nconst makeSelectBrands = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('brands'),\n );\n\nconst makeSelectSelectedBrand = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('selectedBrand'),\n );\n\nconst makeSelectSelectedModel = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('selectedModel'),\n );\n\nconst makeSelectSelectedModelName = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('selectedModelName'),\n );\nconst makeSelectSelectedModelYear = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('selectedModelYear'),\n );\n\nconst makeSelectSelectedVersion = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('selectedVersion'),\n );\n\nconst makeSelectModels = () =>\n createSelector(selectCarSelector, carSelectorState => [\n ...carSelectorState.get('models'),\n ]);\n\nconst makeSelectVersions = () =>\n createSelector(selectCarSelector, carSelectorState => [\n ...carSelectorState.get('versions'),\n ]);\n\nconst makeSelectCar = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('car').toJS(),\n );\n\nconst makeSelectCarCode = () =>\n createSelector(\n selectCarSelector,\n carSelectorState => carSelectorState.get('car').toJS().id,\n );\n\nconst makeSelectImages = () =>\n createSelector(selectCarSelector, carSelectorState =>\n carSelectorState.get('images'),\n );\n\nconst makeIsCarSelectorComplete = () =>\n createSelector(selectCarSelector, carSelectorState => {\n return carSelectorState.get('selectedBrand') !== null\n && carSelectorState.get('car').toJS() !== null\n && carSelectorState.get('car').toJS().hasOwnProperty('allestimento') !== false\n });\n\nexport {\n makeSelectIsLoading,\n makeSelectDownloadIsLoading,\n makeSelectBrands,\n makeSelectSelectedBrand,\n makeSelectModels,\n makeSelectSelectedModel,\n makeSelectSelectedModelName,\n makeSelectSelectedModelYear,\n makeSelectVersions,\n makeSelectSelectedVersion,\n makeSelectCar,\n makeSelectCarCode,\n makeSelectImages,\n makeIsCarSelectorComplete,\n};\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js!../../../node_modules/sass-loader/lib/loader.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItem.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItem.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/index.js!../../../../node_modules/sass-loader/lib/loader.js!./carItem.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/*\n * AppConstants\n * Each action has a corresponding type, which the reducer knows and picks up on.\n * To avoid weird typos between the reducer and the actions, we save them as\n * constants here. We prefix them with 'yourproject/YourComponent' so we avoid\n * reducers accidentally picking up actions they shouldn't.\n *\n * Follow this format:\n * export const YOUR_ACTION_CONSTANT = 'yourproject/YourContainer/YOUR_ACTION_CONSTANT'; http://reactdropzone.azurewebsites.net/example/\n */\n\nimport configs from 'configs';\nexport const API_URL = process.env.API_URL;\nexport const PRESCORING_URL = API_URL + configs.prescoringService.url;\nexport const PRESCORING_AUTH = configs.prescoringService.auth;\n\nexport const APP_MAIN_LOGO = configs.mainLogo;\nexport const APP_LOGO_INVERTED = configs.invertedLogo;\n\nexport const SET_LOADING = 'ideal/App/SET_LOADING';\nexport const LOGOUT = 'ideal/App/LOGOUT';\nexport const LOAD_USER = 'ideal/App/LOAD_USER';\nexport const LOAD_USER_SUCCESS = 'ideal/App/LOAD_USER_SUCCESS';\nexport const LOAD_USER_ERROR = 'ideal/App/LOAD_USER_ERROR';\nexport const UPDATE_PROFILE = 'ideal/App/UPDATE_PROFILE';\nexport const PROFILE_UPDATED_ERROR = 'ideal/App/PROFILE_UPDATED_ERROR';\nexport const UPDATE_PASSWORD = 'ideal/App/UPDATE_PASSWORD';\nexport const PASSWORD_UPDATED = 'ideal/App/PASSWORD_UPDATED';\nexport const PASSWORD_UPDATED_ERROR = 'ideal/App/PASSWORD_UPDATED_ERROR';\nexport const REQUEST_API_KEY = 'ideal/App/REQUEST_API_KEY';\nexport const REQUEST_API_KEY_SUCCEED = 'ideal/App/REQUEST_API_KEY_SUCCEED';\nexport const REQUEST_API_KEY_ERROR = 'ideal/App/REQUEST_API_KEY_ERROR';\nexport const TOGGLE_MEMBER = 'ideal/App/TOGGLE_MEMBER';\nexport const TOGGLE_MEMBER_SUCCEED = 'ideal/App/TOGGLE_MEMBER_SUCCEED';\nexport const TOGGLE_MEMBER_ERROR = 'ideal/App/TOGGLE_MEMBER_ERROR';\nexport const ADD_MEMBER = 'ideal/App/ADD_MEMBER';\nexport const ADD_MEMBER_SUCCEED = 'ideal/App/ADD_MEMBER_SUCCEED';\nexport const ADD_MEMBER_ERROR = 'ideal/App/ADD_MEMBER_ERROR';\nexport const UPDATE_MEMBER = 'ideal/App/UPDATE_MEMBER';\nexport const UPDATE_MEMBER_SUCCEED = 'ideal/App/UPDATE_MEMBER_SUCCEED';\nexport const UPDATE_MEMBER_ERROR = 'ideal/App/UPDATE_MEMBER_ERROR';\nexport const UPLOAD_LOGO = 'ideal/App/UPLOAD_LOGO';\nexport const UPLOAD_LOGO_SUCCEED = 'ideal/App/UPLOAD_LOGO_SUCCEED';\nexport const UPLOAD_LOGO_ERROR = 'ideal/App/UPLOAD_LOGO_ERROR';\n\n/**\n *\n * @type {{min: number, max: number}}\n */\nexport const DISTANCE_YEARS_RANGE = {\n min: 1000,\n max: 100000,\n};\n\n/**\n *\n * @type {{min: number, max: number}}\n */\nexport const DURATION_RANGE = {\n min: 12,\n max: 60,\n};\n\n/**\n *\n * @type {{min: number, max: number}}\n */\nexport const DEPOSIT_RANGE = {\n min: 0,\n max: 99999,\n};\n\n/**\n *\n * @type {{min: number, max: number}}\n */\nexport const MONTHLY_RATE_RANGE = {\n min: 10,\n max: 9999,\n};\n\n/**\n *\n * @type {{PARTNER: string, DISTANCE: string, PRICE: string, DEPOSIT: string, DURATION: string}}\n */\nexport const PRICE_BOX_LABELS = {\n DEPOSIT: \"Scegli l'anticipo\",\n DISTANCE: 'Scegli i Km/anno',\n DURATION: 'Scegli la durata',\n PRICE: 'Il canone mensile è %s IVA escl.',\n PARTNER: 'in collaborazione con',\n};\n\nexport const CALL_TO_ACTIONS_LABELS = {\n DASHBOARD_ALERT: \"Scopri l'assistente virtuale\",\n};\n\nexport const SECTIONS_TITLES = {\n DASHBOARD_DOUGHNUT_CHART_TITLE: 'Stato dei preventivi',\n DASHBOARD_NEW: 'Novità',\n DASHBOARD_WIDGET_NEW_QUOTES: 'Nuovi preventivi',\n DASHBOARD_WIDGET_NEW_CUSTOMERS: 'Nuovi clienti',\n DASHBOARD_WIDGET_PROFITS: 'Guadagno potenziale',\n DASHBOARD_WIDGET_EFFECTIVE_PROFITS: 'Guadagno effettivo',\n};\n\nexport const AREA_TITLES = {\n DASHBOARD_TITLE: 'Dashboard',\n};\n\nexport const MESSAGES = {\n DASHBOARD_ALERT:\n 'Prova il nuovo assistente virtuale grazie al quale puoi velocizzare i tempi di gestione della pratica di noleggio.',\n};\n","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".add-button {\\n border-color: #2ec58d;\\n background-color: #2ec58d;\\n color: white !important; }\\n .add-button:hover {\\n background-color: #27a677;\\n border-color: #249c6f; }\\n\", \"\"]);\n\n// exports\n","exports = module.exports = require(\"../../../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".os-toggler-w.on .os-toggler-i {\\n background-color: #dde2ec; }\\n .os-toggler-w.on .os-toggler-i .os-toggler-pill {\\n background-color: #008e57; }\\n\\n.os-toggler-w.off .os-toggler-i {\\n background-color: #dde2ec; }\\n .os-toggler-w.off .os-toggler-i .os-toggler-pill {\\n background-color: #ff4a50; }\\n\", \"\"]);\n\n// exports\n","/*\n * OfferValue Constants\n */\n\nexport const LOAD_DELIVERY_TIMES = 'ideal/OfferValue/LOAD_DELIVERY_TIMES';\nexport const LOAD_BROKERS = 'ideal/OfferValue/LOAD_BROKERS';\nexport const LOAD_PRODUCTS = 'ideal/OfferValue/LOAD_PRODUCTS';\nexport const SET_OFFER_MONTHLY_RATE = 'ideal/OfferValue/SET_OFFER_MONTHLY_RATE';\nexport const SET_OFFER_DEPOSIT = 'ideal/OfferValue/SET_OFFER_DEPOSIT';\nexport const SET_OFFER_DURATION = 'ideal/OfferValue/SET_OFFER_DURATION';\nexport const SET_OFFER_RIGHT_LABEL = 'ideal/OfferValue/SET_OFFER_RIGHT_LABEL';\nexport const SET_OFFER_DISTANCE = 'ideal/OfferValue/SET_OFFER_DISTANCE';\nexport const SET_OFFER_NOTES = 'ideal/OfferValue/SET_OFFER_NOTES';\nexport const SET_OFFER_PRIVATE_NOTES = 'ideal/OfferValue/SET_OFFER_PRIVATE_NOTES';\nexport const SET_OFFER_REFERENCE = 'ideal/OfferValue/SET_OFFER_REFERENCE';\nexport const SET_OFFER_FAST_DELIVERY = 'ideal/OfferValue/SET_OFFER_FAST_DELIVERY';\nexport const SET_OFFER_DELIVERY_TIME = 'ideal/OfferValue/SET_OFFER_DELIVERY_TIME';\nexport const SET_OFFER_DELIVERY_TIMES = 'ideal/OfferValue/SET_OFFER_DELIVERY_TIMES';\nexport const SET_OFFER_BROKERS = 'ideal/OfferValue/SET_OFFER_BROKERS';\nexport const SET_OFFER_BROKER = 'ideal/OfferValue/SET_OFFER_BROKER';\nexport const SET_OFFER_PRODUCTS = 'ideal/OfferValue/SET_OFFER_PRODUCTS';\nexport const SET_OFFER_PRODUCT = 'ideal/OfferValue/SET_OFFER_PRODUCT';\nexport const VALIDATE_USER_INPUT = 'ideal/OfferValue/VALIDATE_USER_INPUT';\nexport const SET_ERROR_MESSAGE = 'ideal/OfferValue/SET_ERROR_MESSAGE';\nexport const RESET = 'ideal/OfferValue/RESET';\n"],"sourceRoot":""}