ordering-ui-admin-external 1.12.5 → 1.13.1
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/{ordering-ui-admin.d53a7ee886aee7937e13.js → ordering-ui-admin.6980225e31cb682b0268.js} +2 -2
- package/_bundles/{ordering-ui-admin.d53a7ee886aee7937e13.js.LICENSE.txt → ordering-ui-admin.6980225e31cb682b0268.js.LICENSE.txt} +0 -0
- package/_modules/components/BusinessIntelligence/BusinessReviewDetails/index.js +2 -12
- package/_modules/components/BusinessIntelligence/BusinessReviewList/index.js +5 -3
- package/_modules/components/BusinessIntelligence/BusinessReviewList/styles.js +1 -1
- package/_modules/components/BusinessIntelligence/ReviewProductsListing/index.js +31 -49
- package/_modules/components/BusinessIntelligence/ReviewProductsListing/styles.js +20 -33
- package/_modules/components/BusinessIntelligence/ReviewsListing/index.js +54 -7
- package/_modules/components/BusinessIntelligence/ReviewsListing/styles.js +7 -3
- package/_modules/components/Delivery/DriversGroupGeneralForm/index.js +14 -14
- package/_modules/components/Loyalty/GiftCards/index.js +168 -0
- package/_modules/components/Loyalty/GiftCards/styles.js +80 -0
- package/_modules/components/Loyalty/PointsWalletLevels/index.js +5 -2
- package/_modules/components/Marketing/BannerDetails/BannerImages.js +6 -4
- package/_modules/components/Marketing/BannerDetails/index.js +2 -1
- package/_modules/components/Marketing/BannerImageDetails/index.js +1 -1
- package/_modules/components/Marketing/PageBanner/index.js +3 -1
- package/_modules/components/Marketing/PageBanner/styles.js +1 -1
- package/_modules/components/MyProducts/CustomProject/index.js +49 -0
- package/_modules/components/MyProducts/CustomProject/styles.js +27 -0
- package/_modules/components/MyProducts/index.js +8 -1
- package/_modules/components/Orders/OrderDetailsHeader/index.js +4 -4
- package/_modules/components/Settings/ApiKeysList/index.js +3 -1
- package/_modules/components/Settings/ApiKeysList/styles.js +4 -10
- package/_modules/components/Settings/Deliverect/index.js +4 -1
- package/_modules/components/Settings/Deliverect/styles.js +33 -31
- package/_modules/components/Settings/DoordashConnect/index.js +4 -1
- package/_modules/components/Settings/DoordashConnect/styles.js +31 -29
- package/_modules/components/Settings/ItsaCheckmate/index.js +4 -1
- package/_modules/components/Settings/ItsaCheckmate/styles.js +33 -39
- package/_modules/components/Settings/LalamoveConnect/index.js +4 -1
- package/_modules/components/Settings/LalamoveConnect/styles.js +32 -30
- package/_modules/components/Settings/LanguageTransTable/index.js +9 -2
- package/_modules/components/Settings/PickerExpress/index.js +4 -1
- package/_modules/components/Settings/PickerExpress/styles.js +32 -30
- package/_modules/components/Settings/PluginList/index.js +3 -1
- package/_modules/components/Settings/PluginList/styles.js +4 -8
- package/_modules/components/Settings/SettingsDetail/index.js +4 -1
- package/_modules/components/Settings/SettingsDetail/styles.js +15 -21
- package/_modules/components/Settings/SettingsList/index.js +16 -0
- package/_modules/components/Settings/SettingsList/styles.js +4 -1
- package/_modules/components/Settings/WebhookList/index.js +4 -2
- package/_modules/components/Settings/WebhookList/styles.js +4 -8
- package/_modules/components/Shared/ImageCrop/index.js +4 -2
- package/_modules/components/SidebarMenu/index.js +13 -10
- package/_modules/components/Stores/BusinessCateringDelivery/index.js +215 -0
- package/_modules/components/Stores/BusinessCateringDelivery/styles.js +20 -0
- package/_modules/components/Stores/BusinessDetails/index.js +5 -2
- package/_modules/components/Stores/BusinessPreorderDetails/index.js +18 -4
- package/_modules/components/Stores/BusinessPreorderDetails/styles.js +7 -5
- package/_modules/components/Stores/BusinessSummary/index.js +1 -1
- package/_modules/components/Stores/BusinessesListing/index.js +14 -14
- package/_modules/components/Stores/BusinessesListing/styles.js +1 -3
- package/_modules/components/Stores/ProductTagDetails/styles.js +1 -1
- package/_modules/components/Stores/SeoOptions/styles.js +1 -1
- package/_modules/index.js +6 -0
- package/index-template.js +3 -1
- package/package.json +2 -2
- package/src/components/BusinessIntelligence/BusinessReviewDetails/index.js +3 -7
- package/src/components/BusinessIntelligence/BusinessReviewList/index.js +13 -9
- package/src/components/BusinessIntelligence/BusinessReviewList/styles.js +2 -1
- package/src/components/BusinessIntelligence/ReviewProductsListing/index.js +33 -55
- package/src/components/BusinessIntelligence/ReviewProductsListing/styles.js +3 -53
- package/src/components/BusinessIntelligence/ReviewsListing/index.js +59 -8
- package/src/components/BusinessIntelligence/ReviewsListing/styles.js +19 -0
- package/src/components/Delivery/DriversGroupGeneralForm/index.js +14 -14
- package/src/components/Loyalty/GiftCards/index.js +200 -0
- package/src/components/Loyalty/GiftCards/styles.js +147 -0
- package/src/components/Loyalty/PointsWalletLevels/index.js +9 -12
- package/src/components/Marketing/BannerDetails/BannerImages.js +5 -3
- package/src/components/Marketing/BannerDetails/index.js +1 -0
- package/src/components/Marketing/BannerImageDetails/index.js +1 -1
- package/src/components/Marketing/PageBanner/index.js +4 -3
- package/src/components/Marketing/PageBanner/styles.js +5 -0
- package/src/components/MyProducts/CustomProject/index.js +56 -0
- package/src/components/MyProducts/CustomProject/styles.js +108 -0
- package/src/components/MyProducts/index.js +3 -1
- package/src/components/Orders/OrderDetailsHeader/index.js +2 -2
- package/src/components/Settings/ApiKeysList/index.js +5 -4
- package/src/components/Settings/ApiKeysList/styles.js +5 -11
- package/src/components/Settings/Deliverect/index.js +2 -3
- package/src/components/Settings/Deliverect/styles.js +23 -0
- package/src/components/Settings/DoordashConnect/index.js +2 -3
- package/src/components/Settings/DoordashConnect/styles.js +23 -0
- package/src/components/Settings/ItsaCheckmate/index.js +2 -3
- package/src/components/Settings/ItsaCheckmate/styles.js +23 -26
- package/src/components/Settings/LalamoveConnect/index.js +2 -3
- package/src/components/Settings/LalamoveConnect/styles.js +23 -0
- package/src/components/Settings/LanguageTransTable/index.js +12 -2
- package/src/components/Settings/PickerExpress/index.js +2 -3
- package/src/components/Settings/PickerExpress/styles.js +23 -0
- package/src/components/Settings/PluginList/index.js +4 -3
- package/src/components/Settings/PluginList/styles.js +3 -6
- package/src/components/Settings/SettingsDetail/index.js +3 -4
- package/src/components/Settings/SettingsDetail/styles.js +24 -27
- package/src/components/Settings/SettingsList/index.js +43 -0
- package/src/components/Settings/SettingsList/styles.js +1 -1
- package/src/components/Settings/WebhookList/index.js +5 -4
- package/src/components/Settings/WebhookList/styles.js +3 -5
- package/src/components/Shared/ImageCrop/index.js +4 -2
- package/src/components/SidebarMenu/index.js +14 -7
- package/src/components/Stores/BusinessCateringDelivery/index.js +174 -0
- package/src/components/Stores/BusinessCateringDelivery/styles.js +53 -0
- package/src/components/Stores/BusinessDetails/index.js +5 -2
- package/src/components/Stores/BusinessPreorderDetails/index.js +38 -11
- package/src/components/Stores/BusinessPreorderDetails/styles.js +9 -1
- package/src/components/Stores/BusinessSummary/index.js +1 -1
- package/src/components/Stores/BusinessesListing/index.js +57 -56
- package/src/components/Stores/BusinessesListing/styles.js +3 -11
- package/src/components/Stores/ProductTagDetails/styles.js +1 -0
- package/src/components/Stores/SeoOptions/styles.js +1 -0
- package/src/index.js +3 -1
- package/template/app.js +4 -4
- package/template/assets/images/myProducts/custom-project.png +0 -0
- package/template/components/ListenPageChanges/index.js +1 -1
- package/template/helmetdata.json +7 -7
- package/template/pages/CustomProject/index.js +12 -0
- package/template/pages/ReviewProducts/index.js +0 -22
|
@@ -11,8 +11,7 @@ import {
|
|
|
11
11
|
ApiKeysListContainer,
|
|
12
12
|
Header,
|
|
13
13
|
ApiKeysListTable,
|
|
14
|
-
DropdownButtonWrapper
|
|
15
|
-
AddNewButton
|
|
14
|
+
DropdownButtonWrapper
|
|
16
15
|
} from './styles'
|
|
17
16
|
|
|
18
17
|
const ApiKeysListUI = (props) => {
|
|
@@ -106,11 +105,13 @@ const ApiKeysListUI = (props) => {
|
|
|
106
105
|
))
|
|
107
106
|
)}
|
|
108
107
|
</ApiKeysListTable>
|
|
109
|
-
<
|
|
108
|
+
<Button
|
|
109
|
+
color='primary'
|
|
110
|
+
borderRadius='8px'
|
|
110
111
|
onClick={() => handleAddApiKey()}
|
|
111
112
|
>
|
|
112
113
|
{t('ADD_API_KEY', 'Add API Key')}
|
|
113
|
-
</
|
|
114
|
+
</Button>
|
|
114
115
|
</ApiKeysListContainer>
|
|
115
116
|
<Alert
|
|
116
117
|
title={t('WEB_APPNAME', 'Ordering')}
|
|
@@ -4,6 +4,11 @@ export const ApiKeysListContainer = styled.div`
|
|
|
4
4
|
width: 100%;
|
|
5
5
|
padding: 20px;
|
|
6
6
|
box-sizing: border-box;
|
|
7
|
+
|
|
8
|
+
> button {
|
|
9
|
+
height: 44px;
|
|
10
|
+
margin: 20px 0;
|
|
11
|
+
}
|
|
7
12
|
`
|
|
8
13
|
|
|
9
14
|
export const Header = styled.div`
|
|
@@ -126,14 +131,3 @@ export const DropdownButtonWrapper = styled.div`
|
|
|
126
131
|
}
|
|
127
132
|
}
|
|
128
133
|
`
|
|
129
|
-
export const AddNewButton = styled.div`
|
|
130
|
-
cursor: pointer;
|
|
131
|
-
font-size: 12px;
|
|
132
|
-
color: ${props => props.theme.colors.lightGray};
|
|
133
|
-
margin: 20px 0;
|
|
134
|
-
width: fit-content;
|
|
135
|
-
|
|
136
|
-
&:hover {
|
|
137
|
-
color: ${props => props.theme.colors.primary};
|
|
138
|
-
}
|
|
139
|
-
`
|
|
@@ -8,7 +8,6 @@ import { useWindowSize } from '../../../hooks/useWindowSize'
|
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
10
|
Header,
|
|
11
|
-
AllSetting,
|
|
12
11
|
Description,
|
|
13
12
|
CategoryExtraContent,
|
|
14
13
|
Container,
|
|
@@ -119,10 +118,10 @@ export const Deliverect = (props) => {
|
|
|
119
118
|
<Button color='lightPrimary'>{t('NEW', 'New')}</Button>
|
|
120
119
|
</Header>
|
|
121
120
|
<Description dangerouslySetInnerHTML={{ __html: t('SYNC_DEC_SECOND', 'Deliverect integrates all your <span>online orders</span> to your <span>existing POS</span> or our <span>Delivery Manger app.</span> Restaurants large and small rely on Deliverect to reduce failures and order mistakes while speeding up order preparation.') }} />
|
|
122
|
-
<
|
|
121
|
+
<Button color='primary' borderRadius='8px' className='all-setting' onClick={() => setSettingsOpen(true)}>
|
|
123
122
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
124
123
|
<BsArrowRight />
|
|
125
|
-
</
|
|
124
|
+
</Button>
|
|
126
125
|
</DeliverectContainer>
|
|
127
126
|
{settingsOpen && (
|
|
128
127
|
<>
|
|
@@ -7,6 +7,29 @@ export const DeliverectContainer = styled.div`
|
|
|
7
7
|
overflow-x: hidden;
|
|
8
8
|
position: relative;
|
|
9
9
|
|
|
10
|
+
button.all-setting {
|
|
11
|
+
height: 44px;
|
|
12
|
+
user-select: none;
|
|
13
|
+
margin-top: 36px;
|
|
14
|
+
span {
|
|
15
|
+
font-weight: 600;
|
|
16
|
+
font-size: 14px;
|
|
17
|
+
}
|
|
18
|
+
svg {
|
|
19
|
+
margin-left: 5px;
|
|
20
|
+
transition: 0.2s linear;
|
|
21
|
+
${props => props.theme.rtl && css`
|
|
22
|
+
margin-right: 5px;
|
|
23
|
+
margin-left: 0px;
|
|
24
|
+
`}
|
|
25
|
+
}
|
|
26
|
+
&:hover {
|
|
27
|
+
svg {
|
|
28
|
+
transform: translateX(3px);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
@media (min-width: 768px) {
|
|
11
34
|
padding: 26px 40px;
|
|
12
35
|
}
|
|
@@ -7,7 +7,6 @@ import { XLg } from 'react-bootstrap-icons'
|
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
Header,
|
|
10
|
-
AllSetting,
|
|
11
10
|
Description,
|
|
12
11
|
CategoryExtraContent,
|
|
13
12
|
Container,
|
|
@@ -164,10 +163,10 @@ const DoordashConnectUI = (props) => {
|
|
|
164
163
|
<Description>
|
|
165
164
|
{t('CONNECT_WITH_DOORDASH_DESCRIPTION', 'If you have already worked with Doordash or are running your business with Doordash and Ordering simultaneously, this integration will help you connect both platforms and assign orders through them, making your job easy and automated.')}
|
|
166
165
|
</Description>
|
|
167
|
-
<
|
|
166
|
+
<Button color='primary' borderRadius='8px' className='all-setting' onClick={() => setSettingsOpen(true)}>
|
|
168
167
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
169
168
|
<BsArrowRight />
|
|
170
|
-
</
|
|
169
|
+
</Button>
|
|
171
170
|
</DoordashConnectContainer>
|
|
172
171
|
{settingsOpen && (
|
|
173
172
|
<>
|
|
@@ -7,6 +7,29 @@ export const DoordashConnectContainer = styled.div`
|
|
|
7
7
|
overflow-x: hidden;
|
|
8
8
|
position: relative;
|
|
9
9
|
|
|
10
|
+
button.all-setting {
|
|
11
|
+
height: 44px;
|
|
12
|
+
user-select: none;
|
|
13
|
+
margin-top: 36px;
|
|
14
|
+
span {
|
|
15
|
+
font-weight: 600;
|
|
16
|
+
font-size: 14px;
|
|
17
|
+
}
|
|
18
|
+
svg {
|
|
19
|
+
margin-left: 5px;
|
|
20
|
+
transition: 0.2s linear;
|
|
21
|
+
${props => props.theme.rtl && css`
|
|
22
|
+
margin-right: 5px;
|
|
23
|
+
margin-left: 0px;
|
|
24
|
+
`}
|
|
25
|
+
}
|
|
26
|
+
&:hover {
|
|
27
|
+
svg {
|
|
28
|
+
transform: translateX(3px);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
@media (min-width: 768px) {
|
|
11
34
|
padding: 26px 40px;
|
|
12
35
|
}
|
|
@@ -8,7 +8,6 @@ import { useWindowSize } from '../../../hooks/useWindowSize'
|
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
10
|
Header,
|
|
11
|
-
AllSetting,
|
|
12
11
|
Description,
|
|
13
12
|
CategoryExtraContent,
|
|
14
13
|
Container,
|
|
@@ -140,10 +139,10 @@ export const ItsaCheckmate = (props) => {
|
|
|
140
139
|
<p>{t('ITSACHECKMATE_MENU_4', 'Add, edit, or delete items ')}</p>
|
|
141
140
|
</div>
|
|
142
141
|
</Description>
|
|
143
|
-
<
|
|
142
|
+
<Button color='primary' borderRadius='8px' className='all-setting' onClick={() => setSettingsOpen(true)}>
|
|
144
143
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
145
144
|
<BsArrowRight />
|
|
146
|
-
</
|
|
145
|
+
</Button>
|
|
147
146
|
</ItsaCheckmateContainer>
|
|
148
147
|
{settingsOpen && (
|
|
149
148
|
<>
|
|
@@ -7,6 +7,29 @@ export const ItsaCheckmateContainer = styled.div`
|
|
|
7
7
|
overflow-x: hidden;
|
|
8
8
|
position: relative;
|
|
9
9
|
|
|
10
|
+
button.all-setting {
|
|
11
|
+
height: 44px;
|
|
12
|
+
user-select: none;
|
|
13
|
+
margin-top: 36px;
|
|
14
|
+
span {
|
|
15
|
+
font-weight: 600;
|
|
16
|
+
font-size: 14px;
|
|
17
|
+
}
|
|
18
|
+
svg {
|
|
19
|
+
margin-left: 5px;
|
|
20
|
+
transition: 0.2s linear;
|
|
21
|
+
${props => props.theme.rtl && css`
|
|
22
|
+
margin-right: 5px;
|
|
23
|
+
margin-left: 0px;
|
|
24
|
+
`}
|
|
25
|
+
}
|
|
26
|
+
&:hover {
|
|
27
|
+
svg {
|
|
28
|
+
transform: translateX(3px);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
@media (min-width: 768px) {
|
|
11
34
|
padding: 26px 40px;
|
|
12
35
|
}
|
|
@@ -153,32 +176,6 @@ export const AddNewButton = styled.div`
|
|
|
153
176
|
}
|
|
154
177
|
`
|
|
155
178
|
|
|
156
|
-
export const AllSetting = styled.div`
|
|
157
|
-
user-select: none;
|
|
158
|
-
cursor: pointer;
|
|
159
|
-
margin-top: 36px;
|
|
160
|
-
cursor: pointer;
|
|
161
|
-
span {
|
|
162
|
-
font-weight: 600;
|
|
163
|
-
font-size: 14px;
|
|
164
|
-
color: ${props => props.theme.colors.primary};
|
|
165
|
-
}
|
|
166
|
-
svg {
|
|
167
|
-
color: ${props => props.theme.colors.primary};
|
|
168
|
-
margin-left: 5px;
|
|
169
|
-
transition: 0.2s linear;
|
|
170
|
-
${props => props.theme.rtl && css`
|
|
171
|
-
margin-right: 5px;
|
|
172
|
-
margin-left: 0px;
|
|
173
|
-
`}
|
|
174
|
-
}
|
|
175
|
-
&:hover {
|
|
176
|
-
svg {
|
|
177
|
-
transform: translateX(3px);
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
`
|
|
181
|
-
|
|
182
179
|
export const Description = styled.p`
|
|
183
180
|
margin-top: 40px;
|
|
184
181
|
font-size: 14px;
|
|
@@ -8,7 +8,6 @@ import { useWindowSize } from '../../../hooks/useWindowSize'
|
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
10
|
Header,
|
|
11
|
-
AllSetting,
|
|
12
11
|
Description,
|
|
13
12
|
CategoryExtraContent,
|
|
14
13
|
Container,
|
|
@@ -164,10 +163,10 @@ const LalaMoveConnectUI = (props) => {
|
|
|
164
163
|
<Description>
|
|
165
164
|
{t('CONNECT_WITH_LALAMOVE_DESCRIPTION', 'If you have already worked with LalaMove or are running your business with LalaMove and Ordering simultaneously, this integration will help you connect both platforms and assign orders through them, making your job easy and automated.')}
|
|
166
165
|
</Description>
|
|
167
|
-
<
|
|
166
|
+
<Button color='primary' borderRadius='8px' className='all-setting' onClick={() => setSettingsOpen(true)}>
|
|
168
167
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
169
168
|
<BsArrowRight />
|
|
170
|
-
</
|
|
169
|
+
</Button>
|
|
171
170
|
</LalaMoveConnectContainer>
|
|
172
171
|
{settingsOpen && (
|
|
173
172
|
<>
|
|
@@ -7,6 +7,29 @@ export const LalaMoveConnectContainer = styled.div`
|
|
|
7
7
|
overflow-x: hidden;
|
|
8
8
|
position: relative;
|
|
9
9
|
|
|
10
|
+
button.all-setting {
|
|
11
|
+
height: 44px;
|
|
12
|
+
user-select: none;
|
|
13
|
+
margin-top: 36px;
|
|
14
|
+
span {
|
|
15
|
+
font-weight: 600;
|
|
16
|
+
font-size: 14px;
|
|
17
|
+
}
|
|
18
|
+
svg {
|
|
19
|
+
margin-left: 5px;
|
|
20
|
+
transition: 0.2s linear;
|
|
21
|
+
${props => props.theme.rtl && css`
|
|
22
|
+
margin-right: 5px;
|
|
23
|
+
margin-left: 0px;
|
|
24
|
+
`}
|
|
25
|
+
}
|
|
26
|
+
&:hover {
|
|
27
|
+
svg {
|
|
28
|
+
transform: translateX(3px);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
@media (min-width: 768px) {
|
|
11
34
|
padding: 26px 40px;
|
|
12
35
|
}
|
|
@@ -37,6 +37,8 @@ const LanguageTransTableUI = (props) => {
|
|
|
37
37
|
const [currentPages, setCurrentPages] = useState([])
|
|
38
38
|
const [totalPages, setTotalPages] = useState(null)
|
|
39
39
|
|
|
40
|
+
let timeout = null
|
|
41
|
+
|
|
40
42
|
const closeAlert = () => {
|
|
41
43
|
setAlertState({
|
|
42
44
|
open: false,
|
|
@@ -44,6 +46,14 @@ const LanguageTransTableUI = (props) => {
|
|
|
44
46
|
})
|
|
45
47
|
}
|
|
46
48
|
|
|
49
|
+
const handleChangeValue = (id, key, value) => {
|
|
50
|
+
clearTimeout(timeout)
|
|
51
|
+
|
|
52
|
+
timeout = setTimeout(function () {
|
|
53
|
+
handleChangeText(id, key, value)
|
|
54
|
+
}, 750)
|
|
55
|
+
}
|
|
56
|
+
|
|
47
57
|
const handleChangePage = (translation) => {
|
|
48
58
|
setCurrentPage(translation)
|
|
49
59
|
}
|
|
@@ -132,13 +142,13 @@ const LanguageTransTableUI = (props) => {
|
|
|
132
142
|
<td>
|
|
133
143
|
<input
|
|
134
144
|
type='text'
|
|
135
|
-
|
|
145
|
+
defaultValue={
|
|
136
146
|
textEditState?.id === translation.id
|
|
137
147
|
? textEditState?.text
|
|
138
148
|
: translation.text
|
|
139
149
|
}
|
|
140
150
|
placeholder={t('WRITE_A_TEXT', 'Write a text')}
|
|
141
|
-
onChange={(e) =>
|
|
151
|
+
onChange={(e) => handleChangeValue(translation.id, translation.key, e.target.value)}
|
|
142
152
|
/>
|
|
143
153
|
</td>
|
|
144
154
|
</tr>
|
|
@@ -8,7 +8,6 @@ import { useWindowSize } from '../../../hooks/useWindowSize'
|
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
10
|
Header,
|
|
11
|
-
AllSetting,
|
|
12
11
|
Description,
|
|
13
12
|
CategoryExtraContent,
|
|
14
13
|
Container,
|
|
@@ -164,10 +163,10 @@ const PickerExpressUI = (props) => {
|
|
|
164
163
|
<Description>
|
|
165
164
|
{t('CONNECT_WITH_PICKER_EXPRESS_DESCRIPTION', 'If you have already worked with Pickerexpress or are running your business with Pickerexpress and Ordering simultaneously, this integration will help you connect both platforms and assign orders through them, making your job easy and automated.')}
|
|
166
165
|
</Description>
|
|
167
|
-
<
|
|
166
|
+
<Button color='primary' borderRadius='8px' className='all-setting' onClick={() => setSettingsOpen(true)}>
|
|
168
167
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
169
168
|
<BsArrowRight />
|
|
170
|
-
</
|
|
169
|
+
</Button>
|
|
171
170
|
</PickerExpressContainer>
|
|
172
171
|
{settingsOpen && (
|
|
173
172
|
<>
|
|
@@ -7,6 +7,29 @@ export const PickerExpressContainer = styled.div`
|
|
|
7
7
|
overflow-x: hidden;
|
|
8
8
|
position: relative;
|
|
9
9
|
|
|
10
|
+
button.all-setting {
|
|
11
|
+
height: 44px;
|
|
12
|
+
user-select: none;
|
|
13
|
+
margin-top: 36px;
|
|
14
|
+
span {
|
|
15
|
+
font-weight: 600;
|
|
16
|
+
font-size: 14px;
|
|
17
|
+
}
|
|
18
|
+
svg {
|
|
19
|
+
margin-left: 5px;
|
|
20
|
+
transition: 0.2s linear;
|
|
21
|
+
${props => props.theme.rtl && css`
|
|
22
|
+
margin-right: 5px;
|
|
23
|
+
margin-left: 0px;
|
|
24
|
+
`}
|
|
25
|
+
}
|
|
26
|
+
&:hover {
|
|
27
|
+
svg {
|
|
28
|
+
transform: translateX(3px);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
@media (min-width: 768px) {
|
|
11
34
|
padding: 26px 40px;
|
|
12
35
|
}
|
|
@@ -17,7 +17,6 @@ import {
|
|
|
17
17
|
PluginsTable,
|
|
18
18
|
PluginTbody,
|
|
19
19
|
PagesBottomContainer,
|
|
20
|
-
AddNewPageButton,
|
|
21
20
|
ActionsContainer,
|
|
22
21
|
EnableWrapper,
|
|
23
22
|
ActionSelectorWrapper,
|
|
@@ -216,11 +215,13 @@ const PluginListUI = (props) => {
|
|
|
216
215
|
</PluginsTable>
|
|
217
216
|
{!pluginListState.loading && (
|
|
218
217
|
<PagesBottomContainer>
|
|
219
|
-
<
|
|
218
|
+
<Button
|
|
219
|
+
color='primary'
|
|
220
|
+
borderRadius='8px'
|
|
220
221
|
onClick={() => setIsAddMode(true)}
|
|
221
222
|
>
|
|
222
223
|
{t('ADD_NEW_PLUGIN ', 'Add new plugin')}
|
|
223
|
-
</
|
|
224
|
+
</Button>
|
|
224
225
|
{currentPlugins.plugins?.length > 0 && (
|
|
225
226
|
<Pagination
|
|
226
227
|
currentPage={currentPage.plugins}
|
|
@@ -183,10 +183,7 @@ export const PagesBottomContainer = styled.div`
|
|
|
183
183
|
flex-wrap: wrap;
|
|
184
184
|
row-gap: 10px;
|
|
185
185
|
margin: 15px 0;
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
cursor: pointer;
|
|
190
|
-
font-size: 12px;
|
|
191
|
-
color: ${props => props.theme.colors.lightGray};
|
|
186
|
+
> button {
|
|
187
|
+
height: 44px;
|
|
188
|
+
}
|
|
192
189
|
`
|
|
@@ -3,7 +3,7 @@ import { XLg, LifePreserver } from 'react-bootstrap-icons'
|
|
|
3
3
|
import Skeleton from 'react-loading-skeleton'
|
|
4
4
|
import { useWindowSize } from '../../../hooks/useWindowSize'
|
|
5
5
|
import { useLanguage } from 'ordering-components-admin-external'
|
|
6
|
-
import { IconButton } from '../../../styles'
|
|
6
|
+
import { IconButton, Button } from '../../../styles'
|
|
7
7
|
import { Modal, NotFoundSource } from '../../Shared'
|
|
8
8
|
import MdcPlayCircle from '@meronex/icons/mdc/MdcPlayCircle'
|
|
9
9
|
import BsArrowRight from '@meronex/icons/bs/BsArrowRight'
|
|
@@ -19,7 +19,6 @@ import {
|
|
|
19
19
|
CategoryName,
|
|
20
20
|
Description,
|
|
21
21
|
VideoContainer,
|
|
22
|
-
AllSetting,
|
|
23
22
|
MoreInfo,
|
|
24
23
|
CategoryExtraContent,
|
|
25
24
|
IframeWrapper,
|
|
@@ -177,10 +176,10 @@ export const SettingsDetail = (props) => {
|
|
|
177
176
|
</video>
|
|
178
177
|
</VideoContainer>
|
|
179
178
|
)}
|
|
180
|
-
<
|
|
179
|
+
<Button className='all-setting' color='primary' borderRadius='8px' onClick={() => handleExtraOpen(false)}>
|
|
181
180
|
<span>{t('SETTINGS', 'All settings')}</span>
|
|
182
181
|
<BsArrowRight />
|
|
183
|
-
</
|
|
182
|
+
</Button>
|
|
184
183
|
</Content>
|
|
185
184
|
)}
|
|
186
185
|
</DescriptionContent>
|
|
@@ -66,7 +66,30 @@ export const HeaderIcons = styled.div`
|
|
|
66
66
|
}
|
|
67
67
|
`
|
|
68
68
|
|
|
69
|
-
export const Content = styled.div
|
|
69
|
+
export const Content = styled.div`
|
|
70
|
+
button.all-setting {
|
|
71
|
+
height: 44px;
|
|
72
|
+
user-select: none;
|
|
73
|
+
margin-top: 36px;
|
|
74
|
+
span {
|
|
75
|
+
font-weight: 600;
|
|
76
|
+
font-size: 14px;
|
|
77
|
+
}
|
|
78
|
+
svg {
|
|
79
|
+
margin-left: 5px;
|
|
80
|
+
transition: 0.2s linear;
|
|
81
|
+
${props => props.theme.rtl && css`
|
|
82
|
+
margin-right: 5px;
|
|
83
|
+
margin-left: 0px;
|
|
84
|
+
`}
|
|
85
|
+
}
|
|
86
|
+
&:hover {
|
|
87
|
+
svg {
|
|
88
|
+
transform: translateX(3px);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
`
|
|
70
93
|
|
|
71
94
|
export const CategoryName = styled.div`
|
|
72
95
|
p {
|
|
@@ -137,32 +160,6 @@ export const VideoContainer = styled.div`
|
|
|
137
160
|
}
|
|
138
161
|
`
|
|
139
162
|
|
|
140
|
-
export const AllSetting = styled.div`
|
|
141
|
-
user-select: none;
|
|
142
|
-
cursor: pointer;
|
|
143
|
-
margin-top: 36px;
|
|
144
|
-
cursor: pointer;
|
|
145
|
-
span {
|
|
146
|
-
font-weight: 600;
|
|
147
|
-
font-size: 14px;
|
|
148
|
-
color: ${props => props.theme.colors.primary};
|
|
149
|
-
}
|
|
150
|
-
svg {
|
|
151
|
-
color: ${props => props.theme.colors.primary};
|
|
152
|
-
margin-left: 5px;
|
|
153
|
-
transition: 0.2s linear;
|
|
154
|
-
${props => props.theme.rtl && css`
|
|
155
|
-
margin-right: 5px;
|
|
156
|
-
margin-left: 0px;
|
|
157
|
-
`}
|
|
158
|
-
}
|
|
159
|
-
&:hover {
|
|
160
|
-
svg {
|
|
161
|
-
transform: translateX(3px);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
`
|
|
165
|
-
|
|
166
163
|
export const MoreInfo = styled.span`
|
|
167
164
|
cursor: pointer;
|
|
168
165
|
user-select: none;
|
|
@@ -42,6 +42,11 @@ export const SettingsListUI = (props) => {
|
|
|
42
42
|
})
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
const valuesTypeSix = [
|
|
46
|
+
'catering_delivery',
|
|
47
|
+
'catering_pickup'
|
|
48
|
+
]
|
|
49
|
+
|
|
45
50
|
const formatArray = (values) => {
|
|
46
51
|
values = values.replace('[', '')
|
|
47
52
|
values = values.replace(']', '')
|
|
@@ -78,6 +83,21 @@ export const SettingsListUI = (props) => {
|
|
|
78
83
|
handleClickUpdate && handleClickUpdate()
|
|
79
84
|
}
|
|
80
85
|
|
|
86
|
+
let timeout = null
|
|
87
|
+
let previousSearch = null
|
|
88
|
+
|
|
89
|
+
const handleChangeTypeSix = (catering, config) => {
|
|
90
|
+
if (previousSearch !== catering.value) {
|
|
91
|
+
clearTimeout(timeout)
|
|
92
|
+
timeout = setTimeout(() => {
|
|
93
|
+
const cateringString = config?.value
|
|
94
|
+
const stringParam = cateringString.split('|').map(string => string.includes(catering.type) ? `${catering.type},${catering.value}` : string).join('|')
|
|
95
|
+
handleInputChange(stringParam, config.id)
|
|
96
|
+
}, 1500)
|
|
97
|
+
}
|
|
98
|
+
previousSearch = catering.value
|
|
99
|
+
}
|
|
100
|
+
|
|
81
101
|
const handleKeyPress = (e, key) => {
|
|
82
102
|
switch (key) {
|
|
83
103
|
case 'platform_fee_fixed':
|
|
@@ -243,6 +263,29 @@ export const SettingsListUI = (props) => {
|
|
|
243
263
|
/>
|
|
244
264
|
)
|
|
245
265
|
}
|
|
266
|
+
{/* {config.type === 6 && (
|
|
267
|
+
<>
|
|
268
|
+
<FormGroupText className='form-group'>
|
|
269
|
+
<label>{config?.name}</label>
|
|
270
|
+
{config?.description && <Description>{config?.description}</Description>}
|
|
271
|
+
{config?.value?.split('|')?.filter(value => valuesTypeSix.includes(value?.split(',')[0]))?.map((value, i, hash) => (
|
|
272
|
+
<React.Fragment key={`${config?.id} ${value}`}>
|
|
273
|
+
<Description typeSix>{t(value?.split(',')[0], value?.split(',')[0].replace('_', ' '))}</Description>
|
|
274
|
+
<input
|
|
275
|
+
type='text'
|
|
276
|
+
defaultValue={value?.split(',')[1]}
|
|
277
|
+
onChange={(e) => handleChangeTypeSix({
|
|
278
|
+
value: e.target.value,
|
|
279
|
+
type: value?.split(',')[0]
|
|
280
|
+
}, config)}
|
|
281
|
+
className='form-control'
|
|
282
|
+
placeholder={0}
|
|
283
|
+
/>
|
|
284
|
+
</React.Fragment>
|
|
285
|
+
))}
|
|
286
|
+
</FormGroupText>
|
|
287
|
+
</>
|
|
288
|
+
)} */}
|
|
246
289
|
</div>
|
|
247
290
|
))
|
|
248
291
|
}
|
|
@@ -16,8 +16,7 @@ import {
|
|
|
16
16
|
WebhookListTable,
|
|
17
17
|
DropdownButtonWrapper,
|
|
18
18
|
SelectorWrapper,
|
|
19
|
-
PagesBottomContainer
|
|
20
|
-
AddNewPageButton
|
|
19
|
+
PagesBottomContainer
|
|
21
20
|
} from './styles'
|
|
22
21
|
|
|
23
22
|
const WebhookListUI = (props) => {
|
|
@@ -217,11 +216,13 @@ const WebhookListUI = (props) => {
|
|
|
217
216
|
</WebhookListTable>
|
|
218
217
|
{!webhookListState.loading && (
|
|
219
218
|
<PagesBottomContainer>
|
|
220
|
-
<
|
|
219
|
+
<Button
|
|
221
220
|
onClick={() => setIsAddMode(true)}
|
|
221
|
+
color='primary'
|
|
222
|
+
borderRadius='8px'
|
|
222
223
|
>
|
|
223
224
|
{t('ADD_NEW_WEBHOOK ', 'Add new webhook')}
|
|
224
|
-
</
|
|
225
|
+
</Button>
|
|
225
226
|
{currentWebhooks?.length > 0 && (
|
|
226
227
|
<Pagination
|
|
227
228
|
currentPage={currentPage}
|
|
@@ -187,10 +187,8 @@ export const PagesBottomContainer = styled.div`
|
|
|
187
187
|
flex-wrap: wrap;
|
|
188
188
|
row-gap: 10px;
|
|
189
189
|
margin: 15px 0;
|
|
190
|
-
`
|
|
191
190
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
color: ${props => props.theme.colors.lightGray};
|
|
191
|
+
> button {
|
|
192
|
+
height: 44px;
|
|
193
|
+
}
|
|
196
194
|
`
|
|
@@ -55,13 +55,15 @@ export const ImageCrop = (props) => {
|
|
|
55
55
|
aspectRatio: aspectRatio,
|
|
56
56
|
dragMode: 'move',
|
|
57
57
|
zoomable: false,
|
|
58
|
-
toggleDragModeOnDblclick: false
|
|
58
|
+
toggleDragModeOnDblclick: false,
|
|
59
|
+
autoCropArea: 1
|
|
59
60
|
})
|
|
60
61
|
} else {
|
|
61
62
|
_cropper = new Cropper(cropperRef.current, {
|
|
62
63
|
dragMode: 'move',
|
|
63
64
|
zoomable: false,
|
|
64
|
-
toggleDragModeOnDblclick: false
|
|
65
|
+
toggleDragModeOnDblclick: false,
|
|
66
|
+
autoCropArea: 1
|
|
65
67
|
})
|
|
66
68
|
}
|
|
67
69
|
setCropper(_cropper)
|