@bytebrand/fe-ui-core 4.1.170 → 4.1.172
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.
- package/common.ts +0 -5
- package/media/svg/common/arrow_breadcrumps.svg +2 -2
- package/media/svg/common/home.svg +8 -6
- package/media/svg/common/whyAutodeIconSet-F.svg +12 -8
- package/media/svg/common/whyAutodeIconSet-G.svg +8 -6
- package/media/svg/common/whyAutodeIconSet-Q.svg +15 -5
- package/media/svg/common/whyAutodeIconSet-R.svg +13 -8
- package/media/svg/infoBlocks/whyAutodeIconSet-F.svg +8 -8
- package/media/svg/infoBlocks/whyAutodeIconSet-G.svg +6 -7
- package/media/svg/infoBlocks/whyAutodeIconSet-Q.svg +11 -5
- package/media/svg/infoBlocks/whyAutodeIconSet-R.svg +9 -8
- package/package.json +1 -1
- package/source/components/AccordionWidget/AccordionWidget.styl +3 -0
- package/source/components/Alternative/DealerInfo.styl +1 -7
- package/source/components/Alternative/DealerInfo.tsx +38 -64
- package/source/components/Breadcrumbs/Breadcrumbs.styl +19 -31
- package/source/components/Breadcrumbs/Breadcrumbs.tsx +3 -3
- package/source/components/Breadcrumbs/FirstInfoBlock/FirstInfoBlock.styl +18 -11
- package/source/components/PriceRating/PriceRating.styl +0 -1
- package/source/components/SearchFilters/common/RangeControlled/RangeControlled.tsx +1 -2
- package/source/components/SearchPage/SearchTopBar/SearchTopBar.styl +3 -13
- package/source/components/SearchPage/SearchTopBar/SearchTopBar.tsx +3 -3
- package/source/components/Vehicle/VehicleFormattedPrice/VehicleFormattedPrice.styl +17 -23
- package/source/components/VehicleDetailedSidebar/partials/Properties.styl +4 -0
- package/source/components/VehicleDetailedSidebar/partials/Properties.tsx +1 -1
- package/source/components/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.styl +40 -54
- package/source/components/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.tsx +16 -38
- package/source/components/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.styl +18 -47
- package/source/components/VehicleSmallCard/VehicleData/VehicleInfo/VehicleInfo.tsx +6 -13
- package/source/components/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.styl +28 -48
- package/source/components/VehicleSmallCard/VehicleData/VehiclePrice/VehiclePrice.tsx +16 -50
- package/source/components/VehicleSmallCard/VehicleData/VehicleProperty/VehicleProperty.styl +8 -6
- package/source/components/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.styl +12 -31
- package/source/components/VehicleSmallCard/VehicleData/VehicleTitle/VehicleTitle.tsx +3 -8
- package/source/components/VehicleSmallCard/VehicleSmallCard.styl +19 -51
- package/source/components/VehicleSmallCard/VehicleSmallCard.tsx +9 -39
- package/source/components/_common/Badge/Badge.styl +7 -13
- package/source/components/_common/Badge/Badge.tsx +1 -1
- package/source/components/_common/Button/Button.styled.tsx +8 -13
- package/source/components/_common/Button/Button.tsx +1 -1
- package/source/components/_common/ExpansionPanel/ExpansionPanel.tsx +4 -14
- package/source/components/_common/IconSVG/IconSVG.story.js +1 -1
- package/source/components/_common/IconSVG/IconSVGConfig.tsx +1 -90
- package/source/components/_common/IconSVG/SVG/CloseIconSelect.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/common/SliderEye.tsx +3 -2
- package/source/components/_common/IconSVG/SVG/common/StarRoundedCorners.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/searchWidgets/drive/AllWheelDrive.tsx +2 -2
- package/source/components/_common/IconSVG/SVG/searchWidgets/drive/FrontWheelDrive.tsx +2 -2
- package/source/components/_common/IconSVG/SVG/searchWidgets/drive/RearWheelDrive.tsx +2 -2
- package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelDiesel.tsx +14 -4
- package/source/components/_common/IconSVG/SVG/searchWidgets/fuel/FuelPetrol.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/settings/RemoveEye.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/settings/RemoveEyeOff.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/vehicle/CarAvailability.tsx +3 -3
- package/source/components/_common/IconSVG/SVG/vehicle/CheckoutChecked.tsx +2 -2
- package/source/components/_common/IconSVG/SVG/vehicle/Date.tsx +2 -2
- package/source/components/_common/IconSVG/SVG/vehicle/Door.tsx +7 -5
- package/source/components/_common/IconSVG/SVG/vehicle/FuelConsumption.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/vehicle/NewCar.tsx +9 -7
- package/source/components/_common/IconSVG/SVG/vehicle/Ps.tsx +1 -1
- package/source/components/_common/IconSVG/SVG/vehicle/SelectorGearboxAutomatic.tsx +2 -2
- package/source/components/_common/MaterialAccordionGroup/MaterialAccordionGroup.styled.tsx +1 -17
- package/source/components/_common/MaterialAccordionGroup/MaterialAccordionGroup.tsx +4 -3
- package/source/components/_common/MaterialAutocomplete/MaterialAutocomplete.styled.tsx +3 -6
- package/source/components/_common/MaterialAutocomplete/MaterialAutocomplete.tsx +3 -28
- package/source/components/_common/MaterialSelect/MaterialSelect.styled.tsx +7 -0
- package/source/components/_common/MaterialSelect/MaterialSelect.tsx +9 -16
- package/source/components/_common/Modal/CookieModal.tsx +7 -10
- package/source/components/_common/Modal/Modal.styled.tsx +1 -2
- package/source/components/_common/Modal/modals/ManageCookieModal/ManageCookieModal.styl +3 -15
- package/source/components/_common/Modal/modals/ManageCookieModal/ManageCookieModal.tsx +3 -5
- package/source/components/_common/Modal/modals/PreviewCookieModal/PreviewCookieModal.styl +1 -11
- package/source/components/_common/Modal/modals/PreviewCookieModal/PreviewCookieModal.tsx +0 -2
- package/source/components/_common/TimePicker/TimePicker.styl +1 -3
- package/source/components/_common/TimePicker/TimePicker.tsx +2 -6
- package/source/components/_common/UserMenu/MaterialMenu.styled.tsx +1 -2
- package/source/components/_common/withStats/withStats.styl +87 -43
- package/source/components/_common/withStats/withStats.tsx +8 -17
- package/source/components/containers/SearchPage/FiltersContainer/FiltersContainer.styl +3 -7
- package/source/framework/constants/common.ts +3 -15
- package/source/framework/factories/BreadcrumbsFactory.tsx +8 -19
- package/source/framework/factories/FactoryTypes.d.ts +0 -1
- package/source/framework/types/types.ts +2 -4
- package/source/framework/utils/CommonUtils.ts +8 -20
- package/source/framework/vehiclesProps/decoratedProps.tsx +23 -19
- package/source/locales/data.ts +0 -2
- package/source/theme/priceReviewColors.styl +1 -3
- package/utils.ts +0 -16
- package/source/components/_common/IconSVG/SVG/common/AddressDashboard.tsx +0 -29
- package/source/components/_common/IconSVG/SVG/common/CallbackDashboard.tsx +0 -30
- package/source/components/_common/IconSVG/SVG/common/CloseGrey.tsx +0 -22
- package/source/components/_common/IconSVG/SVG/common/DashboardQuestionMark.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/common/DeliveryDashboard.tsx +0 -25
- package/source/components/_common/IconSVG/SVG/common/EditPriceIcon.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/common/HandingOverDashboard.tsx +0 -32
- package/source/components/_common/IconSVG/SVG/common/MenuGrey.tsx +0 -22
- package/source/components/_common/IconSVG/SVG/common/MyOrderIcon.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/common/OrderReceivedDashboard.tsx +0 -27
- package/source/components/_common/IconSVG/SVG/common/PickupDashboard.tsx +0 -30
- package/source/components/_common/IconSVG/SVG/common/PreparationDashboard.tsx +0 -29
- package/source/components/_common/IconSVG/SVG/common/ProfileDashboard.tsx +0 -24
- package/source/components/_common/IconSVG/SVG/common/RegistrationDashboard.tsx +0 -31
- package/source/components/_common/IconSVG/SVG/flags/AT.tsx +0 -19
- package/source/components/_common/IconSVG/SVG/flags/BE.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/BG.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/CH.tsx +0 -22
- package/source/components/_common/IconSVG/SVG/flags/CZ.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/DE.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/DK.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/ES.tsx +0 -2585
- package/source/components/_common/IconSVG/SVG/flags/FI.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/FR.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/GB.tsx +0 -26
- package/source/components/_common/IconSVG/SVG/flags/HR.tsx +0 -135
- package/source/components/_common/IconSVG/SVG/flags/HU.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/IT.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/LI.tsx +0 -106
- package/source/components/_common/IconSVG/SVG/flags/LU.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/NL.tsx +0 -18
- package/source/components/_common/IconSVG/SVG/flags/NO.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/PL.tsx +0 -19
- package/source/components/_common/IconSVG/SVG/flags/RO.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/RU.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/SE.tsx +0 -20
- package/source/components/_common/IconSVG/SVG/flags/SI.tsx +0 -54
- package/source/components/_common/IconSVG/SVG/flags/SK.tsx +0 -35
- package/source/components/_common/IconSVG/SVG/flags/UA.tsx +0 -19
- package/source/components/_common/IconSVG/SVG/slider/360New.tsx +0 -20
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { memo } from 'react';
|
|
2
|
-
import { TextField, Checkbox
|
|
2
|
+
import { TextField, Checkbox } from '@mui/material';
|
|
3
3
|
import { ThemeProvider } from '@mui/material/styles';
|
|
4
4
|
import _isEmpty from 'lodash/isEmpty';
|
|
5
5
|
import _indexOf from 'lodash/indexOf';
|
|
@@ -10,7 +10,6 @@ import _get from 'lodash/get';
|
|
|
10
10
|
import Autocomplete, { createFilterOptions } from '@mui/material/Autocomplete';
|
|
11
11
|
import { Theme, ArrowSelect, CheckboxLabel } from './MaterialAutocomplete.styled';
|
|
12
12
|
import isEqual from 'lodash/isEqual';
|
|
13
|
-
import IconSVG from '../IconSVG/IconSVG';
|
|
14
13
|
|
|
15
14
|
export interface IItems {
|
|
16
15
|
value: string | number;
|
|
@@ -51,8 +50,6 @@ export interface IMaterialAutocompleteProps {
|
|
|
51
50
|
disableIcon?: boolean;
|
|
52
51
|
name?: string;
|
|
53
52
|
placeholder?: string;
|
|
54
|
-
readOnly?:boolean,
|
|
55
|
-
listWithImage?:boolean
|
|
56
53
|
}
|
|
57
54
|
|
|
58
55
|
const ITEM_HEIGHT = 36;
|
|
@@ -79,10 +76,7 @@ const MaterialAutocomplete: React.FC<IMaterialAutocompleteProps> = ({
|
|
|
79
76
|
items,
|
|
80
77
|
disableIcon,
|
|
81
78
|
name,
|
|
82
|
-
placeholder
|
|
83
|
-
readOnly,
|
|
84
|
-
listWithImage
|
|
85
|
-
|
|
79
|
+
placeholder
|
|
86
80
|
}: IMaterialAutocompleteProps) => {
|
|
87
81
|
const filter = createFilterOptions<IFilmOptionType>();
|
|
88
82
|
|
|
@@ -101,9 +95,7 @@ const MaterialAutocomplete: React.FC<IMaterialAutocompleteProps> = ({
|
|
|
101
95
|
handleHomeEndKeys
|
|
102
96
|
value={value}
|
|
103
97
|
name={name}
|
|
104
|
-
error={error
|
|
105
|
-
readOnly={readOnly}
|
|
106
|
-
listwithimage={listWithImage}
|
|
98
|
+
error={error}
|
|
107
99
|
onChange={(e, newValue, reason: string, details?: { option: any }) => {
|
|
108
100
|
if (typeof newValue === 'string') {
|
|
109
101
|
onChange(newValue);
|
|
@@ -168,22 +160,6 @@ const MaterialAutocomplete: React.FC<IMaterialAutocompleteProps> = ({
|
|
|
168
160
|
</li>
|
|
169
161
|
);
|
|
170
162
|
}
|
|
171
|
-
if (listWithImage){
|
|
172
|
-
return(
|
|
173
|
-
<><Box component='li'
|
|
174
|
-
sx={{ '& > svg': { mr: 2, flexShrink: 0 } }}
|
|
175
|
-
{...props}
|
|
176
|
-
key={_uniqueId(option.label)}>
|
|
177
|
-
<IconSVG
|
|
178
|
-
customDimensions
|
|
179
|
-
width='26px'
|
|
180
|
-
height='16px'
|
|
181
|
-
name={option.icon} />
|
|
182
|
-
{option.value}
|
|
183
|
-
</Box>
|
|
184
|
-
{option.isDivider ? <Divider /> : null}</>
|
|
185
|
-
);
|
|
186
|
-
}
|
|
187
163
|
const isSeries = (option.isDisabled && option.label !== 'No options') || option.isSeries;
|
|
188
164
|
const label = isSeries ? option.label.toUpperCase() : option.label;
|
|
189
165
|
return (
|
|
@@ -213,7 +189,6 @@ const MaterialAutocomplete: React.FC<IMaterialAutocompleteProps> = ({
|
|
|
213
189
|
label={label}
|
|
214
190
|
name={name}
|
|
215
191
|
placeholder={placeholder}
|
|
216
|
-
InputProps={{ ...params.InputProps, readOnly }}
|
|
217
192
|
/>
|
|
218
193
|
)}
|
|
219
194
|
>
|
|
@@ -34,8 +34,6 @@ export interface IVehicleModalProps {
|
|
|
34
34
|
onChange: (value: any) => void;
|
|
35
35
|
items: IItems[];
|
|
36
36
|
selectClassName?: string;
|
|
37
|
-
amountOfItems?: number;
|
|
38
|
-
customDimensionsIcon?: boolean;
|
|
39
37
|
}
|
|
40
38
|
|
|
41
39
|
const ITEM_HEIGHT = isMobileOnly ? 56 : 48;
|
|
@@ -61,9 +59,7 @@ const MaterialSelect: React.FC<IVehicleModalProps> = ({
|
|
|
61
59
|
selectClassName,
|
|
62
60
|
required,
|
|
63
61
|
items,
|
|
64
|
-
icon
|
|
65
|
-
customDimensionsIcon,
|
|
66
|
-
amountOfItems = MENU_ITEMS
|
|
62
|
+
icon
|
|
67
63
|
}: IVehicleModalProps) => {
|
|
68
64
|
const [newValue, setValue] = useState('');
|
|
69
65
|
const [multipleValue, setMultipleValue] = React.useState([]);
|
|
@@ -120,14 +116,11 @@ const MaterialSelect: React.FC<IVehicleModalProps> = ({
|
|
|
120
116
|
key={`${value}_${index}`}
|
|
121
117
|
value={value}
|
|
122
118
|
disabled={setDisabled}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
sx={{
|
|
129
|
-
height: ITEM_HEIGHT
|
|
130
|
-
}}
|
|
119
|
+
sx={setDisabled ? {
|
|
120
|
+
backgroundColor: '#e8e8e8',
|
|
121
|
+
color: '#333',
|
|
122
|
+
opacity: '1 !important'
|
|
123
|
+
} : null}
|
|
131
124
|
>
|
|
132
125
|
{!!t ? t(`${namespace}${cbd ? ':' : '.'}${label}`) : getLabel(label, setDisabled)}
|
|
133
126
|
</MenuItem>
|
|
@@ -174,7 +167,7 @@ const MaterialSelect: React.FC<IVehicleModalProps> = ({
|
|
|
174
167
|
inputProps={{
|
|
175
168
|
className: selectClassName
|
|
176
169
|
}}
|
|
177
|
-
IconComponent={() => <ArrowSelect
|
|
170
|
+
IconComponent={() => <ArrowSelect className={IconClassNames} name={!!icon ? icon : 'arrowSelect'} />}
|
|
178
171
|
MenuProps={{
|
|
179
172
|
disablePortal: true,
|
|
180
173
|
disableAutoFocus: true,
|
|
@@ -186,8 +179,8 @@ const MaterialSelect: React.FC<IVehicleModalProps> = ({
|
|
|
186
179
|
PaperProps: {
|
|
187
180
|
sx: {
|
|
188
181
|
maxHeight: {
|
|
189
|
-
xs: MOBILE_ITEM_HEIGHT *
|
|
190
|
-
sm: ITEM_HEIGHT *
|
|
182
|
+
xs: MOBILE_ITEM_HEIGHT * MENU_ITEMS + ITEM_PADDING_TOP,
|
|
183
|
+
sm: ITEM_HEIGHT * MENU_ITEMS + ITEM_PADDING_TOP
|
|
191
184
|
}
|
|
192
185
|
}
|
|
193
186
|
},
|
|
@@ -7,16 +7,13 @@ const CookieModal = () => {
|
|
|
7
7
|
const { isVisible, toggleModal } = useModal();
|
|
8
8
|
const [modal, setModal] = useState('');
|
|
9
9
|
|
|
10
|
-
useEffect(
|
|
11
|
-
()
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
[]
|
|
19
|
-
);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
const cookieConfig = localStorage.getItem('cookieConfig');
|
|
12
|
+
if (!cookieConfig) {
|
|
13
|
+
setModal('PREVIEW_COOKIE_MODAL');
|
|
14
|
+
toggleModal();
|
|
15
|
+
} else setTimeout(() => { updateCookieList(); }, 3000);
|
|
16
|
+
}, []);
|
|
20
17
|
|
|
21
18
|
const onClearModalState = () => {
|
|
22
19
|
setModal('');
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
@import '../../../../../theme/mixins.styl';
|
|
2
|
-
|
|
3
1
|
.modalWrapper
|
|
4
2
|
padding: 16px 10px 25px 25px
|
|
5
3
|
text-align: center
|
|
@@ -16,7 +14,7 @@
|
|
|
16
14
|
|
|
17
15
|
.modalContent
|
|
18
16
|
font-family: sans-serif
|
|
19
|
-
font-size:
|
|
17
|
+
font-size: 16px;
|
|
20
18
|
line-height: 24px;
|
|
21
19
|
text-align: justify;
|
|
22
20
|
letter-spacing: 0.15px;
|
|
@@ -45,24 +43,14 @@
|
|
|
45
43
|
display: flex
|
|
46
44
|
justify-content: center
|
|
47
45
|
column-gap: 20px
|
|
48
|
-
+media-phone-only()
|
|
49
|
-
column-gap: 0
|
|
50
46
|
|
|
51
47
|
.modalBtn
|
|
52
48
|
height: 38px
|
|
53
|
-
text-transform:
|
|
54
|
-
+media-phone-only()
|
|
55
|
-
font-size: 11px !important
|
|
49
|
+
text-transform: uppercase !important
|
|
56
50
|
|
|
57
51
|
.outlinedBtn
|
|
58
52
|
border: none !important
|
|
59
53
|
|
|
60
54
|
.switchBlock
|
|
61
55
|
display: flex
|
|
62
|
-
justify-content: space-between
|
|
63
|
-
align-items: center
|
|
64
|
-
font-size: 12px
|
|
65
|
-
line-height: 15px
|
|
66
|
-
letter-spacing: 1px
|
|
67
|
-
color: rgba(76, 78, 100, 0.87)
|
|
68
|
-
text-align: left
|
|
56
|
+
justify-content: space-between
|
|
@@ -43,7 +43,7 @@ const ManageCookieModal = ({ toggleModal }) => {
|
|
|
43
43
|
value: marketingMasterSwitch,
|
|
44
44
|
onChange: onHandleMarketingSwitchValue
|
|
45
45
|
};
|
|
46
|
-
|
|
46
|
+
|
|
47
47
|
const analyticsSwitchProps = {
|
|
48
48
|
value: analytcisMasterSwitch,
|
|
49
49
|
onChange: onHandleAnalyticsSwitchValue
|
|
@@ -55,7 +55,7 @@ const ManageCookieModal = ({ toggleModal }) => {
|
|
|
55
55
|
onChange: () => {}
|
|
56
56
|
};
|
|
57
57
|
|
|
58
|
-
const onAccept = (value?: object) => {
|
|
58
|
+
const onAccept = (value?: object) => {
|
|
59
59
|
const cookieConfig = value || {
|
|
60
60
|
marketing: Object.keys(marketingSwitches).filter(i => !marketingSwitches[i]) || [],
|
|
61
61
|
analytics: Object.keys(analyticsSwitches).filter(i => !analyticsSwitches[i]) || []
|
|
@@ -73,7 +73,7 @@ const ManageCookieModal = ({ toggleModal }) => {
|
|
|
73
73
|
<div className={styles.accordions}>
|
|
74
74
|
<MaterialAccordionGroup
|
|
75
75
|
title='Notwendig'
|
|
76
|
-
tooltipText='
|
|
76
|
+
tooltipText='tooltip text'
|
|
77
77
|
withSwitch
|
|
78
78
|
switchProps={necessarySwitchProps}
|
|
79
79
|
>
|
|
@@ -94,7 +94,6 @@ const ManageCookieModal = ({ toggleModal }) => {
|
|
|
94
94
|
<MaterialAccordionGroup
|
|
95
95
|
title='Analytisch'
|
|
96
96
|
withSwitch
|
|
97
|
-
tooltipText='Analytisch'
|
|
98
97
|
switchProps={analyticsSwitchProps}
|
|
99
98
|
>
|
|
100
99
|
<span>
|
|
@@ -116,7 +115,6 @@ const ManageCookieModal = ({ toggleModal }) => {
|
|
|
116
115
|
<MaterialAccordionGroup
|
|
117
116
|
title='Marketing'
|
|
118
117
|
withSwitch
|
|
119
|
-
tooltipText='Marketing'
|
|
120
118
|
switchProps={marketingSwitchProps}
|
|
121
119
|
>
|
|
122
120
|
<span>
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
@import '../../../../../theme/mixins.styl';
|
|
2
|
-
|
|
3
1
|
.modalWrapper
|
|
4
2
|
padding: 26px 60px 56px
|
|
5
3
|
text-align: center
|
|
6
4
|
box-sizing: border-box
|
|
7
5
|
max-width: 600px
|
|
8
|
-
+media-phone-only()
|
|
9
|
-
padding: 13px 15px 28px
|
|
10
6
|
|
|
11
7
|
.modalTitle
|
|
12
8
|
font-family: sans-serif
|
|
@@ -24,22 +20,16 @@
|
|
|
24
20
|
letter-spacing: 0.15px;
|
|
25
21
|
color: rgba(76, 78, 100, 0.87);
|
|
26
22
|
margin-top: 20px
|
|
27
|
-
+media-phone-only()
|
|
28
|
-
column-gap: 0
|
|
29
23
|
|
|
30
24
|
.buttonsContainer
|
|
31
25
|
margin-top: 20px
|
|
32
26
|
display: flex
|
|
33
27
|
justify-content: center
|
|
34
28
|
column-gap: 20px
|
|
35
|
-
+media-phone-only()
|
|
36
|
-
column-gap: 0
|
|
37
29
|
|
|
38
30
|
.modalBtn
|
|
39
31
|
height: 38px
|
|
40
|
-
text-transform:
|
|
41
|
-
+media-phone-only()
|
|
42
|
-
font-size: 11px !important
|
|
32
|
+
text-transform: uppercase !important
|
|
43
33
|
|
|
44
34
|
.outlinedBtn
|
|
45
35
|
border: none !important
|
|
@@ -3,7 +3,6 @@ import IconSVG from '../../../IconSVG/IconSVG';
|
|
|
3
3
|
import Button from '../../../Button/Button';
|
|
4
4
|
import styles from './PreviewCookieModal.styl';
|
|
5
5
|
import classNames from 'classnames';
|
|
6
|
-
import { updateCookieList } from '../../../../../framework/utils/CommonUtils';
|
|
7
6
|
|
|
8
7
|
interface IPreviewCookieModal {
|
|
9
8
|
toggleModal: () => void;
|
|
@@ -13,7 +12,6 @@ interface IPreviewCookieModal {
|
|
|
13
12
|
const PreviewCookieModal = ({ toggleModal, setModal }: IPreviewCookieModal) => {
|
|
14
13
|
const onAcceptAll = () => {
|
|
15
14
|
localStorage.setItem('cookieConfig', JSON.stringify([]));
|
|
16
|
-
updateCookieList();
|
|
17
15
|
toggleModal();
|
|
18
16
|
};
|
|
19
17
|
|
|
@@ -46,8 +46,8 @@ const TimePicker = ({
|
|
|
46
46
|
const nextWeekDays = [...Array(7).keys()].map((days, index) => (
|
|
47
47
|
{
|
|
48
48
|
value: index,
|
|
49
|
-
label: new Date(Date.now() + setNewDay + 86400000 * days).toLocaleString(lang, {
|
|
50
|
-
day: new Date(Date.now() + setNewDay + 86400000 * days).toLocaleString(lang, {
|
|
49
|
+
label: new Date(Date.now() + setNewDay + 86400000 * days).toLocaleString(lang, { weekday: 'short', day: 'numeric', month: '2-digit' }),
|
|
50
|
+
day: new Date(Date.now() + setNewDay + 86400000 * days).toLocaleString(lang, { weekday: 'short', day: 'numeric', month: '2-digit' })
|
|
51
51
|
}
|
|
52
52
|
));
|
|
53
53
|
const nextWeekDaysFull = [...Array(7).keys()].map(days => new Date(Date.now() + setNewDay + 86400000 * days));
|
|
@@ -123,8 +123,6 @@ const TimePicker = ({
|
|
|
123
123
|
className={styles.dayForm}
|
|
124
124
|
classNameIcon={styles.selectIcon}
|
|
125
125
|
items={nextWeekDays}
|
|
126
|
-
amountOfItems={6}
|
|
127
|
-
customDimensionsIcon
|
|
128
126
|
/>
|
|
129
127
|
<MaterialSelect
|
|
130
128
|
onChange={(value: any) => timeChange(value)}
|
|
@@ -136,8 +134,6 @@ const TimePicker = ({
|
|
|
136
134
|
selectClassName={styles.select}
|
|
137
135
|
classNameIcon={styles.selectIcon}
|
|
138
136
|
items={getTimeRanges()}
|
|
139
|
-
amountOfItems={6}
|
|
140
|
-
customDimensionsIcon
|
|
141
137
|
/>
|
|
142
138
|
</div>
|
|
143
139
|
);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
@import '../../../theme/theme.styl'
|
|
1
2
|
@import '../../../theme/mixins.styl'
|
|
2
3
|
|
|
3
|
-
$xs-height =
|
|
4
|
+
$xs-height = 20px
|
|
4
5
|
$sm-height = 30px
|
|
5
6
|
$md-height = 34px
|
|
6
7
|
$indent = 10px
|
|
@@ -11,39 +12,31 @@ $indent = 10px
|
|
|
11
12
|
.controls
|
|
12
13
|
position: absolute
|
|
13
14
|
right: 0
|
|
14
|
-
bottom:
|
|
15
|
+
bottom: 0
|
|
15
16
|
width: 100%
|
|
16
17
|
display: flex
|
|
17
18
|
flex-wrap: wrap
|
|
18
19
|
justify-content: flex-start
|
|
20
|
+
align-items: center
|
|
21
|
+
font-family: $font-style-arial
|
|
19
22
|
font-size: $font-size-default
|
|
20
|
-
padding: 0
|
|
21
|
-
box-sizing: border-box
|
|
22
|
-
|
|
23
|
-
user-select: none;
|
|
24
|
-
|
|
25
|
-
+media-tablet-landscape-up()
|
|
26
|
-
padding: 0 6px
|
|
27
|
-
|
|
28
|
-
&::after
|
|
29
|
-
position: absolute;
|
|
30
|
-
width: calc(100% - 20px);
|
|
31
|
-
height: 1px;
|
|
32
|
-
left: 10px;
|
|
33
|
-
bottom: -10px;
|
|
34
|
-
background-color: rgba(76,78,100,0.12);
|
|
23
|
+
padding: 0 $indent
|
|
24
|
+
box-sizing: border-box
|
|
25
|
+
user-select: none
|
|
35
26
|
|
|
36
27
|
.section
|
|
37
|
-
|
|
38
|
-
|
|
28
|
+
height: 100%
|
|
29
|
+
background-color: rgba(#fff, .6);
|
|
30
|
+
border-radius: 3px
|
|
39
31
|
display: flex
|
|
40
|
-
line-height: 1;
|
|
41
32
|
align-items: center
|
|
42
|
-
justify-content: space-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
justify-content: space-arround
|
|
34
|
+
flex-shrink: 0
|
|
35
|
+
margin-bottom: $indent
|
|
36
|
+
margin-right: 0.6em
|
|
37
|
+
&:last-child
|
|
46
38
|
margin-left: auto
|
|
39
|
+
margin-right: 0
|
|
47
40
|
|
|
48
41
|
.starButton
|
|
49
42
|
cursor: pointer
|
|
@@ -71,38 +64,40 @@ $indent = 10px
|
|
|
71
64
|
cursor: pointer
|
|
72
65
|
|
|
73
66
|
.statsEyeIcon
|
|
74
|
-
margin-right:
|
|
67
|
+
margin-right: 0.1em
|
|
75
68
|
width: 1.5em
|
|
76
69
|
height: 1.5em
|
|
77
70
|
|
|
78
71
|
.statsStarIcon
|
|
79
|
-
margin-right:
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
fill: rgb(100, 100, 100)
|
|
84
|
-
transform:scale(0.8)
|
|
72
|
+
margin-right: 0.1em
|
|
73
|
+
width: 1.1em
|
|
74
|
+
height: 1.1em
|
|
75
|
+
stroke: #333;
|
|
85
76
|
|
|
86
77
|
.accented
|
|
87
78
|
color: $primary
|
|
88
79
|
fill: $primary
|
|
80
|
+
stroke: $primary;
|
|
89
81
|
|
|
90
82
|
.xs
|
|
91
|
-
height: $xs-height
|
|
83
|
+
min-height: $xs-height
|
|
84
|
+
|
|
92
85
|
.section
|
|
93
86
|
padding: 0 5px
|
|
94
87
|
font-size: 12px
|
|
95
|
-
|
|
88
|
+
line-height: $xs-height
|
|
89
|
+
color: $grey-3;
|
|
96
90
|
|
|
97
91
|
.starButton
|
|
98
92
|
width: 1.5em
|
|
99
93
|
height: 1.5em
|
|
100
94
|
|
|
101
95
|
.sm
|
|
102
|
-
height: $sm-height
|
|
96
|
+
min-height: $sm-height
|
|
103
97
|
.section
|
|
104
98
|
padding: 0 6px
|
|
105
99
|
font-size: 16px
|
|
100
|
+
line-height: $sm-height
|
|
106
101
|
|
|
107
102
|
.cameraIcon
|
|
108
103
|
width: 24px
|
|
@@ -114,11 +109,12 @@ $indent = 10px
|
|
|
114
109
|
height: 2.3em
|
|
115
110
|
|
|
116
111
|
.md
|
|
117
|
-
height: $md-height
|
|
112
|
+
min-height: $md-height
|
|
118
113
|
|
|
119
114
|
.section
|
|
120
115
|
padding: 0 6px
|
|
121
116
|
font-size: 16px
|
|
117
|
+
line-height: $md-height
|
|
122
118
|
|
|
123
119
|
.cameraIcon
|
|
124
120
|
width: 24px
|
|
@@ -128,23 +124,71 @@ $indent = 10px
|
|
|
128
124
|
.starButton
|
|
129
125
|
width: 2.4em
|
|
130
126
|
height: 2.3em
|
|
127
|
+
|
|
131
128
|
|
|
132
129
|
.topWrapper
|
|
133
130
|
position: absolute
|
|
134
|
-
left:
|
|
135
|
-
right:
|
|
131
|
+
left: 5px
|
|
132
|
+
right: 5px
|
|
136
133
|
top: 5px
|
|
137
134
|
user-select: none
|
|
138
135
|
z-index: 1
|
|
139
|
-
|
|
140
|
-
|
|
136
|
+
font-size: 14px
|
|
137
|
+
font-weight: bold
|
|
138
|
+
|
|
139
|
+
+media-tablet-down()
|
|
140
|
+
font-size: 16px
|
|
141
141
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
142
|
+
.priceDifference
|
|
143
|
+
background: $lightGreen
|
|
144
|
+
float: left
|
|
145
|
+
font-size: 12px
|
|
146
|
+
padding-top: 1px;
|
|
147
|
+
font-weight: bold
|
|
148
|
+
|
|
149
|
+
+media-tablet-down()
|
|
150
|
+
font-size: 16px
|
|
151
|
+
padding: 0 10px
|
|
152
|
+
line-height: 24px
|
|
153
|
+
height: 24px
|
|
145
154
|
|
|
146
155
|
.priceDifferencePerCent
|
|
147
|
-
|
|
156
|
+
color: white
|
|
157
|
+
float: right
|
|
158
|
+
position relative;
|
|
159
|
+
z-index: 1;
|
|
160
|
+
padding: 5px 7px 0 0
|
|
161
|
+
box-sizing: border-box;
|
|
162
|
+
text-align: center
|
|
163
|
+
white-space: nowrap;
|
|
164
|
+
line-height: 1;
|
|
165
|
+
font-size: 16px;
|
|
166
|
+
|
|
167
|
+
+media-tablet-up()
|
|
168
|
+
padding: 4px 4px 0 0px
|
|
169
|
+
font-size: 12px;
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
.perCentIcon
|
|
173
|
+
position: absolute
|
|
174
|
+
top: 0
|
|
175
|
+
right: 0
|
|
176
|
+
z-index: -1
|
|
177
|
+
|
|
178
|
+
+media-tablet-up()
|
|
179
|
+
transform: scale(.71);
|
|
180
|
+
right: -9px;
|
|
181
|
+
top: -3px;
|
|
148
182
|
|
|
149
183
|
.new
|
|
184
|
+
margin-right: 10px
|
|
185
|
+
float: left
|
|
186
|
+
font-size: 12px
|
|
187
|
+
font-weight: bold
|
|
150
188
|
text-transform: uppercase
|
|
189
|
+
|
|
190
|
+
+media-tablet-down()
|
|
191
|
+
font-size: 16px
|
|
192
|
+
padding: 0 10px
|
|
193
|
+
line-height: 24px
|
|
194
|
+
height: 24px
|
|
@@ -82,19 +82,6 @@ export default function withStats(WrappedComponent: any) {
|
|
|
82
82
|
);
|
|
83
83
|
};
|
|
84
84
|
|
|
85
|
-
renderRotateSvg = (): JSX.Element => {
|
|
86
|
-
const { hasInteriorExteriorPhoto, images } = this.props;
|
|
87
|
-
const hasExteriorPhotos = hasInteriorExteriorPhoto && Array.isArray(images) && images.length > 0;
|
|
88
|
-
if (!hasExteriorPhotos) return null;
|
|
89
|
-
return (
|
|
90
|
-
<div className={styles.section}>
|
|
91
|
-
{hasExteriorPhotos ? (
|
|
92
|
-
<IconSVG name='rotate360New' customDimensions className={styles.statsEyeIcon} />
|
|
93
|
-
) : null}
|
|
94
|
-
</div>
|
|
95
|
-
);
|
|
96
|
-
};
|
|
97
|
-
|
|
98
85
|
renderStarButton = () => {
|
|
99
86
|
const { isFavoured, onFavoriteClick } = this.props;
|
|
100
87
|
if (!onFavoriteClick) return null;
|
|
@@ -112,7 +99,9 @@ export default function withStats(WrappedComponent: any) {
|
|
|
112
99
|
renderStatsData = (): JSX.Element => {
|
|
113
100
|
const { statsData, isFavoured, onFavoriteClick } = this.props;
|
|
114
101
|
if (!statsData) return null;
|
|
102
|
+
|
|
115
103
|
const { totalCarImpCount, totalFavCount } = statsData;
|
|
104
|
+
|
|
116
105
|
const favoritesClassName = classnames(
|
|
117
106
|
styles.statsFavoritesCount,
|
|
118
107
|
{
|
|
@@ -130,7 +119,7 @@ export default function withStats(WrappedComponent: any) {
|
|
|
130
119
|
</span>
|
|
131
120
|
</div> : null}
|
|
132
121
|
{!!totalFavCount ? <div className={favoritesClassName} onClick={onFavoriteClick}>
|
|
133
|
-
<IconSVG name='
|
|
122
|
+
<IconSVG name='common_StarRoundedCorners' customDimensions className={favoritesIconClassName} />
|
|
134
123
|
<span>
|
|
135
124
|
{totalFavCount}
|
|
136
125
|
</span>
|
|
@@ -149,14 +138,17 @@ export default function withStats(WrappedComponent: any) {
|
|
|
149
138
|
<div className={classnames(styles.topWrapper, classWrapPrice)}>
|
|
150
139
|
{showNewLabel && <Badge type='blue' className={styles.new}>{newText}</Badge>}
|
|
151
140
|
{!!historyPriceDifference && historyPriceDifference >= MIN_PRICE_DIFFERENCE && (
|
|
152
|
-
<Badge type='green'>
|
|
141
|
+
<Badge type='green' className={styles.priceDifference}>
|
|
153
142
|
{`-`}
|
|
154
143
|
<FormattedNumber value={historyPriceDifference} numbersAfterDot={0} />
|
|
155
144
|
{` ${EUR}`}
|
|
156
145
|
</Badge>
|
|
157
146
|
)}
|
|
158
147
|
{!!historyPriceDifferencePerCent && historyPriceDifferencePerCent >= MIN_PERCENT && (
|
|
159
|
-
<
|
|
148
|
+
<div className={styles.priceDifferencePerCent}>
|
|
149
|
+
<IconSVG name='discountRibbonNew' className={styles.perCentIcon} customDimensions />
|
|
150
|
+
-{historyPriceDifferencePerCent}%
|
|
151
|
+
</div>
|
|
160
152
|
)}
|
|
161
153
|
</div>
|
|
162
154
|
);
|
|
@@ -174,7 +166,6 @@ export default function withStats(WrappedComponent: any) {
|
|
|
174
166
|
<WrappedComponent {...wrappedComponentProps} onSlideChange={this.onSlideChange} isReferenceSearch={isReferenceSearch} />
|
|
175
167
|
<div className={classnames(styles.controls, styles[statsSize])}>
|
|
176
168
|
{this.renderImagesData()}
|
|
177
|
-
{this.renderRotateSvg()}
|
|
178
169
|
{this.renderStarButton()}
|
|
179
170
|
{this.renderStatsData()}
|
|
180
171
|
</div>
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
width: 100%;
|
|
7
7
|
// background-color: #fff;
|
|
8
8
|
align-self: flex-start;
|
|
9
|
-
border: 1px solid
|
|
10
|
-
border-radius:
|
|
9
|
+
border: 1px solid $grey-e
|
|
10
|
+
border-radius: 3px
|
|
11
11
|
box-sizing: border-box;
|
|
12
12
|
|
|
13
13
|
|
|
@@ -40,8 +40,6 @@
|
|
|
40
40
|
line-height: 40px
|
|
41
41
|
padding: 0 10px
|
|
42
42
|
background-color: #fff;
|
|
43
|
-
border-top-left-radius: 10px;
|
|
44
|
-
border-top-right-radius: 10px;
|
|
45
43
|
|
|
46
44
|
.linkToDetailed
|
|
47
45
|
display: block
|
|
@@ -50,6 +48,4 @@
|
|
|
50
48
|
background-color: #fff
|
|
51
49
|
color: $skyBlue
|
|
52
50
|
font-weight: 700
|
|
53
|
-
font-size: 14px
|
|
54
|
-
border-bottom-left-radius: 10px;
|
|
55
|
-
border-bottom-right-radius: 10px;
|
|
51
|
+
font-size: 14px
|