ordering-ui-external 1.8.10 → 1.9.0
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/_bundles/{0.ordering-ui.b6cdd549ac5beb984576.js → 0.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{1.ordering-ui.b6cdd549ac5beb984576.js → 1.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{2.ordering-ui.b6cdd549ac5beb984576.js → 2.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{4.ordering-ui.b6cdd549ac5beb984576.js → 4.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{5.ordering-ui.b6cdd549ac5beb984576.js → 5.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{6.ordering-ui.b6cdd549ac5beb984576.js → 6.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{7.ordering-ui.b6cdd549ac5beb984576.js → 7.ordering-ui.557d300459c7f7dc486b.js} +1 -1
- package/_bundles/{7.ordering-ui.b6cdd549ac5beb984576.js.LICENSE.txt → 7.ordering-ui.557d300459c7f7dc486b.js.LICENSE.txt} +0 -0
- package/_bundles/{8.ordering-ui.b6cdd549ac5beb984576.js → 8.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{9.ordering-ui.b6cdd549ac5beb984576.js → 9.ordering-ui.557d300459c7f7dc486b.js} +0 -0
- package/_bundles/{ordering-ui.b6cdd549ac5beb984576.js → ordering-ui.557d300459c7f7dc486b.js} +2 -2
- package/_bundles/{ordering-ui.b6cdd549ac5beb984576.js.LICENSE.txt → ordering-ui.557d300459c7f7dc486b.js.LICENSE.txt} +0 -0
- package/_modules/components/PaymentOptions/index.js +2 -2
- package/_modules/themes/five/index.js +7 -0
- package/_modules/themes/five/src/components/BusinessBasicInformation/index.js +2 -7
- package/_modules/themes/five/src/components/BusinessInformation/index.js +7 -6
- package/_modules/themes/five/src/components/BusinessProductsListing/index.js +3 -1
- package/_modules/themes/five/src/components/BusinessesListing/layouts/OriginalBusinessesListing/index.js +2 -2
- package/_modules/themes/five/src/components/BusinessesListing/layouts/OriginalBusinessesListing/styles.js +5 -3
- package/_modules/themes/five/src/components/BusinessesListing/layouts/StarbucksBusinessesListing/index.js +2 -0
- package/_modules/themes/five/src/components/BusinessesListing/layouts/StarbucksBusinessesListing/styles.js +2 -2
- package/_modules/themes/five/src/components/Checkout/index.js +9 -5
- package/_modules/themes/five/src/components/Header/index.js +20 -1
- package/_modules/themes/five/src/components/Header/styles.js +7 -5
- package/_modules/themes/five/src/components/HomeHero/layouts/OriginalHomeHero/index.js +20 -5
- package/_modules/themes/five/src/components/OrderDetails/OrderBillSection.js +12 -12
- package/_modules/themes/five/src/components/OrderDetails/index.js +4 -2
- package/_modules/themes/five/src/components/OrdersOption/index.js +4 -2
- package/_modules/themes/five/src/components/PhoneAutocomplete/index.js +4 -0
- package/_modules/themes/five/src/components/PlaceSpot/index.js +3 -1
- package/_modules/themes/five/src/components/ProductForm/styles.js +1 -1
- package/_modules/themes/five/src/components/ProductOption/index.js +1 -1
- package/_modules/themes/five/src/components/ProductOptionSubOption/index.js +1 -1
- package/_modules/themes/five/src/components/ProductOptionSubOption/styles.js +1 -1
- package/_modules/themes/five/src/components/ReviewProduct/index.js +2 -0
- package/_modules/themes/five/src/components/ScheduleAccordion/index.js +49 -0
- package/_modules/themes/five/src/components/ScheduleAccordion/styles.js +23 -0
- package/_modules/themes/five/src/components/SearchBar/index.js +4 -2
- package/_modules/themes/five/src/components/SearchBar/styles.js +12 -8
- package/_modules/themes/five/src/components/ServiceForm/index.js +17 -8
- package/_modules/themes/five/src/components/UserPopover/index.js +14 -4
- package/_modules/themes/pwa/src/components/MomentControl/index.js +0 -3
- package/_modules/themes/six/src/components/BusinessController/styles.js +1 -1
- package/_modules/themes/six/src/components/SearchBar/index.js +4 -2
- package/_modules/themes/six/src/components/SearchBar/styles.js +6 -4
- package/package.json +2 -2
- package/src/components/PaymentOptions/index.js +22 -22
- package/src/themes/five/index.js +2 -0
- package/src/themes/five/src/components/BusinessBasicInformation/index.js +0 -10
- package/src/themes/five/src/components/BusinessInformation/index.js +7 -23
- package/src/themes/five/src/components/BusinessProductsListing/index.js +3 -1
- package/src/themes/five/src/components/BusinessesListing/layouts/OriginalBusinessesListing/index.js +2 -2
- package/src/themes/five/src/components/BusinessesListing/layouts/OriginalBusinessesListing/styles.js +5 -1
- package/src/themes/five/src/components/BusinessesListing/layouts/StarbucksBusinessesListing/index.js +2 -0
- package/src/themes/five/src/components/BusinessesListing/layouts/StarbucksBusinessesListing/styles.js +2 -6
- package/src/themes/five/src/components/Checkout/index.js +9 -5
- package/src/themes/five/src/components/Header/index.js +19 -3
- package/src/themes/five/src/components/Header/styles.js +20 -4
- package/src/themes/five/src/components/HomeHero/layouts/OriginalHomeHero/index.js +13 -3
- package/src/themes/five/src/components/OrderDetails/OrderBillSection.js +6 -6
- package/src/themes/five/src/components/OrderDetails/index.js +5 -2
- package/src/themes/five/src/components/OrdersOption/index.js +10 -9
- package/src/themes/five/src/components/PhoneAutocomplete/index.js +2 -0
- package/src/themes/five/src/components/PlaceSpot/index.js +3 -1
- package/src/themes/five/src/components/ProductForm/styles.js +1 -0
- package/src/themes/five/src/components/ProductOption/index.js +1 -1
- package/src/themes/five/src/components/ProductOptionSubOption/index.js +1 -1
- package/src/themes/five/src/components/ProductOptionSubOption/styles.js +0 -1
- package/src/themes/five/src/components/ReviewProduct/index.js +2 -0
- package/src/themes/five/src/components/ScheduleAccordion/index.js +60 -0
- package/src/themes/five/src/components/ScheduleAccordion/styles.js +28 -0
- package/src/themes/five/src/components/SearchBar/index.js +3 -1
- package/src/themes/five/src/components/SearchBar/styles.js +9 -1
- package/src/themes/five/src/components/ServiceForm/index.js +10 -4
- package/src/themes/five/src/components/UserPopover/index.js +12 -3
- package/src/themes/pwa/src/components/MomentContent/index.js +0 -1
- package/src/themes/pwa/src/components/MomentControl/index.js +0 -3
- package/src/themes/six/src/components/BusinessController/styles.js +4 -0
- package/src/themes/six/src/components/SearchBar/index.js +10 -2
- package/src/themes/six/src/components/SearchBar/styles.js +12 -1
|
@@ -86,6 +86,7 @@ const PhoneAutocompleteUI = (props) => {
|
|
|
86
86
|
}
|
|
87
87
|
if (!inputValue) {
|
|
88
88
|
setInputValue(inputValue)
|
|
89
|
+
onChangeNumber(inputValue)
|
|
89
90
|
}
|
|
90
91
|
if ((inputValue && inputValue.length > 10) || !(/^[0-9]+$/.test(inputValue))) {
|
|
91
92
|
return
|
|
@@ -95,6 +96,7 @@ const PhoneAutocompleteUI = (props) => {
|
|
|
95
96
|
}
|
|
96
97
|
|
|
97
98
|
const onChange = (option) => {
|
|
99
|
+
if (!option) { onChangeNumber('') }
|
|
98
100
|
setOptSelected(option)
|
|
99
101
|
setInputValue(option ? option?.value : '')
|
|
100
102
|
const user = customersPhones.users?.find(user => user.cellphone === option?.value || user.phone === option?.value)
|
|
@@ -36,7 +36,8 @@ const PlaceSpotUI = (props) => {
|
|
|
36
36
|
setVehicle,
|
|
37
37
|
setSpotState,
|
|
38
38
|
handleChangeSpot,
|
|
39
|
-
setHasBusinessPlaces
|
|
39
|
+
setHasBusinessPlaces,
|
|
40
|
+
setPlaceSpotNumber
|
|
40
41
|
} = props
|
|
41
42
|
|
|
42
43
|
const el = useRef()
|
|
@@ -92,6 +93,7 @@ const PlaceSpotUI = (props) => {
|
|
|
92
93
|
let spotNumber = parseFloat(e?.target?.value)
|
|
93
94
|
spotNumber = isNaN(spotNumber) ? null : spotNumber
|
|
94
95
|
setSpotNumber(spotNumber)
|
|
96
|
+
setPlaceSpotNumber(spotNumber)
|
|
95
97
|
}
|
|
96
98
|
}
|
|
97
99
|
|
|
@@ -22,7 +22,7 @@ const ProductOptionUI = (props) => {
|
|
|
22
22
|
if (option.min === 1 && option.max === 1) {
|
|
23
23
|
maxMin = t('REQUIRED', 'Required')
|
|
24
24
|
} else if (option.min === 0 && option.max > 0) {
|
|
25
|
-
maxMin = `${
|
|
25
|
+
maxMin = `${t('MAX', 'Max')}. ${option.max}`
|
|
26
26
|
} else if (option.min > 0 && option.max === 0) {
|
|
27
27
|
maxMin = `${t('MIN', 'Min')}. ${option.min})`
|
|
28
28
|
}
|
|
@@ -39,7 +39,7 @@ const ProductOptionSubOptionUI = (props) => {
|
|
|
39
39
|
setIsScrollAvailable
|
|
40
40
|
} = props
|
|
41
41
|
|
|
42
|
-
const disableIncrement = option?.limit_suboptions_by_max ? (balance === option?.max || state.quantity === suboption.max) : state.quantity === option?.max
|
|
42
|
+
const disableIncrement = option?.limit_suboptions_by_max ? (balance === option?.max || state.quantity === suboption.max) : state.quantity === suboption?.max || (!state.selected && balance === option?.max)
|
|
43
43
|
const price = option?.with_half_option && suboption?.half_price && state.position !== 'whole' ? suboption?.half_price : suboption?.price
|
|
44
44
|
const [, t] = useLanguage()
|
|
45
45
|
const [{ parsePrice }] = useUtils()
|
|
@@ -24,6 +24,7 @@ import { TextArea } from '../../styles/Inputs'
|
|
|
24
24
|
import { Button } from '../../styles/Buttons'
|
|
25
25
|
import { Alert } from '../Confirm'
|
|
26
26
|
import { reviewCommentList } from '../../../../../utils'
|
|
27
|
+
import { useTheme } from 'styled-components'
|
|
27
28
|
|
|
28
29
|
const SingleProductReview = (props) => {
|
|
29
30
|
const {
|
|
@@ -33,6 +34,7 @@ const SingleProductReview = (props) => {
|
|
|
33
34
|
} = props
|
|
34
35
|
|
|
35
36
|
const [, t] = useLanguage()
|
|
37
|
+
const theme = useTheme()
|
|
36
38
|
const [isLike, setIsLike] = useState(true)
|
|
37
39
|
const [isExtraComment, setIsExtraComment] = useState(false)
|
|
38
40
|
const [comments, setComments] = useState([])
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import React, { useState } from 'react'
|
|
2
|
+
import { useLanguage } from 'ordering-components-external'
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
Accordion,
|
|
6
|
+
AccordionSection,
|
|
7
|
+
ClosedSchedule,
|
|
8
|
+
DropdownWrapper,
|
|
9
|
+
HoursWrappers,
|
|
10
|
+
} from './styles'
|
|
11
|
+
import IosArrowDown from '@meronex/icons/ios/IosArrowDown'
|
|
12
|
+
|
|
13
|
+
export const ScheduleAccordion = (props) => {
|
|
14
|
+
|
|
15
|
+
const {
|
|
16
|
+
scheduleFormatted,
|
|
17
|
+
schedule,
|
|
18
|
+
weekIndex
|
|
19
|
+
} = props
|
|
20
|
+
|
|
21
|
+
const [isActive, setActiveState] = useState(false)
|
|
22
|
+
const [, t] = useLanguage()
|
|
23
|
+
|
|
24
|
+
const daysOfWeek = [
|
|
25
|
+
t('DAY7', 'Sunday'),
|
|
26
|
+
t('DAY1', 'Monday'),
|
|
27
|
+
t('DAY2', 'Tuesday'),
|
|
28
|
+
t('DAY3', 'Wednesday'),
|
|
29
|
+
t('DAY4', 'Thursday'),
|
|
30
|
+
t('DAY5', 'Friday'),
|
|
31
|
+
t('DAY6', 'Saturday'),
|
|
32
|
+
]
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
<AccordionSection>
|
|
36
|
+
<Accordion
|
|
37
|
+
onClick={() => setActiveState(!isActive)}
|
|
38
|
+
>
|
|
39
|
+
<DropdownWrapper>
|
|
40
|
+
<h4>{daysOfWeek[weekIndex]}</h4>
|
|
41
|
+
<IosArrowDown />
|
|
42
|
+
</DropdownWrapper>
|
|
43
|
+
<HoursWrappers style={{ display: isActive ? 'flex' : 'none', paddingLeft: 60 }}>
|
|
44
|
+
{schedule?.lapses?.map((lapse, i) => (
|
|
45
|
+
schedule?.enabled ?
|
|
46
|
+
<p key={`${i}-${scheduleFormatted(lapse.open)}`}>
|
|
47
|
+
{scheduleFormatted(lapse.open) +
|
|
48
|
+
' - ' +
|
|
49
|
+
scheduleFormatted(lapse.close)}
|
|
50
|
+
</p>
|
|
51
|
+
:
|
|
52
|
+
<ClosedSchedule>
|
|
53
|
+
{t('CLOSED', 'Closed')}
|
|
54
|
+
</ClosedSchedule>
|
|
55
|
+
))}
|
|
56
|
+
</HoursWrappers>
|
|
57
|
+
</Accordion>
|
|
58
|
+
</AccordionSection>
|
|
59
|
+
)
|
|
60
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import styled from 'styled-components'
|
|
2
|
+
|
|
3
|
+
export const AccordionSection = styled.div`
|
|
4
|
+
background: #FFF;
|
|
5
|
+
`
|
|
6
|
+
|
|
7
|
+
export const Accordion = styled.div`
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
justify-content: space-between;
|
|
11
|
+
`
|
|
12
|
+
|
|
13
|
+
export const DropdownWrapper = styled.div`
|
|
14
|
+
display: flex;
|
|
15
|
+
align-items: center;
|
|
16
|
+
gap: 10px;
|
|
17
|
+
`
|
|
18
|
+
export const HoursWrappers = styled.div`
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
|
|
21
|
+
p {
|
|
22
|
+
margin: 0px 0px 10px 0px;
|
|
23
|
+
}
|
|
24
|
+
`
|
|
25
|
+
|
|
26
|
+
export const ClosedSchedule = styled.p`
|
|
27
|
+
color: ${props => props.theme?.colors?.danger500}
|
|
28
|
+
`
|
|
@@ -17,7 +17,8 @@ export const SearchBar = (props) => {
|
|
|
17
17
|
lazyLoad,
|
|
18
18
|
isCustomLayout,
|
|
19
19
|
handleCustomEnter,
|
|
20
|
-
forwardRef
|
|
20
|
+
forwardRef,
|
|
21
|
+
starbucksStyle
|
|
21
22
|
} = props
|
|
22
23
|
const [theme] = useTheme()
|
|
23
24
|
const [, t] = useLanguage()
|
|
@@ -84,6 +85,7 @@ export const SearchBar = (props) => {
|
|
|
84
85
|
className={!isCustomLayout && 'search-bar'}
|
|
85
86
|
isCustomLayout={isCustomLayout}
|
|
86
87
|
hasValue={el.current?.value}
|
|
88
|
+
starbucksStyle={starbucksStyle}
|
|
87
89
|
>
|
|
88
90
|
<Input
|
|
89
91
|
ref={(ref) => {
|
|
@@ -30,9 +30,17 @@ export const BusinessSearch = styled.div`
|
|
|
30
30
|
transition: width 0.4s ease-in-out;
|
|
31
31
|
`}
|
|
32
32
|
|
|
33
|
+
${({ starbucksStyle }) => starbucksStyle && css`
|
|
34
|
+
background-color: #F8F9FA;
|
|
35
|
+
border: 1px solid #DEE2E6;
|
|
36
|
+
font-size: 14px;
|
|
37
|
+
color: #000;
|
|
38
|
+
border-radius: 7.6px;
|
|
39
|
+
`}
|
|
40
|
+
|
|
33
41
|
@media (min-width: 681px) {
|
|
34
42
|
width: 100%;
|
|
35
|
-
${({ isCustomLayout }) => !isCustomLayout && css`
|
|
43
|
+
${({ isCustomLayout, starbucksStyle }) => !isCustomLayout && !starbucksStyle && css`
|
|
36
44
|
width: 50%;
|
|
37
45
|
`}
|
|
38
46
|
}
|
|
@@ -144,9 +144,15 @@ const ServiceFormUI = (props) => {
|
|
|
144
144
|
|
|
145
145
|
const isBusyTime = (professional) => {
|
|
146
146
|
if (professional?.busy_times?.length === 0 || !dateSelected) return false
|
|
147
|
-
const
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
const duration = product?.duration ?? 0
|
|
148
|
+
const busyTimes = isCartProduct
|
|
149
|
+
? professional?.busy_times.filter(item => !(item.start === productCart?.calendar_event?.start && item.end === productCart?.calendar_event?.end))
|
|
150
|
+
: [...professional?.busy_times]
|
|
151
|
+
const valid = busyTimes.some(item => {
|
|
152
|
+
return (moment.utc(item?.start).local().valueOf() <= moment(dateSelected).valueOf() &&
|
|
153
|
+
moment(dateSelected).valueOf() <= moment.utc(item?.end).local().valueOf()) ||
|
|
154
|
+
(moment.utc(item?.start).local().valueOf() <= moment(dateSelected).add(duration, 'minutes').valueOf() &&
|
|
155
|
+
moment(dateSelected).add(duration, 'minutes').valueOf() <= moment.utc(item?.end).local().valueOf())
|
|
150
156
|
})
|
|
151
157
|
return valid
|
|
152
158
|
}
|
|
@@ -304,7 +310,7 @@ const ServiceFormUI = (props) => {
|
|
|
304
310
|
) : <FaUserAlt />}
|
|
305
311
|
<NameWrapper>
|
|
306
312
|
<p>{currentProfessional?.name} {currentProfessional?.lastname}</p>
|
|
307
|
-
<StatusInfo available={!isBusyTime()}>
|
|
313
|
+
<StatusInfo available={!isBusyTime(currentProfessional)}>
|
|
308
314
|
{isBusyTime(currentProfessional) ? (
|
|
309
315
|
<>
|
|
310
316
|
<span className='status'>{t('BUSY_ON_SELECTED_TIME', 'Busy on selected time')}</span>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useRef, useEffect } from 'react'
|
|
2
|
-
import { useLanguage, useSession, LogoutAction as LogoutActionController, useEvent, useCustomer, useConfig, useOrderingTheme } from 'ordering-components-external'
|
|
2
|
+
import { useLanguage, useSession, LogoutAction as LogoutActionController, useEvent, useCustomer, useConfig, useOrderingTheme, useOrder } from 'ordering-components-external'
|
|
3
3
|
import { usePopper } from 'react-popper'
|
|
4
4
|
import {
|
|
5
5
|
HeaderItem,
|
|
@@ -29,13 +29,16 @@ export const UserPopover = (props) => {
|
|
|
29
29
|
isHome,
|
|
30
30
|
optionsList,
|
|
31
31
|
withLogout,
|
|
32
|
-
isCustomerMode
|
|
32
|
+
isCustomerMode,
|
|
33
|
+
handleOpenAddressModal
|
|
33
34
|
} = props
|
|
34
35
|
const [sessionState] = useSession()
|
|
35
36
|
const [, t] = useLanguage()
|
|
36
37
|
const [events] = useEvent()
|
|
37
38
|
const [{ configs }] = useConfig()
|
|
38
39
|
const [orderingTheme] = useOrderingTheme()
|
|
40
|
+
const [orderStatus] = useOrder()
|
|
41
|
+
|
|
39
42
|
const referenceElement = useRef()
|
|
40
43
|
const popperElement = useRef()
|
|
41
44
|
const arrowElement = useRef()
|
|
@@ -56,6 +59,8 @@ export const UserPopover = (props) => {
|
|
|
56
59
|
{ name: 'addresses', pathname: '/profile/addresses', displayName: 'places', key: 'places', isActive: isAddressListNewPage }
|
|
57
60
|
]
|
|
58
61
|
|
|
62
|
+
const addressRequiredPageNames = ['business_search', 'promotions']
|
|
63
|
+
|
|
59
64
|
const options = isCustomerMode
|
|
60
65
|
? optionsDefault.filter(option => option.name === 'profile')
|
|
61
66
|
: optionsList || optionsDefault
|
|
@@ -94,7 +99,11 @@ export const UserPopover = (props) => {
|
|
|
94
99
|
}
|
|
95
100
|
|
|
96
101
|
const handleGoToPage = (page) => {
|
|
97
|
-
|
|
102
|
+
if (!orderStatus.options?.address?.location && addressRequiredPageNames.includes(page)) {
|
|
103
|
+
handleOpenAddressModal()
|
|
104
|
+
} else {
|
|
105
|
+
events.emit('go_to_page', { page })
|
|
106
|
+
}
|
|
98
107
|
props.onClick && props.onClick()
|
|
99
108
|
}
|
|
100
109
|
|
|
@@ -4,6 +4,10 @@ import styled, { css } from 'styled-components'
|
|
|
4
4
|
export const ContainerCard = styled.div`
|
|
5
5
|
width: 100%;
|
|
6
6
|
position: relative;
|
|
7
|
+
@media (min-width: 768px) {
|
|
8
|
+
padding: 7px 10px 7px 20px;
|
|
9
|
+
margin-bottom: 5px;
|
|
10
|
+
}
|
|
7
11
|
`
|
|
8
12
|
|
|
9
13
|
export const WrapperBusinessCard = styled.div`
|
|
@@ -2,10 +2,12 @@ import React, { useRef, useEffect } from 'react'
|
|
|
2
2
|
import { Input } from '../../styles/Inputs'
|
|
3
3
|
import { useLanguage } from 'ordering-components-external'
|
|
4
4
|
import AiOutlineSearch from '@meronex/icons/ai/AiOutlineSearch'
|
|
5
|
+
import { Funnel } from 'react-bootstrap-icons'
|
|
5
6
|
import {
|
|
6
7
|
BusinessSearch,
|
|
7
8
|
DeleteContent,
|
|
8
|
-
SearchWrapper
|
|
9
|
+
SearchWrapper,
|
|
10
|
+
FunnelWrapper
|
|
9
11
|
} from './styles'
|
|
10
12
|
export const SearchBar = (props) => {
|
|
11
13
|
const {
|
|
@@ -13,7 +15,8 @@ export const SearchBar = (props) => {
|
|
|
13
15
|
search,
|
|
14
16
|
placeholder,
|
|
15
17
|
lazyLoad,
|
|
16
|
-
isCustomLayout
|
|
18
|
+
isCustomLayout,
|
|
19
|
+
isStarbucks
|
|
17
20
|
} = props
|
|
18
21
|
|
|
19
22
|
const [, t] = useLanguage()
|
|
@@ -90,6 +93,11 @@ export const SearchBar = (props) => {
|
|
|
90
93
|
>
|
|
91
94
|
<AiOutlineSearch />
|
|
92
95
|
</SearchWrapper>
|
|
96
|
+
{isStarbucks &&
|
|
97
|
+
<FunnelWrapper>
|
|
98
|
+
<Funnel />
|
|
99
|
+
</FunnelWrapper>
|
|
100
|
+
}
|
|
93
101
|
</BusinessSearch>
|
|
94
102
|
{props.afterComponents?.map((AfterComponent, i) => (
|
|
95
103
|
<AfterComponent key={i} {...props} />))}
|
|
@@ -68,7 +68,7 @@ export const DeleteContent = styled.span`
|
|
|
68
68
|
`}
|
|
69
69
|
${({ isClear, isHome }) => isClear && css`
|
|
70
70
|
left: initial;
|
|
71
|
-
right:
|
|
71
|
+
right: 40px;
|
|
72
72
|
`}
|
|
73
73
|
${props => props.theme?.rtl && css`
|
|
74
74
|
transform: translate(30%, 0%);
|
|
@@ -94,6 +94,17 @@ export const DeleteContent = styled.span`
|
|
|
94
94
|
|
|
95
95
|
export const SearchWrapper = styled(DeleteContent)``
|
|
96
96
|
|
|
97
|
+
export const FunnelWrapper = styled.div`
|
|
98
|
+
svg {
|
|
99
|
+
position: absolute;
|
|
100
|
+
right: 10px !important;
|
|
101
|
+
color: #ADB5BD;
|
|
102
|
+
width: 20px;
|
|
103
|
+
height: 20px;
|
|
104
|
+
bottom: 22px;
|
|
105
|
+
}
|
|
106
|
+
`
|
|
107
|
+
|
|
97
108
|
export const SearchIcon = styled.div`
|
|
98
109
|
background-image: url(${props => props.theme?.images?.general?.searchIcon});
|
|
99
110
|
background-position: right 10px center;
|