@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
package/source/components/VehicleSmallCard/VehicleData/VechiclePriceItem/VechiclePriceItem.tsx
CHANGED
|
@@ -10,25 +10,21 @@ import { IPrice } from '../../../../framework/types/types';
|
|
|
10
10
|
export interface IVehiclePriceItemProps {
|
|
11
11
|
priceTitle: string;
|
|
12
12
|
tooltipDescription?: string;
|
|
13
|
-
priceSub?: string;
|
|
14
13
|
price?: IPrice;
|
|
15
14
|
isTotal: Boolean;
|
|
16
15
|
isNewPriceCategory: Boolean;
|
|
17
16
|
showAboIcon: Boolean;
|
|
18
17
|
isPriceDisable: Boolean;
|
|
19
18
|
isAlternativeText?: string;
|
|
20
|
-
vehicleComponentName?: 'comparable' | 'landing' | 'search' | 'main' | 'myVehicles' | 'favorite'
|
|
19
|
+
vehicleComponentName?: 'comparable' | 'landing' | 'search' | 'main' | 'myVehicles' | 'favorite';
|
|
21
20
|
perMonthCurrent?: number;
|
|
22
21
|
iconName?: string;
|
|
23
|
-
prefixOldPrice?: string;
|
|
24
22
|
perMonthOld?: number;
|
|
25
23
|
totalCurrent?: number;
|
|
26
24
|
totalOld?: number;
|
|
27
25
|
positionX?: string;
|
|
28
26
|
positionY?: string;
|
|
29
27
|
url?: string;
|
|
30
|
-
target?: string;
|
|
31
|
-
rel?: string;
|
|
32
28
|
routeObj?: any;
|
|
33
29
|
linkTag?: string;
|
|
34
30
|
isStrikeShown?: boolean;
|
|
@@ -48,8 +44,6 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
48
44
|
perMonthCurrent,
|
|
49
45
|
perMonthOld,
|
|
50
46
|
url,
|
|
51
|
-
target,
|
|
52
|
-
rel,
|
|
53
47
|
totalOld,
|
|
54
48
|
totalCurrent,
|
|
55
49
|
tooltipDescription,
|
|
@@ -60,11 +54,9 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
60
54
|
linkTag,
|
|
61
55
|
routeObj,
|
|
62
56
|
combineRefAlternative,
|
|
63
|
-
prefixOldPrice,
|
|
64
57
|
margin,
|
|
65
58
|
isAlternativeText,
|
|
66
59
|
vehicleComponentName,
|
|
67
|
-
priceSub,
|
|
68
60
|
isTotal = false,
|
|
69
61
|
showAboIcon = false,
|
|
70
62
|
isPriceDisable = false,
|
|
@@ -75,9 +67,6 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
75
67
|
const stylesItem = classnames(
|
|
76
68
|
styles.priceItem,
|
|
77
69
|
{ [styles.priceItemFavorite]: vehicleComponentName === 'favorite' },
|
|
78
|
-
{ [styles.priceItemSearch]: vehicleComponentName === 'search' },
|
|
79
|
-
{ [styles.priceItemRecently]: vehicleComponentName === 'recently' },
|
|
80
|
-
{ [styles.priceItemComparable]: vehicleComponentName === 'comparable' || vehicleComponentName === 'landing' || vehicleComponentName === 'main' },
|
|
81
70
|
{ [styles.priceItemDisable]: isPriceDisable },
|
|
82
71
|
{ [styles.priceItemBuy]: isTotal }
|
|
83
72
|
);
|
|
@@ -85,9 +74,8 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
85
74
|
const priceItemCategoryClassName = classnames(
|
|
86
75
|
styles.priceItemCategory,
|
|
87
76
|
{ [styles.priceItemCategorySearch]: vehicleComponentName === 'search' || vehicleComponentName === 'myVehicles' },
|
|
88
|
-
{ [styles.
|
|
77
|
+
{ [styles.priceItemCategoryFavorite]: vehicleComponentName === 'favorite' }
|
|
89
78
|
);
|
|
90
|
-
|
|
91
79
|
return (
|
|
92
80
|
<div className={stylesItem}>
|
|
93
81
|
{React.createElement(linkTag, {
|
|
@@ -95,17 +83,15 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
95
83
|
...routeObj,
|
|
96
84
|
onClick: this.routeToActiveTab,
|
|
97
85
|
className: priceItemCategoryClassName,
|
|
98
|
-
href: url
|
|
99
|
-
target,
|
|
100
|
-
rel
|
|
86
|
+
href: url
|
|
101
87
|
})}
|
|
102
88
|
{tooltipDescription && (
|
|
103
89
|
<Tooltip
|
|
104
|
-
tooltipClassName={styles.tooltipWrapFavorites}
|
|
90
|
+
tooltipClassName={vehicleComponentName === 'favorite' ? styles.tooltipWrapFavorites : ''}
|
|
105
91
|
description={tooltipDescription}
|
|
106
92
|
positionX={positionX}
|
|
107
93
|
positionY={positionY}
|
|
108
|
-
iconName={'infoIcon'}
|
|
94
|
+
iconName={vehicleComponentName === 'favorite' ? 'infoIcon' : iconName}
|
|
109
95
|
/>
|
|
110
96
|
)}
|
|
111
97
|
{isNewPriceCategory && (
|
|
@@ -119,17 +105,13 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
119
105
|
{!isPriceDisable ? (
|
|
120
106
|
<>
|
|
121
107
|
{isStrikeShown && perMonthOld && (
|
|
122
|
-
<
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
isOld
|
|
130
|
-
disableStyles
|
|
131
|
-
/>
|
|
132
|
-
</div>
|
|
108
|
+
<VehicleFormattedPrice
|
|
109
|
+
numbersAfterDot={0}
|
|
110
|
+
className={styles.oldPrice}
|
|
111
|
+
price={perMonthOld}
|
|
112
|
+
isOld
|
|
113
|
+
disableStyles
|
|
114
|
+
/>
|
|
133
115
|
)}
|
|
134
116
|
|
|
135
117
|
{perMonthCurrent && (
|
|
@@ -137,10 +119,9 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
137
119
|
numbersAfterDot={0}
|
|
138
120
|
price={perMonthCurrent}
|
|
139
121
|
postfix={postfix}
|
|
140
|
-
className={styles.priceMtl}
|
|
141
122
|
isNew={isStrikeShown}
|
|
142
|
-
|
|
143
|
-
|
|
123
|
+
className={styles.largeMobilePrice}
|
|
124
|
+
size={vehicleComponentName === 'search' && !isMobileOnly ? 'semimedium' : 'small'}
|
|
144
125
|
/>
|
|
145
126
|
)}
|
|
146
127
|
</>
|
|
@@ -154,7 +135,6 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
154
135
|
className={styles.oldPrice}
|
|
155
136
|
price={totalOld}
|
|
156
137
|
postfix={isStrikeShown ? '2' : ''}
|
|
157
|
-
size='semimedium'
|
|
158
138
|
isOld
|
|
159
139
|
disableStyles
|
|
160
140
|
/>
|
|
@@ -165,7 +145,7 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
165
145
|
price={totalCurrent}
|
|
166
146
|
isNew={isStrikeShown}
|
|
167
147
|
toRound={false}
|
|
168
|
-
size='semimedium'
|
|
148
|
+
size={vehicleComponentName === 'search' && !isMobileOnly ? 'semimedium' : 'small'}
|
|
169
149
|
afterCommaClassName={styles.priceAfterComma}
|
|
170
150
|
postfix={postfix}
|
|
171
151
|
/>
|
|
@@ -175,9 +155,7 @@ class VehiclePriceItem extends React.Component<IVehiclePriceItemProps> {
|
|
|
175
155
|
...routeObj,
|
|
176
156
|
onClick: this.routeToActiveTab,
|
|
177
157
|
className: styles.priceItemPrice,
|
|
178
|
-
href: url
|
|
179
|
-
target,
|
|
180
|
-
rel
|
|
158
|
+
href: url
|
|
181
159
|
})}
|
|
182
160
|
</div>
|
|
183
161
|
);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
.vehicleInfo
|
|
4
4
|
box-sizing: border-box
|
|
5
|
-
padding: 8px 7px 14px
|
|
5
|
+
padding: 8px 7px 14px 11px
|
|
6
6
|
flex-shrink: 0;
|
|
7
7
|
display: grid;
|
|
8
8
|
text-align: left;
|
|
@@ -17,6 +17,9 @@
|
|
|
17
17
|
+media-tablet-landscape-down()
|
|
18
18
|
padding: 0 10px;
|
|
19
19
|
|
|
20
|
+
& > div:last-of-type
|
|
21
|
+
margin: auto;
|
|
22
|
+
|
|
20
23
|
&::after
|
|
21
24
|
content: '';
|
|
22
25
|
position absolute;
|
|
@@ -24,7 +27,7 @@
|
|
|
24
27
|
width: 1px;
|
|
25
28
|
height: calc(100% - 10px);
|
|
26
29
|
top: 10px;
|
|
27
|
-
background-color
|
|
30
|
+
background-color $grey-d3;
|
|
28
31
|
|
|
29
32
|
+media-phone-up()
|
|
30
33
|
height: calc(100% - 20px);
|
|
@@ -48,24 +51,11 @@
|
|
|
48
51
|
grid-auto-rows: 36px;
|
|
49
52
|
grid-template-columns: 100%;
|
|
50
53
|
|
|
51
|
-
span
|
|
52
|
-
font-size: 11px;
|
|
53
|
-
|
|
54
54
|
& > .consumptionCombined,
|
|
55
55
|
& > div:last-of-type
|
|
56
56
|
grid-column: auto;
|
|
57
57
|
grid-row: auto;
|
|
58
|
-
|
|
59
|
-
& .priceRatingSegmentWrapSRL
|
|
60
|
-
gap: 2px;
|
|
61
|
-
& > div
|
|
62
|
-
width: 13px;
|
|
63
|
-
height: 12px;
|
|
64
|
-
|
|
65
|
-
& .priceRatingSRL span
|
|
66
|
-
font-size: 8px;
|
|
67
|
-
margin-bottom: 2px;
|
|
68
|
-
|
|
58
|
+
|
|
69
59
|
&.vehiclePropertiesMain
|
|
70
60
|
grid-auto-rows: 44px;
|
|
71
61
|
grid-template-columns: 100%;
|
|
@@ -78,25 +68,9 @@
|
|
|
78
68
|
+media-phone-up()
|
|
79
69
|
grid-auto-rows: 38px;
|
|
80
70
|
|
|
81
|
-
& > .consumptionCombined span
|
|
82
|
-
font-size: 8px
|
|
83
|
-
|
|
84
71
|
+media-tablet-landscape-up()
|
|
85
72
|
grid-auto-rows: 36px;
|
|
86
73
|
|
|
87
|
-
span
|
|
88
|
-
font-size: 11px;
|
|
89
|
-
|
|
90
|
-
& .priceRatingSegmentWrapSRL
|
|
91
|
-
gap: 2px;
|
|
92
|
-
& > div
|
|
93
|
-
width: 13px;
|
|
94
|
-
height: 12px;
|
|
95
|
-
|
|
96
|
-
& .priceRatingSRL span
|
|
97
|
-
font-size: 8px;
|
|
98
|
-
margin-bottom: 2px;
|
|
99
|
-
|
|
100
74
|
&.vehiclePropertiesComparable
|
|
101
75
|
grid-template-columns: 100%;
|
|
102
76
|
grid-auto-rows: 40px;
|
|
@@ -110,15 +84,12 @@
|
|
|
110
84
|
+media-phone-up()
|
|
111
85
|
grid-auto-rows: 38px;
|
|
112
86
|
|
|
113
|
-
& > .consumptionCombined
|
|
87
|
+
& > .consumptionCombined
|
|
114
88
|
font-size: 8px
|
|
115
89
|
|
|
116
90
|
+media-tablet-landscape-up()
|
|
117
91
|
grid-auto-rows: 36px;
|
|
118
92
|
|
|
119
|
-
span
|
|
120
|
-
font-size: 11px;
|
|
121
|
-
|
|
122
93
|
& .priceRatingSegmentWrapSRL
|
|
123
94
|
gap: 2px;
|
|
124
95
|
& > div
|
|
@@ -126,7 +97,7 @@
|
|
|
126
97
|
height: 12px;
|
|
127
98
|
|
|
128
99
|
& .priceRatingSRL span
|
|
129
|
-
font-size:
|
|
100
|
+
font-size: 10px;
|
|
130
101
|
margin-bottom: 2px;
|
|
131
102
|
|
|
132
103
|
&.vehiclePropertiesSearch,
|
|
@@ -170,6 +141,11 @@
|
|
|
170
141
|
& > .offerAvailability
|
|
171
142
|
border: none;
|
|
172
143
|
|
|
144
|
+
& .carIconSearch
|
|
145
|
+
width: 30px;
|
|
146
|
+
height: 30px;
|
|
147
|
+
max-width: 28px;
|
|
148
|
+
|
|
173
149
|
& .priceRatingSRL
|
|
174
150
|
margin: auto;
|
|
175
151
|
|
|
@@ -201,19 +177,14 @@
|
|
|
201
177
|
& + div
|
|
202
178
|
border: none;
|
|
203
179
|
|
|
180
|
+
& .carIconSearch
|
|
181
|
+
width: 30px;
|
|
182
|
+
height: 30px;
|
|
183
|
+
max-width: 28px;
|
|
184
|
+
|
|
204
185
|
& .priceRatingSRL
|
|
205
186
|
margin: auto;
|
|
206
187
|
|
|
207
|
-
&.vehiclePropertiesRecently
|
|
208
|
-
grid-template-columns: 1fr;
|
|
209
|
-
display: grid;
|
|
210
|
-
grid-auto-rows: 44px;
|
|
211
|
-
padding: 0 10px;
|
|
212
|
-
|
|
213
|
-
& > .consumptionCombined
|
|
214
|
-
white-space: pre-line;
|
|
215
|
-
grid-row: 4;
|
|
216
|
-
|
|
217
188
|
&.vehiclePropertiesMyVehicles
|
|
218
189
|
&::after
|
|
219
190
|
+media-tablet-landscape-down()
|
|
@@ -27,8 +27,6 @@ const VehicleInfo: React.FC<IVehicleInfoProps> = (props) => {
|
|
|
27
27
|
currentSalesPrice,
|
|
28
28
|
language,
|
|
29
29
|
url,
|
|
30
|
-
target,
|
|
31
|
-
rel,
|
|
32
30
|
regDate,
|
|
33
31
|
linkTag,
|
|
34
32
|
routeObj,
|
|
@@ -80,7 +78,7 @@ const VehicleInfo: React.FC<IVehicleInfoProps> = (props) => {
|
|
|
80
78
|
icon: decoratedProps[prop].icon,
|
|
81
79
|
description: decoratedProps[prop].value,
|
|
82
80
|
className: styles[decoratedProps[prop].name],
|
|
83
|
-
classNameIcon: (vehicleComponentName === 'search' || 'myVehicles' || 'favorite'
|
|
81
|
+
classNameIcon: (vehicleComponentName === 'search' || 'myVehicles' || 'favorite') && styles.carIconSearch
|
|
84
82
|
}));
|
|
85
83
|
|
|
86
84
|
return mainPropertiesList.map((property: any, index: number) => (
|
|
@@ -96,18 +94,15 @@ const VehicleInfo: React.FC<IVehicleInfoProps> = (props) => {
|
|
|
96
94
|
{ [styles.vehiclePropertiesSearch]: vehicleComponentName === 'search' },
|
|
97
95
|
{ [styles.vehiclePropertiesFavorite]: vehicleComponentName === 'favorite' },
|
|
98
96
|
{ [styles.vehiclePropertiesMyVehicles]: vehicleComponentName === 'myVehicles' },
|
|
99
|
-
{ [styles.vehiclePropertiesRecently]: vehicleComponentName === 'recently' },
|
|
100
97
|
{ [styles.vehiclePropertiesIsAlternative]: combineRefAlternative },
|
|
101
98
|
);
|
|
102
99
|
|
|
103
|
-
const conditionForRating = vehicleComponentName === 'search' || 'myVehicles' || 'favorite' || 'recently';
|
|
104
|
-
|
|
105
100
|
return (
|
|
106
101
|
<>
|
|
107
102
|
{React.createElement(linkTag, {
|
|
108
103
|
children: (
|
|
109
104
|
<>
|
|
110
|
-
{vehicleComponentName === 'comparable'
|
|
105
|
+
{vehicleComponentName === 'comparable' ? renderProperty(getMainPropertiesForComparableCars) : ''}
|
|
111
106
|
{vehicleComponentName === 'main' ? renderProperty(getMainPropertiesForLandingCars) : ''}
|
|
112
107
|
{vehicleComponentName === 'landing' ? (
|
|
113
108
|
<>
|
|
@@ -135,18 +130,16 @@ const VehicleInfo: React.FC<IVehicleInfoProps> = (props) => {
|
|
|
135
130
|
t={t}
|
|
136
131
|
i18nPrefix={i18nPrefixForPriceRating ? `${i18nPrefixForPriceRating}priceRating.` : 'priceRating.'}
|
|
137
132
|
rating={getPriceRating(currentSalesPrice, mlCurrentSalesPricePredicted)}
|
|
138
|
-
className={`${styles.priceRating} ${
|
|
139
|
-
classLabel={
|
|
140
|
-
classSegmentWrapper={
|
|
133
|
+
className={`${styles.priceRating} ${vehicleComponentName === 'search' || 'myVehicles' || 'favorite' ? styles.priceRatingSRL : ''}`}
|
|
134
|
+
classLabel={vehicleComponentName === 'search' || 'myVehicles' || 'favorite' ? styles.priceRatingLabelSRL : ''}
|
|
135
|
+
classSegmentWrapper={vehicleComponentName === 'search' || 'myVehicles' || 'favorite' ? styles.priceRatingSegmentWrapSRL : ''}
|
|
141
136
|
/>
|
|
142
137
|
</>
|
|
143
138
|
),
|
|
144
139
|
...routeObj,
|
|
145
140
|
className: wrapClasses,
|
|
146
141
|
onClick: () => localStorage.setItem('activeTabCDP', t('vehicleProps:title.financing')),
|
|
147
|
-
href: url
|
|
148
|
-
target,
|
|
149
|
-
rel
|
|
142
|
+
href: url
|
|
150
143
|
})}
|
|
151
144
|
</>
|
|
152
145
|
);
|
|
@@ -13,51 +13,34 @@
|
|
|
13
13
|
padding: 13px 12px 0 8px
|
|
14
14
|
|
|
15
15
|
&.vehiclePriceSectionSearch
|
|
16
|
-
padding: 0 10px;
|
|
17
16
|
+media-tablet-landscape-up()
|
|
18
17
|
flex-shrink: 0;
|
|
19
|
-
padding:
|
|
20
|
-
border-left: 1px solid
|
|
18
|
+
padding: 0 5px 0 15px;
|
|
19
|
+
border-left: 1px solid $grey-d
|
|
21
20
|
|
|
22
21
|
&.vehiclePriceSectionFavorite
|
|
23
|
-
padding:
|
|
22
|
+
padding: 0 10px 0 10px
|
|
24
23
|
+media-tablet-landscape-up()
|
|
25
|
-
margin-top: -1px;
|
|
26
24
|
flex-shrink: 0;
|
|
27
25
|
padding: 0 5px 0 15px;
|
|
28
|
-
border-left: 1px solid
|
|
26
|
+
border-left: 1px solid $grey-d
|
|
29
27
|
gap: 3px;
|
|
30
28
|
|
|
31
|
-
&.vehiclePriceSectionRecently
|
|
32
|
-
padding: 1px 10px 0 10px
|
|
33
|
-
|
|
34
29
|
.vehiclePriceTitle
|
|
35
|
-
color:
|
|
36
|
-
display
|
|
37
|
-
align-items: center;
|
|
30
|
+
color: $grey-3
|
|
31
|
+
display block;
|
|
38
32
|
flex-shrink: 0;
|
|
39
33
|
font-size: 11px;
|
|
40
34
|
height: 20px;
|
|
41
35
|
|
|
42
|
-
+media-
|
|
36
|
+
+media-phone-up()
|
|
43
37
|
font-size 10px
|
|
44
38
|
height: 12px;
|
|
45
39
|
|
|
46
40
|
&.vehiclePriceTitleSearch
|
|
47
|
-
font-size: 12px;
|
|
48
|
-
height: 44px;
|
|
49
|
-
|
|
50
|
-
&.vehiclePriceTitleFavorite
|
|
51
|
-
font-size: 12px;
|
|
52
|
-
height: 42px;
|
|
53
|
-
|
|
54
41
|
+media-tablet-landscape-up()
|
|
55
|
-
font-size:
|
|
56
|
-
height:
|
|
57
|
-
|
|
58
|
-
&.vehiclePriceTitleRecently
|
|
59
|
-
font-size: 12px;
|
|
60
|
-
height: 42px;
|
|
42
|
+
font-size: 11px;
|
|
43
|
+
height: 20px;
|
|
61
44
|
|
|
62
45
|
.addOfferButton
|
|
63
46
|
white-space: normal
|
|
@@ -68,34 +51,30 @@
|
|
|
68
51
|
width: 100%
|
|
69
52
|
height: 40px
|
|
70
53
|
font-size: 16px
|
|
71
|
-
margin-top:
|
|
54
|
+
margin-top: 5px !important;
|
|
72
55
|
font-weight bold !important;
|
|
73
56
|
border-radius: 0 !important;
|
|
57
|
+
text-transform: uppercase !important
|
|
74
58
|
|
|
75
59
|
.isAlternativeButton
|
|
76
60
|
background-color: $alternative !important
|
|
77
61
|
|
|
78
62
|
.wrapCheckbox
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
63
|
+
height: 42px;
|
|
64
|
+
& > div
|
|
65
|
+
order: 1;
|
|
83
66
|
& span
|
|
67
|
+
margin: 0 !important;
|
|
84
68
|
color: rgba(76, 78, 100, 0.87);
|
|
85
|
-
font-size: 12px;
|
|
86
|
-
|
|
87
|
-
+media-tablet-landscape-up()
|
|
88
|
-
font-size: 13px;
|
|
89
69
|
|
|
90
70
|
.wrapHandleCompare
|
|
91
71
|
display: flex;
|
|
92
72
|
gap: 8px;
|
|
93
|
-
border-top: 1px solid
|
|
73
|
+
border-top: 1px solid $grey-d3;
|
|
94
74
|
padding-top: 15px;
|
|
95
|
-
justify-content: center;
|
|
96
75
|
|
|
97
76
|
+media-tablet-landscape-up()
|
|
98
|
-
margin-top:
|
|
77
|
+
margin-top: 19px;
|
|
99
78
|
padding-top: 0;
|
|
100
79
|
border: none;
|
|
101
80
|
|
|
@@ -106,18 +85,19 @@
|
|
|
106
85
|
display: flex !important;
|
|
107
86
|
|
|
108
87
|
.btnCarToCompare
|
|
109
|
-
display: flex
|
|
88
|
+
display: flex;
|
|
110
89
|
height: 30px;
|
|
111
|
-
|
|
112
|
-
|
|
90
|
+
align-items: center;
|
|
91
|
+
text-transform uppercase !important
|
|
113
92
|
width: 100%;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
width: 100%;
|
|
93
|
+
min-width: auto !important;
|
|
94
|
+
max-width: 100% !important;
|
|
117
95
|
|
|
118
96
|
.btnPlusIcon
|
|
119
|
-
font-size:
|
|
120
|
-
margin-right:
|
|
97
|
+
font-size: 26px;
|
|
98
|
+
margin-right: 10px;
|
|
99
|
+
line-height: 26px;
|
|
121
100
|
|
|
122
|
-
|
|
123
|
-
|
|
101
|
+
.btnText
|
|
102
|
+
position: relative;
|
|
103
|
+
top: -2px;
|
|
@@ -4,9 +4,8 @@ import classnames from 'classnames';
|
|
|
4
4
|
import VehiclePriceItem from '../VechiclePriceItem/VechiclePriceItem';
|
|
5
5
|
import { IBuy, ILeasing, IFinancing, ICommonFinancing } from '../../../../framework/types/types';
|
|
6
6
|
import { Hidden } from 'react-grid-system';
|
|
7
|
-
import { isMobileOnly } from 'react-device-detect';
|
|
8
7
|
import Button from '../../../../components/_common/Button/Button';
|
|
9
|
-
import
|
|
8
|
+
import Checkbox from '../../../../components/_common/Checkbox/Checkbox';
|
|
10
9
|
import IconSVG from '../../../_common/IconSVG/IconSVG';
|
|
11
10
|
|
|
12
11
|
export interface IVehiclePriceSectionProps {
|
|
@@ -19,20 +18,15 @@ export interface IVehiclePriceSectionProps {
|
|
|
19
18
|
isDealerSuperAdmin?: boolean;
|
|
20
19
|
routeObj?: any;
|
|
21
20
|
linkTag?: string;
|
|
22
|
-
classButton?: string;
|
|
23
21
|
showAboIcon?: boolean;
|
|
24
|
-
dashboardButtonText?: string;
|
|
25
22
|
isNewPriceCategory?: boolean;
|
|
26
|
-
vehicleComponentName?: 'comparable' | 'landing' | 'search' | 'main' | 'myVehicles' | 'favorite'
|
|
23
|
+
vehicleComponentName?: 'comparable' | 'landing' | 'search' | 'main' | 'myVehicles' | 'favorite';
|
|
27
24
|
monthlyInstallment?: number;
|
|
28
25
|
oldMonthlyInstallment?: number;
|
|
29
26
|
positionY?: string;
|
|
30
27
|
url?: string;
|
|
31
|
-
target?: string;
|
|
32
|
-
rel?: string;
|
|
33
28
|
iconName?: string;
|
|
34
29
|
mainImageId?: string;
|
|
35
|
-
showCompareCheckboxes?: boolean;
|
|
36
30
|
toRound?: boolean;
|
|
37
31
|
showOfferBtn?: boolean;
|
|
38
32
|
margin?: number;
|
|
@@ -80,10 +74,9 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
80
74
|
};
|
|
81
75
|
|
|
82
76
|
onDetailsClick = (event: React.MouseEvent<HTMLButtonElement>) => {
|
|
83
|
-
const { id, onDetailsClick } = this.props;
|
|
84
77
|
event.preventDefault();
|
|
85
78
|
event.stopPropagation();
|
|
86
|
-
onDetailsClick(
|
|
79
|
+
this.props.onDetailsClick(this.props.url);
|
|
87
80
|
};
|
|
88
81
|
|
|
89
82
|
render(): React.ReactNode {
|
|
@@ -91,18 +84,13 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
91
84
|
t,
|
|
92
85
|
combineRefAlternative,
|
|
93
86
|
url,
|
|
94
|
-
target,
|
|
95
|
-
rel,
|
|
96
87
|
isDealerSuperAdmin,
|
|
97
88
|
linkTag,
|
|
98
89
|
showOfferBtn,
|
|
99
90
|
routeObj,
|
|
100
91
|
toggleCarToCompare,
|
|
101
92
|
toCompare,
|
|
102
|
-
dashboardButtonText,
|
|
103
|
-
classButton,
|
|
104
93
|
onRemoveClick,
|
|
105
|
-
showCompareCheckboxes,
|
|
106
94
|
vatRate,
|
|
107
95
|
iconName,
|
|
108
96
|
vehicleComponentName,
|
|
@@ -124,43 +112,33 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
124
112
|
const vehiclePriceSectionClassName = classnames(
|
|
125
113
|
styles.vehiclePriceSection,
|
|
126
114
|
{ [styles.vehiclePriceSectionSearch]: vehicleComponentName === 'search' || vehicleComponentName === 'myVehicles' },
|
|
127
|
-
{ [styles.vehiclePriceSectionFavorite]: vehicleComponentName === 'favorite' }
|
|
128
|
-
{ [styles.vehiclePriceSectionRecently]: vehicleComponentName === 'recently' }
|
|
115
|
+
{ [styles.vehiclePriceSectionFavorite]: vehicleComponentName === 'favorite' }
|
|
129
116
|
);
|
|
130
117
|
|
|
131
118
|
const vehiclePriceTitleClassName = classnames(
|
|
132
119
|
styles.vehiclePriceTitle,
|
|
133
|
-
{ [styles.
|
|
134
|
-
{ [styles.vehiclePriceTitleRecently]: vehicleComponentName === 'recently' },
|
|
135
|
-
{ [styles.vehiclePriceTitleSearch]: vehicleComponentName === 'search' || 'myVehicles' }
|
|
120
|
+
{ [styles.vehiclePriceTitleSearch]: vehicleComponentName === 'search' || 'myVehicles' || 'favorite' }
|
|
136
121
|
);
|
|
137
122
|
const priceItemsGlobal = [
|
|
138
123
|
{
|
|
139
124
|
perMonthOld: oldMonthlyInstallment,
|
|
140
125
|
perMonthCurrent: monthlyInstallment,
|
|
141
126
|
title: t('vehicleProps:title.financing'),
|
|
142
|
-
prefixOldPrice: vehicleComponentName === 'search' && !isMobileOnly && t('vehicleProps:value.prefixOldPrice'),
|
|
143
127
|
postfix: '3',
|
|
144
|
-
priceSub: t('vehicleProps:value.priceSub'),
|
|
145
128
|
tooltipDescription: !combineRefAlternative && t('vehicleProps:title.financingDescription')
|
|
146
129
|
},
|
|
147
130
|
{
|
|
148
131
|
perMonthOld: lOldMonthlyInstallment,
|
|
149
132
|
perMonthCurrent: lMonthlyInstallment,
|
|
150
|
-
|
|
133
|
+
isNewPriceCategory: true,
|
|
151
134
|
postfix: '1,3',
|
|
152
135
|
isPriceDisable: !isLeasingActive,
|
|
153
136
|
title: t('vehicleProps:title.leasing'),
|
|
154
|
-
priceSub: t('vehicleProps:value.priceSub'),
|
|
155
137
|
tooltipDescription: !combineRefAlternative && t('vehicleProps:title.leasingDescription')
|
|
156
138
|
}
|
|
157
139
|
];
|
|
158
140
|
|
|
159
|
-
const
|
|
160
|
-
vehicleComponentName !== 'recently' &&
|
|
161
|
-
vehicleComponentName !== 'search';
|
|
162
|
-
|
|
163
|
-
const Abo = showAboCondition ? [
|
|
141
|
+
const Abo = vehicleComponentName !== 'favorite' ? [
|
|
164
142
|
{
|
|
165
143
|
perMonthOld: oldMonthlyInstallment,
|
|
166
144
|
perMonthCurrent: monthlyInstallment,
|
|
@@ -203,8 +181,6 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
203
181
|
const ListPrices = priceData.map((
|
|
204
182
|
{
|
|
205
183
|
title,
|
|
206
|
-
priceSub,
|
|
207
|
-
prefixOldPrice,
|
|
208
184
|
totalCurrent,
|
|
209
185
|
tooltipDescription,
|
|
210
186
|
perMonthOld,
|
|
@@ -230,14 +206,10 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
230
206
|
showAboIcon={showAboIcon}
|
|
231
207
|
totalOld={highestPriceExtra}
|
|
232
208
|
isTotal={isTotal}
|
|
233
|
-
priceSub={priceSub}
|
|
234
209
|
positionY={positionY}
|
|
235
210
|
url={url}
|
|
236
|
-
target={target}
|
|
237
|
-
rel={rel}
|
|
238
211
|
isStrikeShown={isStrikeShown}
|
|
239
212
|
iconName={iconName}
|
|
240
|
-
prefixOldPrice={prefixOldPrice}
|
|
241
213
|
totalCurrent={totalCurrent}
|
|
242
214
|
postfix={postfix}
|
|
243
215
|
linkTag={linkTag}
|
|
@@ -248,36 +220,28 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
248
220
|
);
|
|
249
221
|
});
|
|
250
222
|
const buttonClassNames = classnames(
|
|
251
|
-
classButton,
|
|
252
223
|
styles.buttonDetails,
|
|
253
224
|
{ [styles.isAlternativeButton]: typeAlternative }
|
|
254
225
|
);
|
|
255
226
|
return (
|
|
256
227
|
<section className={vehiclePriceSectionClassName}>
|
|
257
|
-
{vehicleComponentName === 'favorite'
|
|
258
|
-
<
|
|
228
|
+
{vehicleComponentName === 'favorite' ? (
|
|
229
|
+
<Checkbox
|
|
259
230
|
checked={toCompare}
|
|
260
231
|
onChange={toggleCarToCompare}
|
|
261
|
-
labelPlacement='start'
|
|
262
232
|
label={t('FavoritesPage:toCompare')}
|
|
263
|
-
|
|
233
|
+
labelClassName={styles.wrapCheckbox}
|
|
264
234
|
/>
|
|
265
|
-
)}
|
|
266
|
-
{vehicleComponentName !== 'favorite' && vehicleComponentName !== 'search' && (
|
|
267
|
-
<span className={vehiclePriceTitleClassName}>{t('vehicleProps:title.monthlyFrom')}</span>
|
|
268
|
-
)}
|
|
269
|
-
{vehicleComponentName === 'search' && isMobileOnly && (
|
|
270
|
-
<span className={vehiclePriceTitleClassName}>{t('vehicleProps:title.monthlyFrom')}</span>
|
|
271
|
-
)}
|
|
235
|
+
) : <span className={vehiclePriceTitleClassName}>{t('vehicleProps:title.monthlyFrom')}</span>}
|
|
272
236
|
{ListPrices}
|
|
273
|
-
{vehicleComponentName === 'favorite' &&
|
|
237
|
+
{vehicleComponentName === 'favorite' && (
|
|
274
238
|
<div className={styles.wrapHandleCompare}>
|
|
275
239
|
<Button variant='outlined' onClick={onRemoveClick} className={styles.btnCompareRemove} color='error'>
|
|
276
240
|
<IconSVG className={styles.removeIcon} name='trashRed' customDimensions />
|
|
277
241
|
</Button>
|
|
278
242
|
<Button className={styles.btnCarToCompare} variant='outlined' onClick={toggleCarToCompare}>
|
|
279
243
|
<span className={styles.btnPlusIcon}>{!toCompare ? '+' : '-'}</span>
|
|
280
|
-
{t('FavoritesPage:compare')}
|
|
244
|
+
<span className={styles.btnText}>{t('FavoritesPage:compare')}</span>
|
|
281
245
|
</Button>
|
|
282
246
|
</div>
|
|
283
247
|
)}
|
|
@@ -287,7 +251,9 @@ class VehiclePrice extends React.Component<IVehiclePriceSectionProps> {
|
|
|
287
251
|
</Button>
|
|
288
252
|
) : null}
|
|
289
253
|
{showOfferBtn ? (
|
|
290
|
-
<
|
|
254
|
+
<Hidden xs>
|
|
255
|
+
<Button color='primary' className={buttonClassNames} onClick={this.onDetailsClick}>{t('vehicleProps:title.toOffer')}</Button>
|
|
256
|
+
</Hidden>
|
|
291
257
|
) : ''}
|
|
292
258
|
</section>
|
|
293
259
|
);
|