@wayke-se/components-react 3.0.0-beta.7 → 3.0.0-beta.8

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 (672) hide show
  1. package/README.md +35 -2
  2. package/assets/ajax-loader.gif +0 -0
  3. package/assets/default.css +1 -0
  4. package/assets/fonts/slick.eot +0 -0
  5. package/assets/fonts/slick.svg +14 -0
  6. package/assets/fonts/slick.ttf +0 -0
  7. package/assets/fonts/slick.woff +0 -0
  8. package/dist-node/index.js +6974 -0
  9. package/dist-node/index.js.map +1 -0
  10. package/dist-src/@types/action.js +1 -0
  11. package/dist-src/@types/codegen/types.js +14 -0
  12. package/dist-src/@types/filter.js +1 -0
  13. package/dist-src/@types/queryFilter.js +1 -0
  14. package/dist-src/@types/search.js +1 -0
  15. package/dist-src/@types/vehicle-properties.js +1 -0
  16. package/dist-src/State/CentralStorage/CentralStorageContext.js +4 -0
  17. package/dist-src/State/CentralStorage/CentralStorageProvider.js +9 -0
  18. package/dist-src/State/CentralStorage/useCentralStorage.js +30 -0
  19. package/dist-src/State/Path/PathContext.js +2 -0
  20. package/dist-src/State/Path/PathProvider.js +47 -0
  21. package/dist-src/State/Path/reducer.js +15 -0
  22. package/dist-src/State/Path/usePath.js +10 -0
  23. package/dist-src/State/RelatedSearch/RelatedSearchContext.js +8 -0
  24. package/dist-src/State/RelatedSearch/RelatedSearchProvider.js +27 -0
  25. package/dist-src/State/RelatedSearch/useRelatedSearch.js +15 -0
  26. package/dist-src/State/Search/SearchContext.js +12 -0
  27. package/dist-src/State/Search/SearchProvider.js +179 -0
  28. package/{src/State/Search/useSearch.ts → dist-src/State/Search/useSearch.js} +0 -2
  29. package/dist-src/State/Settings/SettingsContext.js +2 -0
  30. package/dist-src/State/Settings/SettingsProvider.js +4 -0
  31. package/{src/State/Settings/useSettings.ts → dist-src/State/Settings/useSettings.js} +0 -3
  32. package/dist-src/components/Accordion/index.js +18 -0
  33. package/{src/components/Accordion/wrapper.tsx → dist-src/components/Accordion/wrapper.js} +12 -27
  34. package/dist-src/components/ActionList/index.js +19 -0
  35. package/dist-src/components/ActionList/toggle-item.js +27 -0
  36. package/dist-src/components/Avatar/index.js +4 -0
  37. package/{src/components/Avatar/wrapper.tsx → dist-src/components/Avatar/wrapper.js} +3 -9
  38. package/dist-src/components/Badge/index.js +4 -0
  39. package/dist-src/components/Badge/wrapper.js +24 -0
  40. package/dist-src/components/Blockquote/index.js +12 -0
  41. package/{src/components/Blockquote/wrapper.tsx → dist-src/components/Blockquote/wrapper.js} +8 -16
  42. package/{src/components/Button/index.tsx → dist-src/components/Button/index.js} +24 -55
  43. package/dist-src/components/CheckMarkList/index.js +9 -0
  44. package/{src/components/CheckMarkList/wrapper.tsx → dist-src/components/CheckMarkList/wrapper.js} +5 -10
  45. package/dist-src/components/Checklist/index.js +14 -0
  46. package/{src/components/Checklist/wrapper.tsx → dist-src/components/Checklist/wrapper.js} +7 -13
  47. package/dist-src/components/ColorSelect/index.js +18 -0
  48. package/{src/components/ColorSelect/wrapper.tsx → dist-src/components/ColorSelect/wrapper.js} +9 -22
  49. package/{src/components/ColumnRow/index.tsx → dist-src/components/ColumnRow/index.js} +2 -5
  50. package/dist-src/components/Container/index.js +4 -0
  51. package/{src/components/Container/wrapper.tsx → dist-src/components/Container/wrapper.js} +1 -3
  52. package/dist-src/components/Content/index.js +4 -0
  53. package/{src/components/Content/wrapper.tsx → dist-src/components/Content/wrapper.js} +3 -13
  54. package/{src/components/ContentLogo/index.tsx → dist-src/components/ContentLogo/index.js} +3 -7
  55. package/dist-src/components/DataList/index.js +6 -0
  56. package/{src/components/DataList/wrapper.tsx → dist-src/components/DataList/wrapper.js} +5 -10
  57. package/dist-src/components/DetailBox/index.js +17 -0
  58. package/{src/components/DetailBox/wrapper.tsx → dist-src/components/DetailBox/wrapper.js} +7 -14
  59. package/dist-src/components/ExtendContent/index.js +24 -0
  60. package/{src/components/ExtendContent/wrapper.tsx → dist-src/components/ExtendContent/wrapper.js} +5 -14
  61. package/dist-src/components/ExtendInfo/index.js +15 -0
  62. package/{src/components/ExtendInfo/wrapper.tsx → dist-src/components/ExtendInfo/wrapper.js} +7 -14
  63. package/dist-src/components/Filter/index.js +59 -0
  64. package/{src/components/Filter/wrapper.tsx → dist-src/components/Filter/wrapper.js} +6 -13
  65. package/dist-src/components/FilterPanel/checkListFacet.js +29 -0
  66. package/dist-src/components/FilterPanel/colorFacet.js +29 -0
  67. package/dist-src/components/FilterPanel/faceSelector.js +31 -0
  68. package/dist-src/components/FilterPanel/index.js +24 -0
  69. package/dist-src/components/FilterPanel/rangeFacet.js +84 -0
  70. package/dist-src/components/FinancialOptions/LoanModal.js +129 -0
  71. package/dist-src/components/FinancialOptions/index.js +12 -0
  72. package/dist-src/components/FinancialOptions/leasing.js +55 -0
  73. package/dist-src/components/FinancialOptions/loan.js +55 -0
  74. package/dist-src/components/Gallery/MediaButton.js +7 -0
  75. package/dist-src/components/Gallery/index.js +124 -0
  76. package/{src/components/Gallery/wrapper.tsx → dist-src/components/Gallery/wrapper.js} +19 -119
  77. package/dist-src/components/Grid/index.js +45 -0
  78. package/{src/components/Grid/wrapper.tsx → dist-src/components/Grid/wrapper.js} +3 -7
  79. package/dist-src/components/Heading/index.js +54 -0
  80. package/dist-src/components/Icon/index.js +36 -0
  81. package/dist-src/components/InputCheckbox/index.js +10 -0
  82. package/{src/components/InputCheckbox/wrapper.tsx → dist-src/components/InputCheckbox/wrapper.js} +13 -21
  83. package/{src/components/InputGroup/index.tsx → dist-src/components/InputGroup/index.js} +2 -5
  84. package/dist-src/components/InputLabel/index.js +4 -0
  85. package/{src/components/InputLabel/wrapper.tsx → dist-src/components/InputLabel/wrapper.js} +2 -4
  86. package/dist-src/components/InputSearch/index.js +12 -0
  87. package/{src/components/InputSearch/wrapper.tsx → dist-src/components/InputSearch/wrapper.js} +10 -17
  88. package/dist-src/components/InputSelect/index.js +10 -0
  89. package/{src/components/InputSelect/wrapper.tsx → dist-src/components/InputSelect/wrapper.js} +5 -11
  90. package/dist-src/components/InputText/index.js +5 -0
  91. package/{src/components/InputText/wrapper.tsx → dist-src/components/InputText/wrapper.js} +4 -7
  92. package/dist-src/components/InsuranceOptions/Insurance.js +26 -0
  93. package/dist-src/components/InsuranceOptions/InsuranceFree.js +31 -0
  94. package/dist-src/components/InsuranceOptions/InsuranceFreeModal.js +20 -0
  95. package/dist-src/components/InsuranceOptions/InsuranceModal.js +105 -0
  96. package/dist-src/components/InsuranceOptions/index.js +15 -0
  97. package/dist-src/components/Lightbox/index.js +30 -0
  98. package/{src/components/Lightbox/wrapper.tsx → dist-src/components/Lightbox/wrapper.js} +6 -12
  99. package/dist-src/components/Loader/index.js +7 -0
  100. package/{src/components/Loader/wrapper.tsx → dist-src/components/Loader/wrapper.js} +8 -21
  101. package/dist-src/components/LogoBox/index.js +10 -0
  102. package/{src/components/LogoBox/wrapper.tsx → dist-src/components/LogoBox/wrapper.js} +3 -10
  103. package/dist-src/components/Map/index.js +27 -0
  104. package/{src/components/Map/wrapper.tsx → dist-src/components/Map/wrapper.js} +4 -8
  105. package/dist-src/components/Modal/index.js +20 -0
  106. package/{src/components/Modal/wrapper.tsx → dist-src/components/Modal/wrapper.js} +16 -30
  107. package/dist-src/components/OpeningHours/index.js +97 -0
  108. package/dist-src/components/OptionBox/index.js +7 -0
  109. package/{src/components/OptionBox/wrapper.tsx → dist-src/components/OptionBox/wrapper.js} +7 -14
  110. package/dist-src/components/OverflowBox/index.js +4 -0
  111. package/{src/components/OverflowBox/wrapper.tsx → dist-src/components/OverflowBox/wrapper.js} +1 -2
  112. package/{src/components/OverflowGrid/index.tsx → dist-src/components/OverflowGrid/index.js} +3 -7
  113. package/dist-src/components/Page/index.js +30 -0
  114. package/dist-src/components/Panel/index.js +20 -0
  115. package/{src/components/Panel/wrapper.tsx → dist-src/components/Panel/wrapper.js} +16 -28
  116. package/dist-src/components/Pdf/index.js +11 -0
  117. package/{src/components/Pdf/wrapper.tsx → dist-src/components/Pdf/wrapper.js} +9 -15
  118. package/dist-src/components/PhoneNumber/index.js +13 -0
  119. package/{src/components/Portal/index.ts → dist-src/components/Portal/index.js} +0 -1
  120. package/dist-src/components/Portal/portal-element.js +3 -0
  121. package/{src/components/Portal/portal-namespace.ts → dist-src/components/Portal/portal-namespace.js} +0 -0
  122. package/dist-src/components/Portal/portal.js +25 -0
  123. package/{src/components/Price/index.tsx → dist-src/components/Price/index.js} +3 -5
  124. package/dist-src/components/PriceTable/index.js +20 -0
  125. package/{src/components/PriceTable/wrapper.tsx → dist-src/components/PriceTable/wrapper.js} +4 -9
  126. package/dist-src/components/ProductCard/index.js +38 -0
  127. package/{src/components/ProductCard/wrapper.tsx → dist-src/components/ProductCard/wrapper.js} +19 -37
  128. package/{src/components/ProductPage/index.tsx → dist-src/components/ProductPage/index.js} +6 -20
  129. package/dist-src/components/ProgressBar/index.js +16 -0
  130. package/{src/components/ProgressBar/wrapper.tsx → dist-src/components/ProgressBar/wrapper.js} +5 -10
  131. package/dist-src/components/RangeSlider/RangeSliderSimple.js +26 -0
  132. package/dist-src/components/RangeSlider/SliderWithLabel.js +21 -0
  133. package/dist-src/components/RangeSlider/handle.js +5 -0
  134. package/dist-src/components/RangeSlider/index.js +50 -0
  135. package/dist-src/components/RangeSlider/track.js +6 -0
  136. package/{src/components/RangeSlider/wrapper.tsx → dist-src/components/RangeSlider/wrapper.js} +9 -16
  137. package/dist-src/components/RangeSliderLabel/index.js +6 -0
  138. package/{src/components/RangeSliderLabel/wrapper.tsx → dist-src/components/RangeSliderLabel/wrapper.js} +7 -16
  139. package/{src/components/Repeat/index.tsx → dist-src/components/Repeat/index.js} +3 -7
  140. package/dist-src/components/Result/index.js +39 -0
  141. package/{src/components/Result/wrapper.tsx → dist-src/components/Result/wrapper.js} +9 -19
  142. package/{src/components/Root/index.tsx → dist-src/components/Root/index.js} +2 -4
  143. package/dist-src/components/SearchBar/index.js +18 -0
  144. package/dist-src/components/SearchFilter/index.js +23 -0
  145. package/dist-src/components/SearchTerm/index.js +8 -0
  146. package/{src/components/SearchTerm/wrapper.tsx → dist-src/components/SearchTerm/wrapper.js} +4 -8
  147. package/dist-src/components/SectionHeader/index.js +9 -0
  148. package/{src/components/SectionHeader/wrapper.tsx → dist-src/components/SectionHeader/wrapper.js} +3 -7
  149. package/dist-src/components/Snackbar/index.js +21 -0
  150. package/dist-src/components/Snackbar/wrapper.js +56 -0
  151. package/dist-src/components/SortSelect/index.js +10 -0
  152. package/{src/components/SortSelect/wrapper.tsx → dist-src/components/SortSelect/wrapper.js} +5 -11
  153. package/dist-src/components/Sphere/Sphere.js +21 -0
  154. package/dist-src/components/Sphere/SphereLightbox.js +4 -0
  155. package/dist-src/components/Sphere/SphereViewer.js +54 -0
  156. package/{src/components/Sphere/wrapper.tsx → dist-src/components/Sphere/wrapper.js} +1 -7
  157. package/{src/components/SrOnly/index.tsx → dist-src/components/SrOnly/index.js} +1 -2
  158. package/dist-src/components/SwitchBar/index.js +23 -0
  159. package/{src/components/SwitchBar/wrapper.tsx → dist-src/components/SwitchBar/wrapper.js} +10 -19
  160. package/{src/components/TableColumn/index.tsx → dist-src/components/TableColumn/index.js} +3 -7
  161. package/{src/components/TableList/index.tsx → dist-src/components/TableList/index.js} +6 -13
  162. package/dist-src/components/Tabs/index.js +6 -0
  163. package/{src/components/Tabs/wrapper.tsx → dist-src/components/Tabs/wrapper.js} +8 -22
  164. package/dist-src/components/ThreeSixty/Rotation.js +95 -0
  165. package/dist-src/components/ThreeSixty/ThreeSixtLightbox.js +15 -0
  166. package/dist-src/components/ThreeSixty/ThreeSixty.js +25 -0
  167. package/dist-src/components/UspList/index.js +18 -0
  168. package/{src/components/UspList/wrapper.tsx → dist-src/components/UspList/wrapper.js} +8 -15
  169. package/dist-src/components/Utility/index.js +13 -0
  170. package/dist-src/components/Video/CustomPlayer.js +8 -0
  171. package/dist-src/components/Video/EmbeddedVideoLightbox.js +18 -0
  172. package/dist-src/components/Video/EmbededVideo.js +38 -0
  173. package/dist-src/components/Video/QuickNavEmbeded.js +17 -0
  174. package/dist-src/components/Video/QuickNavVideo.js +6 -0
  175. package/dist-src/components/Video/Video.js +8 -0
  176. package/dist-src/components/Video/VimeoPlayer.js +6 -0
  177. package/dist-src/components/Video/YoutubePlayer.js +6 -0
  178. package/dist-src/components/Video/useThumbnail.js +25 -0
  179. package/dist-src/components/Video/utils.js +35 -0
  180. package/dist-src/components/Video/wrapper.js +19 -0
  181. package/dist-src/hooks/useEcom.js +18 -0
  182. package/dist-src/hooks/useFetch.js +69 -0
  183. package/dist-src/hooks/useHasBeenVisible.js +13 -0
  184. package/dist-src/hooks/useHashGuid.js +28 -0
  185. package/dist-src/hooks/useInsurance.js +12 -0
  186. package/dist-src/hooks/useLoan.js +12 -0
  187. package/dist-src/hooks/useOnScreen.js +15 -0
  188. package/dist-src/hooks/useOutsideClick.js +15 -0
  189. package/dist-src/hooks/usePrevious.js +9 -0
  190. package/dist-src/hooks/useSearchItem.js +7 -0
  191. package/dist-src/hooks/useSearchItemBranch.js +7 -0
  192. package/dist-src/hooks/useSessionStorage.js +23 -0
  193. package/dist-src/hooks/useVimeoThumbnail.js +18 -0
  194. package/dist-src/index.js +10 -0
  195. package/dist-src/layout/helpers.js +5 -0
  196. package/{src/layout/keyframes.tsx → dist-src/layout/keyframes.js} +3 -6
  197. package/dist-src/layout/theme.js +57 -0
  198. package/dist-src/layouts/WaykeComposite.js +23 -0
  199. package/dist-src/layouts/WaykeCompositeWithProvider.js +6 -0
  200. package/dist-src/layouts/search/index.js +55 -0
  201. package/dist-src/layouts/searchItem/Branch.js +54 -0
  202. package/dist-src/layouts/searchItem/BranchModal.js +36 -0
  203. package/dist-src/layouts/searchItem/CheckList.js +65 -0
  204. package/dist-src/layouts/searchItem/ManufacturerPackagesOption.js +26 -0
  205. package/dist-src/layouts/searchItem/MetadataItem.js +34 -0
  206. package/dist-src/layouts/searchItem/PackageOptionModal.js +18 -0
  207. package/dist-src/layouts/searchItem/PackageOptions.js +28 -0
  208. package/{src/layouts/searchItem/Page404.tsx → dist-src/layouts/searchItem/Page404.js} +4 -12
  209. package/{src/layouts/searchItem/PageLoading.tsx → dist-src/layouts/searchItem/PageLoading.js} +4 -12
  210. package/dist-src/layouts/searchItem/Property.js +53 -0
  211. package/dist-src/layouts/searchItem/Related.js +65 -0
  212. package/dist-src/layouts/searchItem/index.js +183 -0
  213. package/dist-src/providers/WaykeItemProvidet.js +20 -0
  214. package/dist-src/providers/WaykeProvider.js +22 -0
  215. package/dist-src/providers/graphqlProvider.js +7 -0
  216. package/dist-src/providers/themeProvider.js +5 -0
  217. package/{src/queries/INSURANCE_CALCULATION.ts → dist-src/queries/INSURANCE_CALCULATION.js} +1 -3
  218. package/{src/queries/LOAN_CALCULATION.ts → dist-src/queries/LOAN_CALCULATION.js} +2 -5
  219. package/{src/queries/SEARCH_ITEM_BRANCH_QUERY.ts → dist-src/queries/SEARCH_ITEM_BRANCH_QUERY.js} +2 -5
  220. package/{src/queries/SEARCH_ITEM_QUERY.ts → dist-src/queries/SEARCH_ITEM_QUERY.js} +3 -7
  221. package/dist-src/utils/constants.js +30 -0
  222. package/dist-src/utils/converters.js +31 -0
  223. package/{src/utils/deep-copy.ts → dist-src/utils/deep-copy.js} +1 -2
  224. package/dist-src/utils/formats.js +60 -0
  225. package/dist-src/utils/metadata.min.js +86 -0
  226. package/dist-src/utils/phonenumbers.js +12 -0
  227. package/dist-src/utils/pubsub/Actions.js +1 -0
  228. package/dist-src/utils/pubsub/Events.js +1 -0
  229. package/dist-src/utils/pubsub/pubsub.js +93 -0
  230. package/dist-src/utils/regex.js +10 -0
  231. package/dist-src/utils/sortOptions.js +26 -0
  232. package/dist-src/utils/specification.js +499 -0
  233. package/dist-src/utils/ssn.js +1 -0
  234. package/{src/utils/url.ts → dist-src/utils/url.js} +0 -0
  235. package/dist-src/utils/vehicle-properties/compare-basic-properties.js +36 -0
  236. package/dist-src/utils/vehicle-properties/compare-categories.js +27 -0
  237. package/dist-src/utils/vehicle-properties/compare-properties.js +3 -0
  238. package/dist-src/utils/vehicle-properties/custom-property-adder.js +143 -0
  239. package/dist-src/utils/vehicle-properties/property-hint-enricher.js +190 -0
  240. package/dist-src/utils/vehicle-properties/property-remover.js +20 -0
  241. package/dist-src/utils/vehicle-properties/property-tree-creator.js +127 -0
  242. package/dist-src/utils/vehicle-properties/property-tree-sorter.js +18 -0
  243. package/{src/@types/action.ts → dist-types/@types/action.d.ts} +1 -1
  244. package/dist-types/@types/codegen/types.d.ts +343 -0
  245. package/dist-types/@types/filter.d.ts +5 -0
  246. package/dist-types/@types/queryFilter.d.ts +5 -0
  247. package/dist-types/@types/search.d.ts +105 -0
  248. package/dist-types/@types/vehicle-properties.d.ts +29 -0
  249. package/dist-types/State/CentralStorage/CentralStorageContext.d.ts +6 -0
  250. package/dist-types/State/CentralStorage/CentralStorageProvider.d.ts +6 -0
  251. package/dist-types/State/CentralStorage/useCentralStorage.d.ts +6 -0
  252. package/dist-types/State/Path/PathContext.d.ts +9 -0
  253. package/dist-types/State/Path/PathProvider.d.ts +6 -0
  254. package/dist-types/State/Path/reducer.d.ts +14 -0
  255. package/dist-types/State/Path/usePath.d.ts +3 -0
  256. package/dist-types/State/RelatedSearch/RelatedSearchContext.d.ts +10 -0
  257. package/dist-types/State/RelatedSearch/RelatedSearchProvider.d.ts +9 -0
  258. package/dist-types/State/RelatedSearch/useRelatedSearch.d.ts +2 -0
  259. package/dist-types/State/Search/SearchContext.d.ts +15 -0
  260. package/dist-types/State/Search/SearchProvider.d.ts +10 -0
  261. package/dist-types/State/Search/useSearch.d.ts +2 -0
  262. package/dist-types/State/Settings/SettingsContext.d.ts +13 -0
  263. package/dist-types/State/Settings/SettingsProvider.d.ts +10 -0
  264. package/dist-types/State/Settings/useSettings.d.ts +2 -0
  265. package/dist-types/components/Accordion/index.d.ts +13 -0
  266. package/dist-types/components/Accordion/wrapper.d.ts +16 -0
  267. package/dist-types/components/ActionList/index.d.ts +8 -0
  268. package/dist-types/components/ActionList/toggle-item.d.ts +10 -0
  269. package/dist-types/components/Avatar/index.d.ts +7 -0
  270. package/dist-types/components/Avatar/wrapper.d.ts +7 -0
  271. package/dist-types/components/Badge/index.d.ts +7 -0
  272. package/dist-types/components/Badge/wrapper.d.ts +7 -0
  273. package/dist-types/components/Blockquote/index.d.ts +9 -0
  274. package/dist-types/components/Blockquote/wrapper.d.ts +9 -0
  275. package/dist-types/components/Button/index.d.ts +52 -0
  276. package/dist-types/components/CheckMarkList/index.d.ts +7 -0
  277. package/dist-types/components/CheckMarkList/wrapper.d.ts +6 -0
  278. package/dist-types/components/Checklist/index.d.ts +13 -0
  279. package/dist-types/components/Checklist/wrapper.d.ts +11 -0
  280. package/dist-types/components/ColorSelect/index.d.ts +14 -0
  281. package/dist-types/components/ColorSelect/wrapper.d.ts +11 -0
  282. package/dist-types/components/ColumnRow/index.d.ts +2 -0
  283. package/dist-types/components/Container/index.d.ts +6 -0
  284. package/dist-types/components/Container/wrapper.d.ts +1 -0
  285. package/dist-types/components/Content/index.d.ts +6 -0
  286. package/dist-types/components/Content/wrapper.d.ts +4 -0
  287. package/dist-types/components/ContentLogo/index.d.ts +3 -0
  288. package/dist-types/components/DataList/index.d.ts +10 -0
  289. package/dist-types/components/DataList/wrapper.d.ts +6 -0
  290. package/dist-types/components/DetailBox/index.d.ts +8 -0
  291. package/dist-types/components/DetailBox/wrapper.d.ts +13 -0
  292. package/dist-types/components/ExtendContent/index.d.ts +8 -0
  293. package/dist-types/components/ExtendContent/wrapper.d.ts +6 -0
  294. package/dist-types/components/ExtendInfo/index.d.ts +7 -0
  295. package/dist-types/components/ExtendInfo/wrapper.d.ts +10 -0
  296. package/dist-types/components/Filter/index.d.ts +7 -0
  297. package/dist-types/components/Filter/wrapper.d.ts +8 -0
  298. package/dist-types/components/FilterPanel/checkListFacet.d.ts +7 -0
  299. package/dist-types/components/FilterPanel/colorFacet.d.ts +7 -0
  300. package/dist-types/components/FilterPanel/faceSelector.d.ts +7 -0
  301. package/dist-types/components/FilterPanel/index.d.ts +18 -0
  302. package/dist-types/components/FilterPanel/rangeFacet.d.ts +9 -0
  303. package/dist-types/components/FinancialOptions/LoanModal.d.ts +9 -0
  304. package/dist-types/components/FinancialOptions/index.d.ts +8 -0
  305. package/dist-types/components/FinancialOptions/leasing.d.ts +7 -0
  306. package/dist-types/components/FinancialOptions/loan.d.ts +8 -0
  307. package/dist-types/components/Gallery/MediaButton.d.ts +7 -0
  308. package/dist-types/components/Gallery/index.d.ts +8 -0
  309. package/dist-types/components/Gallery/wrapper.d.ts +26 -0
  310. package/dist-types/components/Grid/index.d.ts +11 -0
  311. package/dist-types/components/Grid/wrapper.d.ts +3 -0
  312. package/dist-types/components/Heading/index.d.ts +24 -0
  313. package/dist-types/components/Icon/index.d.ts +16 -0
  314. package/dist-types/components/InputCheckbox/index.d.ts +7 -0
  315. package/dist-types/components/InputCheckbox/wrapper.d.ts +13 -0
  316. package/dist-types/components/InputGroup/index.d.ts +2 -0
  317. package/dist-types/components/InputLabel/index.d.ts +7 -0
  318. package/dist-types/components/InputLabel/wrapper.d.ts +3 -0
  319. package/dist-types/components/InputSearch/index.d.ts +9 -0
  320. package/dist-types/components/InputSearch/wrapper.d.ts +15 -0
  321. package/dist-types/components/InputSelect/index.d.ts +14 -0
  322. package/dist-types/components/InputSelect/wrapper.d.ts +6 -0
  323. package/dist-types/components/InputText/index.d.ts +8 -0
  324. package/dist-types/components/InputText/wrapper.d.ts +5 -0
  325. package/dist-types/components/InsuranceOptions/Insurance.d.ts +9 -0
  326. package/dist-types/components/InsuranceOptions/InsuranceFree.d.ts +7 -0
  327. package/dist-types/components/InsuranceOptions/InsuranceFreeModal.d.ts +8 -0
  328. package/dist-types/components/InsuranceOptions/InsuranceModal.d.ts +10 -0
  329. package/dist-types/components/InsuranceOptions/index.d.ts +9 -0
  330. package/dist-types/components/Lightbox/index.d.ts +9 -0
  331. package/dist-types/components/Lightbox/wrapper.d.ts +9 -0
  332. package/dist-types/components/Loader/index.d.ts +7 -0
  333. package/dist-types/components/Loader/wrapper.d.ts +9 -0
  334. package/dist-types/components/LogoBox/index.d.ts +9 -0
  335. package/dist-types/components/LogoBox/wrapper.d.ts +4 -0
  336. package/dist-types/components/Map/index.d.ts +7 -0
  337. package/dist-types/components/Map/wrapper.d.ts +4 -0
  338. package/dist-types/components/Modal/index.d.ts +9 -0
  339. package/dist-types/components/Modal/wrapper.d.ts +21 -0
  340. package/dist-types/components/OpeningHours/index.d.ts +7 -0
  341. package/dist-types/components/OptionBox/index.d.ts +9 -0
  342. package/dist-types/components/OptionBox/wrapper.d.ts +8 -0
  343. package/dist-types/components/OverflowBox/index.d.ts +6 -0
  344. package/dist-types/components/OverflowBox/wrapper.d.ts +1 -0
  345. package/dist-types/components/OverflowGrid/index.d.ts +3 -0
  346. package/dist-types/components/Page/index.d.ts +7 -0
  347. package/dist-types/components/Panel/index.d.ts +10 -0
  348. package/dist-types/components/Panel/wrapper.d.ts +22 -0
  349. package/dist-types/components/Pdf/index.d.ts +11 -0
  350. package/dist-types/components/Pdf/wrapper.d.ts +11 -0
  351. package/dist-types/components/PhoneNumber/index.d.ts +6 -0
  352. package/dist-types/components/Portal/index.d.ts +4 -0
  353. package/dist-types/components/Portal/portal-element.d.ts +6 -0
  354. package/dist-types/components/Portal/portal-namespace.d.ts +1 -0
  355. package/dist-types/components/Portal/portal.d.ts +7 -0
  356. package/dist-types/components/Price/index.d.ts +4 -0
  357. package/dist-types/components/PriceTable/index.d.ts +7 -0
  358. package/dist-types/components/PriceTable/wrapper.d.ts +4 -0
  359. package/dist-types/components/ProductCard/index.d.ts +18 -0
  360. package/dist-types/components/ProductCard/wrapper.d.ts +21 -0
  361. package/dist-types/components/ProductPage/index.d.ts +9 -0
  362. package/dist-types/components/ProgressBar/index.d.ts +8 -0
  363. package/dist-types/components/ProgressBar/wrapper.d.ts +6 -0
  364. package/dist-types/components/RangeSlider/RangeSliderSimple.d.ts +13 -0
  365. package/dist-types/components/RangeSlider/SliderWithLabel.d.ts +13 -0
  366. package/dist-types/components/RangeSlider/handle.d.ts +9 -0
  367. package/dist-types/components/RangeSlider/index.d.ts +13 -0
  368. package/dist-types/components/RangeSlider/track.d.ts +9 -0
  369. package/dist-types/components/RangeSlider/wrapper.d.ts +11 -0
  370. package/dist-types/components/RangeSliderLabel/index.d.ts +8 -0
  371. package/dist-types/components/RangeSliderLabel/wrapper.d.ts +10 -0
  372. package/dist-types/components/Repeat/index.d.ts +3 -0
  373. package/dist-types/components/Result/index.d.ts +6 -0
  374. package/dist-types/components/Result/wrapper.d.ts +9 -0
  375. package/dist-types/components/Root/index.d.ts +4 -0
  376. package/dist-types/components/SearchBar/index.d.ts +8 -0
  377. package/dist-types/components/SearchFilter/index.d.ts +3 -0
  378. package/dist-types/components/SearchTerm/index.d.ts +8 -0
  379. package/dist-types/components/SearchTerm/wrapper.d.ts +7 -0
  380. package/dist-types/components/SectionHeader/index.d.ts +8 -0
  381. package/dist-types/components/SectionHeader/wrapper.d.ts +3 -0
  382. package/dist-types/components/Snackbar/index.d.ts +9 -0
  383. package/dist-types/components/Snackbar/wrapper.d.ts +11 -0
  384. package/dist-types/components/SortSelect/index.d.ts +14 -0
  385. package/dist-types/components/SortSelect/wrapper.d.ts +6 -0
  386. package/dist-types/components/Sphere/Sphere.d.ts +10 -0
  387. package/dist-types/components/Sphere/SphereLightbox.d.ts +6 -0
  388. package/dist-types/components/Sphere/SphereViewer.d.ts +10 -0
  389. package/dist-types/components/Sphere/wrapper.d.ts +1 -0
  390. package/dist-types/components/SrOnly/index.d.ts +1 -0
  391. package/dist-types/components/SwitchBar/index.d.ts +10 -0
  392. package/dist-types/components/SwitchBar/wrapper.d.ts +14 -0
  393. package/dist-types/components/TableColumn/index.d.ts +3 -0
  394. package/dist-types/components/TableList/index.d.ts +6 -0
  395. package/dist-types/components/Tabs/index.d.ts +12 -0
  396. package/dist-types/components/Tabs/wrapper.d.ts +12 -0
  397. package/dist-types/components/ThreeSixty/Rotation.d.ts +6 -0
  398. package/dist-types/components/ThreeSixty/ThreeSixtLightbox.d.ts +6 -0
  399. package/dist-types/components/ThreeSixty/ThreeSixty.d.ts +9 -0
  400. package/dist-types/components/UspList/index.d.ts +11 -0
  401. package/dist-types/components/UspList/wrapper.d.ts +11 -0
  402. package/dist-types/components/Utility/index.d.ts +8 -0
  403. package/dist-types/components/Video/CustomPlayer.d.ts +10 -0
  404. package/dist-types/components/Video/EmbeddedVideoLightbox.d.ts +8 -0
  405. package/dist-types/components/Video/EmbededVideo.d.ts +8 -0
  406. package/dist-types/components/Video/QuickNavEmbeded.d.ts +7 -0
  407. package/dist-types/components/Video/QuickNavVideo.d.ts +7 -0
  408. package/dist-types/components/Video/Video.d.ts +5 -0
  409. package/dist-types/components/Video/VimeoPlayer.d.ts +7 -0
  410. package/dist-types/components/Video/YoutubePlayer.d.ts +7 -0
  411. package/dist-types/components/Video/useThumbnail.d.ts +2 -0
  412. package/dist-types/components/Video/utils.d.ts +9 -0
  413. package/dist-types/components/Video/wrapper.d.ts +11 -0
  414. package/dist-types/hooks/useEcom.d.ts +3 -0
  415. package/dist-types/hooks/useFetch.d.ts +7 -0
  416. package/dist-types/hooks/useHasBeenVisible.d.ts +2 -0
  417. package/dist-types/hooks/useHashGuid.d.ts +2 -0
  418. package/dist-types/hooks/useInsurance.d.ts +4 -0
  419. package/dist-types/hooks/useLoan.d.ts +4 -0
  420. package/dist-types/hooks/useOnScreen.d.ts +2 -0
  421. package/dist-types/hooks/useOutsideClick.d.ts +2 -0
  422. package/dist-types/hooks/usePrevious.d.ts +2 -0
  423. package/dist-types/hooks/useSearchItem.d.ts +4 -0
  424. package/dist-types/hooks/useSearchItemBranch.d.ts +4 -0
  425. package/dist-types/hooks/useSessionStorage.d.ts +7 -0
  426. package/dist-types/hooks/useVimeoThumbnail.d.ts +2 -0
  427. package/dist-types/index.d.ts +18 -0
  428. package/dist-types/layout/helpers.d.ts +1 -0
  429. package/dist-types/layout/keyframes.d.ts +3 -0
  430. package/dist-types/layout/theme.d.ts +40 -0
  431. package/dist-types/layouts/WaykeComposite.d.ts +6 -0
  432. package/dist-types/layouts/WaykeCompositeWithProvider.d.ts +9 -0
  433. package/dist-types/layouts/search/index.d.ts +15 -0
  434. package/dist-types/layouts/searchItem/Branch.d.ts +8 -0
  435. package/dist-types/layouts/searchItem/BranchModal.d.ts +9 -0
  436. package/dist-types/layouts/searchItem/CheckList.d.ts +13 -0
  437. package/dist-types/layouts/searchItem/ManufacturerPackagesOption.d.ts +7 -0
  438. package/dist-types/layouts/searchItem/MetadataItem.d.ts +10 -0
  439. package/dist-types/layouts/searchItem/PackageOptionModal.d.ts +17 -0
  440. package/dist-types/layouts/searchItem/PackageOptions.d.ts +7 -0
  441. package/dist-types/layouts/searchItem/Page404.d.ts +3 -0
  442. package/dist-types/layouts/searchItem/PageLoading.d.ts +3 -0
  443. package/dist-types/layouts/searchItem/Property.d.ts +8 -0
  444. package/dist-types/layouts/searchItem/Related.d.ts +9 -0
  445. package/dist-types/layouts/searchItem/index.d.ts +12 -0
  446. package/dist-types/providers/WaykeItemProvidet.d.ts +22 -0
  447. package/dist-types/providers/WaykeProvider.d.ts +24 -0
  448. package/dist-types/providers/graphqlProvider.d.ts +6 -0
  449. package/dist-types/providers/themeProvider.d.ts +6 -0
  450. package/dist-types/queries/INSURANCE_CALCULATION.d.ts +2 -0
  451. package/dist-types/queries/LOAN_CALCULATION.d.ts +2 -0
  452. package/dist-types/queries/SEARCH_ITEM_BRANCH_QUERY.d.ts +2 -0
  453. package/dist-types/queries/SEARCH_ITEM_QUERY.d.ts +2 -0
  454. package/dist-types/utils/constants.d.ts +62 -0
  455. package/dist-types/utils/converters.d.ts +1 -0
  456. package/dist-types/utils/deep-copy.d.ts +5 -0
  457. package/dist-types/utils/formats.d.ts +8 -0
  458. package/dist-types/utils/metadata.min.d.ts +11 -0
  459. package/dist-types/utils/phonenumbers.d.ts +1 -0
  460. package/dist-types/utils/pubsub/Actions.d.ts +16 -0
  461. package/dist-types/utils/pubsub/Events.d.ts +51 -0
  462. package/dist-types/utils/pubsub/pubsub.d.ts +32 -0
  463. package/dist-types/utils/regex.d.ts +3 -0
  464. package/dist-types/utils/sortOptions.d.ts +11 -0
  465. package/dist-types/utils/specification.d.ts +28 -0
  466. package/dist-types/utils/ssn.d.ts +1 -0
  467. package/dist-types/utils/url.d.ts +1 -0
  468. package/dist-types/utils/vehicle-properties/compare-basic-properties.d.ts +3 -0
  469. package/dist-types/utils/vehicle-properties/compare-categories.d.ts +3 -0
  470. package/dist-types/utils/vehicle-properties/compare-properties.d.ts +3 -0
  471. package/dist-types/utils/vehicle-properties/custom-property-adder.d.ts +12 -0
  472. package/dist-types/utils/vehicle-properties/property-hint-enricher.d.ts +10 -0
  473. package/dist-types/utils/vehicle-properties/property-remover.d.ts +7 -0
  474. package/dist-types/utils/vehicle-properties/property-tree-creator.d.ts +31 -0
  475. package/dist-types/utils/vehicle-properties/property-tree-sorter.d.ts +3 -0
  476. package/dist-web/index.js +7606 -0
  477. package/dist-web/index.js.map +1 -0
  478. package/package.json +69 -49
  479. package/.editorconfig +0 -10
  480. package/.eslintrc.js +0 -54
  481. package/.github/workflows/release-to-production.yaml +0 -41
  482. package/.github/workflows/release-to-test.yaml +0 -42
  483. package/.husky/pre-commit +0 -4
  484. package/.prettierrc +0 -10
  485. package/codegen.yml +0 -19
  486. package/dist/index.css +0 -4
  487. package/dist/index.css.map +0 -7
  488. package/dist/index.d.ts +0 -3226
  489. package/dist/index.js +0 -10294
  490. package/dist/index.js.map +0 -7
  491. package/dist/index.mjs +0 -10278
  492. package/dist/index.mjs.map +0 -7
  493. package/esbuild/cdn.js +0 -26
  494. package/esbuild/common.js +0 -19
  495. package/esbuild/lib.js +0 -48
  496. package/esbuild/start.js +0 -21
  497. package/src/@types/codegen.ts +0 -366
  498. package/src/@types/filter.ts +0 -18
  499. package/src/@types/queryFilter.ts +0 -5
  500. package/src/@types/react-panellum.d.ts +0 -1
  501. package/src/@types/search.ts +0 -118
  502. package/src/@types/theme.d.ts +0 -5
  503. package/src/@types/vehicle-properties.ts +0 -33
  504. package/src/State/CentralStorage/CentralStorageContext.ts +0 -10
  505. package/src/State/CentralStorage/CentralStorageProvider.tsx +0 -21
  506. package/src/State/CentralStorage/useCentralStorage.ts +0 -37
  507. package/src/State/Path/PathContext.ts +0 -11
  508. package/src/State/Path/PathProvider.tsx +0 -66
  509. package/src/State/Path/reducer.ts +0 -30
  510. package/src/State/Path/usePath.ts +0 -13
  511. package/src/State/RelatedSearch/RelatedSearchContext.ts +0 -18
  512. package/src/State/RelatedSearch/RelatedSearchProvider.tsx +0 -55
  513. package/src/State/RelatedSearch/useRelatedSearch.ts +0 -20
  514. package/src/State/Search/SearchContext.ts +0 -27
  515. package/src/State/Search/SearchProvider.tsx +0 -243
  516. package/src/State/Settings/SettingsContext.ts +0 -15
  517. package/src/State/Settings/SettingsProvider.tsx +0 -23
  518. package/src/components/Accordion/index.tsx +0 -57
  519. package/src/components/ActionList/index.tsx +0 -48
  520. package/src/components/ActionList/toggle-item.tsx +0 -59
  521. package/src/components/Avatar/index.tsx +0 -12
  522. package/src/components/Badge/index.tsx +0 -12
  523. package/src/components/Badge/wrapper.tsx +0 -32
  524. package/src/components/Blockquote/index.tsx +0 -32
  525. package/src/components/CheckMarkList/index.tsx +0 -21
  526. package/src/components/Checklist/index.tsx +0 -51
  527. package/src/components/ColorSelect/index.tsx +0 -63
  528. package/src/components/Container/index.tsx +0 -11
  529. package/src/components/Content/index.tsx +0 -15
  530. package/src/components/DataList/index.tsx +0 -25
  531. package/src/components/DetailBox/index.tsx +0 -34
  532. package/src/components/ExtendContent/index.tsx +0 -43
  533. package/src/components/ExtendInfo/index.tsx +0 -32
  534. package/src/components/Filter/index.tsx +0 -108
  535. package/src/components/FilterPanel/checkListFacet.tsx +0 -46
  536. package/src/components/FilterPanel/colorFacet.tsx +0 -47
  537. package/src/components/FilterPanel/faceSelector.tsx +0 -53
  538. package/src/components/FilterPanel/index.tsx +0 -79
  539. package/src/components/FilterPanel/rangeFacet.tsx +0 -128
  540. package/src/components/FinancialOptions/LoanModal.tsx +0 -223
  541. package/src/components/FinancialOptions/index.tsx +0 -29
  542. package/src/components/FinancialOptions/leasing.tsx +0 -77
  543. package/src/components/FinancialOptions/loan.tsx +0 -87
  544. package/src/components/Gallery/MediaButton.tsx +0 -19
  545. package/src/components/Gallery/index.tsx +0 -221
  546. package/src/components/Grid/index.tsx +0 -87
  547. package/src/components/Heading/index.tsx +0 -72
  548. package/src/components/Icon/index.tsx +0 -87
  549. package/src/components/InputCheckbox/index.tsx +0 -30
  550. package/src/components/InputLabel/index.tsx +0 -14
  551. package/src/components/InputSearch/index.tsx +0 -51
  552. package/src/components/InputSelect/index.tsx +0 -35
  553. package/src/components/InputText/index.tsx +0 -27
  554. package/src/components/InsuranceOptions/Insurance.tsx +0 -60
  555. package/src/components/InsuranceOptions/InsuranceFree.tsx +0 -59
  556. package/src/components/InsuranceOptions/InsuranceFreeModal.tsx +0 -49
  557. package/src/components/InsuranceOptions/InsuranceModal.tsx +0 -253
  558. package/src/components/InsuranceOptions/index.tsx +0 -27
  559. package/src/components/Lightbox/index.tsx +0 -51
  560. package/src/components/Loader/index.tsx +0 -18
  561. package/src/components/LogoBox/index.tsx +0 -22
  562. package/src/components/Map/index.tsx +0 -62
  563. package/src/components/Modal/index.tsx +0 -51
  564. package/src/components/OpeningHours/index.tsx +0 -145
  565. package/src/components/OptionBox/index.tsx +0 -23
  566. package/src/components/OverflowBox/index.tsx +0 -11
  567. package/src/components/Page/index.tsx +0 -46
  568. package/src/components/Panel/index.tsx +0 -50
  569. package/src/components/Pdf/index.tsx +0 -46
  570. package/src/components/PhoneNumber/index.tsx +0 -33
  571. package/src/components/Portal/portal-element.tsx +0 -9
  572. package/src/components/Portal/portal.tsx +0 -36
  573. package/src/components/PriceTable/index.tsx +0 -34
  574. package/src/components/ProductCard/index.tsx +0 -133
  575. package/src/components/ProgressBar/index.tsx +0 -31
  576. package/src/components/RangeSlider/RangeSliderSimple.tsx +0 -90
  577. package/src/components/RangeSlider/SliderWithLabel.tsx +0 -62
  578. package/src/components/RangeSlider/handle.tsx +0 -26
  579. package/src/components/RangeSlider/index.tsx +0 -132
  580. package/src/components/RangeSlider/track.tsx +0 -19
  581. package/src/components/RangeSliderLabel/index.tsx +0 -18
  582. package/src/components/Result/index.tsx +0 -91
  583. package/src/components/SearchBar/index.tsx +0 -48
  584. package/src/components/SearchFilter/index.tsx +0 -31
  585. package/src/components/SearchTerm/index.tsx +0 -23
  586. package/src/components/SectionHeader/index.tsx +0 -25
  587. package/src/components/Snackbar/index.tsx +0 -35
  588. package/src/components/Snackbar/wrapper.tsx +0 -65
  589. package/src/components/SortSelect/index.tsx +0 -35
  590. package/src/components/Sphere/Sphere.tsx +0 -49
  591. package/src/components/Sphere/SphereLightbox.tsx +0 -12
  592. package/src/components/Sphere/SphereViewer.tsx +0 -45
  593. package/src/components/SwitchBar/index.tsx +0 -55
  594. package/src/components/Tabs/index.tsx +0 -34
  595. package/src/components/ThreeSixty/Rotation.tsx +0 -136
  596. package/src/components/ThreeSixty/ThreeSixtLightbox.tsx +0 -34
  597. package/src/components/ThreeSixty/ThreeSixty.tsx +0 -53
  598. package/src/components/UspList/index.tsx +0 -47
  599. package/src/components/Utility/index.tsx +0 -17
  600. package/src/components/Video/CustomPlayer.tsx +0 -28
  601. package/src/components/Video/EmbeddedVideoLightbox.tsx +0 -31
  602. package/src/components/Video/EmbededVideo.tsx +0 -72
  603. package/src/components/Video/QuickNavEmbeded.tsx +0 -35
  604. package/src/components/Video/QuickNavVideo.tsx +0 -14
  605. package/src/components/Video/Video.tsx +0 -18
  606. package/src/components/Video/VimeoPlayer.tsx +0 -21
  607. package/src/components/Video/YoutubePlayer.tsx +0 -21
  608. package/src/components/Video/useThumbnail.ts +0 -28
  609. package/src/components/Video/utils.ts +0 -47
  610. package/src/components/Video/wrapper.tsx +0 -29
  611. package/src/hooks/useEcom.ts +0 -21
  612. package/src/hooks/useFetch.ts +0 -88
  613. package/src/hooks/useHasBeenVisible.ts +0 -17
  614. package/src/hooks/useHashGuid.ts +0 -33
  615. package/src/hooks/useInsurance.ts +0 -22
  616. package/src/hooks/useLoan.ts +0 -21
  617. package/src/hooks/useOnScreen.ts +0 -20
  618. package/src/hooks/useOutsideClick.ts +0 -19
  619. package/src/hooks/usePrevious.ts +0 -11
  620. package/src/hooks/useSearchItem.ts +0 -11
  621. package/src/hooks/useSearchItemBranch.ts +0 -14
  622. package/src/hooks/useSessionStorage.ts +0 -32
  623. package/src/hooks/useVimeoThumbnail.ts +0 -31
  624. package/src/images/map/marker.png +0 -0
  625. package/src/images/placeholders/staticmap.jpg +0 -0
  626. package/src/index-dev.tsx +0 -144
  627. package/src/index.ts +0 -70
  628. package/src/layout/helpers.tsx +0 -6
  629. package/src/layout/theme.ts +0 -60
  630. package/src/layouts/WaykeComposite.tsx +0 -64
  631. package/src/layouts/WaykeCompositeWithProvider.tsx +0 -17
  632. package/src/layouts/search/index.tsx +0 -124
  633. package/src/layouts/searchItem/Branch.tsx +0 -97
  634. package/src/layouts/searchItem/BranchModal.tsx +0 -67
  635. package/src/layouts/searchItem/CheckList.tsx +0 -146
  636. package/src/layouts/searchItem/ManufacturerPackagesOption.tsx +0 -54
  637. package/src/layouts/searchItem/MetadataItem.tsx +0 -74
  638. package/src/layouts/searchItem/PackageOptionModal.tsx +0 -54
  639. package/src/layouts/searchItem/PackageOptions.tsx +0 -58
  640. package/src/layouts/searchItem/Property.tsx +0 -134
  641. package/src/layouts/searchItem/Related.tsx +0 -120
  642. package/src/layouts/searchItem/index.tsx +0 -344
  643. package/src/providers/WaykeItemProvidet.tsx +0 -68
  644. package/src/providers/WaykeProvider.tsx +0 -80
  645. package/src/providers/graphqlProvider.tsx +0 -9
  646. package/src/providers/themeProvider.tsx +0 -15
  647. package/src/styles.scss +0 -1
  648. package/src/utils/constants.ts +0 -34
  649. package/src/utils/converters.ts +0 -45
  650. package/src/utils/formats.ts +0 -83
  651. package/src/utils/metadata.min.ts +0 -87
  652. package/src/utils/phonenumbers.ts +0 -17
  653. package/src/utils/pubsub/Actions.ts +0 -20
  654. package/src/utils/pubsub/Events.ts +0 -69
  655. package/src/utils/pubsub/pubsub.ts +0 -143
  656. package/src/utils/regex.ts +0 -13
  657. package/src/utils/sortOptions.ts +0 -36
  658. package/src/utils/specification.ts +0 -581
  659. package/src/utils/ssn.ts +0 -1
  660. package/src/utils/vehicle-properties/compare-basic-properties.ts +0 -63
  661. package/src/utils/vehicle-properties/compare-categories.ts +0 -45
  662. package/src/utils/vehicle-properties/compare-properties.ts +0 -5
  663. package/src/utils/vehicle-properties/custom-property-adder.ts +0 -163
  664. package/src/utils/vehicle-properties/property-hint-enricher.ts +0 -230
  665. package/src/utils/vehicle-properties/property-remover.ts +0 -28
  666. package/src/utils/vehicle-properties/property-tree-creator.ts +0 -171
  667. package/src/utils/vehicle-properties/property-tree-sorter.ts +0 -20
  668. package/tsconfig.build.json +0 -10
  669. package/tsconfig.json +0 -15
  670. package/www/ecom.css +0 -60
  671. package/www/index.html +0 -32
  672. package/www/theme.css +0 -83
@@ -1,581 +0,0 @@
1
- import { notEmpty, dateTimeFormat, numberSeparator } from './formats';
2
- import { VehicleData } from '../@types/codegen';
3
-
4
- export interface ItemPropertModalType {
5
- title: string;
6
- text: string;
7
- }
8
-
9
- export interface ItemPropertyType {
10
- label: string;
11
- value: string | null;
12
- modal?: ItemPropertModalType;
13
- }
14
-
15
- type ValueTypes =
16
- | number
17
- | string
18
- | null
19
- | undefined
20
- | string[]
21
- | boolean
22
- | { [key: string]: string | number | boolean };
23
-
24
- export interface SpecPropertyType {
25
- label?: string;
26
- formatLabel?: (item: VehicleData) => string;
27
- formatData?: (value: ValueTypes, item: VehicleData) => string | null;
28
- modal?: {
29
- title?: string;
30
- dynamicTitle?: (item: VehicleData) => string;
31
- text?: string;
32
- dynamicText?: (item: VehicleData) => string;
33
- nonConcatablePropValue?: string;
34
- concatPropValue?: string;
35
- };
36
- }
37
-
38
- const isElectric = (item: VehicleData): boolean =>
39
- !!item.fuelType && item.fuelType.toLowerCase() === 'el';
40
- const getFuelConsumption = (value: ValueTypes, item: VehicleData): string | null => {
41
- if (!value) return null;
42
-
43
- return isElectric(item) ? `${value} kWh/100 km` : `${value} liter/100 km`;
44
- };
45
-
46
- const specLabels: { [key: string]: SpecPropertyType } = {
47
- manufacturer: { label: 'Varumärke' },
48
- manufactureYear: {
49
- label: 'Tillverkningsår',
50
- modal: {
51
- title: 'Tillverkningsår',
52
- text: 'Året bilen tillverkades.',
53
- },
54
- },
55
- modelSeries: { label: 'Modell' },
56
- modelName: {
57
- label: 'Version',
58
- modal: {
59
- title: 'Version',
60
- text: 'Vilket utförande av bilmodellen det är.',
61
- },
62
- },
63
- modelYear: {
64
- label: 'Modellår',
65
- modal: {
66
- title: 'Modellår',
67
- text: 'Modellår sätts av tillverkaren. Handlaren ändrar ibland modellåret för att matcha transportstyrelsens definition för <i>årsmodell</i>. Definitionen för årsmodell innebär att bilar tillverkade andra halvan av året får nästa års modellår.',
68
- },
69
- },
70
- mileage: {
71
- label: 'Mätarställning',
72
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
73
- (value || -1) >= 0 ? `${numberSeparator(value as number)} mil` : null,
74
- modal: {
75
- title: 'Mätarställning',
76
- text: 'Antal mil som bilen har körts. I bilen anges det i kilometer istället.',
77
- },
78
- },
79
- registrationNumber: {
80
- label: 'Registreringsnummer',
81
- },
82
- vinNumber: { label: 'Chassinummer/VIN' },
83
- chassis: {
84
- label: 'Kaross',
85
- modal: {
86
- title: 'Kaross',
87
- text: 'Vilken typ/form bilen har. ',
88
- },
89
- },
90
- colorName: { label: 'Färg' },
91
- enginePower: {
92
- label: 'Effekt',
93
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
94
- value ? `${value} hk` : null,
95
- },
96
- engineCylinders: {
97
- label: 'Cylindrar',
98
- modal: {
99
- title: 'Cylindrar',
100
- text: 'Antalet ger en indikation på motorns storlek. Ett "vanligt" antal ligger på 4 st.',
101
- },
102
- },
103
- engineVolume: {
104
- label: 'Motorvolym',
105
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
106
- value ? `${value} cm3` : null,
107
- modal: {
108
- title: 'Motorvolym',
109
- text: 'Den sammanlagda volymen av motorns cylindrar. Mäts i kubikcentimeter.',
110
- },
111
- },
112
- maxSpeed: {
113
- label: 'Toppfart',
114
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
115
- value ? `${value} km/h` : null,
116
- modal: {
117
- title: 'Toppfart',
118
- text: 'Högsta hastigheten som bilen går att köra.',
119
- },
120
- },
121
- drivingWheel: {
122
- label: 'Drivhjul',
123
- modal: {
124
- title: 'Drivhjul',
125
- text: 'Vilka hjul som motorn ger kraft till och snurrar.',
126
- },
127
- },
128
- torque: {
129
- label: 'Vridmoment',
130
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
131
- value ? `${value} Nm` : null,
132
- modal: {
133
- title: 'Vridmoment',
134
- text: 'Bilens vridkraft. Hög siffra möjliggör att t.ex. dra tunga släp. Dieselmotorer har generellt mer vridmoment.',
135
- },
136
- },
137
- acceleration: {
138
- label: 'Acceleration 0-100 km/h',
139
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
140
- value ? `${value} sek` : null,
141
- modal: {
142
- title: 'Acceleration 0-100 km/h',
143
- text: 'Antal sekunder som bilen behöver för att ta sig till 100 km/h.',
144
- },
145
- },
146
- gearbox: { label: 'Växellåda' },
147
- gearboxType: { label: 'Växellåda' },
148
- fuelType: {
149
- label: 'Bränslegrupp',
150
- modal: {
151
- title: 'Bränslegrupp',
152
- text: 'Vad bilen ska tankas med och drivs av.',
153
- },
154
- },
155
- seats: {
156
- label: 'Säten',
157
- modal: {
158
- title: 'Säten',
159
- text: 'Antal personer som får åka i bilen.',
160
- },
161
- },
162
- segment: {
163
- label: 'Segment',
164
- modal: {
165
- title: 'Segment',
166
- text: 'Vilken typ av bil det handlar om - t.ex. familjebil',
167
- },
168
- },
169
- status: { label: 'Status' },
170
- imported: {
171
- label: 'Import/införsel',
172
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
173
- },
174
- firstRegistrationDate: {
175
- label: 'Först registrerad',
176
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
177
- value ? dateTimeFormat.format(`${value}`, dateTimeFormat.YearMonth) : null,
178
- },
179
- firstInService: {
180
- label: 'Först i trafik',
181
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
182
- value ? dateTimeFormat.format(`${value}`, dateTimeFormat.YearMonth) : null,
183
- },
184
- height: {
185
- label: 'Längd/höjd/bredd',
186
- formatData: (_: ValueTypes, data: VehicleData): string | null =>
187
- `${data?.properties?.length || '-'} cm/${data?.properties?.height || '-'} cm/${
188
- data?.properties?.width || '-'
189
- } cm`,
190
- },
191
- serviceWeight: {
192
- label: 'Tjänstevikt',
193
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
194
- value ? `${numberSeparator(value as number)} kg` : null,
195
- modal: {
196
- title: 'Tjänstevikt',
197
- text: 'Anger hur mycket bilen väger med en passagerare som väger ca 75kg.',
198
- },
199
- },
200
- maxTotalWeight: {
201
- label: 'Maxlast',
202
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
203
- value ? `${numberSeparator(value as number)} kg` : null,
204
- },
205
- maxRoofWeight: {
206
- label: 'Max taklast',
207
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
208
- value ? `${numberSeparator(value as number)} kg` : null,
209
- modal: {
210
- title: 'Max taklast',
211
- text: 'Hur många kilo last taket klarar av.',
212
- },
213
- },
214
- trailerWeight: {
215
- label: 'Max släpvagnsvikt',
216
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
217
- value ? `${numberSeparator(value as number)} kg` : null,
218
- },
219
- trailerTotalWeightB: {
220
- label: 'Totalvikt släp, B',
221
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
222
- value ? `${numberSeparator(value as number)} kg` : null,
223
- modal: {
224
- title: 'Totalvikt släp, B',
225
- text: 'Vikten man får dra med släp och ett vanligt B-körkort',
226
- },
227
- },
228
- trailerTotalWeightBPlus: {
229
- label: 'Totalvikt släp, B+',
230
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
231
- value ? `${numberSeparator(value as number)} kg` : null,
232
- modal: {
233
- title: 'Totalvikt släp, B+',
234
- text: 'Vikten man får dra med släp och ett utökat B-körkort',
235
- },
236
- },
237
- groundClearence: {
238
- label: 'Markfrigång',
239
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
240
- value ? `${value} cm` : null,
241
- modal: {
242
- title: 'Markfrigång',
243
- text: 'Avståndet mellan bilens undersida och marken.',
244
- },
245
- },
246
- trunkSpace: {
247
- label: 'Bagageutrymme - normalt',
248
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
249
- value ? `${value} liter` : null,
250
- modal: {
251
- title: 'Bagageutrymme - normalt',
252
- text: 'Volym på bagageutrymmet med uppfällda säten. Det mäts i liter.',
253
- },
254
- },
255
- tankVolume: {
256
- formatLabel: (item: VehicleData): string =>
257
- isElectric(item) ? 'Batterikapacitet' : 'Volym, bränsletank',
258
- formatData: (value: ValueTypes, data: VehicleData): string | null => {
259
- if (!value) return null;
260
-
261
- return isElectric(data) ? `${value} kWh` : `${value} liter`;
262
- },
263
-
264
- modal: {
265
- dynamicTitle: (item: VehicleData): string =>
266
- isElectric(item) ? 'Batterikapacitet' : 'Volym, bränsletank',
267
- dynamicText: (item: VehicleData): string =>
268
- isElectric(item)
269
- ? 'Batteriets kapacitet i kilowattimmar'
270
- : 'Antal liter bränsle som ryms i tanken.',
271
- },
272
- },
273
- wheelBase: {
274
- label: 'Hjulbas',
275
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
276
- value ? `${value} cm` : null,
277
- modal: {
278
- title: 'Hjulbas',
279
- text: 'Avståndet mellan fram- och bakhjul.',
280
- },
281
- },
282
- tiresFront: { label: 'Däck, fram' },
283
- tiresRear: { label: 'Däck, bak' },
284
- drivingNoise: { label: 'Ljudnivå' },
285
- payload: { label: 'Godsvikt' },
286
- trailerWeightWithoutBreaks: { label: 'Totalvikt släp, utan bromsar' },
287
- co2: {
288
- label: 'CO2',
289
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
290
- value ? `${value} g/km` : null,
291
- modal: {
292
- title: 'C02',
293
- text: 'Anger hur mycket koldioxid fordonet släpper ut.',
294
- },
295
- },
296
- environmentClass: {
297
- label: 'Miljöklass',
298
- modal: {
299
- title: 'Miljöklass',
300
- text: 'Används för att ställa krav på fordonets utsläpp.',
301
- },
302
- },
303
- vehicleCategoryEU: { label: 'EU-kategori' },
304
- fuelConsumptionMixedDriving: {
305
- label: 'Bränsleförbrukning, blandad',
306
- formatData: getFuelConsumption,
307
- modal: {
308
- title: 'Bränsleförbrukning, blandad',
309
- text: 'Bränsleförbrukning vid blandad körning. Dvs. stadskörning och landsvägskörning under en och samma färd.',
310
- },
311
- },
312
- fuelConsumptionCityDriving: {
313
- label: 'Bränsleförbrukning, stad',
314
- formatData: getFuelConsumption,
315
- modal: {
316
- title: 'Bränsleförbrukning, stad',
317
- text: 'Bränsleförbrukning vid stadskörning.',
318
- },
319
- },
320
- fuelConsumptionCountryRoadDriving: {
321
- label: 'Bränsleförbrukning, landsväg',
322
- formatData: getFuelConsumption,
323
- modal: {
324
- title: 'Bränsleförbrukning, landsväg',
325
- text: 'Bränsleförbrukning vid landsvägskörning.',
326
- },
327
- },
328
- nox: { label: 'Nox' },
329
- thcNox: { label: 'THC Nox' },
330
- ncapStar: {
331
- label: 'Euro NCAP stjärnor',
332
- modal: {
333
- title: 'Euro NCAP stjärnor',
334
- text: 'Universiellt säkerhetsbetyg, fler stjärnor innebär högre säkerhet.',
335
- },
336
- },
337
- ncapYear: {
338
- label: 'Testår',
339
- modal: {
340
- title: 'Testår',
341
- text: 'Året som bilen säkerhets- och krocktestades.',
342
- },
343
- },
344
- ncapMonth: { label: 'Testmånad' },
345
- abs: {
346
- label: 'ABS',
347
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
348
- modal: {
349
- title: 'ABS',
350
- text: 'Förhindrar att bromsarna låser sig och reducerar bromssträckan.',
351
- },
352
- },
353
- espSystem: {
354
- label: 'Antisladd (ESP/DSTC/VSC/ASC)',
355
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
356
- },
357
- trcSystem: {
358
- label: 'Antispinn',
359
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
360
- modal: {
361
- title: 'Antispinn',
362
- text: 'Får bilen att skicka kraft till hjulet som har bästa kontakt med underlaget.',
363
- },
364
- },
365
- isofixRearSeat: {
366
- label: 'Isofix bak',
367
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
368
- modal: {
369
- title: 'Isofix bak',
370
- text: 'Universiell fästanordning för barnstolar.',
371
- },
372
- },
373
- airbagDriver: {
374
- label: 'Airbag, förare',
375
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
376
- modal: {
377
- title: 'Airbag, förare',
378
- text: 'Krockkudde för föraren.',
379
- },
380
- },
381
- airbagPassenger: {
382
- label: 'Airbag, passagerare',
383
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
384
- modal: {
385
- title: 'Airbag, passagerare',
386
- text: 'Krockkudde för passagerare.',
387
- },
388
- },
389
- airbagFrontSide: {
390
- label: 'Airbag, sida fram',
391
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
392
- },
393
- brakeAssistance: {
394
- label: 'Bromsassistans (Panikbroms - BA/EBA/BAS/AFU)',
395
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
396
- modal: {
397
- title: 'Bromsassistans (Panikbroms - BA/EBA/BAS/AFU)',
398
- text: 'Säkerhetssystem som kan hjälpa till att bromsa och undvika olyckor. ',
399
- },
400
- },
401
- tco3yrs: {
402
- label: 'TCO, 3 år 2500 mil/år',
403
- formatData: (value: ValueTypes, _: VehicleData): string | null => (value ? 'Ja' : null),
404
- },
405
- annualTax: {
406
- label: 'Skatt',
407
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
408
- value ? `${value} kr/år` : null,
409
- modal: {
410
- title: 'Skatt',
411
- text: 'Summan fordonsskatt som måste betalas varje år.',
412
- },
413
- },
414
- annualMalus: {
415
- label: 'Skatt (Malus)',
416
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
417
- value ? `${value} kr/år` : null,
418
- modal: {
419
- title: 'Malus - förhöjd fordonsskatt',
420
- text: 'Bilen har en förhöjd skatt de tre första åren och därefter gäller ordinarie skatt på {insertValue}.',
421
- nonConcatablePropValue:
422
- 'Bilen har en förhöjd skatt de tre första åren och därefter gäller ordinarie skatt.',
423
- concatPropValue: 'annualTax',
424
- },
425
- },
426
- annualBonus: {
427
- label: 'Bonus',
428
- formatData: (value: ValueTypes, _: VehicleData): string | null =>
429
- value ? `${value} kr` : null,
430
- modal: {
431
- title: 'Bonus - för nya bilar med låga utsläpp',
432
- text: 'Det här fordonet är berättigat till klimatbonus. Bonusen för denna bil är {annualBonus} och delas ut till den första registrerade ägaren efter 6 månader. Klicka <a target="_blank" rel="noopener noreferrer" title="Läs mer om bonus/malus" href="https://www.transportstyrelsen.se/bonusmalus">här</a> för att läsa mer.',
433
- concatPropValue: 'annualBonus',
434
- },
435
- },
436
- };
437
-
438
- const All = [
439
- 'manufacturer',
440
- 'modelSeries',
441
- 'modelName',
442
- 'manufactureYear',
443
- 'mileage',
444
- 'gearboxType',
445
- 'enginePower',
446
- 'drivingWheel',
447
- 'fuelType',
448
- 'seats',
449
- 'colorName',
450
- 'registrationNumber',
451
- 'chassis',
452
- 'engineCylinders',
453
- 'engineVolume',
454
- 'maxSpeed',
455
- 'torque',
456
- 'acceleration',
457
- 'modelYear',
458
- 'vinNumber',
459
- 'segment',
460
- 'status',
461
- 'imported',
462
- 'firstRegistrationDate',
463
- 'firstInService',
464
- 'height',
465
- 'serviceWeight',
466
- 'maxTotalWeight',
467
- 'maxRoofWeight',
468
- 'trailerWeight',
469
- 'trailerTotalWeightB',
470
- 'trailerTotalWeightBPlus',
471
- 'groundClearence',
472
- 'trunkSpace',
473
- 'tankVolume',
474
- 'wheelBase',
475
- 'tiresFront',
476
- 'tiresRear',
477
- 'drivingNoise',
478
- 'payload',
479
- 'trailerWeightWithoutBreaks',
480
- 'co2',
481
- 'environmentClass',
482
- 'vehicleCategoryEU',
483
- 'fuelConsumptionMixedDriving',
484
- 'fuelConsumptionCityDriving',
485
- 'fuelConsumptionCountryRoadDriving',
486
- 'nox',
487
- 'thcNox',
488
- 'ncapStar',
489
- 'ncapYear',
490
- 'ncapMonth',
491
- 'abs',
492
- 'espSystem',
493
- 'trcSystem',
494
- 'isofixRearSeat',
495
- 'airbagDriver',
496
- 'airbagPassenger',
497
- 'airbagFrontSide',
498
- 'brakeAssistance',
499
- 'tco3yrs',
500
- 'annualTax',
501
- 'annualMalus',
502
- 'annualBonus',
503
- ] as const;
504
-
505
- type KEYS = typeof All[number];
506
- type ITEM_KEYS = keyof VehicleData;
507
-
508
- const extractSpecData = (key: KEYS, item: VehicleData): ItemPropertyType | null => {
509
- const spec = specLabels[key];
510
- let data:
511
- | number
512
- | string
513
- | null
514
- | undefined
515
- | string[]
516
- | boolean
517
- | { [key: string]: string | number | boolean } = null;
518
-
519
- if (!!item[key as ITEM_KEYS] || (item[key as ITEM_KEYS] || -1) > -1) {
520
- data = item[key as ITEM_KEYS];
521
- } else if (
522
- !!item?.properties?.[key] ||
523
- (typeof item?.properties?.[key] === 'number' && (item?.properties?.[key] || -1) > -1)
524
- ) {
525
- data = item.properties[key];
526
- }
527
-
528
- if (!spec || !data) {
529
- return null;
530
- }
531
-
532
- let label: string = '';
533
- if (spec.formatLabel) {
534
- label = spec.formatLabel(item);
535
- } else if (spec.label) {
536
- label = spec.label;
537
- }
538
-
539
- let value: string | null = '';
540
- if (spec.formatData) {
541
- value = spec.formatData(data, item);
542
- } else {
543
- value = `${data}`;
544
- }
545
-
546
- const modal = spec.modal ? { title: '', text: '' } : undefined;
547
- if (modal) {
548
- if (spec.modal?.dynamicTitle) {
549
- modal.title = spec.modal.dynamicTitle(item);
550
- } else if (spec.modal?.title) {
551
- modal.title = spec.modal.title;
552
- }
553
-
554
- if (spec.modal?.dynamicText) {
555
- modal.text = spec.modal.dynamicText(item);
556
- } else if (spec.modal?.text) {
557
- modal.text = spec.modal.text;
558
- }
559
-
560
- if (spec.modal?.concatPropValue) {
561
- const concatObj =
562
- spec.modal.concatPropValue === key
563
- ? { value }
564
- : extractSpecData(spec.modal.concatPropValue as KEYS, item);
565
- if (concatObj?.value) {
566
- modal.text = modal.text.replace('{insertValue}', concatObj.value);
567
- } else if (spec.modal.nonConcatablePropValue) {
568
- modal.text = spec.modal.nonConcatablePropValue;
569
- }
570
- }
571
- }
572
-
573
- return {
574
- label,
575
- value,
576
- modal,
577
- };
578
- };
579
-
580
- export const getSpecificationList = (item: VehicleData): ItemPropertyType[] =>
581
- All.map((x: KEYS) => extractSpecData(x, item)).filter(notEmpty);
package/src/utils/ssn.ts DELETED
@@ -1 +0,0 @@
1
- export const ssnIsValid = (s?: string) => (s ? /^\d{2,4}\d{2}\d{2}\-?\d{4}$/.test(s) : false);
@@ -1,63 +0,0 @@
1
- import { Property } from '../../@types/vehicle-properties';
2
-
3
- import compareProperties from './compare-properties';
4
-
5
- interface Order {
6
- Varumärke: 1;
7
- Modell: 2;
8
- Version: 3;
9
- Modellår: 4;
10
- Tillverkningsår: 5;
11
- Mätarställning: 6;
12
- Växellåda: 7;
13
- Färg: 8;
14
- Registreringsnummer: 9;
15
- Bränslegrupp: 10;
16
- Kaross: 11;
17
- Segment: 12;
18
- Skatt: 13;
19
- Malus: 14;
20
- Bonus: 15;
21
- }
22
-
23
- const ORDER: Order = Object.freeze({
24
- Varumärke: 1,
25
- Modell: 2,
26
- Version: 3,
27
- Modellår: 4,
28
- Tillverkningsår: 5,
29
- Mätarställning: 6,
30
- Växellåda: 7,
31
- Färg: 8,
32
- Registreringsnummer: 9,
33
- Bränslegrupp: 10,
34
- Kaross: 11,
35
- Segment: 12,
36
- Skatt: 13,
37
- Malus: 14,
38
- Bonus: 15,
39
- });
40
-
41
- type OrderKey = keyof Order;
42
-
43
- const compareByPredefinedOrder = (firstId: string, secondId: string) => {
44
- const firstOrder = ORDER[firstId as OrderKey] || Number.MAX_SAFE_INTEGER;
45
- const secondOrder = ORDER[secondId as OrderKey] || Number.MAX_SAFE_INTEGER;
46
-
47
- if (firstOrder < secondOrder) {
48
- return -1;
49
- } else if (secondOrder < firstOrder) {
50
- return 1;
51
- }
52
- return 0;
53
- };
54
-
55
- export default (first: Property, second: Property) => {
56
- const result = compareByPredefinedOrder(`${first.name}`, `${second.name}`);
57
-
58
- if (result !== 0) {
59
- return result;
60
- }
61
-
62
- return compareProperties(first, second);
63
- };
@@ -1,45 +0,0 @@
1
- import { Category } from '../../@types/vehicle-properties';
2
-
3
- interface ID_ORDER_TYPE {
4
- '1000': 1;
5
- '71': 2;
6
- '2': 3;
7
- '1': 4;
8
- '8': 5;
9
- '6': 6;
10
- '119': 7;
11
- }
12
-
13
- const ID_ORDER: ID_ORDER_TYPE = Object.freeze({
14
- '1000': 1,
15
- '71': 2,
16
- '2': 3,
17
- '1': 4,
18
- '8': 5,
19
- '6': 6,
20
- '119': 7,
21
- });
22
-
23
- type ID_ORDER_KEY = keyof ID_ORDER_TYPE;
24
-
25
- const compareById = (firstId: string, secondId: string) => {
26
- const firstOrder = ID_ORDER[firstId as ID_ORDER_KEY] || Number.MAX_SAFE_INTEGER;
27
- const secondOrder = ID_ORDER[secondId as ID_ORDER_KEY] || Number.MAX_SAFE_INTEGER;
28
-
29
- if (firstOrder < secondOrder) {
30
- return -1;
31
- } else if (secondOrder < firstOrder) {
32
- return 1;
33
- }
34
- return 0;
35
- };
36
-
37
- export default (first: Category, second: Category) => {
38
- const result = compareById(`${first.id}`, `${second.id}`);
39
-
40
- if (result !== 0) {
41
- return result;
42
- }
43
-
44
- return first.name.localeCompare(second.name);
45
- };
@@ -1,5 +0,0 @@
1
- import { Property } from '../../@types/vehicle-properties';
2
-
3
- export default (first: Property, second: Property) => {
4
- return first.name.localeCompare(second.name);
5
- };