ordering-ui-external 14.1.97 → 14.1.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (17) hide show
  1. package/_bundles/{7.ordering-ui.73ec7ba601ef54bb4298.js → 7.ordering-ui.b0cc312f74adb25dd728.js} +1 -1
  2. package/_bundles/{ordering-ui.73ec7ba601ef54bb4298.js → ordering-ui.b0cc312f74adb25dd728.js} +2 -2
  3. package/_modules/themes/five/src/components/LoginForm/index.js +32 -3
  4. package/_modules/themes/five/src/components/SignUpForm/index.js +31 -2
  5. package/package.json +2 -2
  6. package/src/themes/five/src/components/LoginForm/index.js +45 -16
  7. package/src/themes/five/src/components/SignUpForm/index.js +40 -9
  8. /package/_bundles/{0.ordering-ui.73ec7ba601ef54bb4298.js → 0.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  9. /package/_bundles/{1.ordering-ui.73ec7ba601ef54bb4298.js → 1.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  10. /package/_bundles/{2.ordering-ui.73ec7ba601ef54bb4298.js → 2.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  11. /package/_bundles/{4.ordering-ui.73ec7ba601ef54bb4298.js → 4.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  12. /package/_bundles/{5.ordering-ui.73ec7ba601ef54bb4298.js → 5.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  13. /package/_bundles/{6.ordering-ui.73ec7ba601ef54bb4298.js → 6.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  14. /package/_bundles/{7.ordering-ui.73ec7ba601ef54bb4298.js.LICENSE.txt → 7.ordering-ui.b0cc312f74adb25dd728.js.LICENSE.txt} +0 -0
  15. /package/_bundles/{8.ordering-ui.73ec7ba601ef54bb4298.js → 8.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  16. /package/_bundles/{9.ordering-ui.73ec7ba601ef54bb4298.js → 9.ordering-ui.b0cc312f74adb25dd728.js} +0 -0
  17. /package/_bundles/{ordering-ui.73ec7ba601ef54bb4298.js.LICENSE.txt → ordering-ui.b0cc312f74adb25dd728.js.LICENSE.txt} +0 -0
@@ -73,6 +73,7 @@ var LoginFormUI = function LoginFormUI(props) {
73
73
  setOtpState = props.setOtpState,
74
74
  useLoginOtpEmail = props.useLoginOtpEmail,
75
75
  useLoginOtpCellphone = props.useLoginOtpCellphone,
76
+ useLoginOtpWhatsapp = props.useLoginOtpWhatsapp,
76
77
  handleLoginSpoonity = props.handleLoginSpoonity,
77
78
  useLoginSpoonity = props.useLoginSpoonity,
78
79
  setCellphoneStartZero = props.setCellphoneStartZero;
@@ -143,6 +144,7 @@ var LoginFormUI = function LoginFormUI(props) {
143
144
  _useCountdownTimer2 = _slicedToArray(_useCountdownTimer, 3),
144
145
  otpLeftTime = _useCountdownTimer2[0],
145
146
  resetOtpLeftTime = _useCountdownTimer2[2];
147
+ var otpChannelRef = (0, _react.useRef)(2);
146
148
  var isOtpEmail = loginTab === 'otp' && otpType === 'email';
147
149
  var isOtpCellphone = loginTab === 'otp' && otpType === 'cellphone';
148
150
  var initParams = {
@@ -182,9 +184,9 @@ var LoginFormUI = function LoginFormUI(props) {
182
184
  generateOtpCode({
183
185
  cellphone: cellphone,
184
186
  countryPhoneCode: countryPhoneCode
185
- });
187
+ }, otpChannelRef.current);
186
188
  } else {
187
- generateOtpCode();
189
+ generateOtpCode(null, otpChannelRef.current);
188
190
  }
189
191
  }
190
192
  setWillVerifyOtpState(true);
@@ -573,7 +575,34 @@ var LoginFormUI = function LoginFormUI(props) {
573
575
  }, /*#__PURE__*/_react.default.createElement("span", null, t('FORGOT_YOUR_PASSWORD', 'Forgot your password?')), elementLinkToForgotPassword), props.isRecaptchaEnable && enableReCaptcha && /*#__PURE__*/_react.default.createElement(_styles.ReCaptchaWrapper, null, /*#__PURE__*/_react.default.createElement(_orderingComponentsExternal.ReCaptcha, {
574
576
  handleReCaptcha: handleReCaptcha,
575
577
  reCaptchaVersion: reCaptchaVersion
576
- })), !willVerifyOtpState && /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
578
+ })), !willVerifyOtpState && isOtpCellphone && useLoginOtpWhatsapp ? /*#__PURE__*/_react.default.createElement("div", {
579
+ style: {
580
+ display: 'flex',
581
+ gap: 10
582
+ }
583
+ }, /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
584
+ color: "primary",
585
+ type: "button",
586
+ disabled: formState.loading,
587
+ onClick: function onClick() {
588
+ otpChannelRef.current = 2;
589
+ formMethods.handleSubmit(onSubmit)();
590
+ },
591
+ style: {
592
+ flex: 1
593
+ }
594
+ }, formState.loading ? "".concat(t('LOADING', 'Loading'), "...") : t('SEND_BY_SMS', 'Send by SMS')), /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
595
+ color: "primary",
596
+ type: "button",
597
+ disabled: formState.loading,
598
+ onClick: function onClick() {
599
+ otpChannelRef.current = 4;
600
+ formMethods.handleSubmit(onSubmit)();
601
+ },
602
+ style: {
603
+ flex: 1
604
+ }
605
+ }, formState.loading ? "".concat(t('LOADING', 'Loading'), "...") : t('SEND_BY_WHATSAPP', 'Send by WhatsApp'))) : !willVerifyOtpState && /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
577
606
  color: "primary",
578
607
  onClick: formMethods.handleSubmit(onSubmit),
579
608
  disabled: formState.loading
@@ -84,6 +84,7 @@ var SignUpFormUI = function SignUpFormUI(props) {
84
84
  useSignUpFullDetails = props.useSignUpFullDetails,
85
85
  useSignUpOtpEmail = props.useSignUpOtpEmail,
86
86
  useSignUpOtpCellphone = props.useSignUpOtpCellphone,
87
+ useSignUpOtpWhatsapp = props.useSignUpOtpWhatsapp,
87
88
  isGuest = props.isGuest,
88
89
  setCellphoneStartZero = props.setCellphoneStartZero;
89
90
  var _useLanguage = (0, _orderingComponentsExternal.useLanguage)(),
@@ -130,6 +131,7 @@ var SignUpFormUI = function SignUpFormUI(props) {
130
131
  _useCountdownTimer2 = _slicedToArray(_useCountdownTimer, 3),
131
132
  otpLeftTime = _useCountdownTimer2[0],
132
133
  resetOtpLeftTime = _useCountdownTimer2[2];
134
+ var otpChannelRef = (0, _react.useRef)(2);
133
135
  var _useState5 = (0, _react.useState)(''),
134
136
  _useState6 = _slicedToArray(_useState5, 2),
135
137
  userPhoneNumber = _useState6[0],
@@ -234,7 +236,7 @@ var SignUpFormUI = function SignUpFormUI(props) {
234
236
  _context.n = 3;
235
237
  break;
236
238
  }
237
- generateOtpCode();
239
+ generateOtpCode(null, otpChannelRef.current);
238
240
  return _context.a(2);
239
241
  case 3:
240
242
  handleButtonSignupClick && handleButtonSignupClick();
@@ -531,7 +533,34 @@ var SignUpFormUI = function SignUpFormUI(props) {
531
533
  href: configs === null || configs === void 0 || (_configs$terms_and_co2 = configs.terms_and_conditions_url) === null || _configs$terms_and_co2 === void 0 ? void 0 : _configs$terms_and_co2.value,
532
534
  target: "_blank",
533
535
  rel: "noopener noreferrer"
534
- }, t('TERMS_AND_CONDITIONS', 'Terms & Conditions')))))), /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
536
+ }, t('TERMS_AND_CONDITIONS', 'Terms & Conditions')))))), signUpTab === 'otpCellphone' && useSignUpOtpWhatsapp ? /*#__PURE__*/_react.default.createElement("div", {
537
+ style: {
538
+ display: 'flex',
539
+ gap: 10
540
+ }
541
+ }, /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
542
+ color: "primary",
543
+ type: "button",
544
+ disabled: formState.loading || (validationFields === null || validationFields === void 0 ? void 0 : validationFields.loading),
545
+ onClick: function onClick() {
546
+ otpChannelRef.current = 2;
547
+ formMethods.handleSubmit(onSubmit)();
548
+ },
549
+ style: {
550
+ flex: 1
551
+ }
552
+ }, formState.loading ? "".concat(t('LOADING', 'Loading'), "...") : t('SEND_BY_SMS', 'Send by SMS')), /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
553
+ color: "primary",
554
+ type: "button",
555
+ disabled: formState.loading || (validationFields === null || validationFields === void 0 ? void 0 : validationFields.loading),
556
+ onClick: function onClick() {
557
+ otpChannelRef.current = 4;
558
+ formMethods.handleSubmit(onSubmit)();
559
+ },
560
+ style: {
561
+ flex: 1
562
+ }
563
+ }, formState.loading ? "".concat(t('LOADING', 'Loading'), "...") : t('SEND_BY_WHATSAPP', 'Send by WhatsApp'))) : /*#__PURE__*/_react.default.createElement(_Buttons.Button, {
535
564
  color: "primary",
536
565
  type: "submit",
537
566
  disabled: formState.loading || (validationFields === null || validationFields === void 0 ? void 0 : validationFields.loading)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ordering-ui-external",
3
- "version": "14.1.97",
3
+ "version": "14.1.98",
4
4
  "description": "Ordering UI Components",
5
5
  "main": "./_modules/index.js",
6
6
  "exports": {
@@ -88,7 +88,7 @@
88
88
  "lodash": "^4.17.19",
89
89
  "moment": "^2.29.4",
90
90
  "nanoid": "^4.0.0",
91
- "ordering-components-external": "13.2.30",
91
+ "ordering-components-external": "13.2.31",
92
92
  "payment": "^2.4.6",
93
93
  "polished": "^3.6.6",
94
94
  "react-bootstrap-icons": "^1.7.2",
@@ -1,4 +1,4 @@
1
- import React, { useState, useEffect } from 'react'
1
+ import React, { useState, useEffect, useRef } from 'react'
2
2
  import { useForm } from 'react-hook-form'
3
3
  import { useTheme } from 'styled-components'
4
4
  import parsePhoneNumber from 'libphonenumber-js'
@@ -88,6 +88,7 @@ const LoginFormUI = (props) => {
88
88
  setOtpState,
89
89
  useLoginOtpEmail,
90
90
  useLoginOtpCellphone,
91
+ useLoginOtpWhatsapp,
91
92
  handleLoginSpoonity,
92
93
  useLoginSpoonity,
93
94
  setCellphoneStartZero
@@ -113,6 +114,7 @@ const LoginFormUI = (props) => {
113
114
 
114
115
  const [otpLeftTime, , resetOtpLeftTime] = useCountdownTimer(
115
116
  600, !checkPhoneCodeState?.loading && willVerifyOtpState)
117
+ const otpChannelRef = useRef(2)
116
118
  const isOtpEmail = loginTab === 'otp' && otpType === 'email'
117
119
  const isOtpCellphone = loginTab === 'otp' && otpType === 'cellphone'
118
120
  const initParams = {
@@ -148,9 +150,9 @@ const LoginFormUI = (props) => {
148
150
  if (loginTab === 'otp') {
149
151
  if (otpType === 'cellphone') {
150
152
  const { cellphone, countryPhoneCode } = parseNumber(credentials?.cellphone)
151
- generateOtpCode({ cellphone, countryPhoneCode })
153
+ generateOtpCode({ cellphone, countryPhoneCode }, otpChannelRef.current)
152
154
  } else {
153
- generateOtpCode()
155
+ generateOtpCode(null, otpChannelRef.current)
154
156
  }
155
157
  }
156
158
  setWillVerifyOtpState(true)
@@ -616,19 +618,46 @@ const LoginFormUI = (props) => {
616
618
  <ReCaptcha handleReCaptcha={handleReCaptcha} reCaptchaVersion={reCaptchaVersion} />
617
619
  </ReCaptchaWrapper>
618
620
  )}
619
- {(!willVerifyOtpState &&
620
- <Button
621
- color='primary'
622
- onClick={formMethods.handleSubmit(onSubmit)}
623
- disabled={formState.loading}
624
- >
625
- {formState.loading
626
- ? `${t('LOADING', 'Loading')}...`
627
- : loginWithOtpState || loginTab === 'otp'
628
- ? t('GET_VERIFY_CODE', 'Get verify code')
629
- : t('LOGIN', 'Login')}
630
- </Button>
631
- )}
621
+ {(!willVerifyOtpState && isOtpCellphone && useLoginOtpWhatsapp)
622
+ ? (
623
+ <div style={{ display: 'flex', gap: 10 }}>
624
+ <Button
625
+ color='primary'
626
+ type='button'
627
+ disabled={formState.loading}
628
+ onClick={() => { otpChannelRef.current = 2; formMethods.handleSubmit(onSubmit)() }}
629
+ style={{ flex: 1 }}
630
+ >
631
+ {formState.loading
632
+ ? `${t('LOADING', 'Loading')}...`
633
+ : t('SEND_BY_SMS', 'Send by SMS')}
634
+ </Button>
635
+ <Button
636
+ color='primary'
637
+ type='button'
638
+ disabled={formState.loading}
639
+ onClick={() => { otpChannelRef.current = 4; formMethods.handleSubmit(onSubmit)() }}
640
+ style={{ flex: 1 }}
641
+ >
642
+ {formState.loading
643
+ ? `${t('LOADING', 'Loading')}...`
644
+ : t('SEND_BY_WHATSAPP', 'Send by WhatsApp')}
645
+ </Button>
646
+ </div>
647
+ )
648
+ : (!willVerifyOtpState &&
649
+ <Button
650
+ color='primary'
651
+ onClick={formMethods.handleSubmit(onSubmit)}
652
+ disabled={formState.loading}
653
+ >
654
+ {formState.loading
655
+ ? `${t('LOADING', 'Loading')}...`
656
+ : loginWithOtpState || loginTab === 'otp'
657
+ ? t('GET_VERIFY_CODE', 'Get verify code')
658
+ : t('LOGIN', 'Login')}
659
+ </Button>
660
+ )}
632
661
  {(loginWithOtpState && !willVerifyOtpState) && (
633
662
  <Button
634
663
  type='button'
@@ -1,4 +1,4 @@
1
- import React, { useState, useEffect } from 'react'
1
+ import React, { useState, useEffect, useRef } from 'react'
2
2
  import { useForm } from 'react-hook-form'
3
3
  import Skeleton from 'react-loading-skeleton'
4
4
  import parsePhoneNumber from 'libphonenumber-js'
@@ -100,6 +100,7 @@ const SignUpFormUI = (props) => {
100
100
  useSignUpFullDetails,
101
101
  useSignUpOtpEmail,
102
102
  useSignUpOtpCellphone,
103
+ useSignUpOtpWhatsapp,
103
104
  isGuest,
104
105
  setCellphoneStartZero
105
106
  } = props
@@ -120,6 +121,7 @@ const SignUpFormUI = (props) => {
120
121
  const appleLoginEnabled = optimizationLoad?.result?.configs?.apple_login_enabled?.value === '1'
121
122
 
122
123
  const [otpLeftTime, , resetOtpLeftTime] = useCountdownTimer(600, !checkPhoneCodeState?.loading && willVerifyOtpState)
124
+ const otpChannelRef = useRef(2)
123
125
  const [userPhoneNumber, setUserPhoneNumber] = useState('')
124
126
  const [isValidPhoneNumber, setIsValidPhoneNumber] = useState(null)
125
127
  const [passwordSee, setPasswordSee] = useState(false)
@@ -210,7 +212,7 @@ const SignUpFormUI = (props) => {
210
212
  return
211
213
  }
212
214
  if (signUpTab === 'otpEmail' || signUpTab === 'otpCellphone') {
213
- generateOtpCode()
215
+ generateOtpCode(null, otpChannelRef.current)
214
216
  return
215
217
  }
216
218
  handleButtonSignupClick && handleButtonSignupClick()
@@ -611,13 +613,42 @@ const SignUpFormUI = (props) => {
611
613
  )}
612
614
  </CheckboxArea>
613
615
 
614
- <Button
615
- color='primary'
616
- type='submit'
617
- disabled={formState.loading || validationFields?.loading}
618
- >
619
- {formState.loading ? `${t('LOADING', 'Loading')}...` : signUpTab === 'default' ? t('SIGN_UP', 'Sign up') : t('GET_VERIFY_CODE', 'Get verify code')}
620
- </Button>
616
+ {(signUpTab === 'otpCellphone' && useSignUpOtpWhatsapp)
617
+ ? (
618
+ <div style={{ display: 'flex', gap: 10 }}>
619
+ <Button
620
+ color='primary'
621
+ type='button'
622
+ disabled={formState.loading || validationFields?.loading}
623
+ onClick={() => { otpChannelRef.current = 2; formMethods.handleSubmit(onSubmit)() }}
624
+ style={{ flex: 1 }}
625
+ >
626
+ {formState.loading
627
+ ? `${t('LOADING', 'Loading')}...`
628
+ : t('SEND_BY_SMS', 'Send by SMS')}
629
+ </Button>
630
+ <Button
631
+ color='primary'
632
+ type='button'
633
+ disabled={formState.loading || validationFields?.loading}
634
+ onClick={() => { otpChannelRef.current = 4; formMethods.handleSubmit(onSubmit)() }}
635
+ style={{ flex: 1 }}
636
+ >
637
+ {formState.loading
638
+ ? `${t('LOADING', 'Loading')}...`
639
+ : t('SEND_BY_WHATSAPP', 'Send by WhatsApp')}
640
+ </Button>
641
+ </div>
642
+ )
643
+ : (
644
+ <Button
645
+ color='primary'
646
+ type='submit'
647
+ disabled={formState.loading || validationFields?.loading}
648
+ >
649
+ {formState.loading ? `${t('LOADING', 'Loading')}...` : signUpTab === 'default' ? t('SIGN_UP', 'Sign up') : t('GET_VERIFY_CODE', 'Get verify code')}
650
+ </Button>
651
+ )}
621
652
  </FormInput>
622
653
  )}
623
654
  {(willVerifyOtpState) && (