@wayke-se/components-react 3.0.0-beta.11 → 3.0.0-beta.13

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 (278) hide show
  1. package/dist/index.js +5529 -5460
  2. package/dist/index.js.map +4 -4
  3. package/dist/index.mjs +320 -257
  4. package/dist/index.mjs.map +2 -2
  5. package/package.json +4 -2
  6. package/.editorconfig +0 -10
  7. package/.eslintrc.js +0 -62
  8. package/.github/workflows/release-to-production.yaml +0 -40
  9. package/.github/workflows/release-to-test.yaml +0 -40
  10. package/.prettierrc +0 -12
  11. package/assets/ajax-loader.gif +0 -0
  12. package/assets/default.css +0 -1
  13. package/assets/fonts/slick.eot +0 -0
  14. package/assets/fonts/slick.svg +0 -14
  15. package/assets/fonts/slick.ttf +0 -0
  16. package/assets/fonts/slick.woff +0 -0
  17. package/codegen.yml +0 -19
  18. package/esbuild/build.js +0 -39
  19. package/esbuild/common.js +0 -15
  20. package/esbuild/start.js +0 -21
  21. package/esbuild/www/index.html +0 -32
  22. package/example/src/@types/global.d.ts +0 -7
  23. package/example/src/@types/react-panellum.d.ts +0 -1
  24. package/example/src/App.tsx +0 -77
  25. package/example/src/assets/style/ecom.css +0 -63
  26. package/example/src/assets/style/theme.css +0 -83
  27. package/example/src/index.html +0 -26
  28. package/example/src/index.tsx +0 -11
  29. package/example/src/routes/HashRoute/index.tsx +0 -30
  30. package/example/src/routes/Home/index.tsx +0 -33
  31. package/example/src/routes/NotFound/index.tsx +0 -5
  32. package/example/src/routes/PathRoute/index.tsx +0 -35
  33. package/example/src/routes/Search/index.tsx +0 -28
  34. package/example/src/routes/SearchItem/index.tsx +0 -28
  35. package/example/src/routes/index.tsx +0 -25
  36. package/src/@types/action.ts +0 -3
  37. package/src/@types/codegen/types.ts +0 -366
  38. package/src/@types/filter.ts +0 -18
  39. package/src/@types/queryFilter.ts +0 -5
  40. package/src/@types/react-panellum.d.ts +0 -1
  41. package/src/@types/search.ts +0 -118
  42. package/src/@types/theme.d.ts +0 -5
  43. package/src/@types/vehicle-properties.ts +0 -33
  44. package/src/State/CentralStorage/CentralStorageContext.ts +0 -10
  45. package/src/State/CentralStorage/CentralStorageProvider.tsx +0 -21
  46. package/src/State/CentralStorage/useCentralStorage.ts +0 -37
  47. package/src/State/Path/PathContext.ts +0 -11
  48. package/src/State/Path/PathProvider.tsx +0 -66
  49. package/src/State/Path/reducer.ts +0 -30
  50. package/src/State/Path/usePath.ts +0 -13
  51. package/src/State/RelatedSearch/RelatedSearchContext.ts +0 -18
  52. package/src/State/RelatedSearch/RelatedSearchProvider.tsx +0 -55
  53. package/src/State/RelatedSearch/useRelatedSearch.ts +0 -20
  54. package/src/State/Search/SearchContext.ts +0 -27
  55. package/src/State/Search/SearchProvider.tsx +0 -243
  56. package/src/State/Search/useSearch.ts +0 -6
  57. package/src/State/Settings/SettingsContext.ts +0 -15
  58. package/src/State/Settings/SettingsProvider.tsx +0 -23
  59. package/src/State/Settings/useSettings.ts +0 -7
  60. package/src/components/Accordion/index.tsx +0 -57
  61. package/src/components/Accordion/wrapper.tsx +0 -107
  62. package/src/components/ActionList/index.tsx +0 -48
  63. package/src/components/ActionList/toggle-item.tsx +0 -59
  64. package/src/components/Avatar/index.tsx +0 -12
  65. package/src/components/Avatar/wrapper.tsx +0 -21
  66. package/src/components/Badge/index.tsx +0 -12
  67. package/src/components/Badge/wrapper.tsx +0 -32
  68. package/src/components/Blockquote/index.tsx +0 -32
  69. package/src/components/Blockquote/wrapper.tsx +0 -52
  70. package/src/components/Button/index.tsx +0 -226
  71. package/src/components/CheckMarkList/index.tsx +0 -21
  72. package/src/components/CheckMarkList/wrapper.tsx +0 -31
  73. package/src/components/Checklist/index.tsx +0 -51
  74. package/src/components/Checklist/wrapper.tsx +0 -65
  75. package/src/components/ColorSelect/index.tsx +0 -63
  76. package/src/components/ColorSelect/wrapper.tsx +0 -82
  77. package/src/components/ColumnRow/index.tsx +0 -20
  78. package/src/components/Container/index.tsx +0 -11
  79. package/src/components/Container/wrapper.tsx +0 -14
  80. package/src/components/Content/index.tsx +0 -15
  81. package/src/components/Content/wrapper.tsx +0 -61
  82. package/src/components/ContentLogo/index.tsx +0 -27
  83. package/src/components/DataList/index.tsx +0 -25
  84. package/src/components/DataList/wrapper.tsx +0 -29
  85. package/src/components/DetailBox/index.tsx +0 -34
  86. package/src/components/DetailBox/wrapper.tsx +0 -34
  87. package/src/components/ExtendContent/index.tsx +0 -43
  88. package/src/components/ExtendContent/wrapper.tsx +0 -41
  89. package/src/components/ExtendInfo/index.tsx +0 -32
  90. package/src/components/ExtendInfo/wrapper.tsx +0 -63
  91. package/src/components/Filter/index.tsx +0 -108
  92. package/src/components/Filter/wrapper.tsx +0 -79
  93. package/src/components/FilterPanel/checkListFacet.tsx +0 -46
  94. package/src/components/FilterPanel/colorFacet.tsx +0 -47
  95. package/src/components/FilterPanel/faceSelector.tsx +0 -53
  96. package/src/components/FilterPanel/index.tsx +0 -79
  97. package/src/components/FilterPanel/rangeFacet.tsx +0 -128
  98. package/src/components/FinancialOptions/LoanModal.tsx +0 -223
  99. package/src/components/FinancialOptions/index.tsx +0 -29
  100. package/src/components/FinancialOptions/leasing.tsx +0 -77
  101. package/src/components/FinancialOptions/loan.tsx +0 -87
  102. package/src/components/Gallery/MediaButton.tsx +0 -19
  103. package/src/components/Gallery/index.tsx +0 -227
  104. package/src/components/Gallery/wrapper.tsx +0 -323
  105. package/src/components/Grid/index.tsx +0 -87
  106. package/src/components/Grid/wrapper.tsx +0 -30
  107. package/src/components/Heading/index.tsx +0 -72
  108. package/src/components/Icon/index.tsx +0 -87
  109. package/src/components/InputCheckbox/index.tsx +0 -30
  110. package/src/components/InputCheckbox/wrapper.tsx +0 -87
  111. package/src/components/InputGroup/index.tsx +0 -24
  112. package/src/components/InputLabel/index.tsx +0 -14
  113. package/src/components/InputLabel/wrapper.tsx +0 -10
  114. package/src/components/InputSearch/index.tsx +0 -51
  115. package/src/components/InputSearch/wrapper.tsx +0 -97
  116. package/src/components/InputSelect/index.tsx +0 -35
  117. package/src/components/InputSelect/wrapper.tsx +0 -59
  118. package/src/components/InputText/index.tsx +0 -27
  119. package/src/components/InputText/wrapper.tsx +0 -57
  120. package/src/components/InsuranceOptions/Insurance.tsx +0 -60
  121. package/src/components/InsuranceOptions/InsuranceFree.tsx +0 -59
  122. package/src/components/InsuranceOptions/InsuranceFreeModal.tsx +0 -49
  123. package/src/components/InsuranceOptions/InsuranceModal.tsx +0 -253
  124. package/src/components/InsuranceOptions/index.tsx +0 -27
  125. package/src/components/Lightbox/index.tsx +0 -51
  126. package/src/components/Lightbox/wrapper.tsx +0 -97
  127. package/src/components/Loader/index.tsx +0 -18
  128. package/src/components/Loader/wrapper.tsx +0 -50
  129. package/src/components/LogoBox/index.tsx +0 -22
  130. package/src/components/LogoBox/wrapper.tsx +0 -19
  131. package/src/components/Map/index.tsx +0 -62
  132. package/src/components/Map/wrapper.tsx +0 -29
  133. package/src/components/Modal/index.tsx +0 -51
  134. package/src/components/Modal/wrapper.tsx +0 -127
  135. package/src/components/OpeningHours/index.tsx +0 -145
  136. package/src/components/OptionBox/index.tsx +0 -23
  137. package/src/components/OptionBox/wrapper.tsx +0 -56
  138. package/src/components/OverflowBox/index.tsx +0 -11
  139. package/src/components/OverflowBox/wrapper.tsx +0 -7
  140. package/src/components/OverflowGrid/index.tsx +0 -70
  141. package/src/components/Page/index.tsx +0 -46
  142. package/src/components/Panel/index.tsx +0 -50
  143. package/src/components/Panel/wrapper.tsx +0 -155
  144. package/src/components/Pdf/index.tsx +0 -46
  145. package/src/components/Pdf/wrapper.tsx +0 -61
  146. package/src/components/PhoneNumber/index.tsx +0 -33
  147. package/src/components/Portal/index.ts +0 -5
  148. package/src/components/Portal/portal-element.tsx +0 -9
  149. package/src/components/Portal/portal-namespace.ts +0 -1
  150. package/src/components/Portal/portal.tsx +0 -36
  151. package/src/components/Price/index.tsx +0 -12
  152. package/src/components/PriceTable/index.tsx +0 -34
  153. package/src/components/PriceTable/wrapper.tsx +0 -27
  154. package/src/components/ProductCard/index.tsx +0 -133
  155. package/src/components/ProductCard/wrapper.tsx +0 -147
  156. package/src/components/ProductPage/index.tsx +0 -99
  157. package/src/components/ProgressBar/index.tsx +0 -31
  158. package/src/components/ProgressBar/wrapper.tsx +0 -29
  159. package/src/components/RangeSlider/RangeSliderSimple.tsx +0 -90
  160. package/src/components/RangeSlider/SliderWithLabel.tsx +0 -62
  161. package/src/components/RangeSlider/handle.tsx +0 -26
  162. package/src/components/RangeSlider/index.tsx +0 -132
  163. package/src/components/RangeSlider/track.tsx +0 -19
  164. package/src/components/RangeSlider/wrapper.tsx +0 -93
  165. package/src/components/RangeSliderLabel/index.tsx +0 -18
  166. package/src/components/RangeSliderLabel/wrapper.tsx +0 -33
  167. package/src/components/Repeat/index.tsx +0 -21
  168. package/src/components/Result/index.tsx +0 -91
  169. package/src/components/Result/wrapper.tsx +0 -39
  170. package/src/components/Root/index.tsx +0 -24
  171. package/src/components/SearchBar/index.tsx +0 -48
  172. package/src/components/SearchFilter/index.tsx +0 -31
  173. package/src/components/SearchTerm/index.tsx +0 -23
  174. package/src/components/SearchTerm/wrapper.tsx +0 -71
  175. package/src/components/SectionHeader/index.tsx +0 -25
  176. package/src/components/SectionHeader/wrapper.tsx +0 -17
  177. package/src/components/Snackbar/index.tsx +0 -35
  178. package/src/components/Snackbar/wrapper.tsx +0 -65
  179. package/src/components/SortSelect/index.tsx +0 -35
  180. package/src/components/SortSelect/wrapper.tsx +0 -54
  181. package/src/components/Sphere/Sphere.tsx +0 -49
  182. package/src/components/Sphere/SphereLightbox.tsx +0 -10
  183. package/src/components/Sphere/SphereViewer.tsx +0 -81
  184. package/src/components/Sphere/wrapper.tsx +0 -253
  185. package/src/components/SrOnly/index.tsx +0 -14
  186. package/src/components/SwitchBar/index.tsx +0 -55
  187. package/src/components/SwitchBar/wrapper.tsx +0 -80
  188. package/src/components/TableColumn/index.tsx +0 -18
  189. package/src/components/TableList/index.tsx +0 -39
  190. package/src/components/Tabs/index.tsx +0 -34
  191. package/src/components/Tabs/wrapper.tsx +0 -82
  192. package/src/components/ThreeSixty/Rotation.tsx +0 -136
  193. package/src/components/ThreeSixty/ThreeSixtLightbox.tsx +0 -34
  194. package/src/components/ThreeSixty/ThreeSixty.tsx +0 -53
  195. package/src/components/UspList/index.tsx +0 -47
  196. package/src/components/UspList/wrapper.tsx +0 -92
  197. package/src/components/Utility/index.tsx +0 -17
  198. package/src/components/Video/CustomPlayer.tsx +0 -28
  199. package/src/components/Video/EmbeddedVideoLightbox.tsx +0 -31
  200. package/src/components/Video/EmbededVideo.tsx +0 -72
  201. package/src/components/Video/QuickNavEmbeded.tsx +0 -35
  202. package/src/components/Video/QuickNavVideo.tsx +0 -14
  203. package/src/components/Video/Video.tsx +0 -18
  204. package/src/components/Video/VimeoPlayer.tsx +0 -21
  205. package/src/components/Video/YoutubePlayer.tsx +0 -21
  206. package/src/components/Video/useThumbnail.ts +0 -28
  207. package/src/components/Video/utils.ts +0 -47
  208. package/src/components/Video/wrapper.tsx +0 -29
  209. package/src/hooks/useFetch.ts +0 -88
  210. package/src/hooks/useHasBeenVisible.ts +0 -17
  211. package/src/hooks/useHashGuid.ts +0 -33
  212. package/src/hooks/useInsurance.ts +0 -22
  213. package/src/hooks/useLoan.ts +0 -21
  214. package/src/hooks/useOnScreen.ts +0 -20
  215. package/src/hooks/useOutsideClick.ts +0 -19
  216. package/src/hooks/usePrevious.ts +0 -11
  217. package/src/hooks/useSearchItem.ts +0 -11
  218. package/src/hooks/useSearchItemBranch.ts +0 -14
  219. package/src/hooks/useSessionStorage.ts +0 -32
  220. package/src/hooks/useVimeoThumbnail.ts +0 -31
  221. package/src/images/map/marker.png +0 -0
  222. package/src/images/placeholders/staticmap.jpg +0 -0
  223. package/src/index-dev.tsx +0 -42
  224. package/src/index-esbuild.ts +0 -74
  225. package/src/index.ts +0 -72
  226. package/src/layout/helpers.tsx +0 -6
  227. package/src/layout/keyframes.tsx +0 -23
  228. package/src/layout/theme.ts +0 -60
  229. package/src/layouts/WaykeComposite.tsx +0 -64
  230. package/src/layouts/WaykeCompositeWithProvider.tsx +0 -17
  231. package/src/layouts/search/index.tsx +0 -124
  232. package/src/layouts/searchItem/Branch.tsx +0 -97
  233. package/src/layouts/searchItem/BranchModal.tsx +0 -67
  234. package/src/layouts/searchItem/CheckList.tsx +0 -146
  235. package/src/layouts/searchItem/ManufacturerPackagesOption.tsx +0 -54
  236. package/src/layouts/searchItem/MetadataItem.tsx +0 -74
  237. package/src/layouts/searchItem/PackageOptionModal.tsx +0 -54
  238. package/src/layouts/searchItem/PackageOptions.tsx +0 -58
  239. package/src/layouts/searchItem/Page404.tsx +0 -17
  240. package/src/layouts/searchItem/PageLoading.tsx +0 -17
  241. package/src/layouts/searchItem/Property.tsx +0 -134
  242. package/src/layouts/searchItem/Related.tsx +0 -120
  243. package/src/layouts/searchItem/index.tsx +0 -342
  244. package/src/providers/WaykeItemProvidet.tsx +0 -63
  245. package/src/providers/WaykeProvider.tsx +0 -75
  246. package/src/providers/graphqlProvider.tsx +0 -9
  247. package/src/providers/themeProvider.tsx +0 -15
  248. package/src/queries/INSURANCE_CALCULATION.ts +0 -43
  249. package/src/queries/LOAN_CALCULATION.ts +0 -39
  250. package/src/queries/SEARCH_ITEM_BRANCH_QUERY.ts +0 -120
  251. package/src/queries/SEARCH_ITEM_QUERY.ts +0 -237
  252. package/src/utils/constants.ts +0 -34
  253. package/src/utils/converters.ts +0 -45
  254. package/src/utils/deep-copy.ts +0 -6
  255. package/src/utils/formats.ts +0 -83
  256. package/src/utils/metadata.min.ts +0 -87
  257. package/src/utils/phonenumbers.ts +0 -17
  258. package/src/utils/pubsub/Actions.ts +0 -20
  259. package/src/utils/pubsub/Events.ts +0 -79
  260. package/src/utils/pubsub/pubsub.ts +0 -151
  261. package/src/utils/regex.ts +0 -13
  262. package/src/utils/sortOptions.ts +0 -36
  263. package/src/utils/specification.ts +0 -581
  264. package/src/utils/ssn.ts +0 -1
  265. package/src/utils/url.ts +0 -1
  266. package/src/utils/vehicle-properties/compare-basic-properties.ts +0 -63
  267. package/src/utils/vehicle-properties/compare-categories.ts +0 -45
  268. package/src/utils/vehicle-properties/compare-properties.ts +0 -5
  269. package/src/utils/vehicle-properties/custom-property-adder.ts +0 -163
  270. package/src/utils/vehicle-properties/property-hint-enricher.ts +0 -230
  271. package/src/utils/vehicle-properties/property-remover.ts +0 -28
  272. package/src/utils/vehicle-properties/property-tree-creator.ts +0 -171
  273. package/src/utils/vehicle-properties/property-tree-sorter.ts +0 -20
  274. package/tsconfig.build.json +0 -10
  275. package/tsconfig.eslint.json +0 -11
  276. package/tsconfig.json +0 -18
  277. package/webpack.analyze.js +0 -10
  278. package/webpack.config.js +0 -95
@@ -1,17 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
- import useOnScreen from './useOnScreen';
3
-
4
- const useHasBeenVisible = (ref: React.MutableRefObject<HTMLElement | null>) => {
5
- const isVisible = useOnScreen(ref);
6
- const [hasBeenVisible, setHasBeenVisible] = useState(false);
7
-
8
- useEffect(() => {
9
- if (isVisible && !hasBeenVisible) {
10
- setHasBeenVisible(true);
11
- }
12
- }, [isVisible]);
13
-
14
- return hasBeenVisible;
15
- };
16
-
17
- export default useHasBeenVisible;
@@ -1,33 +0,0 @@
1
- import { useState, useEffect } from 'react';
2
-
3
- const regexGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
4
- const HASH_CHANGE = 'hashchange';
5
-
6
- const getGuid = () => {
7
- const guid = window.location.hash.substr(1, window.location.hash.length);
8
- return regexGuid.test(guid) || !guid ? guid : undefined;
9
- };
10
-
11
- const useHashGuid = () => {
12
- const [id, setId] = useState<string | undefined>(() => getGuid());
13
- const onHashChange = () => {
14
- const guid = window.location.hash.substr(1, window.location.hash.length);
15
- if (regexGuid.test(guid) || !guid) {
16
- setId(window.location.hash.substr(1, window.location.hash.length));
17
- } else {
18
- throw 'Invalid Guid';
19
- }
20
- };
21
-
22
- useEffect(() => {
23
- onHashChange();
24
- window.addEventListener(HASH_CHANGE, onHashChange);
25
- return () => {
26
- window.removeEventListener(HASH_CHANGE, onHashChange);
27
- };
28
- }, []);
29
-
30
- return id;
31
- };
32
-
33
- export default useHashGuid;
@@ -1,22 +0,0 @@
1
- import { useQuery, QueryResult } from '@apollo/client';
2
- import INSURANCE_CALCULATION from '../queries/INSURANCE_CALCULATION';
3
-
4
- import { DrivingDistance, QueryInsurancesArgs, Query } from '../@types/codegen/types';
5
-
6
- const useInsuranceCalculation = (
7
- id: string,
8
- branchId?: string,
9
- personalNumber?: string,
10
- drivingDistance?: DrivingDistance
11
- ): QueryResult<Query, QueryInsurancesArgs> =>
12
- useQuery<Query, QueryInsurancesArgs>(INSURANCE_CALCULATION, {
13
- variables: {
14
- id,
15
- branch: branchId as string,
16
- personalNumber: personalNumber as string,
17
- drivingDistance: drivingDistance as DrivingDistance,
18
- },
19
- skip: personalNumber === undefined || drivingDistance === undefined || branchId === undefined,
20
- });
21
-
22
- export default useInsuranceCalculation;
@@ -1,21 +0,0 @@
1
- import { useQuery, QueryResult } from '@apollo/client';
2
- import LOAN_CALCULATION from '../queries/LOAN_CALCULATION';
3
- import { QueryLoanArgs, Query } from '../@types/codegen/types';
4
-
5
- const useLoanCalculation = (
6
- id: string,
7
- duration?: number,
8
- downPayment?: number,
9
- residual?: number
10
- ): QueryResult<Query, QueryLoanArgs> =>
11
- useQuery<Query, QueryLoanArgs>(LOAN_CALCULATION, {
12
- variables: {
13
- id,
14
- duration: duration as number,
15
- downPayment: downPayment as number,
16
- residual: (residual as number) || 0,
17
- },
18
- skip: duration === undefined || downPayment === undefined,
19
- });
20
-
21
- export default useLoanCalculation;
@@ -1,20 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
-
3
- const useOnScreen = (ref: React.MutableRefObject<HTMLElement | null>) => {
4
- const [isIntersecting, setIntersecting] = useState(false);
5
-
6
- const observer = new IntersectionObserver(([entry]) => setIntersecting(entry.isIntersecting));
7
-
8
- useEffect(() => {
9
- if (ref.current) {
10
- observer.observe(ref.current);
11
- }
12
- return () => {
13
- observer.disconnect();
14
- };
15
- }, []);
16
-
17
- return isIntersecting;
18
- };
19
-
20
- export default useOnScreen;
@@ -1,19 +0,0 @@
1
- import { useEffect } from 'react';
2
-
3
- const useOutsideClick = (ref: React.RefObject<HTMLElement>, callback: () => void) => {
4
- const handleClick = (e: MouseEvent) => {
5
- if (ref.current && e.target && !ref.current.contains(e.target as Node)) {
6
- callback();
7
- }
8
- };
9
-
10
- useEffect(() => {
11
- document.addEventListener('click', handleClick);
12
-
13
- return () => {
14
- document.removeEventListener('click', handleClick);
15
- };
16
- });
17
- };
18
-
19
- export default useOutsideClick;
@@ -1,11 +0,0 @@
1
- import { useRef, useEffect } from 'react';
2
-
3
- const usePrevious = <T>(value: T) => {
4
- const ref = useRef<T>();
5
- useEffect(() => {
6
- ref.current = value;
7
- });
8
- return ref.current;
9
- };
10
-
11
- export default usePrevious;
@@ -1,11 +0,0 @@
1
- import { useQuery, QueryResult } from '@apollo/client';
2
- import SEARCH_ITEM_QUERY from '../queries/SEARCH_ITEM_QUERY';
3
- import { QueryVehicleArgs, Query } from '../@types/codegen/types';
4
-
5
- const useSearchItem = (id?: string): QueryResult<Query, QueryVehicleArgs> =>
6
- useQuery<Query, QueryVehicleArgs>(SEARCH_ITEM_QUERY, {
7
- variables: { id: id as string },
8
- skip: !id,
9
- });
10
-
11
- export default useSearchItem;
@@ -1,14 +0,0 @@
1
- import { useQuery, QueryResult } from '@apollo/client';
2
- import SEARCH_ITEM_BRANCH_QUERY from '../queries/SEARCH_ITEM_BRANCH_QUERY';
3
- import { QueryVehicleArgs, Query } from '../@types/codegen/types';
4
-
5
- const useSearchItemBranch = (
6
- id?: string | null,
7
- branch?: string | null
8
- ): QueryResult<Query, QueryVehicleArgs> =>
9
- useQuery<Query, QueryVehicleArgs>(SEARCH_ITEM_BRANCH_QUERY, {
10
- variables: { id: id as string, branch: branch as string },
11
- skip: !id || !branch,
12
- });
13
-
14
- export default useSearchItemBranch;
@@ -1,32 +0,0 @@
1
- import { useState, useCallback } from 'react';
2
-
3
- const useSessionStorage = (key: string) => {
4
- const [value, setValue] = useState(sessionStorage.getItem(key));
5
-
6
- const set = useCallback(
7
- (v: string) => {
8
- sessionStorage.setItem(key, v);
9
- setValue(v);
10
- },
11
- [key]
12
- );
13
-
14
- const remove = useCallback(() => {
15
- sessionStorage.removeItem(key);
16
- setValue(null);
17
- }, [key]);
18
-
19
- const clear = useCallback(() => {
20
- sessionStorage.clear();
21
- setValue(null);
22
- }, [key]);
23
-
24
- return {
25
- value,
26
- set,
27
- remove,
28
- clear,
29
- };
30
- };
31
-
32
- export default useSessionStorage;
@@ -1,31 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
- import useFetch from './useFetch';
3
-
4
- interface VimeoItem {
5
- thumbnail_large: string;
6
- thumbnail_small: string;
7
- }
8
-
9
- const useVimeoThumbnail = (id?: string, small?: boolean) => {
10
- const [thumbnail, setThumbnail] = useState<string>();
11
- const { data } = useFetch<VimeoItem[]>(
12
- `http://vimeo.com/api/v2/video/${id}.json`,
13
- {},
14
- !id || !!thumbnail,
15
- true
16
- );
17
-
18
- useEffect(() => {
19
- if (data?.[0]) {
20
- if (small && data[0].thumbnail_small) {
21
- setThumbnail(data[0].thumbnail_small);
22
- } else if (data[0].thumbnail_large) {
23
- setThumbnail(data[0].thumbnail_large);
24
- }
25
- }
26
- }, [data]);
27
-
28
- return thumbnail;
29
- };
30
-
31
- export default useVimeoThumbnail;
Binary file
package/src/index-dev.tsx DELETED
@@ -1,42 +0,0 @@
1
- import React from 'react';
2
- import { createRoot } from 'react-dom/client';
3
-
4
- import '../example/src/assets/style/theme.css';
5
- import '../example/src/assets/style/ecom.css';
6
- import '../assets/default.css';
7
-
8
- import WaykeComposite, { WaykePubSub } from '.';
9
-
10
- WaykePubSub.subscribe({
11
- eventName: 'All',
12
- // eslint-disable-next-line
13
- callback: (eventName, data) => console.log('subscribed All:', eventName, data),
14
- });
15
-
16
- window.addEventListener('DOMContentLoaded', (_) => {
17
- const container = document.getElementById('root');
18
- const root = createRoot(container!);
19
- root.render(
20
- <WaykeComposite
21
- composite={{
22
- removeSearchBar: false,
23
- removeFilterOptions: false,
24
- modifyDocumentTitleItem: true,
25
- modifyDocumentTitleSearch: 'Wayke',
26
- }}
27
- provider={{
28
- graphQlUrl: process.env.WAYKE_GRAPH_QL_URL as string,
29
- url: process.env.WAYKE_SEARCH_URL as string,
30
- urlMlt: process.env.WAYKE_SEARCH_MLT_URL as string,
31
- ecomSettings: {
32
- url: process.env.WAYKE_ECOM_URL as string,
33
- useBankId: true,
34
- serviceLogotypeUrl: 'https://cdn.wayke.se/wui/images/ecom/wayke-logo.svg',
35
- },
36
- googleMapsApiKey: process.env.GOOGLE_MAPS_API_KEY as string,
37
- googleMapsMarker: 'https://www.wayke.se/images/map/marker.png',
38
- useQueryParamsFromUrl: true,
39
- }}
40
- />
41
- );
42
- });
@@ -1,74 +0,0 @@
1
- import '../assets/default.css';
2
-
3
- import WaykeSearch, { WaykeSearchProps } from './layouts/search/index';
4
- import WaykeSearchItem, { WaykeSearchItemProps } from './layouts/searchItem/index';
5
- import WaykeProvider, { WaykeProviderSettings } from './providers/WaykeProvider';
6
- import WaykeComposite, {
7
- WaykeCompositeWithProviderProps,
8
- } from './layouts/WaykeCompositeWithProvider';
9
- import SearchBar from './components/SearchBar/index';
10
- import WaykeThemeProvider from './providers/themeProvider';
11
- import WaykeItemProvider, { WaykeItemProviderSettings } from './providers/WaykeItemProvidet';
12
- import WaykePubSub, { EventSubscriptions } from './utils/pubsub/pubsub';
13
- import type { SearchFilterTypes, SearchFilterNameTypes } from './@types/filter';
14
-
15
- import type {
16
- EventHashRouteChange,
17
- EventItemClicked,
18
- EventEcomOnInit,
19
- EventEcomOnUser,
20
- EventEcomOnExit,
21
- EventImagesClick,
22
- EventOptionsClick,
23
- EventPhonenumberVisible,
24
- EventPhonenumberCall,
25
- EventMailVisible,
26
- EventInsuranceInterest,
27
- EventFinanceInterest,
28
- EventAll,
29
- EventType,
30
- EventNames,
31
- CallbackHashRouteChange,
32
- CallbackEventItemClicked,
33
- CallbackEcomOnUserEvent,
34
- CallbackEmpty,
35
- } from './utils/pubsub/Events';
36
-
37
- export {
38
- WaykeProvider,
39
- WaykeItemProvider,
40
- WaykeSearch,
41
- WaykeSearchItem,
42
- SearchBar,
43
- WaykeThemeProvider,
44
- WaykeItemProviderSettings,
45
- WaykePubSub,
46
- WaykeCompositeWithProviderProps,
47
- WaykeProviderSettings,
48
- WaykeSearchProps,
49
- WaykeSearchItemProps,
50
- SearchFilterTypes,
51
- SearchFilterNameTypes,
52
- EventSubscriptions,
53
- EventHashRouteChange,
54
- EventItemClicked,
55
- EventEcomOnInit,
56
- EventEcomOnUser,
57
- EventEcomOnExit,
58
- EventImagesClick,
59
- EventOptionsClick,
60
- EventPhonenumberVisible,
61
- EventPhonenumberCall,
62
- EventMailVisible,
63
- EventInsuranceInterest,
64
- EventFinanceInterest,
65
- EventAll,
66
- EventType,
67
- EventNames,
68
- CallbackHashRouteChange,
69
- CallbackEventItemClicked,
70
- CallbackEcomOnUserEvent,
71
- CallbackEmpty,
72
- };
73
-
74
- export default WaykeComposite;
package/src/index.ts DELETED
@@ -1,72 +0,0 @@
1
- import WaykeSearch, { WaykeSearchProps } from './layouts/search/index';
2
- import WaykeSearchItem, { WaykeSearchItemProps } from './layouts/searchItem/index';
3
- import WaykeProvider, { WaykeProviderSettings } from './providers/WaykeProvider';
4
- import WaykeComposite, {
5
- WaykeCompositeWithProviderProps,
6
- } from './layouts/WaykeCompositeWithProvider';
7
- import SearchBar from './components/SearchBar/index';
8
- import WaykeThemeProvider from './providers/themeProvider';
9
- import WaykeItemProvider, { WaykeItemProviderSettings } from './providers/WaykeItemProvidet';
10
- import WaykePubSub, { EventSubscriptions } from './utils/pubsub/pubsub';
11
- import type { SearchFilterTypes, SearchFilterNameTypes } from './@types/filter';
12
-
13
- import type {
14
- EventHashRouteChange,
15
- EventItemClicked,
16
- EventEcomOnInit,
17
- EventEcomOnUser,
18
- EventEcomOnExit,
19
- EventImagesClick,
20
- EventOptionsClick,
21
- EventPhonenumberVisible,
22
- EventPhonenumberCall,
23
- EventMailVisible,
24
- EventInsuranceInterest,
25
- EventFinanceInterest,
26
- EventAll,
27
- EventType,
28
- EventNames,
29
- CallbackHashRouteChange,
30
- CallbackEventItemClicked,
31
- CallbackEcomOnUserEvent,
32
- CallbackEmpty,
33
- } from './utils/pubsub/Events';
34
-
35
- export {
36
- WaykeProvider,
37
- WaykeItemProvider,
38
- WaykeSearch,
39
- WaykeSearchItem,
40
- SearchBar,
41
- WaykeThemeProvider,
42
- WaykeItemProviderSettings,
43
- WaykePubSub,
44
- WaykeCompositeWithProviderProps,
45
- WaykeProviderSettings,
46
- WaykeSearchProps,
47
- WaykeSearchItemProps,
48
- SearchFilterTypes,
49
- SearchFilterNameTypes,
50
- EventSubscriptions,
51
- EventHashRouteChange,
52
- EventItemClicked,
53
- EventEcomOnInit,
54
- EventEcomOnUser,
55
- EventEcomOnExit,
56
- EventImagesClick,
57
- EventOptionsClick,
58
- EventPhonenumberVisible,
59
- EventPhonenumberCall,
60
- EventMailVisible,
61
- EventInsuranceInterest,
62
- EventFinanceInterest,
63
- EventAll,
64
- EventType,
65
- EventNames,
66
- CallbackHashRouteChange,
67
- CallbackEventItemClicked,
68
- CallbackEcomOnUserEvent,
69
- CallbackEmpty,
70
- };
71
-
72
- export default WaykeComposite;
@@ -1,6 +0,0 @@
1
- import theme from './theme';
2
-
3
- export const size = (multiplier = 1) => {
4
- const baseUnit = parseFloat(theme.distances.baseUnit);
5
- return `${multiplier * baseUnit}px`;
6
- };
@@ -1,23 +0,0 @@
1
- import { keyframes } from 'styled-components';
2
-
3
- export const noTransform = keyframes`
4
- to {
5
- transform: none;
6
- }
7
- `;
8
-
9
- export const fadeIn = keyframes`
10
- from {
11
- opacity: 0;
12
- }
13
-
14
- to {
15
- opacity: 1;
16
- }
17
- `;
18
-
19
- export const rotate = keyframes`
20
- to {
21
- transform: rotate(360deg);
22
- }
23
- `;
@@ -1,60 +0,0 @@
1
- const _colors = {
2
- black: '#000',
3
- white: '#fff',
4
- gray: '#ddd',
5
- grayLight: '#f8f8f8',
6
- grayLightTransparent: 'rgba(248, 248, 248, 0)',
7
- grayLightDarker: '#ebebeb',
8
- grayDark: '#717171',
9
- blue: '#1d61ca',
10
- ui: {
11
- greenLight: '#cdf5c8',
12
- green: '#2b8747',
13
- redLight: '#ffd0d0',
14
- red: '#c71f1f',
15
- yellowLight: '#fff4c7',
16
- blueLight: '#daf7fc',
17
- },
18
- };
19
-
20
- const theme = {
21
- color: {
22
- bg: _colors.white,
23
- link: _colors.blue,
24
- accent: _colors.grayLight,
25
- accentTransparent: _colors.grayLightTransparent,
26
- accentDark: _colors.grayLightDarker,
27
- border: _colors.gray,
28
- textDark: _colors.black,
29
- textDarkLighten: _colors.grayDark,
30
- textLight: _colors.white,
31
- hoverOverlay: 'rgba(0, 0, 0, 0.04)',
32
- disabledBg: _colors.gray,
33
- disabledText: _colors.grayDark,
34
- placeholder: _colors.grayDark,
35
- ui: {
36
- positiveLight: _colors.ui.greenLight,
37
- positive: _colors.ui.green,
38
- neutralLight: _colors.ui.yellowLight,
39
- negativeLight: _colors.ui.redLight,
40
- negative: _colors.ui.red,
41
- infoLight: _colors.ui.blueLight,
42
- },
43
- },
44
- breakpoint: {
45
- Sm: '@media (min-width: 600px)',
46
- LtSm: '@media (max-width: 599px)',
47
- Md: '@media (min-width: 900px)',
48
- LtMd: '@media (max-width: 899px)',
49
- Lg: '@media (min-width: 1200px)',
50
- LtLg: '@media (max-width: 1199px)',
51
- },
52
- distances: {
53
- baseUnit: '8px',
54
- inputHeight: '48px',
55
- containerMaxWidth: '1312px',
56
- },
57
- };
58
-
59
- export type Theme = typeof theme;
60
- export default theme;
@@ -1,64 +0,0 @@
1
- import React, { useEffect } from 'react';
2
- import useHashGuid from '../hooks/useHashGuid';
3
- import PubSub from '../utils/pubsub/pubsub';
4
-
5
- import WaykeSearch, { WaykeSearchProps } from './search/index';
6
- import WaykeSearchItem, { WaykeSearchItemProps } from './searchItem/index';
7
- import usePath from '../State/Path/usePath';
8
-
9
- export type WaykeCompositeProps = Omit<WaykeSearchProps & WaykeSearchItemProps, 'id'>;
10
-
11
- const WaykeComposite = ({
12
- filterList,
13
- initialQueryParams,
14
- removeSearchBar,
15
- removeFilterOptions,
16
- disableResetScrollOnInit,
17
- placeholderImage,
18
- pathRoute,
19
- modifyDocumentTitleItem,
20
- modifyDocumentTitleSearch,
21
- }: WaykeCompositeProps) => {
22
- const hashId = useHashGuid();
23
- const { id: pathId } = usePath();
24
-
25
- useEffect(() => {
26
- if (!pathRoute) {
27
- if (hashId) {
28
- PubSub.publish('HashRouteChange', hashId);
29
- } else {
30
- PubSub.publish('HashRouteChange');
31
- }
32
- }
33
- }, [hashId]);
34
-
35
- const id = pathId || hashId;
36
-
37
- return (
38
- <>
39
- {id ? (
40
- <WaykeSearchItem
41
- id={id}
42
- hashRoute={!pathRoute}
43
- disableResetScrollOnInit={disableResetScrollOnInit}
44
- placeholderImage={placeholderImage}
45
- pathRoute={pathRoute}
46
- modifyDocumentTitleItem={modifyDocumentTitleItem}
47
- />
48
- ) : (
49
- <WaykeSearch
50
- filterList={filterList}
51
- initialQueryParams={initialQueryParams}
52
- removeSearchBar={removeSearchBar}
53
- hashRoute={!pathRoute}
54
- placeholderImage={placeholderImage}
55
- pathRoute={pathRoute}
56
- removeFilterOptions={removeFilterOptions}
57
- modifyDocumentTitleSearch={modifyDocumentTitleSearch}
58
- />
59
- )}
60
- </>
61
- );
62
- };
63
-
64
- export default WaykeComposite;
@@ -1,17 +0,0 @@
1
- import React from 'react';
2
-
3
- import WaykeProvider, { WaykeProviderProps } from '../providers/WaykeProvider';
4
- import WaykeComposite, { WaykeCompositeProps } from './WaykeComposite';
5
-
6
- export interface WaykeCompositeWithProviderProps {
7
- provider: WaykeProviderProps;
8
- composite?: WaykeCompositeProps;
9
- }
10
-
11
- const WaykeCompositeWithProvider = ({ provider, composite }: WaykeCompositeWithProviderProps) => (
12
- <WaykeProvider {...provider}>
13
- <WaykeComposite {...composite} />
14
- </WaykeProvider>
15
- );
16
-
17
- export default WaykeCompositeWithProvider;