@bytebrand/fe-ui-core 4.8.26 → 4.8.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1059) hide show
  1. package/.editorconfig +10 -10
  2. package/.husky/pre-push +4 -4
  3. package/.storybook/addons.js +4 -4
  4. package/.storybook/config.js +64 -64
  5. package/.storybook/postcss.config.js +6 -6
  6. package/.storybook/preview-head.html +9 -9
  7. package/.storybook/webpack.config.js +130 -130
  8. package/__tests__/components/Checkout/OrderOverviewItem/OrderOverviewItem.test.tsx +42 -42
  9. package/__tests__/components/Checkout/PaymentTypeCard/PaymentTypeCard.test.tsx +49 -49
  10. package/__tests__/components/Checkout/RadioGroup.test.tsx +95 -95
  11. package/__tests__/components/Checkout/ServiceCardWrapper.test.tsx +53 -53
  12. package/__tests__/components/Checkout/Switcher.test.tsx +43 -43
  13. package/__tests__/components/UserDasboardPage/sections/CheckoutSection/CheckoutSection.test.tsx +613 -613
  14. package/__tests__/components/UserDasboardPage/sections/FavoriteSection/FavoriteSection.test.tsx +335 -335
  15. package/__tests__/components/UserDasboardPage/sections/OrderStatusSection/AdditionalOrderInfo.test.tsx +127 -127
  16. package/__tests__/components/UserDasboardPage/sections/OrderStatusSection/OrderStatusCar.test.tsx +58 -58
  17. package/__tests__/components/UserDasboardPage/sections/OrderStatusSection/OrderStatusCard.test.tsx +74 -74
  18. package/__tests__/components/UserDasboardPage/sections/OrderStatusSection/OrderStatusSection.test.tsx +62 -62
  19. package/__tests__/components/UserDasboardPage/sections/RequestedCarsSection/RequestedCarsSection.test.tsx +117 -117
  20. package/__tests__/components/Vehicle/VehicleFormattedPrice/VehicleFormattedPrice.test.tsx +58 -58
  21. package/__tests__/components/VehicleSmallCard/VehicleInfo.test.tsx +87 -87
  22. package/__tests__/components/VehicleSmallCard/VehicleTitle.test.tsx +90 -90
  23. package/__tests__/components/_common/Badge/Badge.test.tsx +15 -15
  24. package/__tests__/components/_common/IconSVG/IconSVG.test.tsx +22 -22
  25. package/__tests__/components/_common/Image/Image.test.tsx +82 -82
  26. package/__tests__/components/_common/MaterialAutocomplete/MaterialAutocomplete.test.tsx +48 -48
  27. package/__tests__/components/_common/MaterialDatePicker/MaterialDatePicker.test.tsx +54 -54
  28. package/__tests__/components/_common/MaterialField/MaterialField.test.tsx +58 -58
  29. package/__tests__/components/_common/StarButton/StarButton.test.tsx +45 -45
  30. package/__tests__/mockedData/financingConfig.js +201 -201
  31. package/__tests__/mockedData/mockedPendingRequestedCar.js +68 -68
  32. package/__tests__/utils/CommonUtils/addPrefixToKeys.test.ts +18 -18
  33. package/__tests__/utils/CommonUtils/arrToObj.test.js +32 -32
  34. package/__tests__/utils/CommonUtils/checkRangeValuesOnEqual.test.ts +16 -16
  35. package/__tests__/utils/CommonUtils/fixNumber.test.ts +19 -19
  36. package/__tests__/utils/CommonUtils/formatMileage.test.ts +8 -8
  37. package/__tests__/utils/CommonUtils/getChipFilterValue.test.ts +22 -22
  38. package/__tests__/utils/CommonUtils/getFormattedNumber.test.ts +18 -18
  39. package/__tests__/utils/CommonUtils/getFormattedPrice.test.ts +19 -19
  40. package/__tests__/utils/CommonUtils/getGroupValuesForQuery.test.ts +51 -51
  41. package/__tests__/utils/CommonUtils/getOfferSliders.test.ts +63 -63
  42. package/__tests__/utils/CommonUtils/getPriceRating.test.ts +26 -26
  43. package/__tests__/utils/CommonUtils/getPriceRatingConfig.test.ts +33 -33
  44. package/__tests__/utils/CommonUtils/preloadNearbyImages.test.ts +8 -8
  45. package/__tests__/utils/CommonUtils/sliceLessThan.test.ts +23 -23
  46. package/__tests__/utils/CommonUtils/sliceMoreThan.test.ts +23 -23
  47. package/common.ts +164 -164
  48. package/feWpComponents.ts +25 -25
  49. package/index.ts +4 -4
  50. package/jest.config.js +43 -43
  51. package/landing.ts +38 -38
  52. package/media/images/advantages/advantage_cart.svg +4 -4
  53. package/media/images/advantages/advantage_check.svg +4 -4
  54. package/media/images/advantages/advantage_like.svg +10 -10
  55. package/media/images/advantages/advantage_secure.svg +6 -6
  56. package/media/images/check-blue.svg +40 -40
  57. package/media/images/raiting-star.svg +3 -3
  58. package/media/images/raiting-stars-min.svg +7 -7
  59. package/media/images/refresh-button.svg +49 -49
  60. package/media/images/slider-arrow-big.svg +11 -11
  61. package/media/images/user-icon.svg +16 -16
  62. package/media/locales/de/promoSlider.json +25 -25
  63. package/media/locales/en/promoSlider.json +25 -25
  64. package/media/svg/common/arrow_breadcrumps.svg +3 -3
  65. package/media/svg/common/home.svg +8 -8
  66. package/media/svg/common/whyAutodeIconSet-F.svg +9 -9
  67. package/media/svg/common/whyAutodeIconSet-G.svg +8 -8
  68. package/media/svg/common/whyAutodeIconSet-Q.svg +6 -6
  69. package/media/svg/common/whyAutodeIconSet-R.svg +9 -9
  70. package/media/svg/infoBlocks/whyAutodeIconSet-F.svg +9 -9
  71. package/media/svg/infoBlocks/whyAutodeIconSet-G.svg +8 -8
  72. package/media/svg/infoBlocks/whyAutodeIconSet-Q.svg +6 -6
  73. package/media/svg/infoBlocks/whyAutodeIconSet-R.svg +9 -9
  74. package/media/svg/usp/icon1.svg +16 -16
  75. package/media/svg/usp/icon2.svg +13 -13
  76. package/media/svg/usp/icon3.svg +10 -10
  77. package/media/svg/usp/icon4.svg +14 -14
  78. package/package.json +117 -118
  79. package/profile.ts +1 -1
  80. package/setupTests.js +7 -7
  81. package/source/components/AccardionSection/AccardionSection.styl +45 -45
  82. package/source/components/AccardionSection/AccardionSection.tsx +56 -56
  83. package/source/components/AccordionWidget/AccordionWidget.styl +208 -208
  84. package/source/components/AccordionWidget/AccordionWidget.tsx +216 -216
  85. package/source/components/AdvantageItem/AdvantageItem.story.js +23 -23
  86. package/source/components/AdvantageItem/AdvantageItem.styl +47 -47
  87. package/source/components/AdvantageItem/AdvantageItem.tsx +26 -26
  88. package/source/components/Alternative/Dealer.story.js +31 -31
  89. package/source/components/Alternative/Dealer.story.styl +2 -2
  90. package/source/components/Alternative/DealerInfo.styl +116 -116
  91. package/source/components/Alternative/DealerInfo.tsx +171 -171
  92. package/source/components/Breadcrumbs/Breadcrumbs.story.js +40 -40
  93. package/source/components/Breadcrumbs/Breadcrumbs.styl +136 -136
  94. package/source/components/Breadcrumbs/Breadcrumbs.tsx +93 -93
  95. package/source/components/Breadcrumbs/FirstInfoBlock/FirstInfoBlock.story.js +45 -45
  96. package/source/components/Breadcrumbs/FirstInfoBlock/FirstInfoBlock.styl +54 -54
  97. package/source/components/Breadcrumbs/FirstInfoBlock/FirstInfoBlock.tsx +17 -17
  98. package/source/components/Checkout/CheckoutStepper/CheckoutStepper.styl +34 -34
  99. package/source/components/Checkout/CheckoutStepper/CheckoutStepper.tsx +69 -69
  100. package/source/components/Checkout/CheckoutStepper/CheckoutStepperClasses.js +173 -173
  101. package/source/components/Checkout/OrderOverviewItem/OrderOverviewItem.story.js +243 -243
  102. package/source/components/Checkout/OrderOverviewItem/OrderOverviewItem.story.styl +20 -20
  103. package/source/components/Checkout/OrderOverviewItem/OrderOverviewItem.styl +36 -36
  104. package/source/components/Checkout/OrderOverviewItem/OrderOverviewItem.tsx +53 -53
  105. package/source/components/Checkout/RadioCards/AdditionalServiceCard/ServiceCardWrapper.styl +201 -201
  106. package/source/components/Checkout/RadioCards/AdditionalServiceCard/ServiceCardWrapper.tsx +212 -212
  107. package/source/components/Checkout/RadioCards/ContentCard/AdditionalServiceContent.styl +30 -30
  108. package/source/components/Checkout/RadioCards/ContentCard/AdditionalServiceContent.tsx +62 -62
  109. package/source/components/Checkout/RadioCards/ContentCard/VehicleDeliveryContent.styl +73 -73
  110. package/source/components/Checkout/RadioCards/ContentCard/VehicleDeliveryContent.tsx +61 -61
  111. package/source/components/Checkout/RadioCards/PaymentTypeCard/PaymentTypeCard.styl +193 -193
  112. package/source/components/Checkout/RadioCards/PaymentTypeCard/PaymentTypeCard.tsx +181 -181
  113. package/source/components/Checkout/RadioCards/RadioCheckout.styl +158 -158
  114. package/source/components/Checkout/RadioCards/RadioCheckout.tsx +178 -178
  115. package/source/components/Checkout/RadioCards/RadioGroupCheckout.story.js +105 -105
  116. package/source/components/Checkout/RadioCards/RadioGroupCheckout.story.styl +37 -37
  117. package/source/components/Checkout/Switcher/Switcher.story.js +41 -41
  118. package/source/components/Checkout/Switcher/Switcher.story.styl +1 -1
  119. package/source/components/Checkout/Switcher/Switcher.styled.tsx +53 -53
  120. package/source/components/Checkout/Switcher/Switcher.tsx +48 -48
  121. package/source/components/CompactSearchWidget/CompactSearchFields/CompactSearchFields.styl +176 -176
  122. package/source/components/CompactSearchWidget/CompactSearchFields/CompactSearchFields.tsx +477 -477
  123. package/source/components/CompactSearchWidget/CompactSearchWidget.story.js +187 -187
  124. package/source/components/CompactSearchWidget/CompactSearchWidget.styl +43 -43
  125. package/source/components/CompactSearchWidget/CompactSearchWidget.tsx +165 -165
  126. package/source/components/ContactForm/ContactForm.story.js +93 -93
  127. package/source/components/ContactForm/ContactForm.styl +260 -260
  128. package/source/components/ContactForm/ContactForm.tsx +588 -588
  129. package/source/components/ContactForm/WpContactForm.tsx +287 -287
  130. package/source/components/ContactInfo/ContactInfo.story.js +58 -58
  131. package/source/components/ContactInfo/ContactInfo.styl +22 -22
  132. package/source/components/ContactInfo/ContactInfo.tsx +161 -161
  133. package/source/components/ContactInfo/TemporaryTranslation.ts +11 -11
  134. package/source/components/CustomerQuote/CustomerQuote.story.js +41 -41
  135. package/source/components/CustomerQuote/CustomerQuote.styl +79 -79
  136. package/source/components/CustomerQuote/CustomerQuote.tsx +68 -68
  137. package/source/components/CustomerQuotesSlider/CustomerQuotesSlider.story.js +73 -73
  138. package/source/components/CustomerQuotesSlider/CustomerQuotesSlider.story.styl +4 -4
  139. package/source/components/CustomerQuotesSlider/CustomerQuotesSlider.styl +46 -46
  140. package/source/components/CustomerQuotesSlider/CustomerQuotesSlider.tsx +79 -79
  141. package/source/components/CustomerQuotesSlider/SliderArrow.tsx +20 -20
  142. package/source/components/FormattedNumber/FormattedNumber.story.js +114 -114
  143. package/source/components/FormattedNumber/FormattedNumber.styl +1 -1
  144. package/source/components/FormattedNumber/FormattedNumber.tsx +90 -90
  145. package/source/components/ImageSettings/EditableOptionsTable/CustomCheckbox/CustomCheckbox.styl +7 -7
  146. package/source/components/ImageSettings/EditableOptionsTable/CustomCheckbox/CustomCheckbox.tsx +30 -30
  147. package/source/components/ImageSettings/EditableOptionsTable/EditableOptionsTable.styl +122 -122
  148. package/source/components/ImageSettings/EditableOptionsTable/EditableOptionsTable.tsx +199 -199
  149. package/source/components/ImageSettings/EditableOptionsTable/ImageIcon/ImageIcon.styl +3 -3
  150. package/source/components/ImageSettings/EditableOptionsTable/ImageIcon/ImageIcon.tsx +15 -15
  151. package/source/components/ImageSettings/OptionsTable/OptionsTable.styl +47 -47
  152. package/source/components/ImageSettings/OptionsTable/OptionsTable.tsx +122 -122
  153. package/source/components/ImageSettings/PricePlan/PricePlan.styl +63 -63
  154. package/source/components/ImageSettings/PricePlan/PricePlan.tsx +32 -32
  155. package/source/components/ImageSettings/index.ts +42 -42
  156. package/source/components/ImageSettings/story.js +1212 -1212
  157. package/source/components/InfoBlocks/FirstInfoBlock/FirstInfoBlock.styl +33 -33
  158. package/source/components/InfoBlocks/FirstInfoBlock/FirstInfoBlock.tsx +48 -48
  159. package/source/components/InfoBlocks/FirstInfoBlock/FirstInfoBlockItem/FirstInfoBlockItem.styl +66 -66
  160. package/source/components/InfoBlocks/FirstInfoBlock/FirstInfoBlockItem/FirstInfoBlockItem.tsx +21 -21
  161. package/source/components/InfoBlocks/InfoBlockWrapper/InfoBlockWrapper.styl +41 -41
  162. package/source/components/InfoBlocks/InfoBlockWrapper/InfoBlockWrapper.tsx +45 -45
  163. package/source/components/InfoBlocks/InfoBlockWrapper.story.js +101 -101
  164. package/source/components/InfoBlocks/InfoBlockWrapper.story.styl +45 -45
  165. package/source/components/InfoBlocks/PricingToolBlock/PricingTool.styl +6 -6
  166. package/source/components/InfoBlocks/PricingToolBlock/PricingTool.tsx +29 -29
  167. package/source/components/InfoBlocks/PricingToolBlock/PricingToolBlock.styl +45 -45
  168. package/source/components/InfoBlocks/PricingToolBlock/PricingToolBlock.tsx +81 -81
  169. package/source/components/InfoBlocks/ServicesBlock/ServiceBlockItem.styl +47 -47
  170. package/source/components/InfoBlocks/ServicesBlock/ServiceBlockItem.tsx +25 -25
  171. package/source/components/OfferDetailedSection/OfferDetailedSection.styl +31 -31
  172. package/source/components/OfferDetailedSection/OfferDetailedSection.tsx +100 -100
  173. package/source/components/OfferDetailedSection/partials/PanelConfig.styl +131 -131
  174. package/source/components/OfferDetailedSection/partials/PanelConfig.tsx +121 -121
  175. package/source/components/OfferPanel/AboAccordion/AboAccordion.styl +24 -24
  176. package/source/components/OfferPanel/AboAccordion/AboAccordion.tsx +128 -128
  177. package/source/components/OfferPanel/AboAccordion/AboColorOptions/AboColorOptions.styl +11 -11
  178. package/source/components/OfferPanel/AboAccordion/AboColorOptions/AboColorOptions.tsx +35 -35
  179. package/source/components/OfferPanel/AboAccordion/AboFaq/AboFaq.story.js +97 -97
  180. package/source/components/OfferPanel/AboAccordion/AboFaq/AboFaq.styl +20 -20
  181. package/source/components/OfferPanel/AboAccordion/AboFaq/AboFaq.tsx +25 -25
  182. package/source/components/OfferPanel/AboAccordion/AboIncludedServices/AboIncludedServices.styl +13 -13
  183. package/source/components/OfferPanel/AboAccordion/AboIncludedServices/AboIncludedServices.tsx +39 -39
  184. package/source/components/OfferPanel/MuiOfferPeriod/MuiOfferPeriod.theme.tsx +25 -25
  185. package/source/components/OfferPanel/MuiOfferPeriod/MuiOfferPeriod.tsx +73 -73
  186. package/source/components/OfferPanel/OfferCheckboxGroup/CheckboxContainer.tsx +140 -140
  187. package/source/components/OfferPanel/OfferCheckboxGroup/OfferCheckboxGroup.styl +120 -120
  188. package/source/components/OfferPanel/OfferCheckboxGroup/OfferCheckboxGroup.tsx +24 -24
  189. package/source/components/OfferPanel/OfferPanel.story.js +139 -139
  190. package/source/components/OfferPanel/OfferPanel.styl +193 -193
  191. package/source/components/OfferPanel/OfferPanel.tsx +81 -81
  192. package/source/components/OfferPanel/OfferPeriod/OfferPeriod.styl +24 -24
  193. package/source/components/OfferPanel/OfferPeriod/OfferPeriod.tsx +45 -45
  194. package/source/components/OfferPanel/RangeGroup/RangeGroup.story.js +35 -35
  195. package/source/components/OfferPanel/RangeGroup/RangeGroup.story.styl +2 -2
  196. package/source/components/OfferPanel/RangeGroup/RangeGroup.tsx +39 -39
  197. package/source/components/PriceRating/PriceRating.story.js +39 -39
  198. package/source/components/PriceRating/PriceRating.story.styl +1 -1
  199. package/source/components/PriceRating/PriceRating.styl +47 -47
  200. package/source/components/PriceRating/PriceRating.tsx +64 -64
  201. package/source/components/PriceRatingDetailed/PriceRatingDetailed.story.js +78 -78
  202. package/source/components/PriceRatingDetailed/PriceRatingDetailed.story.styl +11 -11
  203. package/source/components/PriceRatingDetailed/PriceRatingDetailed.styl +120 -120
  204. package/source/components/PriceRatingDetailed/PriceRatingDetailed.tsx +191 -191
  205. package/source/components/RateSearchValue/RateSearchValue.story.js +78 -78
  206. package/source/components/RateSearchValue/RateSearchValue.story.styl +1 -1
  207. package/source/components/RateSearchValue/RateSearchValue.styl +22 -22
  208. package/source/components/RateSearchValue/RateSearchValue.tsx +55 -55
  209. package/source/components/RateSearchWidget/RateSearchWidget.story.js +57 -57
  210. package/source/components/RateSearchWidget/RateSearchWidget.story.styl +12 -12
  211. package/source/components/RateSearchWidget/RateSearchWidget.styl +106 -106
  212. package/source/components/RateSearchWidget/RateSearchWidget.tsx +163 -163
  213. package/source/components/SearchFilters/FiltersFactory.story.js +273 -273
  214. package/source/components/SearchFilters/FiltersFactory.tsx +85 -85
  215. package/source/components/SearchFilters/Slider.styl +66 -66
  216. package/source/components/SearchFilters/common/Color/Color.styl +29 -29
  217. package/source/components/SearchFilters/common/Color/Color.tsx +60 -60
  218. package/source/components/SearchFilters/common/FilterBlock/FilterBlock.styl +39 -39
  219. package/source/components/SearchFilters/common/FilterBlock/FilterBlock.styled.tsx +28 -28
  220. package/source/components/SearchFilters/common/FilterBlock/FilterBlock.tsx +54 -54
  221. package/source/components/SearchFilters/common/FilterBlock/FilterBlockFactory.tsx +151 -151
  222. package/source/components/SearchFilters/common/RangeControlled/RangeControlled.tsx +155 -155
  223. package/source/components/SearchFilters/filters/AlternativeID.styl +98 -98
  224. package/source/components/SearchFilters/filters/AlternativeID.tsx +67 -67
  225. package/source/components/SearchFilters/filters/Consumption.styl +41 -41
  226. package/source/components/SearchFilters/filters/Consumption.tsx +52 -52
  227. package/source/components/SearchFilters/filters/Cost.styl +43 -43
  228. package/source/components/SearchFilters/filters/Cost.tsx +112 -112
  229. package/source/components/SearchFilters/filters/CubicCapacity.styl +30 -30
  230. package/source/components/SearchFilters/filters/CubicCapacity.tsx +134 -134
  231. package/source/components/SearchFilters/filters/Damaged.styl +1 -1
  232. package/source/components/SearchFilters/filters/Damaged.tsx +40 -40
  233. package/source/components/SearchFilters/filters/Doors.styl +18 -18
  234. package/source/components/SearchFilters/filters/Doors.tsx +113 -113
  235. package/source/components/SearchFilters/filters/DriveType.styl +22 -22
  236. package/source/components/SearchFilters/filters/DriveType.tsx +72 -72
  237. package/source/components/SearchFilters/filters/EmissionClass.tsx +35 -35
  238. package/source/components/SearchFilters/filters/EmissionSticker.styl +46 -46
  239. package/source/components/SearchFilters/filters/EmissionSticker.tsx +52 -52
  240. package/source/components/SearchFilters/filters/FirstRegistration.tsx +96 -96
  241. package/source/components/SearchFilters/filters/Fuel.styl +27 -27
  242. package/source/components/SearchFilters/filters/Fuel.tsx +75 -75
  243. package/source/components/SearchFilters/filters/Highlights.styl +38 -38
  244. package/source/components/SearchFilters/filters/Highlights.tsx +69 -69
  245. package/source/components/SearchFilters/filters/ImagesCount.tsx +66 -66
  246. package/source/components/SearchFilters/filters/InteriorColor.styl +29 -29
  247. package/source/components/SearchFilters/filters/InteriorColor.tsx +71 -71
  248. package/source/components/SearchFilters/filters/InteriorMaterial.styl +28 -28
  249. package/source/components/SearchFilters/filters/InteriorMaterial.tsx +72 -72
  250. package/source/components/SearchFilters/filters/MakeModel.styl +106 -106
  251. package/source/components/SearchFilters/filters/MakeModel.tsx +164 -164
  252. package/source/components/SearchFilters/filters/Mileage.tsx +108 -108
  253. package/source/components/SearchFilters/filters/OwnerID.styl +14 -14
  254. package/source/components/SearchFilters/filters/OwnerID.tsx +65 -65
  255. package/source/components/SearchFilters/filters/Owners.styl +23 -23
  256. package/source/components/SearchFilters/filters/Owners.tsx +72 -72
  257. package/source/components/SearchFilters/filters/Power.tsx +176 -176
  258. package/source/components/SearchFilters/filters/PriceDifference.tsx +67 -67
  259. package/source/components/SearchFilters/filters/Rate.styl +34 -34
  260. package/source/components/SearchFilters/filters/Rate.tsx +53 -53
  261. package/source/components/SearchFilters/filters/Seats.styl +31 -31
  262. package/source/components/SearchFilters/filters/Seats.tsx +53 -53
  263. package/source/components/SearchFilters/filters/StateOptions.styl +16 -16
  264. package/source/components/SearchFilters/filters/StateOptions.tsx +57 -57
  265. package/source/components/SearchFilters/filters/StateOptionsNew.styl +23 -23
  266. package/source/components/SearchFilters/filters/StateOptionsNew.tsx +72 -72
  267. package/source/components/SearchFilters/filters/Transmission.styl +20 -20
  268. package/source/components/SearchFilters/filters/Transmission.tsx +71 -71
  269. package/source/components/SearchFilters/filters/commonFilters.styl +93 -93
  270. package/source/components/SearchPage/ChipFilter/ChipFilter.styl +45 -45
  271. package/source/components/SearchPage/ChipFilter/ChipFilter.tsx +21 -21
  272. package/source/components/SearchPage/DropDown/DropDown.styl +99 -99
  273. package/source/components/SearchPage/DropDown/DropDown.tsx +52 -52
  274. package/source/components/SearchPage/DropDown/MultiDropDown.tsx +84 -84
  275. package/source/components/SearchPage/DropDown/index.ts +8 -8
  276. package/source/components/SearchPage/Filters/HistogramSlider.styl +77 -77
  277. package/source/components/SearchPage/Filters/MakeModel/MakeModel.story.js +11 -11
  278. package/source/components/SearchPage/Filters/MakeModel/MakeModel.styl +95 -95
  279. package/source/components/SearchPage/Filters/MakeModel/MakeModel.tsx +152 -152
  280. package/source/components/SearchPage/Pagination/Pagination.styl +95 -95
  281. package/source/components/SearchPage/Pagination/Pagination.tsx +89 -89
  282. package/source/components/SearchPage/SearchChips/SearchChips.styl +52 -52
  283. package/source/components/SearchPage/SearchChips/SearchChips.tsx +76 -76
  284. package/source/components/SearchPage/SearchTopBar/SearchTopBar.styl +109 -109
  285. package/source/components/SearchPage/SearchTopBar/SearchTopBar.tsx +116 -116
  286. package/source/components/SearchPageMobile/FiltersContainer/FiltersContainer.styl +44 -44
  287. package/source/components/SearchPageMobile/FiltersContainer/FiltersContainer.tsx +162 -162
  288. package/source/components/SearchPageMobile/FiltersDetailed/BodyType.styl +47 -47
  289. package/source/components/SearchPageMobile/FiltersDetailed/BodyType.tsx +85 -85
  290. package/source/components/SearchPageMobile/FiltersDetailed/Consumption.styl +48 -48
  291. package/source/components/SearchPageMobile/FiltersDetailed/Consumption.tsx +76 -76
  292. package/source/components/SearchPageMobile/FiltersDetailed/Doors.styl +52 -52
  293. package/source/components/SearchPageMobile/FiltersDetailed/Doors.tsx +103 -103
  294. package/source/components/SearchPageMobile/FiltersDetailed/FirstRegistration.tsx +69 -69
  295. package/source/components/SearchPageMobile/FiltersDetailed/Fuel.styl +31 -31
  296. package/source/components/SearchPageMobile/FiltersDetailed/Fuel.tsx +83 -83
  297. package/source/components/SearchPageMobile/FiltersDetailed/HistogramSlider.styl +100 -100
  298. package/source/components/SearchPageMobile/FiltersDetailed/MakeModel.styl +95 -95
  299. package/source/components/SearchPageMobile/FiltersDetailed/MakeModel.tsx +171 -171
  300. package/source/components/SearchPageMobile/FiltersDetailed/MakeModelExclude.styl +112 -112
  301. package/source/components/SearchPageMobile/FiltersDetailed/MakeModelExclude.tsx +122 -122
  302. package/source/components/SearchPageMobile/FiltersDetailed/Mileage.tsx +80 -80
  303. package/source/components/SearchPageMobile/FiltersDetailed/Power.tsx +116 -116
  304. package/source/components/SearchPageMobile/FiltersDetailed/Price.tsx +129 -129
  305. package/source/components/SearchPageMobile/FiltersDetailed/Rate.tsx +252 -252
  306. package/source/components/SearchPageMobile/FiltersDetailed/Seats.styl +41 -41
  307. package/source/components/SearchPageMobile/FiltersDetailed/Seats.tsx +85 -85
  308. package/source/components/SearchWidget/BasicDataWidget/BasicDataWidget.story.js +834 -834
  309. package/source/components/SearchWidget/BasicDataWidget/BasicDataWidget.story.styl +40 -40
  310. package/source/components/SearchWidget/BasicDataWidget/BasicDataWidget.styl +37 -37
  311. package/source/components/SearchWidget/BasicDataWidget/BasicDataWidget.tsx +130 -130
  312. package/source/components/SearchWidget/ColorWidget/BodyColorWidget.styl +54 -54
  313. package/source/components/SearchWidget/ColorWidget/BodyColorWidget.tsx +122 -122
  314. package/source/components/SearchWidget/DriveTransmissionWidget/DriveTransmissionWidget.styl +17 -17
  315. package/source/components/SearchWidget/DriveTransmissionWidget/DriveTransmissionWidget.tsx +36 -36
  316. package/source/components/SearchWidget/EnvironmentWidget/DetailedEnvironmentWidget.styl +25 -25
  317. package/source/components/SearchWidget/EnvironmentWidget/DetailedEnvironmentWidget.tsx +126 -126
  318. package/source/components/SearchWidget/EnvironmentWidget/EnvironmentWidget.styl +54 -54
  319. package/source/components/SearchWidget/EnvironmentWidget/EnvironmentWidget.tsx +173 -173
  320. package/source/components/SearchWidget/HighlightsWidget/HighlightsWidget.styl +39 -39
  321. package/source/components/SearchWidget/HighlightsWidget/HighlightsWidget.tsx +99 -99
  322. package/source/components/SearchWidget/InteriorWidget/DetailedInteriorWidget.tsx +44 -44
  323. package/source/components/SearchWidget/InteriorWidget/InteriorWidget.styl +28 -28
  324. package/source/components/SearchWidget/InteriorWidget/InteriorWidget.tsx +42 -42
  325. package/source/components/SearchWidget/OfferDetalisWidget/OfferDetailsWidgetMobile.tsx +59 -59
  326. package/source/components/SearchWidget/SearchWidget.story.js +191 -191
  327. package/source/components/SearchWidget/SearchWidget.story.styl +5 -5
  328. package/source/components/SearchWidget/SearchWidget.styl +196 -196
  329. package/source/components/SearchWidget/SearchWidget.tsx +208 -208
  330. package/source/components/SearchWidget/StateWidget/StateWidget.styl +57 -57
  331. package/source/components/SearchWidget/StateWidget/StateWidget.tsx +106 -106
  332. package/source/components/SearchWidget/SuperAdminWidget/SuperAdminWidget.styl +10 -10
  333. package/source/components/SearchWidget/SuperAdminWidget/SuperAdminWidget.tsx +64 -64
  334. package/source/components/SearchWidget/partials/BuyCar/BuyCar.styl +19 -19
  335. package/source/components/SearchWidget/partials/BuyCar/BuyCar.tsx +162 -162
  336. package/source/components/SearchWidget/partials/DropDown/DropDown.styl +70 -70
  337. package/source/components/SearchWidget/partials/DropDown/DropDown.tsx +36 -36
  338. package/source/components/SearchWidget/partials/DropDown/MultiDropDown.tsx +76 -76
  339. package/source/components/SearchWidget/partials/DropDown/index.ts +7 -7
  340. package/source/components/SearchWidget/partials/DropDownGroup/DropDownGroup.styl +48 -48
  341. package/source/components/SearchWidget/partials/DropDownGroup/DropDownGroup.tsx +101 -101
  342. package/source/components/SearchWidget/partials/FastSearch/FastSearch.tsx +55 -55
  343. package/source/components/SearchWidget/partials/MakerFilter/MakerFilter.styl +8 -8
  344. package/source/components/SearchWidget/partials/MakerFilter/MakerFilter.tsx +69 -69
  345. package/source/components/SearchWidget/partials/PanelFilter/Item.tsx +43 -43
  346. package/source/components/SearchWidget/partials/PanelFilter/PanelFilter.styl +32 -32
  347. package/source/components/SearchWidget/partials/PanelFilter/PanelFilter.tsx +53 -53
  348. package/source/components/SearchWidget/partials/TabPanel/TabPanel.tsx +29 -29
  349. package/source/components/SearchWidget/partials/Tabs/Tab.tsx +20 -20
  350. package/source/components/SearchWidget/partials/Tabs/Tabs.styl +27 -27
  351. package/source/components/SearchWidget/partials/Tabs/Tabs.tsx +69 -69
  352. package/source/components/SearchWidget/partials/Tabs/index.ts +7 -7
  353. package/source/components/SearchWidgetsMobile/BasicDataWidgetMobile/BasicDataWidgetMobile.styl +91 -91
  354. package/source/components/SearchWidgetsMobile/BasicDataWidgetMobile/BasicDataWidgetMobile.tsx +219 -219
  355. package/source/components/SearchWidgetsMobile/EngineTransDriveWidget/EngineTransDriveWidget.styl +47 -47
  356. package/source/components/SearchWidgetsMobile/EngineTransDriveWidget/EngineTransDriveWidget.tsx +126 -126
  357. package/source/components/SearchWidgetsMobile/EquipmentsWidget/EquipmentsWidget.styl +62 -62
  358. package/source/components/SearchWidgetsMobile/EquipmentsWidget/EquipmentsWidget.styled.tsx +38 -38
  359. package/source/components/SearchWidgetsMobile/EquipmentsWidget/EquipmentsWidget.tsx +294 -294
  360. package/source/components/SearchWidgetsMobile/EquipmentsWidget/EquipmentsWidgetCategory.tsx +50 -50
  361. package/source/components/SearchWidgetsMobile/HighlightsWidgetMobile/HighlightsWidgetMobile.styl +50 -50
  362. package/source/components/SearchWidgetsMobile/HighlightsWidgetMobile/HighlightsWidgetMobile.tsx +96 -96
  363. package/source/components/SearchWidgetsMobile/InteriorWidget/InteriorWidget.styl +30 -30
  364. package/source/components/SearchWidgetsMobile/InteriorWidget/InteriorWidget.tsx +33 -33
  365. package/source/components/SearchWidgetsMobile/InteriorWidget/InteriorWidgetMobile.tsx +44 -44
  366. package/source/components/SearchWidgetsMobile/SafetyWidget/SafetyWidget.styl +45 -45
  367. package/source/components/SearchWidgetsMobile/SafetyWidget/SafetyWidget.tsx +149 -149
  368. package/source/components/SearchWidgetsMobile/StateWidget/StateWidget.styl +59 -59
  369. package/source/components/SearchWidgetsMobile/StateWidget/StateWidget.tsx +172 -172
  370. package/source/components/SearchWidgetsMobile/index.ts +18 -18
  371. package/source/components/Stepper/Step/Step.styl +46 -46
  372. package/source/components/Stepper/Step/Step.tsx +44 -44
  373. package/source/components/Stepper/Stepper.story.js +119 -119
  374. package/source/components/Stepper/Stepper.story.styl +41 -41
  375. package/source/components/Stepper/Stepper.styl +10 -10
  376. package/source/components/Stepper/Stepper.tsx +68 -68
  377. package/source/components/Stepper/StepsDivider/StepsDivider.styl +15 -15
  378. package/source/components/Stepper/StepsDivider/StepsDivider.tsx +23 -23
  379. package/source/components/Theme.story.js +36 -36
  380. package/source/components/Theme.story.styl +85 -85
  381. package/source/components/TickerText/TickerText.story.js +17 -17
  382. package/source/components/TickerText/TickerText.styl +43 -43
  383. package/source/components/TickerText/TickerText.tsx +24 -24
  384. package/source/components/UserDashboardPage/sections/CheckoutSection/CheckoutSection.styl +38 -38
  385. package/source/components/UserDashboardPage/sections/CheckoutSection/CheckoutSection.tsx +120 -120
  386. package/source/components/UserDashboardPage/sections/FavoriteSection/FavoriteSection.styl +21 -21
  387. package/source/components/UserDashboardPage/sections/FavoriteSection/FavoriteSection.tsx +84 -84
  388. package/source/components/UserDashboardPage/sections/OrderStatusSection/AdditionalOrderInfo.styl +100 -100
  389. package/source/components/UserDashboardPage/sections/OrderStatusSection/AdditionalOrderInfo.tsx +90 -90
  390. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusCar.tsx +149 -149
  391. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusCard.styl +53 -53
  392. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusCard.tsx +41 -41
  393. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusSection.story.js +95 -95
  394. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusSection.styl +166 -166
  395. package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusSection.tsx +263 -263
  396. package/source/components/UserDashboardPage/sections/RequestedCarsSection/RequestedCarsSection.story.js +97 -97
  397. package/source/components/UserDashboardPage/sections/RequestedCarsSection/RequestedCarsSection.styl +144 -144
  398. package/source/components/UserDashboardPage/sections/RequestedCarsSection/RequestedCarsSection.tsx +124 -124
  399. package/source/components/UserDashboardPage/sections/RequestedCarsSection/SupportSection.styl +46 -46
  400. package/source/components/UserDashboardPage/sections/RequestedCarsSection/SupportSection.tsx +32 -32
  401. package/source/components/Vehicle/VehicleConsumption/VehicleConsumption.styl +10 -10
  402. package/source/components/Vehicle/VehicleConsumption/VehicleConsumption.tsx +44 -44
  403. package/source/components/Vehicle/VehicleFormattedPrice/VehicleFormattedPrice.story.js +247 -247
  404. package/source/components/Vehicle/VehicleFormattedPrice/VehicleFormattedPrice.styl +148 -148
  405. package/source/components/Vehicle/VehicleFormattedPrice/VehicleFormattedPrice.tsx +163 -163
  406. package/source/components/VehicleCompared/CompareGeneral/CompareGeneral.story.js +30 -30
  407. package/source/components/VehicleCompared/CompareGeneral/CompareGeneral.styl +49 -49
  408. package/source/components/VehicleCompared/CompareGeneral/CompareGeneral.tsx +55 -55
  409. package/source/components/VehicleCompared/ComparePrice/ComparePrice.story.js +18 -18
  410. package/source/components/VehicleCompared/ComparePrice/ComparePrice.styl +17 -17
  411. package/source/components/VehicleCompared/ComparePrice/ComparePrice.tsx +33 -33
  412. package/source/components/VehicleCompared/CompareTitle/CompareTitle.story.js +19 -19
  413. package/source/components/VehicleCompared/CompareTitle/CompareTitle.styl +38 -38
  414. package/source/components/VehicleCompared/CompareTitle/CompareTitle.tsx +32 -32
  415. package/source/components/VehicleDetailedSidebar/VehicleDetailedSidebar.story.js +44 -44
  416. package/source/components/VehicleDetailedSidebar/VehicleDetailedSidebar.styl +36 -36
  417. package/source/components/VehicleDetailedSidebar/VehicleDetailedSidebar.tsx +175 -175
  418. package/source/components/VehicleDetailedSidebar/partials/Price.styl +27 -27
  419. package/source/components/VehicleDetailedSidebar/partials/Price.tsx +41 -41
  420. package/source/components/VehicleDetailedSidebar/partials/PriceContent.styl +123 -123
  421. package/source/components/VehicleDetailedSidebar/partials/PriceContent.tsx +128 -128
  422. package/source/components/VehicleDetailedSidebar/partials/Properties.styl +53 -53
  423. package/source/components/VehicleDetailedSidebar/partials/Properties.tsx +117 -117
  424. package/source/components/VehicleDetailedSidebar/partials/Title.styl +35 -35
  425. package/source/components/VehicleDetailedSidebar/partials/Title.tsx +33 -33
  426. package/source/components/VehicleDetailedSlider/VehicleDetailedSlider.story.js +120 -120
  427. package/source/components/VehicleDetailedSlider/VehicleDetailedSlider.styl +146 -146
  428. package/source/components/VehicleDetailedSlider/VehicleDetailedSlider.tsx +376 -376
  429. package/source/components/VehicleDetailedSlider/partials/MobileStast.tsx +61 -61
  430. package/source/components/VehicleDetailedSlider/partials/MobileStats.styl +71 -71
  431. package/source/components/VehicleDetailedSlider/partials/PriceData.styl +50 -50
  432. package/source/components/VehicleDetailedSlider/partials/PriceData.tsx +44 -44
  433. package/source/components/VehicleDetailedSlider/partials/Stats.styl +80 -80
  434. package/source/components/VehicleDetailedSlider/partials/Stats.tsx +62 -62
  435. package/source/components/VehicleDetailedSlider/partials/Title.styl +44 -44
  436. package/source/components/VehicleDetailedSlider/partials/Title.tsx +36 -36
  437. package/source/components/VehiclePromoSlider/VehiclePromoInfo/VehiclePromoInfo.story.js +42 -42
  438. package/source/components/VehiclePromoSlider/VehiclePromoInfo/VehiclePromoInfo.styl +298 -298
  439. package/source/components/VehiclePromoSlider/VehiclePromoInfo/VehiclePromoInfo.tsx +201 -201
  440. package/source/components/VehiclePromoSlider/VehiclePromoSlide/VehiclePromoSlide.story.js +62 -62
  441. package/source/components/VehiclePromoSlider/VehiclePromoSlide/VehiclePromoSlide.styl +263 -263
  442. package/source/components/VehiclePromoSlider/VehiclePromoSlide/VehiclePromoSlide.tsx +141 -141
  443. package/source/components/VehiclePromoSlider/VehiclePromoSlider.story.js +42 -42
  444. package/source/components/VehiclePromoSlider/VehiclePromoSlider.styl +122 -122
  445. package/source/components/VehiclePromoSlider/VehiclePromoSlider.tsx +111 -111
  446. package/source/components/VehiclePromoSlider/cars.js +220 -220
  447. package/source/components/VehicleSmallCard/SeoText/SeoText.styl +8 -8
  448. package/source/components/VehicleSmallCard/SeoText/SeoText.tsx +16 -16
  449. package/source/components/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.styl +162 -162
  450. package/source/components/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.tsx +190 -190
  451. package/source/components/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.styl +218 -218
  452. package/source/components/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.tsx +161 -161
  453. package/source/components/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.styl +164 -164
  454. package/source/components/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.tsx +288 -288
  455. package/source/components/VehicleSmallCard/VehicleData/VehicleProperty/VehicleProperty.styl +29 -29
  456. package/source/components/VehicleSmallCard/VehicleData/VehicleProperty/VehicleProperty.tsx +34 -34
  457. package/source/components/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.styl +135 -135
  458. package/source/components/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.tsx +91 -91
  459. package/source/components/VehicleSmallCard/VehicleSmallCard.story.js +412 -412
  460. package/source/components/VehicleSmallCard/VehicleSmallCard.story.styl +55 -55
  461. package/source/components/VehicleSmallCard/VehicleSmallCard.styl +244 -244
  462. package/source/components/VehicleSmallCard/VehicleSmallCard.tsx +405 -404
  463. package/source/components/VehicleSmallCardForDealerships/VehicleSmallCardForDealerships.story.js +199 -199
  464. package/source/components/VehicleSmallCardForDealerships/VehicleSmallCardForDealerships.story.styl +40 -40
  465. package/source/components/VehicleSmallCardForDealerships/VehicleSmallCardForDealerships.styl +150 -150
  466. package/source/components/VehicleSmallCardForDealerships/VehicleSmallCardForDealerships.tsx +185 -185
  467. package/source/components/_common/Accordion/Accordion.story.js +36 -36
  468. package/source/components/_common/Accordion/Accordion.styl +2 -2
  469. package/source/components/_common/Accordion/Accordion.tsx +132 -132
  470. package/source/components/_common/Accordion/AccordionTitle/AccordionTitle.styl +49 -49
  471. package/source/components/_common/Accordion/AccordionTitle/AccordionTitle.tsx +33 -33
  472. package/source/components/_common/AccordionWrapper/AccordionItem/AccordionItem.styl +34 -34
  473. package/source/components/_common/AccordionWrapper/AccordionItem/AccordionItem.tsx +64 -64
  474. package/source/components/_common/AccordionWrapper/AccordionWrapper.tsx +34 -34
  475. package/source/components/_common/Badge/Badge.story.js +27 -27
  476. package/source/components/_common/Badge/Badge.story.styl +5 -5
  477. package/source/components/_common/Badge/Badge.styl +44 -44
  478. package/source/components/_common/Badge/Badge.tsx +25 -25
  479. package/source/components/_common/BodyTypeIcons/Audi.tsx +9 -9
  480. package/source/components/_common/BodyTypeIcons/Bmw.tsx +860 -860
  481. package/source/components/_common/BodyTypeIcons/Ford.tsx +31 -31
  482. package/source/components/_common/BodyTypeIcons/IconsConfig.tsx +44 -44
  483. package/source/components/_common/BodyTypeIcons/IconsConfigCompact.tsx +30 -30
  484. package/source/components/_common/BodyTypeIcons/Mazda.tsx +44 -44
  485. package/source/components/_common/BodyTypeIcons/MercedesBenz.tsx +38 -38
  486. package/source/components/_common/BodyTypeIcons/Opel.tsx +19 -19
  487. package/source/components/_common/BodyTypeIcons/Search.tsx +19 -19
  488. package/source/components/_common/BodyTypeIcons/SelectorCategoryCombi.tsx +68 -68
  489. package/source/components/_common/BodyTypeIcons/SelectorCategoryCompact.tsx +20 -20
  490. package/source/components/_common/BodyTypeIcons/SelectorCategoryConvertible.tsx +68 -68
  491. package/source/components/_common/BodyTypeIcons/SelectorCategoryCoupe.tsx +60 -60
  492. package/source/components/_common/BodyTypeIcons/SelectorCategoryMinibus.tsx +64 -64
  493. package/source/components/_common/BodyTypeIcons/SelectorCategorySedan.tsx +69 -69
  494. package/source/components/_common/BodyTypeIcons/SelectorCategorySuv.tsx +77 -77
  495. package/source/components/_common/BodyTypeIcons/SelectorCategoryTransporter.tsx +68 -68
  496. package/source/components/_common/BodyTypeIcons/SelectorCategoryVan.tsx +72 -72
  497. package/source/components/_common/BodyTypeIcons/Volkswagen.tsx +330 -330
  498. package/source/components/_common/BodyTypeIcons/index.ts +17 -17
  499. package/source/components/_common/Bubble/Bubble.story.js +52 -52
  500. package/source/components/_common/Bubble/Bubble.styl +53 -53
  501. package/source/components/_common/Bubble/Bubble.tsx +37 -37
  502. package/source/components/_common/Button/Button.story.js +52 -52
  503. package/source/components/_common/Button/Button.story.styl +5 -5
  504. package/source/components/_common/Button/Button.styl +12 -12
  505. package/source/components/_common/Button/Button.styled.tsx +51 -51
  506. package/source/components/_common/Button/Button.tsx +79 -79
  507. package/source/components/_common/ButtonOld/Button.story.js +54 -54
  508. package/source/components/_common/ButtonOld/Button.story.styl +5 -5
  509. package/source/components/_common/ButtonOld/Button.styl +65 -65
  510. package/source/components/_common/ButtonOld/Button.tsx +84 -84
  511. package/source/components/_common/Checkbox/Checkbox.story.js +85 -85
  512. package/source/components/_common/Checkbox/Checkbox.story.styl +14 -14
  513. package/source/components/_common/Checkbox/Checkbox.styl +119 -119
  514. package/source/components/_common/Checkbox/Checkbox.tsx +151 -151
  515. package/source/components/_common/Checkbox/FormCheckbox.styl +22 -22
  516. package/source/components/_common/Checkbox/FormCheckbox.tsx +86 -86
  517. package/source/components/_common/Checkbox/index.js +4 -4
  518. package/source/components/_common/CheckboxMaterial/CheckboxMaterial.story.js +126 -126
  519. package/source/components/_common/CheckboxMaterial/CheckboxMaterial.story.styl +14 -14
  520. package/source/components/_common/CheckboxMaterial/CheckboxMaterial.styl +155 -155
  521. package/source/components/_common/CheckboxMaterial/CheckboxMaterial.tsx +210 -210
  522. package/source/components/_common/Chip/Chip.story.js +43 -43
  523. package/source/components/_common/Chip/Chip.styl +69 -69
  524. package/source/components/_common/Chip/Chip.tsx +38 -38
  525. package/source/components/_common/ChipList/ChipList.story.js +36 -36
  526. package/source/components/_common/ChipList/ChipList.styl +80 -80
  527. package/source/components/_common/ChipList/ChipList.tsx +58 -58
  528. package/source/components/_common/Co2Widget/CO2Efficiency.styl +219 -219
  529. package/source/components/_common/Co2Widget/CO2Efficiency.tsx +93 -93
  530. package/source/components/_common/Divider/Divider.styl +8 -8
  531. package/source/components/_common/Divider/Divider.tsx +16 -16
  532. package/source/components/_common/DoorSelector/DoorSelector.styl +35 -35
  533. package/source/components/_common/DoorSelector/DoorSelector.tsx +39 -39
  534. package/source/components/_common/DropDown/DropDown.story.js +35 -35
  535. package/source/components/_common/DropDown/DropDown.styl +129 -129
  536. package/source/components/_common/DropDown/DropDown.tsx +111 -111
  537. package/source/components/_common/DropDown/DropDownComponents.tsx +53 -53
  538. package/source/components/_common/DropDown/DropDownGroup.styl +20 -20
  539. package/source/components/_common/DropDown/DropDownGroup.tsx +136 -136
  540. package/source/components/_common/DropDown/FormDropDown.styl +35 -35
  541. package/source/components/_common/DropDown/FormDropDown.tsx +53 -53
  542. package/source/components/_common/DropDown/MultiDropDown.tsx +84 -84
  543. package/source/components/_common/DropDown/index.ts +7 -7
  544. package/source/components/_common/ExpandablePanel/ExpandablePanel.story.js +41 -41
  545. package/source/components/_common/ExpandablePanel/ExpandablePanel.styl +19 -19
  546. package/source/components/_common/ExpandablePanel/ExpandablePanel.tsx +88 -88
  547. package/source/components/_common/ExpansionPanel/ExpansionPanel.styl +36 -36
  548. package/source/components/_common/ExpansionPanel/ExpansionPanel.styled.tsx +28 -28
  549. package/source/components/_common/ExpansionPanel/ExpansionPanel.tsx +99 -99
  550. package/source/components/_common/FilterLabel/FilterLabel.styl +25 -25
  551. package/source/components/_common/FilterLabel/FilterLabel.tsx +27 -27
  552. package/source/components/_common/Histogram/Histogram.story.js +51 -51
  553. package/source/components/_common/IconContainer/IconContainer.styl +23 -23
  554. package/source/components/_common/IconContainer/IconContainer.tsx +34 -34
  555. package/source/components/_common/IconSVG/IconSVG.story.js +21 -21
  556. package/source/components/_common/IconSVG/IconSVG.story.styl +25 -25
  557. package/source/components/_common/IconSVG/IconSVG.tsx +30 -30
  558. package/source/components/_common/IconSVG/IconSVGConfig.tsx +768 -768
  559. package/source/components/_common/IconSVG/SVG/AboPartner.tsx +16 -16
  560. package/source/components/_common/IconSVG/SVG/ArrowQuotes.tsx +22 -22
  561. package/source/components/_common/IconSVG/SVG/CloseIcon.tsx +17 -17
  562. package/source/components/_common/IconSVG/SVG/CloseIconSelect.tsx +18 -18
  563. package/source/components/_common/IconSVG/SVG/ClosedLockIcon.tsx +18 -18
  564. package/source/components/_common/IconSVG/SVG/DealerCheckIcon.tsx +18 -18
  565. package/source/components/_common/IconSVG/SVG/DealerPopoverMail.tsx +21 -21
  566. package/source/components/_common/IconSVG/SVG/DealerPopoverPhone.tsx +21 -21
  567. package/source/components/_common/IconSVG/SVG/GrayPhoneIcon.tsx +22 -22
  568. package/source/components/_common/IconSVG/SVG/InternetIcon.tsx +18 -18
  569. package/source/components/_common/IconSVG/SVG/WhiteEnvelopeIcon.tsx +21 -21
  570. package/source/components/_common/IconSVG/SVG/bodyType/Cabrio.tsx +23 -23
  571. package/source/components/_common/IconSVG/SVG/bodyType/Coupe.tsx +22 -22
  572. package/source/components/_common/IconSVG/SVG/bodyType/Minibus.tsx +22 -22
  573. package/source/components/_common/IconSVG/SVG/bodyType/Other.tsx +25 -25
  574. package/source/components/_common/IconSVG/SVG/bodyType/Sedan.tsx +22 -22
  575. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryCombi.tsx +68 -68
  576. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryCompact.tsx +20 -20
  577. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryConvertible.tsx +68 -68
  578. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryCoupe.tsx +60 -60
  579. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryMinibus.tsx +64 -64
  580. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryOther.tsx +60 -60
  581. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategorySedan.tsx +69 -69
  582. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategorySuv.tsx +77 -77
  583. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryTransporter.tsx +68 -68
  584. package/source/components/_common/IconSVG/SVG/bodyType/SelectorCategoryVan.tsx +72 -72
  585. package/source/components/_common/IconSVG/SVG/bodyType/Small.tsx +23 -23
  586. package/source/components/_common/IconSVG/SVG/bodyType/Suv.tsx +23 -23
  587. package/source/components/_common/IconSVG/SVG/bodyType/Van.tsx +23 -23
  588. package/source/components/_common/IconSVG/SVG/bodyType/Wagon.tsx +23 -23
  589. package/source/components/_common/IconSVG/SVG/common/AddIcon.tsx +16 -16
  590. package/source/components/_common/IconSVG/SVG/common/AddPlus.tsx +16 -16
  591. package/source/components/_common/IconSVG/SVG/common/AddressDashboard.tsx +29 -29
  592. package/source/components/_common/IconSVG/SVG/common/AddressIcon.tsx +20 -20
  593. package/source/components/_common/IconSVG/SVG/common/ArrowDetailedAccordionBlue.tsx +26 -26
  594. package/source/components/_common/IconSVG/SVG/common/ArrowDownBlue.tsx +21 -21
  595. package/source/components/_common/IconSVG/SVG/common/ArrowSelect.tsx +23 -23
  596. package/source/components/_common/IconSVG/SVG/common/ArrowStepDown.tsx +18 -18
  597. package/source/components/_common/IconSVG/SVG/common/Autocheck.tsx +19 -19
  598. package/source/components/_common/IconSVG/SVG/common/AutodeLogo.tsx +36 -36
  599. package/source/components/_common/IconSVG/SVG/common/Avatar.tsx +17 -17
  600. package/source/components/_common/IconSVG/SVG/common/BellGray.tsx +19 -19
  601. package/source/components/_common/IconSVG/SVG/common/BigInfoTransparent.tsx +13 -13
  602. package/source/components/_common/IconSVG/SVG/common/Browse.tsx +20 -20
  603. package/source/components/_common/IconSVG/SVG/common/Calendar.tsx +24 -24
  604. package/source/components/_common/IconSVG/SVG/common/CallbackDashboard.tsx +30 -30
  605. package/source/components/_common/IconSVG/SVG/common/Camera.tsx +17 -17
  606. package/source/components/_common/IconSVG/SVG/common/Car.tsx +16 -16
  607. package/source/components/_common/IconSVG/SVG/common/CarBody.tsx +19 -19
  608. package/source/components/_common/IconSVG/SVG/common/CarFront.tsx +43 -43
  609. package/source/components/_common/IconSVG/SVG/common/CarInspectionCheck.tsx +21 -21
  610. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme0.tsx +32 -32
  611. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme1.tsx +53 -53
  612. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme2.tsx +52 -52
  613. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme3.tsx +32 -32
  614. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme4.tsx +32 -32
  615. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme5.tsx +32 -32
  616. package/source/components/_common/IconSVG/SVG/common/CarInspectionScheme6.tsx +32 -32
  617. package/source/components/_common/IconSVG/SVG/common/CarInspectionSchemeGeneral copy.tsx +24 -24
  618. package/source/components/_common/IconSVG/SVG/common/CarInspectionSchemeGeneral.tsx +24 -24
  619. package/source/components/_common/IconSVG/SVG/common/CheckBlue.tsx +18 -18
  620. package/source/components/_common/IconSVG/SVG/common/CheckGreen.tsx +22 -22
  621. package/source/components/_common/IconSVG/SVG/common/CheckMark.tsx +16 -16
  622. package/source/components/_common/IconSVG/SVG/common/CheckWhite.tsx +19 -19
  623. package/source/components/_common/IconSVG/SVG/common/Chevron.tsx +17 -17
  624. package/source/components/_common/IconSVG/SVG/common/CircledCheckmark.tsx +25 -25
  625. package/source/components/_common/IconSVG/SVG/common/Clock.tsx +18 -18
  626. package/source/components/_common/IconSVG/SVG/common/Close.tsx +19 -19
  627. package/source/components/_common/IconSVG/SVG/common/CloseGrey.tsx +22 -22
  628. package/source/components/_common/IconSVG/SVG/common/ContactEmail.tsx +21 -21
  629. package/source/components/_common/IconSVG/SVG/common/ContactPhone.tsx +28 -28
  630. package/source/components/_common/IconSVG/SVG/common/CopyIcon copy.tsx +22 -22
  631. package/source/components/_common/IconSVG/SVG/common/CopyIcon.tsx +22 -22
  632. package/source/components/_common/IconSVG/SVG/common/CopyIconForDealer.tsx +21 -21
  633. package/source/components/_common/IconSVG/SVG/common/DashboardIcon.tsx +20 -20
  634. package/source/components/_common/IconSVG/SVG/common/DashboardQuestionMark.tsx +20 -20
  635. package/source/components/_common/IconSVG/SVG/common/DealersIcon.tsx +20 -20
  636. package/source/components/_common/IconSVG/SVG/common/DeleteCircle.tsx +31 -31
  637. package/source/components/_common/IconSVG/SVG/common/DeleteV1Icon.tsx +18 -18
  638. package/source/components/_common/IconSVG/SVG/common/DeliveryDashboard.tsx +25 -25
  639. package/source/components/_common/IconSVG/SVG/common/DeliveryMail.tsx +24 -24
  640. package/source/components/_common/IconSVG/SVG/common/Discount100De.tsx +18 -18
  641. package/source/components/_common/IconSVG/SVG/common/Discount100En.tsx +19 -19
  642. package/source/components/_common/IconSVG/SVG/common/Discount66De.tsx +28 -28
  643. package/source/components/_common/IconSVG/SVG/common/Discount66En.tsx +20 -20
  644. package/source/components/_common/IconSVG/SVG/common/DoneIcon.tsx +18 -18
  645. package/source/components/_common/IconSVG/SVG/common/EditCircle.tsx +32 -32
  646. package/source/components/_common/IconSVG/SVG/common/EditPriceIcon.tsx +20 -20
  647. package/source/components/_common/IconSVG/SVG/common/EuroCurrency.tsx +18 -18
  648. package/source/components/_common/IconSVG/SVG/common/Export.tsx +20 -20
  649. package/source/components/_common/IconSVG/SVG/common/Eye.tsx +17 -17
  650. package/source/components/_common/IconSVG/SVG/common/EyeCatch.tsx +19 -19
  651. package/source/components/_common/IconSVG/SVG/common/FavoritesIcon.tsx +20 -20
  652. package/source/components/_common/IconSVG/SVG/common/FilterRange.tsx +16 -16
  653. package/source/components/_common/IconSVG/SVG/common/FilterToolBlack.tsx +23 -23
  654. package/source/components/_common/IconSVG/SVG/common/FlagDe.tsx +21 -21
  655. package/source/components/_common/IconSVG/SVG/common/FlagEn.tsx +43 -43
  656. package/source/components/_common/IconSVG/SVG/common/GrayEnvelopeIcon.tsx +19 -19
  657. package/source/components/_common/IconSVG/SVG/common/HamburgerMenuIcon.tsx +18 -18
  658. package/source/components/_common/IconSVG/SVG/common/HandingOverDashboard.tsx +32 -32
  659. package/source/components/_common/IconSVG/SVG/common/ImageSettingsIcon.tsx +20 -20
  660. package/source/components/_common/IconSVG/SVG/common/Info.tsx +16 -16
  661. package/source/components/_common/IconSVG/SVG/common/InfoIcon.tsx +17 -17
  662. package/source/components/_common/IconSVG/SVG/common/InfoTransparent.tsx +18 -18
  663. package/source/components/_common/IconSVG/SVG/common/LogoutIcon.tsx +20 -20
  664. package/source/components/_common/IconSVG/SVG/common/MagnifyingGlass.tsx +31 -31
  665. package/source/components/_common/IconSVG/SVG/common/MenuArrow.tsx +16 -16
  666. package/source/components/_common/IconSVG/SVG/common/MenuGrey.tsx +22 -22
  667. package/source/components/_common/IconSVG/SVG/common/MobileDeLogo.tsx +108 -108
  668. package/source/components/_common/IconSVG/SVG/common/MyOrderIcon.tsx +20 -20
  669. package/source/components/_common/IconSVG/SVG/common/MyVehiclesIcon.tsx +20 -20
  670. package/source/components/_common/IconSVG/SVG/common/NewFlagDe.tsx +25 -25
  671. package/source/components/_common/IconSVG/SVG/common/NewFlagEn.tsx +34 -34
  672. package/source/components/_common/IconSVG/SVG/common/OrderReceivedDashboard.tsx +27 -27
  673. package/source/components/_common/IconSVG/SVG/common/Package.tsx +30 -30
  674. package/source/components/_common/IconSVG/SVG/common/Phone.tsx +18 -18
  675. package/source/components/_common/IconSVG/SVG/common/PhoneGrey.tsx +22 -22
  676. package/source/components/_common/IconSVG/SVG/common/PickupDashboard.tsx +30 -30
  677. package/source/components/_common/IconSVG/SVG/common/Picture.tsx +24 -24
  678. package/source/components/_common/IconSVG/SVG/common/Pictures.tsx +32 -32
  679. package/source/components/_common/IconSVG/SVG/common/Plus.tsx +16 -16
  680. package/source/components/_common/IconSVG/SVG/common/PlusNew.tsx +16 -16
  681. package/source/components/_common/IconSVG/SVG/common/PreparationDashboard.tsx +29 -29
  682. package/source/components/_common/IconSVG/SVG/common/ProfileDashboard.tsx +24 -24
  683. package/source/components/_common/IconSVG/SVG/common/ProfileIcon.tsx +17 -17
  684. package/source/components/_common/IconSVG/SVG/common/Question.tsx +19 -19
  685. package/source/components/_common/IconSVG/SVG/common/QuestionBold.tsx +25 -25
  686. package/source/components/_common/IconSVG/SVG/common/RegistrationDashboard.tsx +31 -31
  687. package/source/components/_common/IconSVG/SVG/common/SavedSearchsIcon.tsx +20 -20
  688. package/source/components/_common/IconSVG/SVG/common/Search.tsx +19 -19
  689. package/source/components/_common/IconSVG/SVG/common/SearchGrey.tsx +22 -22
  690. package/source/components/_common/IconSVG/SVG/common/SettingPenIcon.tsx +20 -20
  691. package/source/components/_common/IconSVG/SVG/common/Share.tsx +16 -16
  692. package/source/components/_common/IconSVG/SVG/common/ShoppingCart.tsx +18 -18
  693. package/source/components/_common/IconSVG/SVG/common/SliderArrow.tsx +21 -21
  694. package/source/components/_common/IconSVG/SVG/common/SliderEye.tsx +17 -17
  695. package/source/components/_common/IconSVG/SVG/common/SortUpDownArrows.tsx +18 -18
  696. package/source/components/_common/IconSVG/SVG/common/Speedometer.tsx +23 -23
  697. package/source/components/_common/IconSVG/SVG/common/Star.tsx +20 -20
  698. package/source/components/_common/IconSVG/SVG/common/StarNew.tsx +16 -16
  699. package/source/components/_common/IconSVG/SVG/common/StarOutline.tsx +20 -20
  700. package/source/components/_common/IconSVG/SVG/common/StarRoundedCorners.tsx +18 -18
  701. package/source/components/_common/IconSVG/SVG/common/Stats.tsx +17 -17
  702. package/source/components/_common/IconSVG/SVG/common/Step1.tsx +21 -21
  703. package/source/components/_common/IconSVG/SVG/common/Step2.tsx +20 -20
  704. package/source/components/_common/IconSVG/SVG/common/Step3.tsx +21 -21
  705. package/source/components/_common/IconSVG/SVG/common/SupportCallbackIcon.tsx +20 -20
  706. package/source/components/_common/IconSVG/SVG/common/Telephone.tsx +22 -22
  707. package/source/components/_common/IconSVG/SVG/common/Time.tsx +17 -17
  708. package/source/components/_common/IconSVG/SVG/common/Timetable.tsx +18 -18
  709. package/source/components/_common/IconSVG/SVG/common/Trash.tsx +22 -22
  710. package/source/components/_common/IconSVG/SVG/common/TrashRed.tsx +23 -23
  711. package/source/components/_common/IconSVG/SVG/common/Upload.tsx +17 -17
  712. package/source/components/_common/IconSVG/SVG/common/UserGrey.tsx +22 -22
  713. package/source/components/_common/IconSVG/SVG/common/UserProfileIcon.tsx +20 -20
  714. package/source/components/_common/IconSVG/SVG/common/ValidateFailure.tsx +21 -21
  715. package/source/components/_common/IconSVG/SVG/common/ValidateSuccess.tsx +21 -21
  716. package/source/components/_common/IconSVG/SVG/common/WarningTriangle.tsx +20 -20
  717. package/source/components/_common/IconSVG/SVG/common/WhiteArrowUp.tsx +21 -21
  718. package/source/components/_common/IconSVG/SVG/common/WhiteKey.tsx +21 -21
  719. package/source/components/_common/IconSVG/SVG/common/WhitePeople.tsx +23 -23
  720. package/source/components/_common/IconSVG/SVG/common/WhiteTick.tsx +19 -19
  721. package/source/components/_common/IconSVG/SVG/flags/AT.tsx +19 -19
  722. package/source/components/_common/IconSVG/SVG/flags/BE.tsx +20 -20
  723. package/source/components/_common/IconSVG/SVG/flags/BG.tsx +20 -20
  724. package/source/components/_common/IconSVG/SVG/flags/CH.tsx +22 -22
  725. package/source/components/_common/IconSVG/SVG/flags/CZ.tsx +18 -18
  726. package/source/components/_common/IconSVG/SVG/flags/DE.tsx +18 -18
  727. package/source/components/_common/IconSVG/SVG/flags/DK.tsx +18 -18
  728. package/source/components/_common/IconSVG/SVG/flags/ES.tsx +2585 -2585
  729. package/source/components/_common/IconSVG/SVG/flags/FI.tsx +18 -18
  730. package/source/components/_common/IconSVG/SVG/flags/FR.tsx +20 -20
  731. package/source/components/_common/IconSVG/SVG/flags/GB.tsx +26 -26
  732. package/source/components/_common/IconSVG/SVG/flags/HR.tsx +135 -135
  733. package/source/components/_common/IconSVG/SVG/flags/HU.tsx +20 -20
  734. package/source/components/_common/IconSVG/SVG/flags/IT.tsx +20 -20
  735. package/source/components/_common/IconSVG/SVG/flags/LI.tsx +106 -106
  736. package/source/components/_common/IconSVG/SVG/flags/LU.tsx +18 -18
  737. package/source/components/_common/IconSVG/SVG/flags/NL.tsx +18 -18
  738. package/source/components/_common/IconSVG/SVG/flags/NO.tsx +20 -20
  739. package/source/components/_common/IconSVG/SVG/flags/PL.tsx +19 -19
  740. package/source/components/_common/IconSVG/SVG/flags/RO.tsx +20 -20
  741. package/source/components/_common/IconSVG/SVG/flags/RU.tsx +20 -20
  742. package/source/components/_common/IconSVG/SVG/flags/SE.tsx +20 -20
  743. package/source/components/_common/IconSVG/SVG/flags/SI.tsx +54 -54
  744. package/source/components/_common/IconSVG/SVG/flags/SK.tsx +34 -34
  745. package/source/components/_common/IconSVG/SVG/flags/UA.tsx +19 -19
  746. package/source/components/_common/IconSVG/SVG/infoBlocks/14DaysReturnPolicy.tsx +18 -18
  747. package/source/components/_common/IconSVG/SVG/infoBlocks/AlertInfo.tsx +19 -19
  748. package/source/components/_common/IconSVG/SVG/infoBlocks/Autocheck.tsx +19 -19
  749. package/source/components/_common/IconSVG/SVG/infoBlocks/CheckTheStory.tsx +22 -22
  750. package/source/components/_common/IconSVG/SVG/infoBlocks/CustomerServiceWhite.tsx +16 -16
  751. package/source/components/_common/IconSVG/SVG/infoBlocks/Guarantee.tsx +16 -16
  752. package/source/components/_common/IconSVG/SVG/infoBlocks/OrderWhite.tsx +13 -13
  753. package/source/components/_common/IconSVG/SVG/infoBlocks/PriceGuarantee.tsx +19 -19
  754. package/source/components/_common/IconSVG/SVG/infoBlocks/PriceGuaranteeWhite.tsx +17 -17
  755. package/source/components/_common/IconSVG/SVG/infoBlocks/TransportAndDelivery.tsx +21 -21
  756. package/source/components/_common/IconSVG/SVG/infoBlocks/Warranty.tsx +23 -23
  757. package/source/components/_common/IconSVG/SVG/popower/Mail.tsx +18 -18
  758. package/source/components/_common/IconSVG/SVG/popower/Phone.tsx +19 -19
  759. package/source/components/_common/IconSVG/SVG/popower/Schedule.tsx +18 -18
  760. package/source/components/_common/IconSVG/SVG/searchWidgets/drive/AAllWheelDrive.tsx +26 -26
  761. package/source/components/_common/IconSVG/SVG/searchWidgets/drive/AllWheelDrive.tsx +26 -26
  762. package/source/components/_common/IconSVG/SVG/searchWidgets/drive/FrontWheelDrive.tsx +25 -25
  763. package/source/components/_common/IconSVG/SVG/searchWidgets/drive/OtherWheelDrive.tsx +26 -26
  764. package/source/components/_common/IconSVG/SVG/searchWidgets/drive/RearWheelDrive.tsx +25 -25
  765. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelDiesel.tsx +18 -18
  766. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelElectrical.tsx +19 -19
  767. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelElectricalDiesel.tsx +34 -34
  768. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelElectricalPetrol.tsx +20 -20
  769. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelEthanol.tsx +53 -53
  770. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelHydrogen.tsx +24 -24
  771. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelLpg.tsx +24 -24
  772. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelNaturalGas.tsx +23 -23
  773. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelOther.tsx +28 -28
  774. package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelPetrol.tsx +18 -18
  775. package/source/components/_common/IconSVG/SVG/settings/Account.tsx +17 -17
  776. package/source/components/_common/IconSVG/SVG/settings/DataUsage.tsx +17 -17
  777. package/source/components/_common/IconSVG/SVG/settings/MarketResearch.tsx +17 -17
  778. package/source/components/_common/IconSVG/SVG/settings/Newsletter.tsx +17 -17
  779. package/source/components/_common/IconSVG/SVG/settings/RemoveEye.tsx +17 -17
  780. package/source/components/_common/IconSVG/SVG/settings/RemoveEyeOff.tsx +17 -17
  781. package/source/components/_common/IconSVG/SVG/settings/Security.tsx +17 -17
  782. package/source/components/_common/IconSVG/SVG/settings/Warning.tsx +17 -17
  783. package/source/components/_common/IconSVG/SVG/slider/360.tsx +23 -23
  784. package/source/components/_common/IconSVG/SVG/slider/360New.tsx +20 -20
  785. package/source/components/_common/IconSVG/SVG/slider/Checked.tsx +19 -19
  786. package/source/components/_common/IconSVG/SVG/slider/DiscountRibbon.tsx +51 -51
  787. package/source/components/_common/IconSVG/SVG/slider/DiscountRibbonMobile.tsx +47 -47
  788. package/source/components/_common/IconSVG/SVG/slider/DiscountRibbonNew.tsx +29 -29
  789. package/source/components/_common/IconSVG/SVG/slider/Easy.tsx +19 -19
  790. package/source/components/_common/IconSVG/SVG/slider/Fullscreen.tsx +16 -16
  791. package/source/components/_common/IconSVG/SVG/slider/FullscreenWindow.tsx +23 -23
  792. package/source/components/_common/IconSVG/SVG/slider/Safe.tsx +19 -19
  793. package/source/components/_common/IconSVG/SVG/slider/ToBuy.tsx +19 -19
  794. package/source/components/_common/IconSVG/SVG/slider/YoutubeButton.tsx +26 -26
  795. package/source/components/_common/IconSVG/SVG/slider/ZoomIn.tsx +21 -21
  796. package/source/components/_common/IconSVG/SVG/slider/ZoomOut.tsx +21 -21
  797. package/source/components/_common/IconSVG/SVG/social/AndroidLogo.tsx +18 -18
  798. package/source/components/_common/IconSVG/SVG/social/Apple.tsx +19 -19
  799. package/source/components/_common/IconSVG/SVG/social/FacebookF.tsx +19 -19
  800. package/source/components/_common/IconSVG/SVG/social/GooglePlusG.tsx +19 -19
  801. package/source/components/_common/IconSVG/SVG/social/Instagram.tsx +17 -17
  802. package/source/components/_common/IconSVG/SVG/social/Pinterest.tsx +19 -19
  803. package/source/components/_common/IconSVG/SVG/social/SharingInterface.tsx +21 -21
  804. package/source/components/_common/IconSVG/SVG/social/Twitter.tsx +19 -19
  805. package/source/components/_common/IconSVG/SVG/social/Youtube.tsx +19 -19
  806. package/source/components/_common/IconSVG/SVG/vehicle/AboIcon.tsx +11 -11
  807. package/source/components/_common/IconSVG/SVG/vehicle/Abs.tsx +24 -24
  808. package/source/components/_common/IconSVG/SVG/vehicle/AirCond.tsx +34 -34
  809. package/source/components/_common/IconSVG/SVG/vehicle/Airbag.tsx +21 -21
  810. package/source/components/_common/IconSVG/SVG/vehicle/AuxiliaryHeating.tsx +23 -23
  811. package/source/components/_common/IconSVG/SVG/vehicle/Bluetooth.tsx +22 -22
  812. package/source/components/_common/IconSVG/SVG/vehicle/BuyIcon.tsx +15 -15
  813. package/source/components/_common/IconSVG/SVG/vehicle/CarAvailability.tsx +22 -22
  814. package/source/components/_common/IconSVG/SVG/vehicle/CarInspectionCheck.tsx +21 -21
  815. package/source/components/_common/IconSVG/SVG/vehicle/CarInspectionCross.tsx +21 -21
  816. package/source/components/_common/IconSVG/SVG/vehicle/CheckoutChecked.tsx +15 -15
  817. package/source/components/_common/IconSVG/SVG/vehicle/Co2.tsx +24 -24
  818. package/source/components/_common/IconSVG/SVG/vehicle/CruiseControl.tsx +25 -25
  819. package/source/components/_common/IconSVG/SVG/vehicle/Date.tsx +21 -21
  820. package/source/components/_common/IconSVG/SVG/vehicle/Delivery.tsx +12 -12
  821. package/source/components/_common/IconSVG/SVG/vehicle/Diesel.tsx +28 -28
  822. package/source/components/_common/IconSVG/SVG/vehicle/Display.tsx +25 -25
  823. package/source/components/_common/IconSVG/SVG/vehicle/Done.tsx +11 -11
  824. package/source/components/_common/IconSVG/SVG/vehicle/Door.tsx +19 -19
  825. package/source/components/_common/IconSVG/SVG/vehicle/DoubleDone.tsx +18 -18
  826. package/source/components/_common/IconSVG/SVG/vehicle/EditIcon.tsx +11 -11
  827. package/source/components/_common/IconSVG/SVG/vehicle/EmergencyBrakeAssistant.tsx +27 -27
  828. package/source/components/_common/IconSVG/SVG/vehicle/Eps.tsx +24 -24
  829. package/source/components/_common/IconSVG/SVG/vehicle/Esp.tsx +24 -24
  830. package/source/components/_common/IconSVG/SVG/vehicle/FinancingIcon.tsx +20 -20
  831. package/source/components/_common/IconSVG/SVG/vehicle/FuelConsumption.tsx +20 -20
  832. package/source/components/_common/IconSVG/SVG/vehicle/Fueling.tsx +22 -22
  833. package/source/components/_common/IconSVG/SVG/vehicle/FullDrive.tsx +24 -24
  834. package/source/components/_common/IconSVG/SVG/vehicle/GasElectric.tsx +28 -28
  835. package/source/components/_common/IconSVG/SVG/vehicle/HandsFreePhoneSystem.tsx +24 -24
  836. package/source/components/_common/IconSVG/SVG/vehicle/Kw.tsx +23 -23
  837. package/source/components/_common/IconSVG/SVG/vehicle/LastCrawledAt.tsx +22 -22
  838. package/source/components/_common/IconSVG/SVG/vehicle/LeasingIcon.tsx +14 -14
  839. package/source/components/_common/IconSVG/SVG/vehicle/Led.tsx +24 -24
  840. package/source/components/_common/IconSVG/SVG/vehicle/LightSensor.tsx +22 -22
  841. package/source/components/_common/IconSVG/SVG/vehicle/LinkAlternative.tsx +15 -15
  842. package/source/components/_common/IconSVG/SVG/vehicle/Location.tsx +17 -17
  843. package/source/components/_common/IconSVG/SVG/vehicle/MinusIcon.tsx +11 -11
  844. package/source/components/_common/IconSVG/SVG/vehicle/Mirror.tsx +19 -19
  845. package/source/components/_common/IconSVG/SVG/vehicle/Navigation.tsx +27 -27
  846. package/source/components/_common/IconSVG/SVG/vehicle/NewCar.tsx +21 -21
  847. package/source/components/_common/IconSVG/SVG/vehicle/NoImage.tsx +17 -17
  848. package/source/components/_common/IconSVG/SVG/vehicle/Owner.tsx +18 -18
  849. package/source/components/_common/IconSVG/SVG/vehicle/PanoramicRoof.tsx +23 -23
  850. package/source/components/_common/IconSVG/SVG/vehicle/ParkingAssistants.tsx +24 -24
  851. package/source/components/_common/IconSVG/SVG/vehicle/PickYourself.tsx +18 -18
  852. package/source/components/_common/IconSVG/SVG/vehicle/PlusIcon.tsx +11 -11
  853. package/source/components/_common/IconSVG/SVG/vehicle/Power.tsx +21 -21
  854. package/source/components/_common/IconSVG/SVG/vehicle/Ps.tsx +19 -19
  855. package/source/components/_common/IconSVG/SVG/vehicle/Question.tsx +24 -24
  856. package/source/components/_common/IconSVG/SVG/vehicle/Seats.tsx +21 -21
  857. package/source/components/_common/IconSVG/SVG/vehicle/SeatsHeating.tsx +26 -26
  858. package/source/components/_common/IconSVG/SVG/vehicle/SelectorGearboxAutomatic.tsx +24 -24
  859. package/source/components/_common/IconSVG/SVG/vehicle/SelectorGearboxManualShift.tsx +19 -19
  860. package/source/components/_common/IconSVG/SVG/vehicle/SelectorGearboxOther.tsx +24 -24
  861. package/source/components/_common/IconSVG/SVG/vehicle/SelectorGearboxSemiAutomatic.tsx +30 -30
  862. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeAlcantara.tsx +225 -225
  863. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeFabric.tsx +29 -29
  864. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeFullLeather.tsx +29 -29
  865. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeOther.tsx +26 -26
  866. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypePartLeather.tsx +142 -142
  867. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeSyntheticLeather.tsx +27 -27
  868. package/source/components/_common/IconSVG/SVG/vehicle/SelectorInteriorTypeVelours.tsx +39 -39
  869. package/source/components/_common/IconSVG/SVG/vehicle/Shield.tsx +39 -39
  870. package/source/components/_common/IconSVG/SVG/vehicle/Speedometer.tsx +17 -17
  871. package/source/components/_common/IconSVG/SVG/vehicle/StartStopSystem.tsx +30 -30
  872. package/source/components/_common/IconSVG/SVG/vehicle/Stop.tsx +25 -25
  873. package/source/components/_common/IconSVG/SVG/vehicle/TickMark.tsx +21 -21
  874. package/source/components/_common/IconSVG/SVG/vehicle/TrafficSignRecognition.tsx +29 -29
  875. package/source/components/_common/IconSVG/SVG/vehicle/TrailerCoupling.tsx +24 -24
  876. package/source/components/_common/IconSVG/SVG/vehicle/Transmission.tsx +27 -27
  877. package/source/components/_common/IconSVG/SVG/vehicle/Wheel.tsx +43 -43
  878. package/source/components/_common/IconSVG/SVG/vehicle/Wipers.tsx +22 -22
  879. package/source/components/_common/IconSVG/SVG/vehicle/Wrench.tsx +17 -17
  880. package/source/components/_common/Image/Image.story.js +142 -142
  881. package/source/components/_common/Image/Image.story.styl +18 -18
  882. package/source/components/_common/Image/Image.styl +109 -109
  883. package/source/components/_common/Image/Image.tsx +302 -302
  884. package/source/components/_common/ImagesSet/ImagesSet.story.js +34 -34
  885. package/source/components/_common/ImagesSet/ImagesSet.story.styl +3 -3
  886. package/source/components/_common/ImagesSet/ImagesSet.styl +27 -27
  887. package/source/components/_common/ImagesSet/ImagesSet.tsx +76 -76
  888. package/source/components/_common/Loader/Loader.story.js +21 -21
  889. package/source/components/_common/Loader/Loader.styl +39 -39
  890. package/source/components/_common/Loader/Loader.tsx +32 -32
  891. package/source/components/_common/MagnifyGlass/MagnifyGlass.styl +33 -33
  892. package/source/components/_common/MagnifyGlass/MagnifyGlass.tsx +213 -213
  893. package/source/components/_common/MaterialAccordion/MaterialAccordion.tsx +141 -141
  894. package/source/components/_common/MaterialAccordionGroup/MaterialAccordionGroup.story.js +49 -49
  895. package/source/components/_common/MaterialAccordionGroup/MaterialAccordionGroup.styled.tsx +71 -71
  896. package/source/components/_common/MaterialAccordionGroup/MaterialAccordionGroup.tsx +40 -40
  897. package/source/components/_common/MaterialAutocomplete/MaterialAutocomplete.styled.tsx +204 -204
  898. package/source/components/_common/MaterialAutocomplete/MaterialAutocomplete.tsx +248 -248
  899. package/source/components/_common/MaterialDatePicker/MaterialDatePicker.story.js +45 -45
  900. package/source/components/_common/MaterialDatePicker/MaterialDatePicker.story.styl +5 -5
  901. package/source/components/_common/MaterialDatePicker/MaterialDatePicker.styled.tsx +20 -20
  902. package/source/components/_common/MaterialDatePicker/MaterialDatePicker.tsx +112 -112
  903. package/source/components/_common/MaterialField/MaterialField.story.js +87 -87
  904. package/source/components/_common/MaterialField/MaterialField.story.styl +33 -33
  905. package/source/components/_common/MaterialField/MaterialField.styled.tsx +52 -52
  906. package/source/components/_common/MaterialField/MaterialField.tsx +132 -132
  907. package/source/components/_common/MaterialSelect/MaterialSelect.story.js +52 -52
  908. package/source/components/_common/MaterialSelect/MaterialSelect.story.styl +5 -5
  909. package/source/components/_common/MaterialSelect/MaterialSelect.styled.tsx +123 -123
  910. package/source/components/_common/MaterialSelect/MaterialSelect.tsx +222 -222
  911. package/source/components/_common/MaterialStepButton/MaterialStepButton.story.js +47 -47
  912. package/source/components/_common/MaterialStepButton/MaterialStepButton.story.styl +5 -5
  913. package/source/components/_common/MaterialStepButton/MaterialStepButton.styl +32 -32
  914. package/source/components/_common/MaterialStepButton/MaterialStepButton.tsx +61 -61
  915. package/source/components/_common/MaterialSwitch/MaterialSwitch.story.js +17 -17
  916. package/source/components/_common/MaterialSwitch/MaterialSwitch.styled.tsx +5 -5
  917. package/source/components/_common/MaterialSwitch/MaterialSwitch.tsx +37 -37
  918. package/source/components/_common/MaterialTooltip/MaterialTooltip.story.js +10 -10
  919. package/source/components/_common/MaterialTooltip/MaterialTooltip.styled.tsx +24 -24
  920. package/source/components/_common/MaterialTooltip/MaterialTooltip.tsx +87 -87
  921. package/source/components/_common/Modal/CookieModal.tsx +49 -49
  922. package/source/components/_common/Modal/Modal.story.js +37 -37
  923. package/source/components/_common/Modal/Modal.styled.tsx +15 -15
  924. package/source/components/_common/Modal/Modal.tsx +24 -24
  925. package/source/components/_common/Modal/ModalsConfig.tsx +23 -23
  926. package/source/components/_common/Modal/modals/ManageCookieModal/ManageCookieModal.styl +86 -86
  927. package/source/components/_common/Modal/modals/ManageCookieModal/ManageCookieModal.tsx +184 -184
  928. package/source/components/_common/Modal/modals/PreviewCookieModal/PreviewCookieModal.styl +66 -66
  929. package/source/components/_common/Modal/modals/PreviewCookieModal/PreviewCookieModal.tsx +51 -51
  930. package/source/components/_common/Modal/modals/TestModal.tsx +7 -7
  931. package/source/components/_common/MuiDropDown/MuiDropDown.tsx +93 -93
  932. package/source/components/_common/MuiGroupedSelect/MuiGroupedSelect.story.js +21 -21
  933. package/source/components/_common/MuiGroupedSelect/MuiGroupedSelect.tsx +87 -87
  934. package/source/components/_common/OfferRequestButtonWrapper/OfferRequestButtonWrapper.styl +119 -119
  935. package/source/components/_common/OfferRequestButtonWrapper/OfferRequestButtonWrapper.styled.tsx +23 -23
  936. package/source/components/_common/OfferRequestButtonWrapper/OfferRequestButtonWrapper.tsx +122 -122
  937. package/source/components/_common/PropertySelector/PSGroup.story.js +93 -93
  938. package/source/components/_common/PropertySelector/PSGroup.story.styl +25 -25
  939. package/source/components/_common/PropertySelector/PSGroup.styl +5 -5
  940. package/source/components/_common/PropertySelector/PSGroup.tsx +98 -98
  941. package/source/components/_common/PropertySelector/PropertySelector.styl +139 -139
  942. package/source/components/_common/PropertySelector/PropertySelector.tsx +100 -100
  943. package/source/components/_common/PropertySelector/ProperySelector.story.js +83 -83
  944. package/source/components/_common/Radio/FormRadioGroup.story.js +28 -28
  945. package/source/components/_common/Radio/FormRadioGroup.story.styl +2 -2
  946. package/source/components/_common/Radio/FormRadioGroup.styl +22 -22
  947. package/source/components/_common/Radio/FormRadioGroup.tsx +77 -77
  948. package/source/components/_common/Radio/Radio.story.js +54 -54
  949. package/source/components/_common/Radio/Radio.styl +115 -115
  950. package/source/components/_common/Radio/Radio.tsx +141 -141
  951. package/source/components/_common/Radio/RadioGroup.story.js +90 -90
  952. package/source/components/_common/Radio/RadioGroup.story.styl +39 -39
  953. package/source/components/_common/Radio/RadioGroup.styl +5 -5
  954. package/source/components/_common/Radio/RadioGroup.tsx +65 -65
  955. package/source/components/_common/Range/Range.story.js +46 -46
  956. package/source/components/_common/Range/Range.story.styl +4 -4
  957. package/source/components/_common/Range/Range.styl +71 -71
  958. package/source/components/_common/Range/Range.tsx +87 -87
  959. package/source/components/_common/Skeleton/SkeletonItem.styl +80 -80
  960. package/source/components/_common/Skeleton/SkeletonItem.tsx +80 -80
  961. package/source/components/_common/Skeleton/SkeletonSearchItem.styl +123 -123
  962. package/source/components/_common/Skeleton/SkeletonSearchItem.tsx +92 -92
  963. package/source/components/_common/Slider/Slider.styl +2 -2
  964. package/source/components/_common/Slider/Slider.tsx +130 -130
  965. package/source/components/_common/SliderArrow/SliderArrow.story.js +18 -18
  966. package/source/components/_common/SliderArrow/SliderArrow.styl +32 -32
  967. package/source/components/_common/SliderArrow/SliderArrow.tsx +36 -36
  968. package/source/components/_common/StarButton/StarButton.styl +39 -39
  969. package/source/components/_common/StarButton/StarButton.tsx +31 -31
  970. package/source/components/_common/Tabs/TabPanel.tsx +28 -28
  971. package/source/components/_common/Tabs/Tabs.story.js +55 -55
  972. package/source/components/_common/Tabs/Tabs.styl +40 -40
  973. package/source/components/_common/Tabs/Tabs.tsx +44 -44
  974. package/source/components/_common/TextAreaField/TextAreaField.styl +47 -47
  975. package/source/components/_common/TextAreaField/TextAreaField.tsx +74 -74
  976. package/source/components/_common/TextField/TextField.styl +37 -37
  977. package/source/components/_common/TextField/TextField.tsx +77 -77
  978. package/source/components/_common/TimePicker/TimePicker.story.js +37 -37
  979. package/source/components/_common/TimePicker/TimePicker.styl +22 -22
  980. package/source/components/_common/TimePicker/TimePicker.tsx +155 -155
  981. package/source/components/_common/Tooltip/Tooltip.story.js +28 -28
  982. package/source/components/_common/Tooltip/Tooltip.styl +117 -117
  983. package/source/components/_common/Tooltip/Tooltip.tsx +62 -62
  984. package/source/components/_common/UserMenu/MaterialMenu.story.js +73 -73
  985. package/source/components/_common/UserMenu/MaterialMenu.styled.tsx +84 -84
  986. package/source/components/_common/UserMenu/MaterialMenu.tsx +101 -101
  987. package/source/components/_common/UserMenu/MaterialMenuItem.tsx +76 -76
  988. package/source/components/_common/UserMenu/NestedMenu.tsx +59 -59
  989. package/source/components/_common/Usp/Usp.styl +78 -78
  990. package/source/components/_common/Usp/Usp.tsx +30 -30
  991. package/source/components/_common/VehicleSlider/VehicleSlider.story.js +99 -99
  992. package/source/components/_common/VehicleSlider/VehicleSlider.styl +62 -62
  993. package/source/components/_common/VehicleSlider/VehicleSlider.tsx +125 -125
  994. package/source/components/_common/VehicleSlider/VehicleSliderForSRL.tsx +175 -174
  995. package/source/components/_common/withLabel/withLabel.story.js +62 -62
  996. package/source/components/_common/withLabel/withLabel.styl +33 -33
  997. package/source/components/_common/withLabel/withLabel.tsx +44 -44
  998. package/source/components/_common/withPopover/withPopover.story.js +48 -48
  999. package/source/components/_common/withPopover/withPopover.story.styl +53 -53
  1000. package/source/components/_common/withPopover/withPopover.styl +3 -3
  1001. package/source/components/_common/withPopover/withPopover.tsx +88 -88
  1002. package/source/components/_common/withStats/withStats.story.js +75 -75
  1003. package/source/components/_common/withStats/withStats.styl +153 -153
  1004. package/source/components/_common/withStats/withStats.tsx +182 -182
  1005. package/source/components/containers/DasboardSection/DashboardSection.styl +14 -14
  1006. package/source/components/containers/DasboardSection/DashboardSection.tsx +23 -23
  1007. package/source/components/containers/SearchPage/FiltersContainer/FiltersContainer.styl +67 -67
  1008. package/source/components/containers/SearchPage/FiltersContainer/FiltersContainer.tsx +463 -463
  1009. package/source/framework/DataTransformers.ts +86 -86
  1010. package/source/framework/constants/RateSearchWidget.ts +15 -15
  1011. package/source/framework/constants/Search.ts +290 -290
  1012. package/source/framework/constants/SearchWidget.ts +108 -108
  1013. package/source/framework/constants/app.ts +223 -223
  1014. package/source/framework/constants/cars.ts +36 -36
  1015. package/source/framework/constants/common.ts +126 -123
  1016. package/source/framework/constants/data.ts +52 -52
  1017. package/source/framework/constants/filters.ts +11 -11
  1018. package/source/framework/constants/highlights.ts +165 -165
  1019. package/source/framework/constants/price.ts +9 -9
  1020. package/source/framework/constants/queryBuilder.ts +4 -4
  1021. package/source/framework/constants/selectors.ts +38 -38
  1022. package/source/framework/constants.ts +131 -131
  1023. package/source/framework/data.ts +6 -6
  1024. package/source/framework/factories/BreadcrumbsFactory.tsx +285 -285
  1025. package/source/framework/factories/FactoryTypes.d.ts +30 -30
  1026. package/source/framework/factories/FilterFactory.ts +364 -364
  1027. package/source/framework/factories/ModalsFactory.tsx +11 -11
  1028. package/source/framework/hooks/useModal.ts +13 -13
  1029. package/source/framework/schemes/AggregationScheme.ts +73 -73
  1030. package/source/framework/types/types.ts +370 -370
  1031. package/source/framework/utils/CommonUtils.ts +645 -645
  1032. package/source/framework/utils/CookieUtils.ts +61 -61
  1033. package/source/framework/utils/DateUtils.ts +101 -101
  1034. package/source/framework/utils/FiltersUtils.ts +234 -234
  1035. package/source/framework/utils/RequestUtils.ts +20 -20
  1036. package/source/framework/utils/StyledComponent.ts +2 -2
  1037. package/source/framework/vehiclesProps/cbdSelectors.ts +117 -117
  1038. package/source/framework/vehiclesProps/decoratedLightProps.tsx +481 -481
  1039. package/source/framework/vehiclesProps/decoratedProps.tsx +1690 -1690
  1040. package/source/framework/vehiclesProps/equipment.ts +129 -129
  1041. package/source/framework/vehiclesProps/highlights.ts +54 -54
  1042. package/source/framework/vehiclesProps/vehicleDetails.ts +426 -426
  1043. package/source/globals.d.ts +18 -18
  1044. package/source/locales/SearchDetailedPage.ts +205 -205
  1045. package/source/locales/SearchPage.ts +224 -224
  1046. package/source/locales/cbd.ts +719 -719
  1047. package/source/locales/common.ts +109 -109
  1048. package/source/locales/data.ts +1112 -1112
  1049. package/source/locales/priceRating.ts +10 -10
  1050. package/source/locales/sortingOptions.ts +21 -21
  1051. package/source/theme/colors.styl +46 -46
  1052. package/source/theme/mixins.styl +93 -93
  1053. package/source/theme/priceReviewColors.styl +12 -12
  1054. package/source/theme/selector_colors.styl +61 -61
  1055. package/source/theme/slider.global.styl +3 -3
  1056. package/source/theme/theme.styl +136 -136
  1057. package/tsconfig.json +65 -65
  1058. package/tslint.json +38 -38
  1059. package/utils.ts +59 -59
@@ -1,588 +1,588 @@
1
- import React from 'react';
2
- import styles from './ContactForm.styl';
3
- import TextAreaField from '../_common/TextAreaField/TextAreaField';
4
- import { MenuItem } from '@mui/material';
5
- import Button from '../_common/Button/Button';
6
- import FormCheckbox from '../_common/Checkbox/FormCheckbox';
7
- import InfoBlockWrapper from '../InfoBlocks/InfoBlockWrapper/InfoBlockWrapper';
8
- import MaterialField from '../_common/MaterialField/MaterialField';
9
- import MaterialSelect from '../_common/MaterialSelect/MaterialSelect';
10
- import _get from 'lodash/get';
11
- import LazyLoad from 'react-lazyload';
12
- // import ReCAPTCHA from 'react-google-recaptcha';
13
-
14
- interface ITranslate {
15
- i18nKey: string;
16
- }
17
- interface IReCAPTCHA {
18
- ref: object;
19
- }
20
-
21
- interface IContactFormProps {
22
- onChangeFieldValue: (value: string | number, name: string) => void;
23
- t?: (string: string) => string;
24
- dataUrl?: string;
25
- privacyPolicyUrl?: string;
26
- isRequested?: boolean;
27
- userUrl?: string;
28
- // Translate?: () => JSX.Element;
29
- Translate?: React.ComponentType<ITranslate>;
30
- form: any;
31
- config: any;
32
- // ReCAPTCHA: JSX.Element;
33
- ReCAPTCHA: React.ComponentType<IReCAPTCHA>;
34
- // LazyLoad: JSX.Element;
35
- reCaptchaRef: string;
36
- createUser: string;
37
- handleFormSubmit: () => void;
38
- isLoading: boolean;
39
- textAreaChange: () => void;
40
- contactFormValues: any;
41
- }
42
-
43
- const ContactForm = (props: any) => {
44
- const [isLoading, setIsLoading] = React.useState(false);
45
- const _reCaptchaRef = React.useRef(null);
46
- const {
47
- t,
48
- dataUrl,
49
- privacyPolicyUrl,
50
- isRequested,
51
- userUrl,
52
- Translate,
53
- config,
54
- ReCAPTCHA,
55
- // LazyLoad,
56
- // reCaptchaRef,
57
- // handleFormSubmit,
58
- // isLoading,s
59
- onChangeFieldValue,
60
- contactFormValues,
61
- textAreaChange
62
- }: IContactFormProps = props;
63
-
64
- const renderTermsLabel = () => {
65
- return (
66
- <Translate i18nKey='contactForm.policy'>
67
- <span className={styles.policy}>
68
- Ich stimme der Verarbeitung meiner Daten, wie in der
69
- <a href={dataUrl} target='_blank' className={styles.link}>Einwilligungserklärung </a>
70
- von auto.de beschrieben, zu. Ich kann diese Einwilligung...
71
- <a href={privacyPolicyUrl} target='_blank' className={styles.link}>Datenschutzerklärung </a> zu.
72
- </span>
73
- </Translate>
74
- );
75
- };
76
-
77
- const createUser = async (createUserData: any) => {
78
- const { profileStore, GoogleTagManager } = props;
79
-
80
- setIsLoading(true);
81
-
82
- try {
83
- const tempPassword = await profileStore.createUserProfileWithoutPassword(createUserData);
84
- GoogleTagManager.pushSuccessCustomerRegistration();
85
- return tempPassword;
86
- } catch (reason) {
87
- const { errors, id }: any = reason; //tslint:disable-line
88
- if (!!id) {
89
- handleErrorWithID(id, reason);
90
- }
91
- handleErrors(errors);
92
- } finally {
93
- setIsLoading(false);
94
- }
95
- };
96
-
97
- const handleFormSubmit = async () => {
98
- const { profileStore, authStore, carStore, t, form } = props;
99
- const { email, firstName, lastName, phoneMain, terms } = form.values();
100
- const createUserData = {
101
- email,
102
- userAddress: {
103
- firstName,
104
- lastName,
105
- phoneMain
106
- },
107
- termsPermissions: {
108
- email: terms,
109
- research: terms,
110
- permissionText: t('modals:offerRequest.permissionText')
111
- }
112
- };
113
-
114
- if (!authStore.isAuthorized) {
115
- const tempPassword = await createUser(createUserData);
116
- await authStore.signIn(email, tempPassword);
117
- await authStore.updateToken();
118
- await profileStore.getProfileData();
119
- }
120
- const token = await _reCaptchaRef.current.executeAsync();
121
- _reCaptchaRef.current.reset();
122
- carStore.setCaptcha(token);
123
-
124
- await sendRequestOffer();
125
-
126
- if (authStore.isAuthorized && !profileStore.hasProfileCompleted && !authStore.isDealer) {
127
- showUpdateProfileModal();
128
- } else if (authStore.isAuthorized) {
129
- showThankYouModal();
130
- }
131
- };
132
-
133
- const handleErrors = (errors: any) => {
134
- const { addNotification, t, form, GoogleTagManager } = props;
135
-
136
- if (Array.isArray(errors)) {
137
- const details: string[] = [];
138
- errors.forEach((error: any) => {
139
- if (error.detail) {
140
- details.push(error.detail);
141
- }
142
- if (error.status === '500') {
143
- addNotification({
144
- message: t('modals:offerRequest.saveDataFailed'),
145
- level: 'error'
146
- });
147
- return;
148
- }
149
- const pointer = _get(error, 'source.pointer', '').split('/');
150
- const fieldName = pointer.length ? pointer[pointer.length - 1] : '';
151
- const errorDetail = _get(error, 'detail', '');
152
- if (form.has(fieldName)) {
153
- addNotification({
154
- message: `Error in field "${fieldName}": ${errorDetail}`,
155
- level: 'error'
156
- });
157
- const field = form.$(fieldName);
158
- if (field.hasNestedFields) {
159
- field.each((item: any) => {
160
- item.invalidate();
161
- });
162
- } else {
163
- field.invalidate(errorDetail);
164
- }
165
- }
166
- });
167
- GoogleTagManager.pushFailureCustomerRegistration(details.join(' | '));
168
- }
169
- };
170
-
171
- // const onCaptchaChange = (captcha: string) => {
172
- // const { carStore } = props;
173
- // carStore.setCaptcha(captcha);
174
- // };
175
-
176
- const handleErrorWithID = (id: string, reason: any) => {
177
- const { addNotification, t } = props;
178
-
179
- addNotification({
180
- message: t('modals:offerRequest.mailAlreadyInUse'),
181
- level: 'error'
182
- });
183
- sendRequestOffer(id);
184
- showLoginRegistrationModal();
185
- throw reason;
186
- };
187
-
188
- const sendInvalidDataContactForm = (form: any, subCategory: string, needValidation: boolean = true, isValid?: boolean) => {
189
- const {
190
- profileStore: { userProfile, submitInvalidContactFormInformation },
191
- authStore: { isAuthorized, userId },
192
- carStore, CookieUtils
193
- } = props;
194
- const carId = _get(carStore, 'car._id', null);
195
- const category = 'offerRequest';
196
- const requestUserId = isAuthorized ? userId : null;
197
- const cookieId = CookieUtils.resolveCookieId() || null;
198
- const dealerId = _get(carStore, 'car.metaData.ownerId', null);
199
- const formData: any = {};
200
-
201
- if (form) {
202
- if (needValidation) {
203
- form.validate();
204
- }
205
-
206
- form.each((field: any) => {
207
- if (!field.hasNestedFields) {
208
- const value = field.values();
209
-
210
- if (field.isValid) {
211
- formData[field.name] = value;
212
- } else if (field.isEmpty) {
213
- formData[field.name] = 'invalid';
214
- } else {
215
- formData[field.name] = `invalidValue - ${value}`;
216
- }
217
- }
218
- });
219
- }
220
-
221
- const submitData = {
222
- carId,
223
- cookieId,
224
- dealerId,
225
- category,
226
- subCategory,
227
- requestUserId,
228
- ...formData
229
- };
230
-
231
- if (isValid) {
232
- submitData.success = true;
233
- }
234
-
235
- if (!submitData.email) {
236
- submitData.email = userProfile.email;
237
- }
238
-
239
- submitInvalidContactFormInformation(submitData);
240
- };
241
-
242
- const hideUpdateProfileModal = () => {
243
- const { hideModal } = props;
244
- hideModal('UPDATE_PROFILE_MODAL');
245
- };
246
-
247
- const hideLoginRegistrationModal = () => {
248
- const { hideModal } = props;
249
- hideModal('LOGIN_REGISTRATION_MODAL');
250
- };
251
-
252
- const hideResetPasswordModal = () => {
253
- const { hideModal } = props;
254
- hideModal('PASSWORD_RESET_MODAL');
255
- };
256
-
257
- const hideResetPasswordConfirmModal = () => {
258
- const { hideModal } = props;
259
- hideModal('PASSWORD_RESET_CONFIRM_MODAL');
260
- };
261
-
262
- const showUpdateProfileModal = () => {
263
- const {
264
- t,
265
- authStore: { isAuthorized },
266
- profileStore: { tempPassword, userProfile, clearTempPassword },
267
- showModal, updateProfileForm
268
- } = props;
269
-
270
- showModal('UPDATE_PROFILE_MODAL', {
271
- t,
272
- isAuthorized,
273
- tempPassword,
274
- userProfile,
275
- onSuccess: () => {
276
- clearTempPassword();
277
- hideUpdateProfileModal();
278
- showThankYouModal();
279
- },
280
- onError: () => {
281
- sendInvalidDataContactForm(updateProfileForm, 'updateProfile', false);
282
- },
283
- onClose: () => {
284
- sendInvalidDataContactForm(updateProfileForm, 'updateProfile');
285
- hideUpdateProfileModal();
286
- showThankYouModal();
287
- }
288
- });
289
- };
290
-
291
- const showThankYouModal = () => {
292
- const { t, carStore, showModal, hideModal, requestedOffers } = props;
293
- const carId = _get(carStore, 'car._id');
294
-
295
- if (requestedOffers.has(carId)) {
296
- showModal('OFFER_REQUEST_THANKS_MODAL', { t, hideModal, showModal });
297
- }
298
- };
299
-
300
- const showResetPasswordConfirmModal = () => {
301
- const { t, showModal } = props;
302
-
303
- showModal('PASSWORD_RESET_CONFIRM_MODAL', {
304
- t,
305
- onSuccess: () => {
306
- hideResetPasswordConfirmModal();
307
- showLoginRegistrationModal();
308
- },
309
- onClose: () => {
310
- hideResetPasswordConfirmModal();
311
- }
312
- });
313
- };
314
-
315
- const showResetPasswordModal = () => {
316
- const { t, showModal } = props;
317
-
318
- showModal('PASSWORD_RESET_MODAL', {
319
- t,
320
- onSuccess: () => {
321
- hideResetPasswordModal();
322
- showResetPasswordConfirmModal();
323
- },
324
- onClose: () => {
325
- hideResetPasswordModal();
326
- }
327
- });
328
- };
329
-
330
- const showLoginRegistrationModal = () => {
331
- const { t, authStore, profileStore, showModal, registerForm, loginForm } = props;
332
-
333
- showModal('LOGIN_REGISTRATION_MODAL', {
334
- t,
335
- currentTab: 1,
336
- onSuccessRegistration: () => {
337
- sendInvalidDataContactForm(registerForm, 'register', false, true);
338
- sendRequestOffer()
339
- .then(() => {
340
- hideLoginRegistrationModal();
341
- showUpdateProfileModal();
342
- });
343
- },
344
- onSuccessLogin: () => {
345
- sendRequestOffer()
346
- .then(() => {
347
- hideLoginRegistrationModal();
348
- if (!profileStore.hasProfileCompleted && !authStore.isDealer) {
349
- showUpdateProfileModal();
350
- } else {
351
- showThankYouModal();
352
- }
353
- });
354
- },
355
- onErrorRegistration: (reason?: any) => {
356
- if (reason && reason.id) {
357
- sendInvalidDataContactForm(registerForm, 'register', false, true);
358
- sendRequestOffer(reason.id);
359
- } else {
360
- sendInvalidDataContactForm(registerForm, 'register', false);
361
- }
362
- },
363
- onErrorLogin: () => {
364
- sendInvalidDataContactForm(loginForm, 'login', false);
365
- },
366
- onCloseRegistration: () => {
367
- sendInvalidDataContactForm(registerForm, 'register');
368
- hideLoginRegistrationModal();
369
- showThankYouModal();
370
- },
371
- onCloseLogin: () => {
372
- sendInvalidDataContactForm(loginForm, 'login');
373
- hideLoginRegistrationModal();
374
- showThankYouModal();
375
- },
376
- onResetPassword: () => {
377
- hideLoginRegistrationModal();
378
- showResetPasswordModal();
379
- }
380
- });
381
- };
382
-
383
- const sendRequestOffer = async (userID?: string) => {
384
- const { carStore, filterStore, getUserConfig, setRequestedOffer, getComputedFinancing, form , Cookies, toJS, GoogleTagManager } = props;
385
- // const { getUserConfig, setRequestedOffer } = financingStore;
386
- const { email, firstName, lastName, phoneMain, agreement, message } = form.values();
387
-
388
- const carId = _get(carStore, 'car._id');
389
- const financingConfig = getUserConfig(carId);
390
- const calculatedInputs = getComputedFinancing(financingConfig);
391
- const historyCalculatedInputs = getComputedFinancing({ ...financingConfig, isStrike: true });
392
- const carPrice = _get(carStore, 'car.price.currentSalesPrice');
393
- const marketingCookies = Cookies.get('marketing');
394
-
395
- const contactFormData: any = {
396
- firstName,
397
- lastName,
398
- email,
399
- message,
400
- phoneMain,
401
- carId,
402
- terms: agreement,
403
- category: 'car_contactForm',
404
- historyFinancingInfo: {
405
- ...historyCalculatedInputs
406
- },
407
- financingInfo: {
408
- ...calculatedInputs
409
- },
410
- financingConfig: {
411
- ...calculatedInputs
412
- }
413
- };
414
-
415
- if (!!userID) {
416
- contactFormData.userId = userID;
417
- }
418
-
419
- const lastSearchString = toJS(filterStore.lastSearchString);
420
-
421
- if (lastSearchString) {
422
- contactFormData.lastSearchString = lastSearchString;
423
- }
424
-
425
- if (marketingCookies) {
426
- contactFormData.marketing = JSON.parse(Cookies.get('marketing'));
427
- }
428
-
429
- await carStore.submitContactForm(contactFormData);
430
- setRequestedOffer(carId);
431
-
432
- GoogleTagManager.pushOfferRequestEvent(carId, carPrice);
433
- GoogleTagManager.pushOfferRequestPurchaseEvent(toJS(carStore.car), contactFormData.financingInfo);
434
- filterStore.clearLastSearchString();
435
-
436
- return Promise.resolve();
437
- };
438
-
439
- const renderCaptcha = () => {
440
- const lazyLoadProps = {
441
- once: true,
442
- offset: 500
443
- };
444
- const captchaProps = {
445
- sitekey: config.recaptchaSiteKey,
446
- size: 'invisible'
447
- };
448
- return (
449
- <div className={styles.recaptcha}>
450
- <LazyLoad {...lazyLoadProps}>
451
- <ReCAPTCHA ref={_reCaptchaRef} {...captchaProps} />
452
- </LazyLoad>
453
- </div>
454
- );
455
- };
456
-
457
- const renderThankYou = () => {
458
- return (
459
- <div className={styles.contentWrap}>
460
- <h4 className={styles.heading}>{t('contactForm.thanks')}</h4>
461
- <div className={styles.text}>{t('contactForm.thanksMessage')}</div>
462
- </div>
463
- );
464
- };
465
-
466
- const renderForm = () => {
467
- const { t, carStore: { formStatus }, authStore, profileStore } = props;
468
- const isLoadingCurrent = authStore.isAuthFetching || profileStore.profileLoading || isLoading;
469
- return (
470
- <form className={styles.form}>
471
- <MaterialField
472
- onChange={value => onChangeFieldValue(value , 'firstName')}
473
- label={t('contactForm.firstName')}
474
- size='custom'
475
- value={contactFormValues.firstName.value}
476
- // classNameInputLabel={styles.labelForm}
477
- type={contactFormValues.firstName.type}
478
- error={contactFormValues.firstName.hasError && !!contactFormValues.firstName.error}
479
- required={contactFormValues.firstName.value === '' ? true : false}
480
- className={styles[contactFormValues.firstName.name]}
481
- // helperText={contactFormValues.firstName.error}
482
- />
483
- <MaterialField
484
- onChange={value => onChangeFieldValue(value , 'lastName')}
485
- label={t('contactForm.lastName')}
486
- size='custom'
487
- value={contactFormValues.lastName.value}
488
- // classNameInputLabel={styles.labelForm}
489
- type={contactFormValues.lastName.type}
490
- error={contactFormValues.lastName.hasError && !!contactFormValues.lastName.error}
491
- required={contactFormValues.lastName.value === '' ? true : false}
492
- className={styles[contactFormValues.lastName.name]}
493
- // helperText={contactFormValues.lastName.error}
494
- />
495
- <MaterialField
496
- onChange={value => onChangeFieldValue(value , 'email')}
497
- label={t('contactForm.email')}
498
- value={contactFormValues.email.value}
499
- size='custom'
500
- // classNameInputLabel={styles.labelForm}
501
- type={contactFormValues.email.type}
502
- error={contactFormValues.email.hasError && !!contactFormValues.email.error}
503
- required={contactFormValues.email.value === '' ? true : false}
504
- className={styles[contactFormValues.email.name]}
505
- // helperText={contactFormValues.email.error}
506
- />
507
- <MaterialSelect
508
- className={styles[contactFormValues.countryCode.name]}
509
- label={t('contactForm.countryCodePlaceholder')}
510
- size='custom'
511
- value={typeof contactFormValues.countryCode.value === 'string' ? contactFormValues.countryCode.value : contactFormValues.countryCode.value.value}
512
- onChange={value => onChangeFieldValue(value , 'phoneMain.countryCode')}
513
- error={contactFormValues.countryCode.hasError && !!contactFormValues.countryCode.error}
514
- required={contactFormValues.countryCode.value === '' ? true : false}
515
- classNameIcon={styles.selectIcon}
516
- >
517
- {contactFormValues.countryCode.extra.map(({ value, label } : { value: string, label: string }) => (
518
- <MenuItem key={label} value={value}>{label}</MenuItem>
519
- ))}
520
- </MaterialSelect>
521
- <MaterialField
522
- onChange={value => onChangeFieldValue(value , 'phoneMain.areaCode')}
523
- label={t('contactForm.areaCodePlaceholder')}
524
- value={contactFormValues.areaCode.value}
525
- size='custom'
526
- // classNameInputLabel={styles.labelForm}
527
- type={contactFormValues.areaCode.type}
528
- error={contactFormValues.areaCode.hasError && !!contactFormValues.areaCode.error}
529
- required={contactFormValues.areaCode.value === '' ? true : false}
530
- className={styles[contactFormValues.areaCode.name]}
531
- // helperText={contactFormValues.areaCode.error}
532
- />
533
- <MaterialField
534
- onChange={value => onChangeFieldValue(value , 'phoneMain.phoneNumber')}
535
- label={t('contactForm.phoneNumberPlaceholder')}
536
- size='custom'
537
- value={contactFormValues.phoneNumber.value}
538
- // classNameInputLabel={styles.labelForm}
539
- type={contactFormValues.phoneNumber.type}
540
- error={contactFormValues.phoneNumber.hasError && !!contactFormValues.phoneNumber.error}
541
- required={contactFormValues.phoneNumber.value === '' ? true : false}
542
- className={styles[contactFormValues.phoneNumber.name]}
543
- // helperText={contactFormValues.phoneNumber.error}
544
- />
545
- <TextAreaField
546
- showPlaceholder={true}
547
- name={contactFormValues.message.name}
548
- value={contactFormValues.message.value}
549
- fieldClassName={styles.messageField}
550
- label={t(`${contactFormValues.message.placeHolder}`)}
551
- className={styles[contactFormValues.message.name]}
552
- onChange={textAreaChange}
553
- />
554
-
555
- <div className={styles.confirmBlock}>
556
- <span className={styles.termsConditionsLabel}>
557
- <Translate i18nKey='contactForm.termsConditions'>
558
- <a href={userUrl} target='_blank' className={styles.link}>Nutzungsbedingungen</a>
559
- </Translate>
560
- </span>
561
- <FormCheckbox checkboxClassName={styles.checkboxField} field={contactFormValues.checkBox} label={renderTermsLabel()} />
562
- </div>
563
- {renderCaptcha()}
564
- <Button
565
- disabled={formStatus === 'pending' || !contactFormValues.formIsValid}
566
- onClick={handleFormSubmit}
567
- color='primary'
568
- className={styles.formSubmit}
569
- loading={isLoadingCurrent}
570
- >
571
- {formStatus === 'pending' && <span className={styles.spinnerWait} /> || t('contactForm.send')}
572
- </Button>
573
- </form>
574
- );
575
- };
576
- return (
577
- <InfoBlockWrapper containerClassName={styles.container} title={t('contactForm.title')}>
578
- <div className={styles.contentWrap}>
579
- <p>{t('contactForm.topText1')}</p>
580
- <p>{t('contactForm.topText2')} <a className={styles.link} href={dataUrl} target='_blank'>{t('contactForm.topTextLink')}</a></p>
581
- <p>{t('contactForm.topText3')}</p>
582
- </div>
583
- {!isRequested ? renderForm() : renderThankYou()}
584
- </InfoBlockWrapper>
585
- );
586
- };
587
-
588
- export default ContactForm;
1
+ import React from 'react';
2
+ import styles from './ContactForm.styl';
3
+ import TextAreaField from '../_common/TextAreaField/TextAreaField';
4
+ import { MenuItem } from '@mui/material';
5
+ import Button from '../_common/Button/Button';
6
+ import FormCheckbox from '../_common/Checkbox/FormCheckbox';
7
+ import InfoBlockWrapper from '../InfoBlocks/InfoBlockWrapper/InfoBlockWrapper';
8
+ import MaterialField from '../_common/MaterialField/MaterialField';
9
+ import MaterialSelect from '../_common/MaterialSelect/MaterialSelect';
10
+ import _get from 'lodash/get';
11
+ import LazyLoad from 'react-lazyload';
12
+ // import ReCAPTCHA from 'react-google-recaptcha';
13
+
14
+ interface ITranslate {
15
+ i18nKey: string;
16
+ }
17
+ interface IReCAPTCHA {
18
+ ref: object;
19
+ }
20
+
21
+ interface IContactFormProps {
22
+ onChangeFieldValue: (value: string | number, name: string) => void;
23
+ t?: (string: string) => string;
24
+ dataUrl?: string;
25
+ privacyPolicyUrl?: string;
26
+ isRequested?: boolean;
27
+ userUrl?: string;
28
+ // Translate?: () => JSX.Element;
29
+ Translate?: React.ComponentType<ITranslate>;
30
+ form: any;
31
+ config: any;
32
+ // ReCAPTCHA: JSX.Element;
33
+ ReCAPTCHA: React.ComponentType<IReCAPTCHA>;
34
+ // LazyLoad: JSX.Element;
35
+ reCaptchaRef: string;
36
+ createUser: string;
37
+ handleFormSubmit: () => void;
38
+ isLoading: boolean;
39
+ textAreaChange: () => void;
40
+ contactFormValues: any;
41
+ }
42
+
43
+ const ContactForm = (props: any) => {
44
+ const [isLoading, setIsLoading] = React.useState(false);
45
+ const _reCaptchaRef = React.useRef(null);
46
+ const {
47
+ t,
48
+ dataUrl,
49
+ privacyPolicyUrl,
50
+ isRequested,
51
+ userUrl,
52
+ Translate,
53
+ config,
54
+ ReCAPTCHA,
55
+ // LazyLoad,
56
+ // reCaptchaRef,
57
+ // handleFormSubmit,
58
+ // isLoading,s
59
+ onChangeFieldValue,
60
+ contactFormValues,
61
+ textAreaChange
62
+ }: IContactFormProps = props;
63
+
64
+ const renderTermsLabel = () => {
65
+ return (
66
+ <Translate i18nKey='contactForm.policy'>
67
+ <span className={styles.policy}>
68
+ Ich stimme der Verarbeitung meiner Daten, wie in der
69
+ <a href={dataUrl} target='_blank' className={styles.link}>Einwilligungserklärung </a>
70
+ von auto.de beschrieben, zu. Ich kann diese Einwilligung...
71
+ <a href={privacyPolicyUrl} target='_blank' className={styles.link}>Datenschutzerklärung </a> zu.
72
+ </span>
73
+ </Translate>
74
+ );
75
+ };
76
+
77
+ const createUser = async (createUserData: any) => {
78
+ const { profileStore, GoogleTagManager } = props;
79
+
80
+ setIsLoading(true);
81
+
82
+ try {
83
+ const tempPassword = await profileStore.createUserProfileWithoutPassword(createUserData);
84
+ GoogleTagManager.pushSuccessCustomerRegistration();
85
+ return tempPassword;
86
+ } catch (reason) {
87
+ const { errors, id }: any = reason; //tslint:disable-line
88
+ if (!!id) {
89
+ handleErrorWithID(id, reason);
90
+ }
91
+ handleErrors(errors);
92
+ } finally {
93
+ setIsLoading(false);
94
+ }
95
+ };
96
+
97
+ const handleFormSubmit = async () => {
98
+ const { profileStore, authStore, carStore, t, form } = props;
99
+ const { email, firstName, lastName, phoneMain, terms } = form.values();
100
+ const createUserData = {
101
+ email,
102
+ userAddress: {
103
+ firstName,
104
+ lastName,
105
+ phoneMain
106
+ },
107
+ termsPermissions: {
108
+ email: terms,
109
+ research: terms,
110
+ permissionText: t('modals:offerRequest.permissionText')
111
+ }
112
+ };
113
+
114
+ if (!authStore.isAuthorized) {
115
+ const tempPassword = await createUser(createUserData);
116
+ await authStore.signIn(email, tempPassword);
117
+ await authStore.updateToken();
118
+ await profileStore.getProfileData();
119
+ }
120
+ const token = await _reCaptchaRef.current.executeAsync();
121
+ _reCaptchaRef.current.reset();
122
+ carStore.setCaptcha(token);
123
+
124
+ await sendRequestOffer();
125
+
126
+ if (authStore.isAuthorized && !profileStore.hasProfileCompleted && !authStore.isDealer) {
127
+ showUpdateProfileModal();
128
+ } else if (authStore.isAuthorized) {
129
+ showThankYouModal();
130
+ }
131
+ };
132
+
133
+ const handleErrors = (errors: any) => {
134
+ const { addNotification, t, form, GoogleTagManager } = props;
135
+
136
+ if (Array.isArray(errors)) {
137
+ const details: string[] = [];
138
+ errors.forEach((error: any) => {
139
+ if (error.detail) {
140
+ details.push(error.detail);
141
+ }
142
+ if (error.status === '500') {
143
+ addNotification({
144
+ message: t('modals:offerRequest.saveDataFailed'),
145
+ level: 'error'
146
+ });
147
+ return;
148
+ }
149
+ const pointer = _get(error, 'source.pointer', '').split('/');
150
+ const fieldName = pointer.length ? pointer[pointer.length - 1] : '';
151
+ const errorDetail = _get(error, 'detail', '');
152
+ if (form.has(fieldName)) {
153
+ addNotification({
154
+ message: `Error in field "${fieldName}": ${errorDetail}`,
155
+ level: 'error'
156
+ });
157
+ const field = form.$(fieldName);
158
+ if (field.hasNestedFields) {
159
+ field.each((item: any) => {
160
+ item.invalidate();
161
+ });
162
+ } else {
163
+ field.invalidate(errorDetail);
164
+ }
165
+ }
166
+ });
167
+ GoogleTagManager.pushFailureCustomerRegistration(details.join(' | '));
168
+ }
169
+ };
170
+
171
+ // const onCaptchaChange = (captcha: string) => {
172
+ // const { carStore } = props;
173
+ // carStore.setCaptcha(captcha);
174
+ // };
175
+
176
+ const handleErrorWithID = (id: string, reason: any) => {
177
+ const { addNotification, t } = props;
178
+
179
+ addNotification({
180
+ message: t('modals:offerRequest.mailAlreadyInUse'),
181
+ level: 'error'
182
+ });
183
+ sendRequestOffer(id);
184
+ showLoginRegistrationModal();
185
+ throw reason;
186
+ };
187
+
188
+ const sendInvalidDataContactForm = (form: any, subCategory: string, needValidation: boolean = true, isValid?: boolean) => {
189
+ const {
190
+ profileStore: { userProfile, submitInvalidContactFormInformation },
191
+ authStore: { isAuthorized, userId },
192
+ carStore, CookieUtils
193
+ } = props;
194
+ const carId = _get(carStore, 'car._id', null);
195
+ const category = 'offerRequest';
196
+ const requestUserId = isAuthorized ? userId : null;
197
+ const cookieId = CookieUtils.resolveCookieId() || null;
198
+ const dealerId = _get(carStore, 'car.metaData.ownerId', null);
199
+ const formData: any = {};
200
+
201
+ if (form) {
202
+ if (needValidation) {
203
+ form.validate();
204
+ }
205
+
206
+ form.each((field: any) => {
207
+ if (!field.hasNestedFields) {
208
+ const value = field.values();
209
+
210
+ if (field.isValid) {
211
+ formData[field.name] = value;
212
+ } else if (field.isEmpty) {
213
+ formData[field.name] = 'invalid';
214
+ } else {
215
+ formData[field.name] = `invalidValue - ${value}`;
216
+ }
217
+ }
218
+ });
219
+ }
220
+
221
+ const submitData = {
222
+ carId,
223
+ cookieId,
224
+ dealerId,
225
+ category,
226
+ subCategory,
227
+ requestUserId,
228
+ ...formData
229
+ };
230
+
231
+ if (isValid) {
232
+ submitData.success = true;
233
+ }
234
+
235
+ if (!submitData.email) {
236
+ submitData.email = userProfile.email;
237
+ }
238
+
239
+ submitInvalidContactFormInformation(submitData);
240
+ };
241
+
242
+ const hideUpdateProfileModal = () => {
243
+ const { hideModal } = props;
244
+ hideModal('UPDATE_PROFILE_MODAL');
245
+ };
246
+
247
+ const hideLoginRegistrationModal = () => {
248
+ const { hideModal } = props;
249
+ hideModal('LOGIN_REGISTRATION_MODAL');
250
+ };
251
+
252
+ const hideResetPasswordModal = () => {
253
+ const { hideModal } = props;
254
+ hideModal('PASSWORD_RESET_MODAL');
255
+ };
256
+
257
+ const hideResetPasswordConfirmModal = () => {
258
+ const { hideModal } = props;
259
+ hideModal('PASSWORD_RESET_CONFIRM_MODAL');
260
+ };
261
+
262
+ const showUpdateProfileModal = () => {
263
+ const {
264
+ t,
265
+ authStore: { isAuthorized },
266
+ profileStore: { tempPassword, userProfile, clearTempPassword },
267
+ showModal, updateProfileForm
268
+ } = props;
269
+
270
+ showModal('UPDATE_PROFILE_MODAL', {
271
+ t,
272
+ isAuthorized,
273
+ tempPassword,
274
+ userProfile,
275
+ onSuccess: () => {
276
+ clearTempPassword();
277
+ hideUpdateProfileModal();
278
+ showThankYouModal();
279
+ },
280
+ onError: () => {
281
+ sendInvalidDataContactForm(updateProfileForm, 'updateProfile', false);
282
+ },
283
+ onClose: () => {
284
+ sendInvalidDataContactForm(updateProfileForm, 'updateProfile');
285
+ hideUpdateProfileModal();
286
+ showThankYouModal();
287
+ }
288
+ });
289
+ };
290
+
291
+ const showThankYouModal = () => {
292
+ const { t, carStore, showModal, hideModal, requestedOffers } = props;
293
+ const carId = _get(carStore, 'car._id');
294
+
295
+ if (requestedOffers.has(carId)) {
296
+ showModal('OFFER_REQUEST_THANKS_MODAL', { t, hideModal, showModal });
297
+ }
298
+ };
299
+
300
+ const showResetPasswordConfirmModal = () => {
301
+ const { t, showModal } = props;
302
+
303
+ showModal('PASSWORD_RESET_CONFIRM_MODAL', {
304
+ t,
305
+ onSuccess: () => {
306
+ hideResetPasswordConfirmModal();
307
+ showLoginRegistrationModal();
308
+ },
309
+ onClose: () => {
310
+ hideResetPasswordConfirmModal();
311
+ }
312
+ });
313
+ };
314
+
315
+ const showResetPasswordModal = () => {
316
+ const { t, showModal } = props;
317
+
318
+ showModal('PASSWORD_RESET_MODAL', {
319
+ t,
320
+ onSuccess: () => {
321
+ hideResetPasswordModal();
322
+ showResetPasswordConfirmModal();
323
+ },
324
+ onClose: () => {
325
+ hideResetPasswordModal();
326
+ }
327
+ });
328
+ };
329
+
330
+ const showLoginRegistrationModal = () => {
331
+ const { t, authStore, profileStore, showModal, registerForm, loginForm } = props;
332
+
333
+ showModal('LOGIN_REGISTRATION_MODAL', {
334
+ t,
335
+ currentTab: 1,
336
+ onSuccessRegistration: () => {
337
+ sendInvalidDataContactForm(registerForm, 'register', false, true);
338
+ sendRequestOffer()
339
+ .then(() => {
340
+ hideLoginRegistrationModal();
341
+ showUpdateProfileModal();
342
+ });
343
+ },
344
+ onSuccessLogin: () => {
345
+ sendRequestOffer()
346
+ .then(() => {
347
+ hideLoginRegistrationModal();
348
+ if (!profileStore.hasProfileCompleted && !authStore.isDealer) {
349
+ showUpdateProfileModal();
350
+ } else {
351
+ showThankYouModal();
352
+ }
353
+ });
354
+ },
355
+ onErrorRegistration: (reason?: any) => {
356
+ if (reason && reason.id) {
357
+ sendInvalidDataContactForm(registerForm, 'register', false, true);
358
+ sendRequestOffer(reason.id);
359
+ } else {
360
+ sendInvalidDataContactForm(registerForm, 'register', false);
361
+ }
362
+ },
363
+ onErrorLogin: () => {
364
+ sendInvalidDataContactForm(loginForm, 'login', false);
365
+ },
366
+ onCloseRegistration: () => {
367
+ sendInvalidDataContactForm(registerForm, 'register');
368
+ hideLoginRegistrationModal();
369
+ showThankYouModal();
370
+ },
371
+ onCloseLogin: () => {
372
+ sendInvalidDataContactForm(loginForm, 'login');
373
+ hideLoginRegistrationModal();
374
+ showThankYouModal();
375
+ },
376
+ onResetPassword: () => {
377
+ hideLoginRegistrationModal();
378
+ showResetPasswordModal();
379
+ }
380
+ });
381
+ };
382
+
383
+ const sendRequestOffer = async (userID?: string) => {
384
+ const { carStore, filterStore, getUserConfig, setRequestedOffer, getComputedFinancing, form , Cookies, toJS, GoogleTagManager } = props;
385
+ // const { getUserConfig, setRequestedOffer } = financingStore;
386
+ const { email, firstName, lastName, phoneMain, agreement, message } = form.values();
387
+
388
+ const carId = _get(carStore, 'car._id');
389
+ const financingConfig = getUserConfig(carId);
390
+ const calculatedInputs = getComputedFinancing(financingConfig);
391
+ const historyCalculatedInputs = getComputedFinancing({ ...financingConfig, isStrike: true });
392
+ const carPrice = _get(carStore, 'car.price.currentSalesPrice');
393
+ const marketingCookies = Cookies.get('marketing');
394
+
395
+ const contactFormData: any = {
396
+ firstName,
397
+ lastName,
398
+ email,
399
+ message,
400
+ phoneMain,
401
+ carId,
402
+ terms: agreement,
403
+ category: 'car_contactForm',
404
+ historyFinancingInfo: {
405
+ ...historyCalculatedInputs
406
+ },
407
+ financingInfo: {
408
+ ...calculatedInputs
409
+ },
410
+ financingConfig: {
411
+ ...calculatedInputs
412
+ }
413
+ };
414
+
415
+ if (!!userID) {
416
+ contactFormData.userId = userID;
417
+ }
418
+
419
+ const lastSearchString = toJS(filterStore.lastSearchString);
420
+
421
+ if (lastSearchString) {
422
+ contactFormData.lastSearchString = lastSearchString;
423
+ }
424
+
425
+ if (marketingCookies) {
426
+ contactFormData.marketing = JSON.parse(Cookies.get('marketing'));
427
+ }
428
+
429
+ await carStore.submitContactForm(contactFormData);
430
+ setRequestedOffer(carId);
431
+
432
+ GoogleTagManager.pushOfferRequestEvent(carId, carPrice);
433
+ GoogleTagManager.pushOfferRequestPurchaseEvent(toJS(carStore.car), contactFormData.financingInfo);
434
+ filterStore.clearLastSearchString();
435
+
436
+ return Promise.resolve();
437
+ };
438
+
439
+ const renderCaptcha = () => {
440
+ const lazyLoadProps = {
441
+ once: true,
442
+ offset: 500
443
+ };
444
+ const captchaProps = {
445
+ sitekey: config.recaptchaSiteKey,
446
+ size: 'invisible'
447
+ };
448
+ return (
449
+ <div className={styles.recaptcha}>
450
+ <LazyLoad {...lazyLoadProps}>
451
+ <ReCAPTCHA ref={_reCaptchaRef} {...captchaProps} />
452
+ </LazyLoad>
453
+ </div>
454
+ );
455
+ };
456
+
457
+ const renderThankYou = () => {
458
+ return (
459
+ <div className={styles.contentWrap}>
460
+ <h4 className={styles.heading}>{t('contactForm.thanks')}</h4>
461
+ <div className={styles.text}>{t('contactForm.thanksMessage')}</div>
462
+ </div>
463
+ );
464
+ };
465
+
466
+ const renderForm = () => {
467
+ const { t, carStore: { formStatus }, authStore, profileStore } = props;
468
+ const isLoadingCurrent = authStore.isAuthFetching || profileStore.profileLoading || isLoading;
469
+ return (
470
+ <form className={styles.form}>
471
+ <MaterialField
472
+ onChange={value => onChangeFieldValue(value , 'firstName')}
473
+ label={t('contactForm.firstName')}
474
+ size='custom'
475
+ value={contactFormValues.firstName.value}
476
+ // classNameInputLabel={styles.labelForm}
477
+ type={contactFormValues.firstName.type}
478
+ error={contactFormValues.firstName.hasError && !!contactFormValues.firstName.error}
479
+ required={contactFormValues.firstName.value === '' ? true : false}
480
+ className={styles[contactFormValues.firstName.name]}
481
+ // helperText={contactFormValues.firstName.error}
482
+ />
483
+ <MaterialField
484
+ onChange={value => onChangeFieldValue(value , 'lastName')}
485
+ label={t('contactForm.lastName')}
486
+ size='custom'
487
+ value={contactFormValues.lastName.value}
488
+ // classNameInputLabel={styles.labelForm}
489
+ type={contactFormValues.lastName.type}
490
+ error={contactFormValues.lastName.hasError && !!contactFormValues.lastName.error}
491
+ required={contactFormValues.lastName.value === '' ? true : false}
492
+ className={styles[contactFormValues.lastName.name]}
493
+ // helperText={contactFormValues.lastName.error}
494
+ />
495
+ <MaterialField
496
+ onChange={value => onChangeFieldValue(value , 'email')}
497
+ label={t('contactForm.email')}
498
+ value={contactFormValues.email.value}
499
+ size='custom'
500
+ // classNameInputLabel={styles.labelForm}
501
+ type={contactFormValues.email.type}
502
+ error={contactFormValues.email.hasError && !!contactFormValues.email.error}
503
+ required={contactFormValues.email.value === '' ? true : false}
504
+ className={styles[contactFormValues.email.name]}
505
+ // helperText={contactFormValues.email.error}
506
+ />
507
+ <MaterialSelect
508
+ className={styles[contactFormValues.countryCode.name]}
509
+ label={t('contactForm.countryCodePlaceholder')}
510
+ size='custom'
511
+ value={typeof contactFormValues.countryCode.value === 'string' ? contactFormValues.countryCode.value : contactFormValues.countryCode.value.value}
512
+ onChange={value => onChangeFieldValue(value , 'phoneMain.countryCode')}
513
+ error={contactFormValues.countryCode.hasError && !!contactFormValues.countryCode.error}
514
+ required={contactFormValues.countryCode.value === '' ? true : false}
515
+ classNameIcon={styles.selectIcon}
516
+ >
517
+ {contactFormValues.countryCode.extra.map(({ value, label } : { value: string, label: string }) => (
518
+ <MenuItem key={label} value={value}>{label}</MenuItem>
519
+ ))}
520
+ </MaterialSelect>
521
+ <MaterialField
522
+ onChange={value => onChangeFieldValue(value , 'phoneMain.areaCode')}
523
+ label={t('contactForm.areaCodePlaceholder')}
524
+ value={contactFormValues.areaCode.value}
525
+ size='custom'
526
+ // classNameInputLabel={styles.labelForm}
527
+ type={contactFormValues.areaCode.type}
528
+ error={contactFormValues.areaCode.hasError && !!contactFormValues.areaCode.error}
529
+ required={contactFormValues.areaCode.value === '' ? true : false}
530
+ className={styles[contactFormValues.areaCode.name]}
531
+ // helperText={contactFormValues.areaCode.error}
532
+ />
533
+ <MaterialField
534
+ onChange={value => onChangeFieldValue(value , 'phoneMain.phoneNumber')}
535
+ label={t('contactForm.phoneNumberPlaceholder')}
536
+ size='custom'
537
+ value={contactFormValues.phoneNumber.value}
538
+ // classNameInputLabel={styles.labelForm}
539
+ type={contactFormValues.phoneNumber.type}
540
+ error={contactFormValues.phoneNumber.hasError && !!contactFormValues.phoneNumber.error}
541
+ required={contactFormValues.phoneNumber.value === '' ? true : false}
542
+ className={styles[contactFormValues.phoneNumber.name]}
543
+ // helperText={contactFormValues.phoneNumber.error}
544
+ />
545
+ <TextAreaField
546
+ showPlaceholder={true}
547
+ name={contactFormValues.message.name}
548
+ value={contactFormValues.message.value}
549
+ fieldClassName={styles.messageField}
550
+ label={t(`${contactFormValues.message.placeHolder}`)}
551
+ className={styles[contactFormValues.message.name]}
552
+ onChange={textAreaChange}
553
+ />
554
+
555
+ <div className={styles.confirmBlock}>
556
+ <span className={styles.termsConditionsLabel}>
557
+ <Translate i18nKey='contactForm.termsConditions'>
558
+ <a href={userUrl} target='_blank' className={styles.link}>Nutzungsbedingungen</a>
559
+ </Translate>
560
+ </span>
561
+ <FormCheckbox checkboxClassName={styles.checkboxField} field={contactFormValues.checkBox} label={renderTermsLabel()} />
562
+ </div>
563
+ {renderCaptcha()}
564
+ <Button
565
+ disabled={formStatus === 'pending' || !contactFormValues.formIsValid}
566
+ onClick={handleFormSubmit}
567
+ color='primary'
568
+ className={styles.formSubmit}
569
+ loading={isLoadingCurrent}
570
+ >
571
+ {formStatus === 'pending' && <span className={styles.spinnerWait} /> || t('contactForm.send')}
572
+ </Button>
573
+ </form>
574
+ );
575
+ };
576
+ return (
577
+ <InfoBlockWrapper containerClassName={styles.container} title={t('contactForm.title')}>
578
+ <div className={styles.contentWrap}>
579
+ <p>{t('contactForm.topText1')}</p>
580
+ <p>{t('contactForm.topText2')} <a className={styles.link} href={dataUrl} target='_blank'>{t('contactForm.topTextLink')}</a></p>
581
+ <p>{t('contactForm.topText3')}</p>
582
+ </div>
583
+ {!isRequested ? renderForm() : renderThankYou()}
584
+ </InfoBlockWrapper>
585
+ );
586
+ };
587
+
588
+ export default ContactForm;