@bytebrand/fe-ui-core-autobahn 1.0.1 → 1.0.3

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 (621) hide show
  1. package/assets/autode-logo.svg +6 -6
  2. package/cards/CarCard.tsx +174 -174
  3. package/cards/CarRow.tsx +186 -182
  4. package/cards/cardParts.tsx +529 -489
  5. package/cards/index.ts +37 -35
  6. package/cards/types.ts +124 -114
  7. package/chrome/Footer.tsx +189 -189
  8. package/chrome/TopBar.tsx +405 -405
  9. package/chrome/index.ts +20 -20
  10. package/chrome/svg.d.ts +11 -11
  11. package/compat/AccardionSection/AccardionSection.styl +45 -45
  12. package/compat/AccardionSection/AccardionSection.tsx +56 -56
  13. package/compat/AccordionWidget/AccordionWidget.styl +220 -220
  14. package/compat/AccordionWidget/AccordionWidget.tsx +257 -257
  15. package/compat/AccordionWrapper/AccordionItem/AccordionItem.styl +34 -34
  16. package/compat/AccordionWrapper/AccordionItem/AccordionItem.tsx +64 -64
  17. package/compat/AccordionWrapper/AccordionWrapper.tsx +34 -34
  18. package/compat/AdvantageItem/AdvantageItem.styl +47 -47
  19. package/compat/AdvantageItem/AdvantageItem.tsx +26 -26
  20. package/compat/Alternative/DealerInfo.styl +116 -116
  21. package/compat/Alternative/DealerInfo.tsx +171 -171
  22. package/compat/Badge/Badge.styl +44 -44
  23. package/compat/Badge/Badge.tsx +25 -25
  24. package/compat/BodyTypeIcons/Audi.tsx +9 -9
  25. package/compat/BodyTypeIcons/Bmw.tsx +860 -860
  26. package/compat/BodyTypeIcons/Ford.tsx +31 -31
  27. package/compat/BodyTypeIcons/IconsConfig.tsx +44 -44
  28. package/compat/BodyTypeIcons/IconsConfigCompact.tsx +30 -30
  29. package/compat/BodyTypeIcons/Mazda.tsx +44 -44
  30. package/compat/BodyTypeIcons/MercedesBenz.tsx +38 -38
  31. package/compat/BodyTypeIcons/Opel.tsx +19 -19
  32. package/compat/BodyTypeIcons/Search.tsx +19 -19
  33. package/compat/BodyTypeIcons/SelectorCategoryCombi.tsx +68 -68
  34. package/compat/BodyTypeIcons/SelectorCategoryCompact.tsx +20 -20
  35. package/compat/BodyTypeIcons/SelectorCategoryConvertible.tsx +68 -68
  36. package/compat/BodyTypeIcons/SelectorCategoryCoupe.tsx +60 -60
  37. package/compat/BodyTypeIcons/SelectorCategoryMinibus.tsx +64 -64
  38. package/compat/BodyTypeIcons/SelectorCategorySedan.tsx +69 -69
  39. package/compat/BodyTypeIcons/SelectorCategorySuv.tsx +77 -77
  40. package/compat/BodyTypeIcons/SelectorCategoryTransporter.tsx +68 -68
  41. package/compat/BodyTypeIcons/SelectorCategoryVan.tsx +72 -72
  42. package/compat/BodyTypeIcons/Volkswagen.tsx +330 -330
  43. package/compat/BodyTypeIcons/index.ts +17 -17
  44. package/compat/Button/Button.tsx +65 -65
  45. package/compat/ButtonOld/Button.styl +65 -65
  46. package/compat/ButtonOld/Button.tsx +84 -84
  47. package/compat/Checkbox/Checkbox.styl +119 -119
  48. package/compat/Checkbox/Checkbox.tsx +151 -151
  49. package/compat/Checkbox/FormCheckbox.styl +22 -22
  50. package/compat/Checkbox/FormCheckbox.tsx +86 -86
  51. package/compat/Co2Widget/CO2Efficiency.styl +219 -219
  52. package/compat/Co2Widget/CO2Efficiency.tsx +93 -93
  53. package/compat/ContactInfo/ContactInfo.styl +22 -22
  54. package/compat/ContactInfo/ContactInfo.tsx +161 -161
  55. package/compat/ContactInfo/TemporaryTranslation.ts +11 -11
  56. package/compat/CookieModal/CookieModal.tsx +49 -49
  57. package/compat/CookieModal/Modal.tsx +43 -43
  58. package/compat/CookieModal/ModalsConfig.tsx +23 -23
  59. package/compat/CookieModal/modals/ManageCookieModal/ManageCookieModal.styl +86 -86
  60. package/compat/CookieModal/modals/ManageCookieModal/ManageCookieModal.tsx +184 -184
  61. package/compat/CookieModal/modals/PreviewCookieModal/PreviewCookieModal.styl +66 -66
  62. package/compat/CookieModal/modals/PreviewCookieModal/PreviewCookieModal.tsx +51 -51
  63. package/compat/CookieModal/modals/TestModal.tsx +7 -7
  64. package/compat/CookieModal/useModal.ts +13 -13
  65. package/compat/CustomerQuote/CustomerQuote.styl +79 -79
  66. package/compat/CustomerQuote/CustomerQuote.tsx +68 -68
  67. package/compat/CustomerQuotesSlider/CustomerQuotesSlider.styl +46 -46
  68. package/compat/CustomerQuotesSlider/CustomerQuotesSlider.tsx +79 -79
  69. package/compat/CustomerQuotesSlider/SliderArrow.tsx +20 -20
  70. package/compat/CustomerQuotesSlider/slider.global.styl +2 -2
  71. package/compat/ExpansionPanel/ExpansionPanel.tsx +68 -68
  72. package/compat/FirstInfoBlock/FirstInfoBlock.styl +33 -33
  73. package/compat/FirstInfoBlock/FirstInfoBlock.tsx +49 -49
  74. package/compat/FirstInfoBlock/FirstInfoBlockItem/FirstInfoBlockItem.styl +66 -66
  75. package/compat/FirstInfoBlock/FirstInfoBlockItem/FirstInfoBlockItem.tsx +21 -21
  76. package/compat/FormattedNumber/FormattedNumber.styl +1 -1
  77. package/compat/FormattedNumber/FormattedNumber.tsx +90 -90
  78. package/compat/IconContainer/IconContainer.styl +23 -23
  79. package/compat/IconContainer/IconContainer.tsx +34 -34
  80. package/compat/Image/Image.styl +109 -109
  81. package/compat/Image/Image.tsx +302 -302
  82. package/compat/ImageSettings/EditableOptionsTable/CustomCheckbox/CustomCheckbox.styl +7 -7
  83. package/compat/ImageSettings/EditableOptionsTable/CustomCheckbox/CustomCheckbox.tsx +30 -30
  84. package/compat/ImageSettings/EditableOptionsTable/EditableOptionsTable.styl +122 -122
  85. package/compat/ImageSettings/EditableOptionsTable/EditableOptionsTable.tsx +199 -199
  86. package/compat/ImageSettings/EditableOptionsTable/ImageIcon/ImageIcon.styl +3 -3
  87. package/compat/ImageSettings/EditableOptionsTable/ImageIcon/ImageIcon.tsx +15 -15
  88. package/compat/ImageSettings/OptionsTable/OptionsTable.styl +47 -47
  89. package/compat/ImageSettings/OptionsTable/OptionsTable.tsx +122 -122
  90. package/compat/ImageSettings/PricePlan/PricePlan.styl +63 -63
  91. package/compat/ImageSettings/PricePlan/PricePlan.tsx +32 -32
  92. package/compat/ImageSettings/index.ts +42 -42
  93. package/compat/ImagesSet/ImagesSet.styl +27 -27
  94. package/compat/ImagesSet/ImagesSet.tsx +76 -76
  95. package/compat/InfoBlockWrapper/InfoBlockWrapper.styl +41 -41
  96. package/compat/InfoBlockWrapper/InfoBlockWrapper.tsx +46 -46
  97. package/compat/Loader/Loader.styl +39 -39
  98. package/compat/Loader/Loader.tsx +32 -32
  99. package/compat/MagnifyGlass/MagnifyGlass.styl +33 -33
  100. package/compat/MagnifyGlass/MagnifyGlass.tsx +213 -213
  101. package/compat/MdAccordionGroup/MdAccordionGroup.tsx +53 -53
  102. package/compat/MdCheckbox/MdCheckbox.tsx +69 -69
  103. package/compat/MdField/MdField.tsx +100 -100
  104. package/compat/MdSelect/MdSelect.tsx +103 -103
  105. package/compat/MdSwitch/MdSwitch.tsx +29 -29
  106. package/compat/MdTabs/MdTabs.tsx +47 -47
  107. package/compat/MdTooltip/MdTooltip.tsx +31 -31
  108. package/compat/OfferDetailedSection/OfferDetailedSection.styl +31 -31
  109. package/compat/OfferDetailedSection/OfferDetailedSection.tsx +100 -100
  110. package/compat/OfferDetailedSection/partials/PanelConfig.styl +131 -131
  111. package/compat/OfferDetailedSection/partials/PanelConfig.tsx +121 -121
  112. package/compat/OfferPanel/AboAccordion/AboAccordion.styl +24 -24
  113. package/compat/OfferPanel/AboAccordion/AboAccordion.tsx +128 -128
  114. package/compat/OfferPanel/AboAccordion/AboColorOptions/AboColorOptions.styl +11 -11
  115. package/compat/OfferPanel/AboAccordion/AboColorOptions/AboColorOptions.tsx +35 -35
  116. package/compat/OfferPanel/AboAccordion/AboFaq/AboFaq.styl +20 -20
  117. package/compat/OfferPanel/AboAccordion/AboFaq/AboFaq.tsx +25 -25
  118. package/compat/OfferPanel/AboAccordion/AboIncludedServices/AboIncludedServices.styl +13 -13
  119. package/compat/OfferPanel/AboAccordion/AboIncludedServices/AboIncludedServices.tsx +39 -39
  120. package/compat/OfferPanel/MuiOfferPeriod/MuiOfferPeriod.tsx +42 -42
  121. package/compat/OfferPanel/OfferCheckboxGroup/CheckboxContainer.tsx +140 -140
  122. package/compat/OfferPanel/OfferCheckboxGroup/OfferCheckboxGroup.styl +144 -144
  123. package/compat/OfferPanel/OfferCheckboxGroup/OfferCheckboxGroup.tsx +23 -23
  124. package/compat/OfferPanel/OfferPanel.styl +193 -193
  125. package/compat/OfferPanel/OfferPanel.tsx +81 -81
  126. package/compat/OfferPanel/OfferPeriod/OfferPeriod.styl +24 -24
  127. package/compat/OfferPanel/OfferPeriod/OfferPeriod.tsx +45 -45
  128. package/compat/OfferPanel/RangeGroup/RangeGroup.tsx +39 -39
  129. package/compat/OfferRequestButtonWrapper/OfferRequestButtonWrapper.styl +119 -119
  130. package/compat/OfferRequestButtonWrapper/OfferRequestButtonWrapper.styled.tsx +33 -33
  131. package/compat/OfferRequestButtonWrapper/OfferRequestButtonWrapper.tsx +122 -122
  132. package/compat/PriceRating/PriceRating.styl +47 -47
  133. package/compat/PriceRating/PriceRating.tsx +64 -64
  134. package/compat/PriceRatingDetailed/PriceRatingDetailed.styl +120 -120
  135. package/compat/PriceRatingDetailed/PriceRatingDetailed.tsx +191 -191
  136. package/compat/PricingToolBlock/PricingTool.styl +6 -6
  137. package/compat/PricingToolBlock/PricingTool.tsx +29 -29
  138. package/compat/Radio/Radio.styl +115 -115
  139. package/compat/Radio/Radio.tsx +141 -141
  140. package/compat/Radio/RadioGroup.styl +5 -5
  141. package/compat/Radio/RadioGroup.tsx +65 -65
  142. package/compat/Range/Range.tsx +79 -79
  143. package/compat/RateSearchValue/RateSearchValue.styl +22 -22
  144. package/compat/RateSearchValue/RateSearchValue.tsx +55 -55
  145. package/compat/RateSearchWidget/RateSearchWidget.styl +106 -106
  146. package/compat/RateSearchWidget/RateSearchWidget.tsx +163 -163
  147. package/compat/ServiceBlockItem/ServiceBlockItem.styl +47 -47
  148. package/compat/ServiceBlockItem/ServiceBlockItem.tsx +25 -25
  149. package/compat/SkeletonItem/SkeletonItem.styl +80 -80
  150. package/compat/SkeletonItem/SkeletonItem.tsx +80 -80
  151. package/compat/StarButton/StarButton.styl +39 -39
  152. package/compat/StarButton/StarButton.tsx +31 -31
  153. package/compat/TabPanel/TabPanel.tsx +28 -28
  154. package/compat/TimePicker/TimePicker.styl +22 -22
  155. package/compat/TimePicker/TimePicker.tsx +156 -156
  156. package/compat/Tooltip/Tooltip.styl +117 -117
  157. package/compat/Tooltip/Tooltip.tsx +63 -63
  158. package/compat/Usp/Usp.styl +78 -78
  159. package/compat/Usp/Usp.tsx +30 -30
  160. package/compat/Usp/uspTranslate.ts +12 -12
  161. package/compat/VehicleDetailedSidebar/VehicleDetailedSidebar.styl +36 -36
  162. package/compat/VehicleDetailedSidebar/VehicleDetailedSidebar.tsx +178 -178
  163. package/compat/VehicleDetailedSidebar/partials/Price.styl +27 -27
  164. package/compat/VehicleDetailedSidebar/partials/Price.tsx +41 -41
  165. package/compat/VehicleDetailedSidebar/partials/PriceContent.styl +123 -123
  166. package/compat/VehicleDetailedSidebar/partials/PriceContent.tsx +128 -128
  167. package/compat/VehicleDetailedSidebar/partials/Properties.styl +58 -58
  168. package/compat/VehicleDetailedSidebar/partials/Properties.tsx +155 -155
  169. package/compat/VehicleDetailedSidebar/partials/Title.styl +35 -35
  170. package/compat/VehicleDetailedSidebar/partials/Title.tsx +33 -33
  171. package/compat/VehicleDetailedSlider/VehicleDetailedSlider.styl +146 -146
  172. package/compat/VehicleDetailedSlider/VehicleDetailedSlider.tsx +382 -382
  173. package/compat/VehicleDetailedSlider/partials/MobileStast.tsx +61 -61
  174. package/compat/VehicleDetailedSlider/partials/MobileStats.styl +71 -71
  175. package/compat/VehicleDetailedSlider/partials/PriceData.styl +50 -50
  176. package/compat/VehicleDetailedSlider/partials/PriceData.tsx +67 -67
  177. package/compat/VehicleDetailedSlider/partials/Stats.styl +80 -80
  178. package/compat/VehicleDetailedSlider/partials/Stats.tsx +62 -62
  179. package/compat/VehicleDetailedSlider/partials/Title.styl +44 -44
  180. package/compat/VehicleDetailedSlider/partials/Title.tsx +36 -36
  181. package/compat/VehicleFormattedPrice/VehicleFormattedPrice.styl +148 -148
  182. package/compat/VehicleFormattedPrice/VehicleFormattedPrice.tsx +163 -163
  183. package/compat/VehicleSlider/VehicleSlider.styl +62 -62
  184. package/compat/VehicleSlider/VehicleSlider.tsx +125 -125
  185. package/compat/VehicleSlider/VehicleSliderForSRL.tsx +175 -175
  186. package/compat/VehicleSmallCard/SeoText/SeoText.styl +8 -8
  187. package/compat/VehicleSmallCard/SeoText/SeoText.tsx +16 -16
  188. package/compat/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.styl +204 -204
  189. package/compat/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.tsx +199 -199
  190. package/compat/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.styl +273 -273
  191. package/compat/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.tsx +179 -179
  192. package/compat/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.styl +165 -165
  193. package/compat/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.tsx +299 -299
  194. package/compat/VehicleSmallCard/VehicleData/VehicleProperty/VehicleProperty.styl +32 -32
  195. package/compat/VehicleSmallCard/VehicleData/VehicleProperty/VehicleProperty.tsx +35 -35
  196. package/compat/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.styl +135 -135
  197. package/compat/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.tsx +91 -91
  198. package/compat/VehicleSmallCard/VehicleSmallCard.styl +309 -309
  199. package/compat/VehicleSmallCard/VehicleSmallCard.tsx +448 -448
  200. package/compat/index.ts +77 -77
  201. package/compat/legacy-theme/mixins.styl +93 -93
  202. package/compat/legacy-theme/priceReviewColors.styl +12 -12
  203. package/compat/legacy-theme/slider.global.styl +5 -5
  204. package/compat/legacy-theme/theme.styl +136 -136
  205. package/compat/withLabel/withLabel.styl +33 -33
  206. package/compat/withLabel/withLabel.tsx +44 -44
  207. package/compat/withStats/withStats.styl +174 -174
  208. package/compat/withStats/withStats.tsx +238 -238
  209. package/constants/RateSearchWidget.ts +15 -15
  210. package/constants/Search.ts +290 -290
  211. package/constants/SearchWidget.ts +108 -108
  212. package/constants/app.ts +223 -223
  213. package/constants/common.ts +127 -127
  214. package/constants/core.ts +131 -131
  215. package/constants/highlights.ts +165 -165
  216. package/constants/price.ts +9 -9
  217. package/constants/selectors.ts +38 -38
  218. package/constants.ts +91 -91
  219. package/data/DataTransformers.ts +88 -88
  220. package/data/fieldMapping.ts +364 -342
  221. package/data/toAutobahnCar.ts +455 -442
  222. package/iconsvg/IconSVG.tsx +30 -30
  223. package/iconsvg/IconSVGConfig.tsx +768 -768
  224. package/iconsvg/SVG/AboPartner.tsx +16 -16
  225. package/iconsvg/SVG/ArrowQuotes.tsx +22 -22
  226. package/iconsvg/SVG/CloseIcon.tsx +17 -17
  227. package/iconsvg/SVG/CloseIconSelect.tsx +18 -18
  228. package/iconsvg/SVG/ClosedLockIcon.tsx +18 -18
  229. package/iconsvg/SVG/DealerCheckIcon.tsx +18 -18
  230. package/iconsvg/SVG/DealerPopoverMail.tsx +21 -21
  231. package/iconsvg/SVG/DealerPopoverPhone.tsx +21 -21
  232. package/iconsvg/SVG/GrayPhoneIcon.tsx +22 -22
  233. package/iconsvg/SVG/InternetIcon.tsx +18 -18
  234. package/iconsvg/SVG/WhiteEnvelopeIcon.tsx +21 -21
  235. package/iconsvg/SVG/bodyType/Cabrio.tsx +23 -23
  236. package/iconsvg/SVG/bodyType/Coupe.tsx +22 -22
  237. package/iconsvg/SVG/bodyType/Minibus.tsx +22 -22
  238. package/iconsvg/SVG/bodyType/Other.tsx +25 -25
  239. package/iconsvg/SVG/bodyType/Sedan.tsx +22 -22
  240. package/iconsvg/SVG/bodyType/SelectorCategoryCombi.tsx +68 -68
  241. package/iconsvg/SVG/bodyType/SelectorCategoryCompact.tsx +20 -20
  242. package/iconsvg/SVG/bodyType/SelectorCategoryConvertible.tsx +68 -68
  243. package/iconsvg/SVG/bodyType/SelectorCategoryCoupe.tsx +60 -60
  244. package/iconsvg/SVG/bodyType/SelectorCategoryMinibus.tsx +64 -64
  245. package/iconsvg/SVG/bodyType/SelectorCategoryOther.tsx +60 -60
  246. package/iconsvg/SVG/bodyType/SelectorCategorySedan.tsx +69 -69
  247. package/iconsvg/SVG/bodyType/SelectorCategorySuv.tsx +77 -77
  248. package/iconsvg/SVG/bodyType/SelectorCategoryTransporter.tsx +68 -68
  249. package/iconsvg/SVG/bodyType/SelectorCategoryVan.tsx +72 -72
  250. package/iconsvg/SVG/bodyType/Small.tsx +23 -23
  251. package/iconsvg/SVG/bodyType/Suv.tsx +23 -23
  252. package/iconsvg/SVG/bodyType/Van.tsx +23 -23
  253. package/iconsvg/SVG/bodyType/Wagon.tsx +23 -23
  254. package/iconsvg/SVG/common/AddIcon.tsx +16 -16
  255. package/iconsvg/SVG/common/AddPlus.tsx +16 -16
  256. package/iconsvg/SVG/common/AddressDashboard.tsx +29 -29
  257. package/iconsvg/SVG/common/AddressIcon.tsx +20 -20
  258. package/iconsvg/SVG/common/ArrowDetailedAccordionBlue.tsx +26 -26
  259. package/iconsvg/SVG/common/ArrowDownBlue.tsx +21 -21
  260. package/iconsvg/SVG/common/ArrowSelect.tsx +23 -23
  261. package/iconsvg/SVG/common/ArrowStepDown.tsx +18 -18
  262. package/iconsvg/SVG/common/Autocheck.tsx +19 -19
  263. package/iconsvg/SVG/common/AutodeLogo.tsx +36 -36
  264. package/iconsvg/SVG/common/Avatar.tsx +17 -17
  265. package/iconsvg/SVG/common/BellGray.tsx +19 -19
  266. package/iconsvg/SVG/common/BigInfoTransparent.tsx +13 -13
  267. package/iconsvg/SVG/common/Browse.tsx +20 -20
  268. package/iconsvg/SVG/common/Calendar.tsx +24 -24
  269. package/iconsvg/SVG/common/CallbackDashboard.tsx +30 -30
  270. package/iconsvg/SVG/common/Camera.tsx +17 -17
  271. package/iconsvg/SVG/common/Car.tsx +16 -16
  272. package/iconsvg/SVG/common/CarBody.tsx +19 -19
  273. package/iconsvg/SVG/common/CarFront.tsx +43 -43
  274. package/iconsvg/SVG/common/CarInspectionCheck.tsx +21 -21
  275. package/iconsvg/SVG/common/CarInspectionScheme0.tsx +32 -32
  276. package/iconsvg/SVG/common/CarInspectionScheme1.tsx +53 -53
  277. package/iconsvg/SVG/common/CarInspectionScheme2.tsx +52 -52
  278. package/iconsvg/SVG/common/CarInspectionScheme3.tsx +32 -32
  279. package/iconsvg/SVG/common/CarInspectionScheme4.tsx +32 -32
  280. package/iconsvg/SVG/common/CarInspectionScheme5.tsx +32 -32
  281. package/iconsvg/SVG/common/CarInspectionScheme6.tsx +32 -32
  282. package/iconsvg/SVG/common/CarInspectionSchemeGeneral copy.tsx +24 -24
  283. package/iconsvg/SVG/common/CarInspectionSchemeGeneral.tsx +24 -24
  284. package/iconsvg/SVG/common/CheckBlue.tsx +18 -18
  285. package/iconsvg/SVG/common/CheckGreen.tsx +22 -22
  286. package/iconsvg/SVG/common/CheckMark.tsx +16 -16
  287. package/iconsvg/SVG/common/CheckWhite.tsx +19 -19
  288. package/iconsvg/SVG/common/Chevron.tsx +17 -17
  289. package/iconsvg/SVG/common/CircledCheckmark.tsx +25 -25
  290. package/iconsvg/SVG/common/Clock.tsx +18 -18
  291. package/iconsvg/SVG/common/Close.tsx +19 -19
  292. package/iconsvg/SVG/common/CloseGrey.tsx +22 -22
  293. package/iconsvg/SVG/common/ContactEmail.tsx +21 -21
  294. package/iconsvg/SVG/common/ContactPhone.tsx +28 -28
  295. package/iconsvg/SVG/common/CopyIcon copy.tsx +22 -22
  296. package/iconsvg/SVG/common/CopyIcon.tsx +22 -22
  297. package/iconsvg/SVG/common/CopyIconForDealer.tsx +21 -21
  298. package/iconsvg/SVG/common/DashboardIcon.tsx +20 -20
  299. package/iconsvg/SVG/common/DashboardQuestionMark.tsx +20 -20
  300. package/iconsvg/SVG/common/DealersIcon.tsx +20 -20
  301. package/iconsvg/SVG/common/DeleteCircle.tsx +31 -31
  302. package/iconsvg/SVG/common/DeleteV1Icon.tsx +18 -18
  303. package/iconsvg/SVG/common/DeliveryDashboard.tsx +25 -25
  304. package/iconsvg/SVG/common/DeliveryMail.tsx +24 -24
  305. package/iconsvg/SVG/common/Discount100De.tsx +18 -18
  306. package/iconsvg/SVG/common/Discount100En.tsx +19 -19
  307. package/iconsvg/SVG/common/Discount66De.tsx +28 -28
  308. package/iconsvg/SVG/common/Discount66En.tsx +20 -20
  309. package/iconsvg/SVG/common/DoneIcon.tsx +18 -18
  310. package/iconsvg/SVG/common/EditCircle.tsx +32 -32
  311. package/iconsvg/SVG/common/EditPriceIcon.tsx +20 -20
  312. package/iconsvg/SVG/common/EuroCurrency.tsx +18 -18
  313. package/iconsvg/SVG/common/Export.tsx +20 -20
  314. package/iconsvg/SVG/common/Eye.tsx +17 -17
  315. package/iconsvg/SVG/common/EyeCatch.tsx +19 -19
  316. package/iconsvg/SVG/common/FavoritesIcon.tsx +20 -20
  317. package/iconsvg/SVG/common/FilterRange.tsx +16 -16
  318. package/iconsvg/SVG/common/FilterToolBlack.tsx +23 -23
  319. package/iconsvg/SVG/common/FlagDe.tsx +21 -21
  320. package/iconsvg/SVG/common/FlagEn.tsx +43 -43
  321. package/iconsvg/SVG/common/GrayEnvelopeIcon.tsx +19 -19
  322. package/iconsvg/SVG/common/HamburgerMenuIcon.tsx +18 -18
  323. package/iconsvg/SVG/common/HandingOverDashboard.tsx +32 -32
  324. package/iconsvg/SVG/common/ImageSettingsIcon.tsx +20 -20
  325. package/iconsvg/SVG/common/Info.tsx +16 -16
  326. package/iconsvg/SVG/common/InfoIcon.tsx +17 -17
  327. package/iconsvg/SVG/common/InfoTransparent.tsx +18 -18
  328. package/iconsvg/SVG/common/LogoutIcon.tsx +20 -20
  329. package/iconsvg/SVG/common/MagnifyingGlass.tsx +31 -31
  330. package/iconsvg/SVG/common/MenuArrow.tsx +16 -16
  331. package/iconsvg/SVG/common/MenuGrey.tsx +22 -22
  332. package/iconsvg/SVG/common/MobileDeLogo.tsx +108 -108
  333. package/iconsvg/SVG/common/MyOrderIcon.tsx +20 -20
  334. package/iconsvg/SVG/common/MyVehiclesIcon.tsx +20 -20
  335. package/iconsvg/SVG/common/NewFlagDe.tsx +25 -25
  336. package/iconsvg/SVG/common/NewFlagEn.tsx +34 -34
  337. package/iconsvg/SVG/common/OrderReceivedDashboard.tsx +27 -27
  338. package/iconsvg/SVG/common/Package.tsx +30 -30
  339. package/iconsvg/SVG/common/Phone.tsx +18 -18
  340. package/iconsvg/SVG/common/PhoneGrey.tsx +22 -22
  341. package/iconsvg/SVG/common/PickupDashboard.tsx +30 -30
  342. package/iconsvg/SVG/common/Picture.tsx +24 -24
  343. package/iconsvg/SVG/common/Pictures.tsx +32 -32
  344. package/iconsvg/SVG/common/Plus.tsx +16 -16
  345. package/iconsvg/SVG/common/PlusNew.tsx +16 -16
  346. package/iconsvg/SVG/common/PreparationDashboard.tsx +29 -29
  347. package/iconsvg/SVG/common/ProfileDashboard.tsx +24 -24
  348. package/iconsvg/SVG/common/ProfileIcon.tsx +17 -17
  349. package/iconsvg/SVG/common/Question.tsx +19 -19
  350. package/iconsvg/SVG/common/QuestionBold.tsx +25 -25
  351. package/iconsvg/SVG/common/RegistrationDashboard.tsx +31 -31
  352. package/iconsvg/SVG/common/SavedSearchsIcon.tsx +20 -20
  353. package/iconsvg/SVG/common/Search.tsx +19 -19
  354. package/iconsvg/SVG/common/SearchGrey.tsx +22 -22
  355. package/iconsvg/SVG/common/SettingPenIcon.tsx +20 -20
  356. package/iconsvg/SVG/common/Share.tsx +16 -16
  357. package/iconsvg/SVG/common/ShoppingCart.tsx +18 -18
  358. package/iconsvg/SVG/common/SliderArrow.tsx +21 -21
  359. package/iconsvg/SVG/common/SliderEye.tsx +17 -17
  360. package/iconsvg/SVG/common/SortUpDownArrows.tsx +18 -18
  361. package/iconsvg/SVG/common/Speedometer.tsx +23 -23
  362. package/iconsvg/SVG/common/Star.tsx +20 -20
  363. package/iconsvg/SVG/common/StarNew.tsx +16 -16
  364. package/iconsvg/SVG/common/StarOutline.tsx +20 -20
  365. package/iconsvg/SVG/common/StarRoundedCorners.tsx +18 -18
  366. package/iconsvg/SVG/common/Stats.tsx +17 -17
  367. package/iconsvg/SVG/common/Step1.tsx +21 -21
  368. package/iconsvg/SVG/common/Step2.tsx +20 -20
  369. package/iconsvg/SVG/common/Step3.tsx +21 -21
  370. package/iconsvg/SVG/common/SupportCallbackIcon.tsx +20 -20
  371. package/iconsvg/SVG/common/Telephone.tsx +22 -22
  372. package/iconsvg/SVG/common/Time.tsx +17 -17
  373. package/iconsvg/SVG/common/Timetable.tsx +18 -18
  374. package/iconsvg/SVG/common/Trash.tsx +22 -22
  375. package/iconsvg/SVG/common/TrashRed.tsx +23 -23
  376. package/iconsvg/SVG/common/Upload.tsx +17 -17
  377. package/iconsvg/SVG/common/UserGrey.tsx +22 -22
  378. package/iconsvg/SVG/common/UserProfileIcon.tsx +20 -20
  379. package/iconsvg/SVG/common/ValidateFailure.tsx +21 -21
  380. package/iconsvg/SVG/common/ValidateSuccess.tsx +21 -21
  381. package/iconsvg/SVG/common/WarningTriangle.tsx +20 -20
  382. package/iconsvg/SVG/common/WhiteArrowUp.tsx +21 -21
  383. package/iconsvg/SVG/common/WhiteKey.tsx +21 -21
  384. package/iconsvg/SVG/common/WhitePeople.tsx +23 -23
  385. package/iconsvg/SVG/common/WhiteTick.tsx +19 -19
  386. package/iconsvg/SVG/flags/AT.tsx +19 -19
  387. package/iconsvg/SVG/flags/BE.tsx +20 -20
  388. package/iconsvg/SVG/flags/BG.tsx +20 -20
  389. package/iconsvg/SVG/flags/CH.tsx +22 -22
  390. package/iconsvg/SVG/flags/CZ.tsx +18 -18
  391. package/iconsvg/SVG/flags/DE.tsx +18 -18
  392. package/iconsvg/SVG/flags/DK.tsx +18 -18
  393. package/iconsvg/SVG/flags/ES.tsx +2585 -2585
  394. package/iconsvg/SVG/flags/FI.tsx +18 -18
  395. package/iconsvg/SVG/flags/FR.tsx +20 -20
  396. package/iconsvg/SVG/flags/GB.tsx +26 -26
  397. package/iconsvg/SVG/flags/HR.tsx +135 -135
  398. package/iconsvg/SVG/flags/HU.tsx +20 -20
  399. package/iconsvg/SVG/flags/IT.tsx +20 -20
  400. package/iconsvg/SVG/flags/LI.tsx +106 -106
  401. package/iconsvg/SVG/flags/LU.tsx +18 -18
  402. package/iconsvg/SVG/flags/NL.tsx +18 -18
  403. package/iconsvg/SVG/flags/NO.tsx +20 -20
  404. package/iconsvg/SVG/flags/PL.tsx +19 -19
  405. package/iconsvg/SVG/flags/RO.tsx +20 -20
  406. package/iconsvg/SVG/flags/RU.tsx +20 -20
  407. package/iconsvg/SVG/flags/SE.tsx +20 -20
  408. package/iconsvg/SVG/flags/SI.tsx +54 -54
  409. package/iconsvg/SVG/flags/SK.tsx +34 -34
  410. package/iconsvg/SVG/flags/UA.tsx +19 -19
  411. package/iconsvg/SVG/infoBlocks/14DaysReturnPolicy.tsx +18 -18
  412. package/iconsvg/SVG/infoBlocks/AlertInfo.tsx +19 -19
  413. package/iconsvg/SVG/infoBlocks/Autocheck.tsx +19 -19
  414. package/iconsvg/SVG/infoBlocks/CheckTheStory.tsx +22 -22
  415. package/iconsvg/SVG/infoBlocks/CustomerServiceWhite.tsx +16 -16
  416. package/iconsvg/SVG/infoBlocks/Guarantee.tsx +16 -16
  417. package/iconsvg/SVG/infoBlocks/OrderWhite.tsx +13 -13
  418. package/iconsvg/SVG/infoBlocks/PriceGuarantee.tsx +19 -19
  419. package/iconsvg/SVG/infoBlocks/PriceGuaranteeWhite.tsx +17 -17
  420. package/iconsvg/SVG/infoBlocks/TransportAndDelivery.tsx +21 -21
  421. package/iconsvg/SVG/infoBlocks/Warranty.tsx +23 -23
  422. package/iconsvg/SVG/popower/Mail.tsx +18 -18
  423. package/iconsvg/SVG/popower/Phone.tsx +19 -19
  424. package/iconsvg/SVG/popower/Schedule.tsx +18 -18
  425. package/iconsvg/SVG/searchWidgets/drive/AAllWheelDrive.tsx +26 -26
  426. package/iconsvg/SVG/searchWidgets/drive/AllWheelDrive.tsx +26 -26
  427. package/iconsvg/SVG/searchWidgets/drive/FrontWheelDrive.tsx +25 -25
  428. package/iconsvg/SVG/searchWidgets/drive/OtherWheelDrive.tsx +26 -26
  429. package/iconsvg/SVG/searchWidgets/drive/RearWheelDrive.tsx +25 -25
  430. package/iconsvg/SVG/searchWidgets/fuel/FuelDiesel.tsx +18 -18
  431. package/iconsvg/SVG/searchWidgets/fuel/FuelElectrical.tsx +19 -19
  432. package/iconsvg/SVG/searchWidgets/fuel/FuelElectricalDiesel.tsx +34 -34
  433. package/iconsvg/SVG/searchWidgets/fuel/FuelElectricalPetrol.tsx +20 -20
  434. package/iconsvg/SVG/searchWidgets/fuel/FuelEthanol.tsx +53 -53
  435. package/iconsvg/SVG/searchWidgets/fuel/FuelHydrogen.tsx +24 -24
  436. package/iconsvg/SVG/searchWidgets/fuel/FuelLpg.tsx +24 -24
  437. package/iconsvg/SVG/searchWidgets/fuel/FuelNaturalGas.tsx +23 -23
  438. package/iconsvg/SVG/searchWidgets/fuel/FuelOther.tsx +28 -28
  439. package/iconsvg/SVG/searchWidgets/fuel/FuelPetrol.tsx +18 -18
  440. package/iconsvg/SVG/settings/Account.tsx +17 -17
  441. package/iconsvg/SVG/settings/DataUsage.tsx +17 -17
  442. package/iconsvg/SVG/settings/MarketResearch.tsx +17 -17
  443. package/iconsvg/SVG/settings/Newsletter.tsx +17 -17
  444. package/iconsvg/SVG/settings/RemoveEye.tsx +17 -17
  445. package/iconsvg/SVG/settings/RemoveEyeOff.tsx +17 -17
  446. package/iconsvg/SVG/settings/Security.tsx +17 -17
  447. package/iconsvg/SVG/settings/Warning.tsx +17 -17
  448. package/iconsvg/SVG/slider/360.tsx +23 -23
  449. package/iconsvg/SVG/slider/360New.tsx +20 -20
  450. package/iconsvg/SVG/slider/Checked.tsx +19 -19
  451. package/iconsvg/SVG/slider/DiscountRibbon.tsx +51 -51
  452. package/iconsvg/SVG/slider/DiscountRibbonMobile.tsx +47 -47
  453. package/iconsvg/SVG/slider/DiscountRibbonNew.tsx +29 -29
  454. package/iconsvg/SVG/slider/Easy.tsx +19 -19
  455. package/iconsvg/SVG/slider/Fullscreen.tsx +16 -16
  456. package/iconsvg/SVG/slider/FullscreenWindow.tsx +23 -23
  457. package/iconsvg/SVG/slider/Safe.tsx +19 -19
  458. package/iconsvg/SVG/slider/ToBuy.tsx +19 -19
  459. package/iconsvg/SVG/slider/YoutubeButton.tsx +26 -26
  460. package/iconsvg/SVG/slider/ZoomIn.tsx +21 -21
  461. package/iconsvg/SVG/slider/ZoomOut.tsx +21 -21
  462. package/iconsvg/SVG/social/AndroidLogo.tsx +18 -18
  463. package/iconsvg/SVG/social/Apple.tsx +19 -19
  464. package/iconsvg/SVG/social/FacebookF.tsx +19 -19
  465. package/iconsvg/SVG/social/GooglePlusG.tsx +19 -19
  466. package/iconsvg/SVG/social/Instagram.tsx +17 -17
  467. package/iconsvg/SVG/social/Pinterest.tsx +19 -19
  468. package/iconsvg/SVG/social/SharingInterface.tsx +21 -21
  469. package/iconsvg/SVG/social/Twitter.tsx +19 -19
  470. package/iconsvg/SVG/social/Youtube.tsx +19 -19
  471. package/iconsvg/SVG/vehicle/AboIcon.tsx +11 -11
  472. package/iconsvg/SVG/vehicle/Abs.tsx +24 -24
  473. package/iconsvg/SVG/vehicle/AirCond.tsx +34 -34
  474. package/iconsvg/SVG/vehicle/Airbag.tsx +21 -21
  475. package/iconsvg/SVG/vehicle/AuxiliaryHeating.tsx +23 -23
  476. package/iconsvg/SVG/vehicle/Bluetooth.tsx +22 -22
  477. package/iconsvg/SVG/vehicle/BuyIcon.tsx +15 -15
  478. package/iconsvg/SVG/vehicle/CarAvailability.tsx +22 -22
  479. package/iconsvg/SVG/vehicle/CarInspectionCheck.tsx +21 -21
  480. package/iconsvg/SVG/vehicle/CarInspectionCross.tsx +21 -21
  481. package/iconsvg/SVG/vehicle/CheckoutChecked.tsx +15 -15
  482. package/iconsvg/SVG/vehicle/Co2.tsx +24 -24
  483. package/iconsvg/SVG/vehicle/CruiseControl.tsx +25 -25
  484. package/iconsvg/SVG/vehicle/Date.tsx +21 -21
  485. package/iconsvg/SVG/vehicle/Delivery.tsx +12 -12
  486. package/iconsvg/SVG/vehicle/Diesel.tsx +28 -28
  487. package/iconsvg/SVG/vehicle/Display.tsx +25 -25
  488. package/iconsvg/SVG/vehicle/Done.tsx +11 -11
  489. package/iconsvg/SVG/vehicle/Door.tsx +19 -19
  490. package/iconsvg/SVG/vehicle/DoubleDone.tsx +18 -18
  491. package/iconsvg/SVG/vehicle/EditIcon.tsx +11 -11
  492. package/iconsvg/SVG/vehicle/EmergencyBrakeAssistant.tsx +27 -27
  493. package/iconsvg/SVG/vehicle/Eps.tsx +24 -24
  494. package/iconsvg/SVG/vehicle/Esp.tsx +24 -24
  495. package/iconsvg/SVG/vehicle/FinancingIcon.tsx +20 -20
  496. package/iconsvg/SVG/vehicle/FuelConsumption.tsx +20 -20
  497. package/iconsvg/SVG/vehicle/Fueling.tsx +22 -22
  498. package/iconsvg/SVG/vehicle/FullDrive.tsx +24 -24
  499. package/iconsvg/SVG/vehicle/GasElectric.tsx +28 -28
  500. package/iconsvg/SVG/vehicle/HandsFreePhoneSystem.tsx +24 -24
  501. package/iconsvg/SVG/vehicle/Kw.tsx +23 -23
  502. package/iconsvg/SVG/vehicle/LastCrawledAt.tsx +22 -22
  503. package/iconsvg/SVG/vehicle/LeasingIcon.tsx +14 -14
  504. package/iconsvg/SVG/vehicle/Led.tsx +24 -24
  505. package/iconsvg/SVG/vehicle/LightSensor.tsx +22 -22
  506. package/iconsvg/SVG/vehicle/LinkAlternative.tsx +15 -15
  507. package/iconsvg/SVG/vehicle/Location.tsx +17 -17
  508. package/iconsvg/SVG/vehicle/MinusIcon.tsx +11 -11
  509. package/iconsvg/SVG/vehicle/Mirror.tsx +19 -19
  510. package/iconsvg/SVG/vehicle/Navigation.tsx +27 -27
  511. package/iconsvg/SVG/vehicle/NewCar.tsx +21 -21
  512. package/iconsvg/SVG/vehicle/NoImage.tsx +17 -17
  513. package/iconsvg/SVG/vehicle/Owner.tsx +18 -18
  514. package/iconsvg/SVG/vehicle/PanoramicRoof.tsx +23 -23
  515. package/iconsvg/SVG/vehicle/ParkingAssistants.tsx +24 -24
  516. package/iconsvg/SVG/vehicle/PickYourself.tsx +18 -18
  517. package/iconsvg/SVG/vehicle/PlusIcon.tsx +11 -11
  518. package/iconsvg/SVG/vehicle/Power.tsx +21 -21
  519. package/iconsvg/SVG/vehicle/Ps.tsx +19 -19
  520. package/iconsvg/SVG/vehicle/Question.tsx +24 -24
  521. package/iconsvg/SVG/vehicle/Seats.tsx +21 -21
  522. package/iconsvg/SVG/vehicle/SeatsHeating.tsx +26 -26
  523. package/iconsvg/SVG/vehicle/SelectorGearboxAutomatic.tsx +24 -24
  524. package/iconsvg/SVG/vehicle/SelectorGearboxManualShift.tsx +19 -19
  525. package/iconsvg/SVG/vehicle/SelectorGearboxOther.tsx +24 -24
  526. package/iconsvg/SVG/vehicle/SelectorGearboxSemiAutomatic.tsx +30 -30
  527. package/iconsvg/SVG/vehicle/SelectorInteriorTypeAlcantara.tsx +225 -225
  528. package/iconsvg/SVG/vehicle/SelectorInteriorTypeFabric.tsx +29 -29
  529. package/iconsvg/SVG/vehicle/SelectorInteriorTypeFullLeather.tsx +29 -29
  530. package/iconsvg/SVG/vehicle/SelectorInteriorTypeOther.tsx +26 -26
  531. package/iconsvg/SVG/vehicle/SelectorInteriorTypePartLeather.tsx +142 -142
  532. package/iconsvg/SVG/vehicle/SelectorInteriorTypeSyntheticLeather.tsx +27 -27
  533. package/iconsvg/SVG/vehicle/SelectorInteriorTypeVelours.tsx +39 -39
  534. package/iconsvg/SVG/vehicle/Shield.tsx +39 -39
  535. package/iconsvg/SVG/vehicle/Speedometer.tsx +17 -17
  536. package/iconsvg/SVG/vehicle/StartStopSystem.tsx +30 -30
  537. package/iconsvg/SVG/vehicle/Stop.tsx +25 -25
  538. package/iconsvg/SVG/vehicle/TickMark.tsx +21 -21
  539. package/iconsvg/SVG/vehicle/TrafficSignRecognition.tsx +29 -29
  540. package/iconsvg/SVG/vehicle/TrailerCoupling.tsx +24 -24
  541. package/iconsvg/SVG/vehicle/Transmission.tsx +27 -27
  542. package/iconsvg/SVG/vehicle/Wheel.tsx +43 -43
  543. package/iconsvg/SVG/vehicle/Wipers.tsx +22 -22
  544. package/iconsvg/SVG/vehicle/Wrench.tsx +17 -17
  545. package/iconsvg/index.ts +7 -7
  546. package/index.ts +18 -18
  547. package/locales/de/autobahn.json +676 -671
  548. package/locales/en/autobahn.json +676 -671
  549. package/locales/legacy/SearchDetailedPage.ts +205 -205
  550. package/locales/legacy/cbd.ts +719 -719
  551. package/locales/legacy/common.ts +109 -109
  552. package/locales/legacy/data.ts +1118 -1118
  553. package/locales/legacy/priceRating.ts +10 -10
  554. package/locales/legacy/sortingOptions.ts +21 -21
  555. package/media/images/raiting-stars-min.svg +7 -7
  556. package/media/images/refresh-button.svg +49 -49
  557. package/media/images/user-icon.svg +16 -16
  558. package/media/svg/infoBlocks/whyAutodeIconSet-F.svg +9 -9
  559. package/media/svg/infoBlocks/whyAutodeIconSet-G.svg +8 -8
  560. package/media/svg/infoBlocks/whyAutodeIconSet-Q.svg +6 -6
  561. package/media/svg/infoBlocks/whyAutodeIconSet-R.svg +9 -9
  562. package/media/svg/usp/icon1.svg +16 -16
  563. package/media/svg/usp/icon2.svg +13 -13
  564. package/media/svg/usp/icon3.svg +10 -10
  565. package/media/svg/usp/icon4.svg +14 -14
  566. package/package.json +30 -30
  567. package/schemes/AggregationScheme.ts +73 -73
  568. package/searchFilters/filterOptions.ts +119 -119
  569. package/searchFilters/filterProps.ts +35 -35
  570. package/searchFilters/index.ts +15 -15
  571. package/theme/autobahn.css +25 -25
  572. package/theme/colors_and_type.css +113 -113
  573. package/theme/md3.css +2045 -2034
  574. package/types/types.ts +373 -373
  575. package/types.ts +8 -8
  576. package/ui/Accordion.tsx +134 -134
  577. package/ui/Button.tsx +62 -62
  578. package/ui/CardCarousel.tsx +133 -133
  579. package/ui/Chip.tsx +29 -29
  580. package/ui/DatePicker.tsx +145 -145
  581. package/ui/Dropdown.tsx +205 -205
  582. package/ui/FileUpload.tsx +154 -154
  583. package/ui/FormCheckbox.tsx +79 -79
  584. package/ui/FormDropdown.tsx +327 -327
  585. package/ui/FormField.tsx +88 -88
  586. package/ui/FormRadio.tsx +93 -93
  587. package/ui/FormRadioGroup.tsx +106 -106
  588. package/ui/Icon.tsx +391 -391
  589. package/ui/IconButton.tsx +44 -44
  590. package/ui/Modal.tsx +187 -187
  591. package/ui/Pagination.tsx +140 -140
  592. package/ui/Price.tsx +25 -25
  593. package/ui/PriceEvalBar.tsx +48 -48
  594. package/ui/SaveChip.tsx +34 -34
  595. package/ui/Segmented.tsx +48 -48
  596. package/ui/Skeleton.tsx +75 -75
  597. package/ui/Spec.tsx +24 -24
  598. package/ui/Stars.tsx +29 -29
  599. package/ui/StatChip.tsx +21 -21
  600. package/ui/Stepper.tsx +106 -106
  601. package/ui/Switch.tsx +65 -65
  602. package/ui/Table.tsx +156 -156
  603. package/ui/Textarea.tsx +58 -58
  604. package/ui/index.ts +88 -88
  605. package/utils/CommonUtils.ts +648 -648
  606. package/utils/DateUtils.ts +101 -101
  607. package/utils/index.ts +74 -74
  608. package/utils/power.ts +11 -11
  609. package/utils/query.ts +21 -21
  610. package/vdp/FinanceCalculator.tsx +465 -465
  611. package/vdp/VdpModules.tsx +1490 -1490
  612. package/vdp/VdpViewer.tsx +209 -209
  613. package/vdp/index.ts +75 -75
  614. package/vdp/types.ts +197 -197
  615. package/vehiclesProps/cbdSelectors.ts +117 -117
  616. package/vehiclesProps/decoratedLightProps.tsx +572 -572
  617. package/vehiclesProps/decoratedProps.tsx +1746 -1746
  618. package/vehiclesProps/equipment.ts +129 -129
  619. package/vehiclesProps/vehicleDetails.ts +428 -428
  620. package/widgets/SearchBox.tsx +256 -256
  621. package/widgets/index.ts +5 -5
@@ -1,256 +1,256 @@
1
- // Autobahn (auto.de redesign) — md3 compact search box.
2
- //
3
- // Shared replacement for the legacy fe-ui-core `SearchWidget` as it was used by
4
- // fe-wp-widgets' SearchWidgetContainer (and, later, fe-landing): a compact
5
- // make / model / price search form with a live result counter and a
6
- // "Detailsuche" escape hatch. The legacy widget's second tab ("Schnellsuche"
7
- // brand panel) and the rate-search modal are NOT ported — the md3 design is a
8
- // single compact panel.
9
- //
10
- // CONTRACT (mirrors the legacy container wiring):
11
- // - `filters` is the CONTROLLED legacy filter-state object keyed by the
12
- // SearchWidget constants (MANUFACTURER / MODEL / PRICE {from,to} / …).
13
- // Values keep the legacy shapes: make/model are `{ value, label, isSeries? }`
14
- // option objects (or '' when empty), PRICE is `{ from, to }` of raw numbers
15
- // as strings. This keeps `buildQueryForSearch` / `buildBodyForRequest`
16
- // working unchanged on the caller side.
17
- // - `onFilterChange(value, name)` fires exactly like the legacy widget:
18
- // make → `{value,label}` | `''`; model → `{value,label,isSeries?}` | `''`;
19
- // price → the whole `{from,to}` object under the PRICE name.
20
- // - submit builds the SRP query with the shared `buildQueryForSearch(filters)`
21
- // and navigates via plain `window.location` (inside the event handler only —
22
- // the component itself is SSR-safe: no window access at render).
23
- //
24
- // Pure / presentational: data (makes/models/counter) is injected by the host
25
- // container, which owns the API calls. Renders correctly only inside a
26
- // `<div className="md3">` subtree with theme/autobahn.css loaded.
27
-
28
- import React from 'react';
29
-
30
- import { Button, Dropdown, DropdownOption } from '../ui';
31
- import { MANUFACTURER, MODEL, PRICE, PRICE_OPTIONS } from '../constants/SearchWidget';
32
- import { buildQueryForSearch, sliceLessThan, sliceMoreThan } from '../utils/CommonUtils';
33
- import { TranslationFunction } from '../types';
34
-
35
- /** Option shape produced by the hosts' make/model transforms (top/regular headers use isDisabled). */
36
- export interface SearchBoxOption {
37
- value: string | number;
38
- label: string;
39
- /** group-header rows ('top' / 'regular') — shown but not selectable. */
40
- isDisabled?: boolean;
41
- /** model-series rows — selectable; the query builder maps them to mainData_series. */
42
- isSeries?: boolean;
43
- }
44
-
45
- /** Legacy filter-state object (keys = SearchWidget constants). */
46
- export interface SearchBoxFilters {
47
- [key: string]: any;
48
- }
49
-
50
- export interface SearchBoxProps {
51
- /** manufacturer options (host: transformManufacturers over car-makemodel-mapping). */
52
- makes?: SearchBoxOption[];
53
- /** model options for the selected make (host: transformModelsGeneral). */
54
- models?: SearchBoxOption[];
55
- /** CONTROLLED legacy filter state (MANUFACTURER / MODEL / PRICE {from,to} / …). */
56
- filters: SearchBoxFilters;
57
- /** live result count for the current filters (host: POST /count/car with buildBodyForRequest). */
58
- counter?: number;
59
- /** true while the counter request is in flight. */
60
- counterLoading?: boolean;
61
- /** legacy change contract — see the header comment for the emitted value shapes. */
62
- onFilterChange: (value: any, name: string) => void;
63
- /** override submit; receives the built query string. Default: window.location → `/{searchPath}?{query}`. */
64
- onSearch?: (query: string) => void;
65
- /** override the Detailsuche link; receives the built query string. Default: `/{detailedSearchPath}?{query}`. */
66
- onDetailedSearch?: (query: string) => void;
67
- /** SRP path for the default submit navigation. */
68
- searchPath?: string;
69
- /** detailed-search path for the default Detailsuche navigation. */
70
- detailedSearchPath?: string;
71
- /** hide the Detailsuche link (legacy isDealerWPpage behaviour). */
72
- showDetailedSearch?: boolean;
73
- /** optional heading above the fields; omitted → no heading. */
74
- title?: string;
75
- /** extra class on the panel (layout hooks). */
76
- className?: string;
77
- /** i18n translate (autobahn:searchBox.*). Optional — built-in German fallbacks are used without it. */
78
- t?: TranslationFunction;
79
- }
80
-
81
- /** built-in German copy (used when no `t` is injected or a key is missing). */
82
- const DE_FALLBACK: Record<string, string> = {
83
- make: 'Marke',
84
- model: 'Modell',
85
- priceFrom: 'Preis von',
86
- priceTo: 'Preis bis',
87
- any: 'beliebig',
88
- showResults: 'Ergebnisse anzeigen',
89
- detailedSearch: 'Detailsuche',
90
- };
91
-
92
- const SearchBox: React.FunctionComponent<SearchBoxProps> = ({
93
- makes = [],
94
- models = [],
95
- filters,
96
- counter,
97
- counterLoading = false,
98
- onFilterChange,
99
- onSearch,
100
- onDetailedSearch,
101
- searchPath = 'search',
102
- detailedSearchPath = 'search/detailed',
103
- showDetailedSearch = true,
104
- title,
105
- className,
106
- t,
107
- }) => {
108
- // translate with fallback: i18next echoes the key back when it is missing.
109
- const tr = (key: string): string => {
110
- const fallback = DE_FALLBACK[key] || key;
111
- if (!t) return fallback;
112
- const full = `autobahn:searchBox.${key}`;
113
- const out = t(full);
114
- return out && out !== full ? out : fallback;
115
- };
116
-
117
- // A model list contains a selectable SERIES row followed by its models, and the
118
- // series title can equal a model title (series 'Golf' → model 'Golf'). The md3
119
- // Dropdown identifies options by VALUE, so series rows get a marker prefix to
120
- // keep the two selectable; it is stripped again on commit.
121
- const SERIES_PREFIX = '⁣series⁣'; // U+2063 invisible separators - cannot occur in real titles
122
- const encodeValue = (o: SearchBoxOption): string => (o.isSeries ? SERIES_PREFIX : '') + String(o.value);
123
-
124
- // ---- current values out of the legacy filter state -----------------------------------------
125
- const makeValue =
126
- filters[MANUFACTURER] && filters[MANUFACTURER].value != null ? String(filters[MANUFACTURER].value) : '';
127
- const modelValue =
128
- filters[MODEL] && filters[MODEL].value != null ? encodeValue(filters[MODEL] as SearchBoxOption) : '';
129
- const price = filters[PRICE] && typeof filters[PRICE] === 'object' ? filters[PRICE] : { from: '', to: '' };
130
-
131
- // ---- options --------------------------------------------------------------------------------
132
- const clearOption: DropdownOption = { value: '', label: tr('any') };
133
- const toDropdownOptions = (list: SearchBoxOption[]): DropdownOption[] =>
134
- list.map((o) => ({ value: encodeValue(o), label: String(o.label), disabled: !!o.isDisabled }));
135
-
136
- const makeOptions = toDropdownOptions(makes);
137
- const modelOptions = toDropdownOptions(models);
138
-
139
- const priceOptions = (nums: number[]): DropdownOption[] => [
140
- clearOption,
141
- ...nums.map((n) => ({ value: String(n), label: `${n.toLocaleString('de-DE')} €` })),
142
- ];
143
- // keep from ≤ to (legacy DropDownGroup behaviour).
144
- const priceFromOptions = priceOptions(sliceLessThan(PRICE_OPTIONS, price.to));
145
- const priceToOptions = priceOptions(sliceMoreThan(PRICE_OPTIONS, price.from));
146
-
147
- // ---- change handlers (legacy onFilterChange value shapes) ----------------------------------
148
- const commitOption = (name: string, source: SearchBoxOption[]) => (next: string) => {
149
- if (!next) {
150
- onFilterChange('', name);
151
- return;
152
- }
153
- const match = source.find((o) => encodeValue(o) === next);
154
- onFilterChange(
155
- match
156
- ? { value: match.value, label: match.label, ...(match.isSeries ? { isSeries: true } : {}) }
157
- : { value: next, label: next },
158
- name,
159
- );
160
- };
161
-
162
- const commitPrice = (bound: 'from' | 'to') => (next: string) =>
163
- onFilterChange({ ...price, [bound]: next }, PRICE);
164
-
165
- // ---- submit (window access only inside handlers → SSR-safe) --------------------------------
166
- const navigate = (path: string, query: string) => {
167
- if (typeof window === 'undefined') return;
168
- window.location.href = `${window.location.origin}/${path}${query ? `?${query}` : ''}`;
169
- };
170
- const submit = () => {
171
- const query = buildQueryForSearch(filters);
172
- if (onSearch) return onSearch(query);
173
- navigate(searchPath, query);
174
- };
175
- const detailed = () => {
176
- const query = buildQueryForSearch(filters);
177
- if (onDetailedSearch) return onDetailedSearch(query);
178
- navigate(detailedSearchPath, query);
179
- };
180
-
181
- const field = (label: string, control: React.ReactNode) => (
182
- <div className="mfd">
183
- <label className="md-label-sm mfield-label mfd-label">{label}</label>
184
- {control}
185
- </div>
186
- );
187
-
188
- const resultsLabel =
189
- !counterLoading && counter != null
190
- ? `${counter.toLocaleString('de-DE')} ${tr('showResults')}`
191
- : tr('showResults');
192
-
193
- return (
194
- <section
195
- className={'mcard sbx' + (className ? ` ${className}` : '')}
196
- style={{ padding: 16, display: 'flex', flexDirection: 'column', gap: 12 }}
197
- >
198
- {title ? <h2 className="md-title" style={{ margin: 0 }}>{title}</h2> : null}
199
- <div style={{ display: 'grid', gridTemplateColumns: 'repeat(auto-fit, minmax(150px, 1fr))', gap: 10 }}>
200
- {field(
201
- tr('make'),
202
- <Dropdown
203
- value={makeValue}
204
- options={makeValue ? [clearOption, ...makeOptions] : makeOptions}
205
- onChange={commitOption(MANUFACTURER, makes)}
206
- placeholder={tr('make')}
207
- ariaLabel={tr('make')}
208
- />,
209
- )}
210
- {field(
211
- tr('model'),
212
- <Dropdown
213
- value={modelValue}
214
- options={modelValue ? [clearOption, ...modelOptions] : modelOptions}
215
- onChange={commitOption(MODEL, models)}
216
- placeholder={tr('model')}
217
- ariaLabel={tr('model')}
218
- disabled={!makeValue}
219
- />,
220
- )}
221
- {field(
222
- tr('priceFrom'),
223
- <Dropdown
224
- value={price.from != null ? String(price.from) : ''}
225
- options={priceFromOptions}
226
- onChange={commitPrice('from')}
227
- placeholder={tr('any')}
228
- ariaLabel={tr('priceFrom')}
229
- />,
230
- )}
231
- {field(
232
- tr('priceTo'),
233
- <Dropdown
234
- value={price.to != null ? String(price.to) : ''}
235
- options={priceToOptions}
236
- onChange={commitPrice('to')}
237
- placeholder={tr('any')}
238
- ariaLabel={tr('priceTo')}
239
- />,
240
- )}
241
- </div>
242
- <div style={{ display: 'flex', alignItems: 'center', gap: 10, flexWrap: 'wrap' }}>
243
- <Button icon="search" onClick={submit}>
244
- {resultsLabel}
245
- </Button>
246
- {showDetailedSearch && (
247
- <Button variant="text" onClick={detailed}>
248
- {tr('detailedSearch')}
249
- </Button>
250
- )}
251
- </div>
252
- </section>
253
- );
254
- };
255
-
256
- export default SearchBox;
1
+ // Autobahn (auto.de redesign) — md3 compact search box.
2
+ //
3
+ // Shared replacement for the legacy fe-ui-core `SearchWidget` as it was used by
4
+ // fe-wp-widgets' SearchWidgetContainer (and, later, fe-landing): a compact
5
+ // make / model / price search form with a live result counter and a
6
+ // "Detailsuche" escape hatch. The legacy widget's second tab ("Schnellsuche"
7
+ // brand panel) and the rate-search modal are NOT ported — the md3 design is a
8
+ // single compact panel.
9
+ //
10
+ // CONTRACT (mirrors the legacy container wiring):
11
+ // - `filters` is the CONTROLLED legacy filter-state object keyed by the
12
+ // SearchWidget constants (MANUFACTURER / MODEL / PRICE {from,to} / …).
13
+ // Values keep the legacy shapes: make/model are `{ value, label, isSeries? }`
14
+ // option objects (or '' when empty), PRICE is `{ from, to }` of raw numbers
15
+ // as strings. This keeps `buildQueryForSearch` / `buildBodyForRequest`
16
+ // working unchanged on the caller side.
17
+ // - `onFilterChange(value, name)` fires exactly like the legacy widget:
18
+ // make → `{value,label}` | `''`; model → `{value,label,isSeries?}` | `''`;
19
+ // price → the whole `{from,to}` object under the PRICE name.
20
+ // - submit builds the SRP query with the shared `buildQueryForSearch(filters)`
21
+ // and navigates via plain `window.location` (inside the event handler only —
22
+ // the component itself is SSR-safe: no window access at render).
23
+ //
24
+ // Pure / presentational: data (makes/models/counter) is injected by the host
25
+ // container, which owns the API calls. Renders correctly only inside a
26
+ // `<div className="md3">` subtree with theme/autobahn.css loaded.
27
+
28
+ import React from 'react';
29
+
30
+ import { Button, Dropdown, DropdownOption } from '../ui';
31
+ import { MANUFACTURER, MODEL, PRICE, PRICE_OPTIONS } from '../constants/SearchWidget';
32
+ import { buildQueryForSearch, sliceLessThan, sliceMoreThan } from '../utils/CommonUtils';
33
+ import { TranslationFunction } from '../types';
34
+
35
+ /** Option shape produced by the hosts' make/model transforms (top/regular headers use isDisabled). */
36
+ export interface SearchBoxOption {
37
+ value: string | number;
38
+ label: string;
39
+ /** group-header rows ('top' / 'regular') — shown but not selectable. */
40
+ isDisabled?: boolean;
41
+ /** model-series rows — selectable; the query builder maps them to mainData_series. */
42
+ isSeries?: boolean;
43
+ }
44
+
45
+ /** Legacy filter-state object (keys = SearchWidget constants). */
46
+ export interface SearchBoxFilters {
47
+ [key: string]: any;
48
+ }
49
+
50
+ export interface SearchBoxProps {
51
+ /** manufacturer options (host: transformManufacturers over car-makemodel-mapping). */
52
+ makes?: SearchBoxOption[];
53
+ /** model options for the selected make (host: transformModelsGeneral). */
54
+ models?: SearchBoxOption[];
55
+ /** CONTROLLED legacy filter state (MANUFACTURER / MODEL / PRICE {from,to} / …). */
56
+ filters: SearchBoxFilters;
57
+ /** live result count for the current filters (host: POST /count/car with buildBodyForRequest). */
58
+ counter?: number;
59
+ /** true while the counter request is in flight. */
60
+ counterLoading?: boolean;
61
+ /** legacy change contract — see the header comment for the emitted value shapes. */
62
+ onFilterChange: (value: any, name: string) => void;
63
+ /** override submit; receives the built query string. Default: window.location → `/{searchPath}?{query}`. */
64
+ onSearch?: (query: string) => void;
65
+ /** override the Detailsuche link; receives the built query string. Default: `/{detailedSearchPath}?{query}`. */
66
+ onDetailedSearch?: (query: string) => void;
67
+ /** SRP path for the default submit navigation. */
68
+ searchPath?: string;
69
+ /** detailed-search path for the default Detailsuche navigation. */
70
+ detailedSearchPath?: string;
71
+ /** hide the Detailsuche link (legacy isDealerWPpage behaviour). */
72
+ showDetailedSearch?: boolean;
73
+ /** optional heading above the fields; omitted → no heading. */
74
+ title?: string;
75
+ /** extra class on the panel (layout hooks). */
76
+ className?: string;
77
+ /** i18n translate (autobahn:searchBox.*). Optional — built-in German fallbacks are used without it. */
78
+ t?: TranslationFunction;
79
+ }
80
+
81
+ /** built-in German copy (used when no `t` is injected or a key is missing). */
82
+ const DE_FALLBACK: Record<string, string> = {
83
+ make: 'Marke',
84
+ model: 'Modell',
85
+ priceFrom: 'Preis von',
86
+ priceTo: 'Preis bis',
87
+ any: 'beliebig',
88
+ showResults: 'Ergebnisse anzeigen',
89
+ detailedSearch: 'Detailsuche',
90
+ };
91
+
92
+ const SearchBox: React.FunctionComponent<SearchBoxProps> = ({
93
+ makes = [],
94
+ models = [],
95
+ filters,
96
+ counter,
97
+ counterLoading = false,
98
+ onFilterChange,
99
+ onSearch,
100
+ onDetailedSearch,
101
+ searchPath = 'search',
102
+ detailedSearchPath = 'search/detailed',
103
+ showDetailedSearch = true,
104
+ title,
105
+ className,
106
+ t,
107
+ }) => {
108
+ // translate with fallback: i18next echoes the key back when it is missing.
109
+ const tr = (key: string): string => {
110
+ const fallback = DE_FALLBACK[key] || key;
111
+ if (!t) return fallback;
112
+ const full = `autobahn:searchBox.${key}`;
113
+ const out = t(full);
114
+ return out && out !== full ? out : fallback;
115
+ };
116
+
117
+ // A model list contains a selectable SERIES row followed by its models, and the
118
+ // series title can equal a model title (series 'Golf' → model 'Golf'). The md3
119
+ // Dropdown identifies options by VALUE, so series rows get a marker prefix to
120
+ // keep the two selectable; it is stripped again on commit.
121
+ const SERIES_PREFIX = '⁣series⁣'; // U+2063 invisible separators - cannot occur in real titles
122
+ const encodeValue = (o: SearchBoxOption): string => (o.isSeries ? SERIES_PREFIX : '') + String(o.value);
123
+
124
+ // ---- current values out of the legacy filter state -----------------------------------------
125
+ const makeValue =
126
+ filters[MANUFACTURER] && filters[MANUFACTURER].value != null ? String(filters[MANUFACTURER].value) : '';
127
+ const modelValue =
128
+ filters[MODEL] && filters[MODEL].value != null ? encodeValue(filters[MODEL] as SearchBoxOption) : '';
129
+ const price = filters[PRICE] && typeof filters[PRICE] === 'object' ? filters[PRICE] : { from: '', to: '' };
130
+
131
+ // ---- options --------------------------------------------------------------------------------
132
+ const clearOption: DropdownOption = { value: '', label: tr('any') };
133
+ const toDropdownOptions = (list: SearchBoxOption[]): DropdownOption[] =>
134
+ list.map((o) => ({ value: encodeValue(o), label: String(o.label), disabled: !!o.isDisabled }));
135
+
136
+ const makeOptions = toDropdownOptions(makes);
137
+ const modelOptions = toDropdownOptions(models);
138
+
139
+ const priceOptions = (nums: number[]): DropdownOption[] => [
140
+ clearOption,
141
+ ...nums.map((n) => ({ value: String(n), label: `${n.toLocaleString('de-DE')} €` })),
142
+ ];
143
+ // keep from ≤ to (legacy DropDownGroup behaviour).
144
+ const priceFromOptions = priceOptions(sliceLessThan(PRICE_OPTIONS, price.to));
145
+ const priceToOptions = priceOptions(sliceMoreThan(PRICE_OPTIONS, price.from));
146
+
147
+ // ---- change handlers (legacy onFilterChange value shapes) ----------------------------------
148
+ const commitOption = (name: string, source: SearchBoxOption[]) => (next: string) => {
149
+ if (!next) {
150
+ onFilterChange('', name);
151
+ return;
152
+ }
153
+ const match = source.find((o) => encodeValue(o) === next);
154
+ onFilterChange(
155
+ match
156
+ ? { value: match.value, label: match.label, ...(match.isSeries ? { isSeries: true } : {}) }
157
+ : { value: next, label: next },
158
+ name,
159
+ );
160
+ };
161
+
162
+ const commitPrice = (bound: 'from' | 'to') => (next: string) =>
163
+ onFilterChange({ ...price, [bound]: next }, PRICE);
164
+
165
+ // ---- submit (window access only inside handlers → SSR-safe) --------------------------------
166
+ const navigate = (path: string, query: string) => {
167
+ if (typeof window === 'undefined') return;
168
+ window.location.href = `${window.location.origin}/${path}${query ? `?${query}` : ''}`;
169
+ };
170
+ const submit = () => {
171
+ const query = buildQueryForSearch(filters);
172
+ if (onSearch) return onSearch(query);
173
+ navigate(searchPath, query);
174
+ };
175
+ const detailed = () => {
176
+ const query = buildQueryForSearch(filters);
177
+ if (onDetailedSearch) return onDetailedSearch(query);
178
+ navigate(detailedSearchPath, query);
179
+ };
180
+
181
+ const field = (label: string, control: React.ReactNode) => (
182
+ <div className="mfd">
183
+ <label className="md-label-sm mfield-label mfd-label">{label}</label>
184
+ {control}
185
+ </div>
186
+ );
187
+
188
+ const resultsLabel =
189
+ !counterLoading && counter != null
190
+ ? `${counter.toLocaleString('de-DE')} ${tr('showResults')}`
191
+ : tr('showResults');
192
+
193
+ return (
194
+ <section
195
+ className={'mcard sbx' + (className ? ` ${className}` : '')}
196
+ style={{ padding: 16, display: 'flex', flexDirection: 'column', gap: 12 }}
197
+ >
198
+ {title ? <h2 className="md-title" style={{ margin: 0 }}>{title}</h2> : null}
199
+ <div style={{ display: 'grid', gridTemplateColumns: 'repeat(auto-fit, minmax(150px, 1fr))', gap: 10 }}>
200
+ {field(
201
+ tr('make'),
202
+ <Dropdown
203
+ value={makeValue}
204
+ options={makeValue ? [clearOption, ...makeOptions] : makeOptions}
205
+ onChange={commitOption(MANUFACTURER, makes)}
206
+ placeholder={tr('make')}
207
+ ariaLabel={tr('make')}
208
+ />,
209
+ )}
210
+ {field(
211
+ tr('model'),
212
+ <Dropdown
213
+ value={modelValue}
214
+ options={modelValue ? [clearOption, ...modelOptions] : modelOptions}
215
+ onChange={commitOption(MODEL, models)}
216
+ placeholder={tr('model')}
217
+ ariaLabel={tr('model')}
218
+ disabled={!makeValue}
219
+ />,
220
+ )}
221
+ {field(
222
+ tr('priceFrom'),
223
+ <Dropdown
224
+ value={price.from != null ? String(price.from) : ''}
225
+ options={priceFromOptions}
226
+ onChange={commitPrice('from')}
227
+ placeholder={tr('any')}
228
+ ariaLabel={tr('priceFrom')}
229
+ />,
230
+ )}
231
+ {field(
232
+ tr('priceTo'),
233
+ <Dropdown
234
+ value={price.to != null ? String(price.to) : ''}
235
+ options={priceToOptions}
236
+ onChange={commitPrice('to')}
237
+ placeholder={tr('any')}
238
+ ariaLabel={tr('priceTo')}
239
+ />,
240
+ )}
241
+ </div>
242
+ <div style={{ display: 'flex', alignItems: 'center', gap: 10, flexWrap: 'wrap' }}>
243
+ <Button icon="search" onClick={submit}>
244
+ {resultsLabel}
245
+ </Button>
246
+ {showDetailedSearch && (
247
+ <Button variant="text" onClick={detailed}>
248
+ {tr('detailedSearch')}
249
+ </Button>
250
+ )}
251
+ </div>
252
+ </section>
253
+ );
254
+ };
255
+
256
+ export default SearchBox;
package/widgets/index.ts CHANGED
@@ -1,5 +1,5 @@
1
- // Autobahn (auto.de redesign) — standalone embeddable widgets.
2
- // Higher-level md3 blocks composed from ui/ primitives, shared by
3
- // fe-wp-widgets (WordPress) and fe-landing (SSR) — SSR-safe by contract.
4
- export { default as SearchBox } from './SearchBox';
5
- export type { SearchBoxProps, SearchBoxOption, SearchBoxFilters } from './SearchBox';
1
+ // Autobahn (auto.de redesign) — standalone embeddable widgets.
2
+ // Higher-level md3 blocks composed from ui/ primitives, shared by
3
+ // fe-wp-widgets (WordPress) and fe-landing (SSR) — SSR-safe by contract.
4
+ export { default as SearchBox } from './SearchBox';
5
+ export type { SearchBoxProps, SearchBoxOption, SearchBoxFilters } from './SearchBox';