@tap-payments/auth-jsconnect 2.3.57-test → 2.3.58-test

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 (71) hide show
  1. package/build/@types/app.d.ts +24 -0
  2. package/build/api/index.d.ts +5 -1
  3. package/build/api/index.js +3 -1
  4. package/build/api/init.d.ts +16 -0
  5. package/build/api/init.js +13 -0
  6. package/build/app/settings.d.ts +4 -8
  7. package/build/app/settings.js +28 -19
  8. package/build/assets/locales/ar.json +2 -1
  9. package/build/assets/locales/en.json +2 -1
  10. package/build/components/AnimationFlow/AnimationFlow.d.ts +4 -2
  11. package/build/components/AnimationFlow/AnimationFlow.js +4 -4
  12. package/build/components/AnimationFlow/BottomSheet.d.ts +4 -1
  13. package/build/components/AnimationFlow/BottomSheet.js +23 -20
  14. package/build/components/AnimationFlow/Dialog.d.ts +4 -2
  15. package/build/components/AnimationFlow/Dialog.js +30 -7
  16. package/build/components/LogoBadge/LogoBadge.js +3 -0
  17. package/build/components/Slide/Slide.d.ts +1 -1
  18. package/build/constants/api.d.ts +1 -0
  19. package/build/constants/api.js +3 -1
  20. package/build/constants/assets.d.ts +4 -0
  21. package/build/constants/assets.js +4 -0
  22. package/build/features/bank/Bank.js +3 -4
  23. package/build/features/brand/Brand.js +3 -4
  24. package/build/features/brand/screens/BrandActivities/ActivitiesList.d.ts +8 -8
  25. package/build/features/brand/screens/BrandActivities/CustomerBase.d.ts +8 -8
  26. package/build/features/brand/screens/BrandActivities/RefundPolicy.d.ts +5 -5
  27. package/build/features/brand/screens/BrandActivities/TAC.d.ts +1 -1
  28. package/build/features/business/Business.js +3 -4
  29. package/build/features/business/screens/Activities/ActivitiesList.d.ts +8 -8
  30. package/build/features/business/screens/Activities/OperationStartDate.d.ts +2 -2
  31. package/build/features/business/screens/BusinessType/LicenseType.d.ts +2 -2
  32. package/build/features/business/screens/Customers/CustomerLocations.d.ts +8 -8
  33. package/build/features/business/screens/Customers/RefundPolicy.d.ts +5 -5
  34. package/build/features/connect/Connect.js +3 -4
  35. package/build/features/connect/screens/Individual/Email.js +5 -3
  36. package/build/features/connect/screens/Individual/MobileNumber.js +10 -6
  37. package/build/features/connectExpress/ConnectExpress.js +3 -4
  38. package/build/features/connectExpress/screens/CollectBusinessInfo/LicenseType.d.ts +2 -2
  39. package/build/features/connectExpress/screens/CollectBusinessInfo/TAC.d.ts +1 -1
  40. package/build/features/connectExpress/screens/Mobile/Mobile.js +1 -2
  41. package/build/features/connectExpress/screens/NID/TAC.d.ts +1 -1
  42. package/build/features/entity/Entity.js +3 -4
  43. package/build/features/entity/screens/EntityCapital/ActivityList.d.ts +8 -8
  44. package/build/features/entity/screens/EntityName/EntityTypeList.d.ts +8 -8
  45. package/build/features/entity/screens/EntityName/ExpiryDate.d.ts +2 -2
  46. package/build/features/entity/screens/EntityName/IssuingDate.d.ts +2 -2
  47. package/build/features/individual/Individual.js +3 -4
  48. package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.d.ts +2 -2
  49. package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.d.ts +2 -2
  50. package/build/features/individual/screens/IndividualList/IndividualList.d.ts +4 -4
  51. package/build/features/individual/screens/IndividualPersonalInfo/Gender.d.ts +2 -2
  52. package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.d.ts +2 -2
  53. package/build/features/password/Password.js +3 -4
  54. package/build/features/shared/Address/CountryList.d.ts +7 -7
  55. package/build/features/shared/Address/InputSelect.d.ts +7 -7
  56. package/build/features/shared/Containers/FeatureContainer.d.ts +4 -1
  57. package/build/features/shared/Containers/FeatureContainer.js +5 -4
  58. package/build/features/shared/Containers/ScreenContainer.d.ts +1 -1
  59. package/build/features/shared/Footer/PoweredByFooter.d.ts +9 -0
  60. package/build/features/shared/Footer/PoweredByFooter.js +36 -0
  61. package/build/features/shared/Footer/index.d.ts +3 -2
  62. package/build/features/shared/Footer/index.js +3 -2
  63. package/build/features/shared/Input/Input.d.ts +3 -3
  64. package/build/features/shared/UploadFile/FileUpload.d.ts +1 -1
  65. package/build/features/shared/UploadFile/UploadFile.d.ts +1 -1
  66. package/build/features/shared/UploadFile/UploadWrapper.d.ts +1 -1
  67. package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +1 -1
  68. package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +1 -1
  69. package/build/features/signIn/SignIn.js +3 -4
  70. package/build/features/tax/Tax.js +3 -4
  71. package/package.json +1 -1
@@ -426,4 +426,28 @@ export declare type BrandDataStatus = {
426
426
  activities: FieldType;
427
427
  channel_services: FieldType;
428
428
  };
429
+ export interface MerchantInfo {
430
+ id: string;
431
+ api_version: string;
432
+ live_mode: boolean;
433
+ object: string;
434
+ name: string;
435
+ country_code: string;
436
+ logo: string;
437
+ background: {
438
+ url: string;
439
+ };
440
+ sdk_settings: {
441
+ status_display_duration: number;
442
+ otp_resend_interval: number;
443
+ otp_resend_attempts: number;
444
+ };
445
+ key_type: string;
446
+ permissions: string[];
447
+ permission: {
448
+ card_wallet: boolean;
449
+ threeDSecure: boolean;
450
+ pci_dss: boolean;
451
+ };
452
+ }
429
453
  export {};
@@ -12,6 +12,7 @@ import { GetUserListBody } from './user';
12
12
  import { RemoveBrandActivity } from './brand';
13
13
  import { UploadFileBody } from './file';
14
14
  import { DocumentUpdateBody, DocumentInfo, DocumentBody } from './document';
15
+ import { InitBody } from './init';
15
16
  declare const API: {
16
17
  locationService: {
17
18
  getIP: () => Promise<any>;
@@ -143,7 +144,10 @@ declare const API: {
143
144
  addFilesToExistingDocument: ({ id, ...data }: DocumentBody) => Promise<any>;
144
145
  removeFilesFromDocument: ({ id, ...data }: DocumentBody) => Promise<import("axios").AxiosResponse<any, any>>;
145
146
  };
147
+ initService: {
148
+ getInitialData: (body: InitBody) => Promise<any>;
149
+ };
146
150
  };
147
- export type { ValidateOperatorBody, CreateAuthBody, ExpressCreateAccountBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthExpressOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody, BankDocumentInfo, GetUserListBody, GetIndividualListBody, RequestEmailBody, DocumentBody, UpdateEntityAOAFileBody, RemoveBrandActivity };
151
+ export type { ValidateOperatorBody, CreateAuthBody, ExpressCreateAccountBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthExpressOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody, BankDocumentInfo, GetUserListBody, GetIndividualListBody, RequestEmailBody, DocumentBody, UpdateEntityAOAFileBody, InitBody, RemoveBrandActivity };
148
152
  export { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, axiosInstance, getAxiosHeaders };
149
153
  export default API;
@@ -15,6 +15,7 @@ import { userService } from './user';
15
15
  import { brandService } from './brand';
16
16
  import { fileService } from './file';
17
17
  import { documentService } from './document';
18
+ import { initService } from './init';
18
19
  var API = {
19
20
  locationService: locationService,
20
21
  operatorService: operatorService,
@@ -31,7 +32,8 @@ var API = {
31
32
  userService: userService,
32
33
  brandService: brandService,
33
34
  fileService: fileService,
34
- documentService: documentService
35
+ documentService: documentService,
36
+ initService: initService
35
37
  };
36
38
  export { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, axiosInstance, getAxiosHeaders };
37
39
  export default API;
@@ -0,0 +1,16 @@
1
+ export declare type InitBody = {
2
+ type: string;
3
+ app_client_version: string;
4
+ requirer_browser: string;
5
+ os: string;
6
+ locale: string;
7
+ connect_pkey?: string;
8
+ data_required?: {
9
+ country_list?: boolean;
10
+ merchant?: boolean;
11
+ };
12
+ };
13
+ declare const initService: {
14
+ getInitialData: (body: InitBody) => Promise<any>;
15
+ };
16
+ export { initService };
@@ -0,0 +1,13 @@
1
+ import { httpClient } from './axios';
2
+ import { ENDPOINT_PATHS } from '../constants';
3
+ var getInitialData = function (body) {
4
+ return httpClient({
5
+ method: 'post',
6
+ url: ENDPOINT_PATHS.INIT,
7
+ data: body
8
+ });
9
+ };
10
+ var initService = {
11
+ getInitialData: getInitialData
12
+ };
13
+ export { initService };
@@ -1,18 +1,12 @@
1
1
  import { RootState } from './store';
2
- import { ActionState, LanguageMode, SharedState, ThemeMode, ScreenStepNavigation, DeviceInfo, LibConfig, CountryCode } from '../@types';
2
+ import { ActionState, LanguageMode, SharedState, ThemeMode, ScreenStepNavigation, DeviceInfo, LibConfig, CountryCode, MerchantInfo } from '../@types';
3
3
  interface SettingParams {
4
4
  disableCountries?: boolean;
5
5
  disableLocale?: boolean;
6
6
  mdn: string;
7
7
  maturity?: 'full' | 'express';
8
8
  }
9
- export declare const fetchAppSettingsSync: import("@reduxjs/toolkit").AsyncThunk<{
10
- countries: CountryCode[];
11
- businessCountry: CountryCode;
12
- locale: any;
13
- deviceInfo: DeviceInfo;
14
- isValidOperator: boolean;
15
- }, SettingParams, {}>;
9
+ export declare const fetchAppSettingsSync: import("@reduxjs/toolkit").AsyncThunk<any, SettingParams, {}>;
16
10
  export interface SettingsData {
17
11
  skin: ThemeMode;
18
12
  language: LanguageMode;
@@ -26,6 +20,8 @@ export interface SettingsData {
26
20
  countries: Array<CountryCode>;
27
21
  isValidOperator: boolean;
28
22
  boardMaturity: boolean;
23
+ merchant?: MerchantInfo;
24
+ isMaturityExpress: boolean;
29
25
  }
30
26
  export interface SettingsState extends SharedState<SettingsData> {
31
27
  }
@@ -53,29 +53,37 @@ import i18n from '../i18n';
53
53
  import { updateLocale } from '../utils/locale';
54
54
  import API, { setAxiosGlobalHeaders } from '../api';
55
55
  export var fetchAppSettingsSync = createAsyncThunk('fetchAppSettingsSync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
56
- var settings, _a, appConfig, language, _b, client, device, os, disableCountries, disableLocale, maturity, _c, visitorId, _d, ip, latitude, longitude, locale, list, operatorData, deviceInfo, operatorStatus, isValidOperator, countries, countryCode, isKWOrSA, businessCountry;
57
- return __generator(this, function (_e) {
58
- switch (_e.label) {
56
+ var settings, _a, appConfig, language, _b, client, device, os, disableLocale, maturity, disableCountries, _c, visitorId, locale, initPayload, _d, country_list, ip_info, merchant, operator, list, _e, ip, latitude, longitude, deviceInfo, isValidOperator, countries, countryCode, isKWOrSA, businessCountry;
57
+ return __generator(this, function (_f) {
58
+ switch (_f.label) {
59
59
  case 0:
60
60
  settings = thunkApi.getState().settings;
61
61
  _a = settings.data, appConfig = _a.appConfig, language = _a.language;
62
62
  _b = getBrowserInfo(), client = _b.client, device = _b.device, os = _b.os;
63
- disableCountries = params.disableCountries, disableLocale = params.disableLocale, maturity = params.maturity;
64
- return [4, Promise.all([
65
- getFingerPrint(),
66
- API.locationService.getIP(),
67
- API.firebaseService.getLocale(disableLocale),
68
- API.countryService.getCountries(disableCountries)
69
- ])];
63
+ disableLocale = params.disableLocale, maturity = params.maturity, disableCountries = params.disableCountries;
64
+ return [4, Promise.all([getFingerPrint(), API.firebaseService.getLocale(disableLocale)])];
70
65
  case 1:
71
- _c = _e.sent(), visitorId = _c[0].visitorId, _d = _c[1], ip = _d.ip, latitude = _d.latitude, longitude = _d.longitude, locale = _c[2], list = _c[3].list;
72
- operatorData = {
66
+ _c = _f.sent(), visitorId = _c[0].visitorId, locale = _c[1];
67
+ setAxiosGlobalHeaders({
68
+ bi: visitorId || '',
69
+ mdn: encryptString(params.mdn || window.location.origin),
70
+ authorization: encryptString(appConfig.publicKey)
71
+ });
72
+ initPayload = {
73
73
  type: 'website',
74
74
  app_client_version: 'js-auth-connect',
75
75
  requirer_browser: "".concat(client === null || client === void 0 ? void 0 : client.name, " , ").concat(client === null || client === void 0 ? void 0 : client.version),
76
76
  os: "".concat(os === null || os === void 0 ? void 0 : os.name, " , ").concat(os === null || os === void 0 ? void 0 : os.version),
77
- locale: language
77
+ locale: language,
78
+ data_required: {
79
+ country_list: !disableCountries
80
+ }
78
81
  };
82
+ return [4, API.initService.getInitialData(initPayload)];
83
+ case 2:
84
+ _d = _f.sent(), country_list = _d.country_list, ip_info = _d.ip_info, merchant = _d.merchant, operator = _d.operator;
85
+ list = (country_list || { list: [] }).list;
86
+ _e = ip_info || {}, ip = _e.ip, latitude = _e.latitude, longitude = _e.longitude;
79
87
  deviceInfo = {
80
88
  app: {
81
89
  language: appConfig.language || 'en',
@@ -108,10 +116,7 @@ export var fetchAppSettingsSync = createAsyncThunk('fetchAppSettingsSync', funct
108
116
  source: 'browser'
109
117
  };
110
118
  setAxiosGlobalHeaders(__assign(__assign(__assign({}, getRequestHeaders(deviceInfo)), { authorization: encryptString(appConfig.publicKey), mdn: encryptString(params.mdn || window.location.origin), cu: window.location.href }), (maturity && { maturity: maturity })));
111
- return [4, API.operatorService.validateOperator(operatorData)];
112
- case 2:
113
- operatorStatus = _e.sent();
114
- isValidOperator = operatorStatus === 'valid';
119
+ isValidOperator = operator === 'valid';
115
120
  countries = sortCountries(list);
116
121
  countryCode = appConfig.businessCountryCode;
117
122
  isKWOrSA = isKW(countryCode) || isSA(countryCode);
@@ -120,7 +125,7 @@ export var fetchAppSettingsSync = createAsyncThunk('fetchAppSettingsSync', funct
120
125
  businessCountry = findCountryByIso2(countries, countryCode);
121
126
  if (!businessCountry)
122
127
  throw new Error('Business country not found, you have to pass a valid business country code in the lib config');
123
- return [2, { countries: countries, businessCountry: businessCountry, locale: locale, deviceInfo: deviceInfo, isValidOperator: isValidOperator }];
128
+ return [2, __assign({ countries: countries, businessCountry: businessCountry, locale: locale, deviceInfo: deviceInfo, isValidOperator: isValidOperator, isMaturityExpress: maturity === 'express' }, (merchant && { merchant: merchant }))];
124
129
  }
125
130
  });
126
131
  }); });
@@ -131,6 +136,7 @@ var initialState = {
131
136
  boardMaturity: true,
132
137
  open: true,
133
138
  isTapOrigin: true,
139
+ isMaturityExpress: false,
134
140
  skin: getStoredData(LOCAL_STORAGE_KEYS.themeMode) || 'light',
135
141
  language: getStoredData(LOCAL_STORAGE_KEYS.languageMode) || 'en',
136
142
  featureScreensNavigation: [],
@@ -250,11 +256,14 @@ export var settingsSlice = createSlice({
250
256
  state.error = null;
251
257
  });
252
258
  builder.addCase(fetchAppSettingsSync.fulfilled, function (state, action) {
253
- var _a = action.payload, businessCountry = _a.businessCountry, countries = _a.countries, locale = _a.locale, deviceInfo = _a.deviceInfo, isValidOperator = _a.isValidOperator;
259
+ var _a = action.payload, businessCountry = _a.businessCountry, countries = _a.countries, locale = _a.locale, deviceInfo = _a.deviceInfo, isValidOperator = _a.isValidOperator, merchant = _a.merchant, isMaturityExpress = _a.isMaturityExpress;
254
260
  state.data.countries = countries;
255
261
  state.data.businessCountry = businessCountry;
256
262
  state.data.deviceInfo = deviceInfo;
257
263
  state.data.isValidOperator = isValidOperator;
264
+ if (merchant)
265
+ state.data.merchant = merchant;
266
+ state.data.isMaturityExpress = isMaturityExpress;
258
267
  if (locale)
259
268
  updateLocale(locale, businessCountry.iso2);
260
269
  state.loading = false;
@@ -392,5 +392,6 @@
392
392
  "file_delete_error": "حدث خطأ ما في حذف الملف. حاول مرة اخرى",
393
393
  "file_download_error": "حدث خطأ ما في تحميل الملف. حاول مرة اخرى",
394
394
  "title_brand_logo": "لوجو العلامة التجارية",
395
- "description_brand_logo": "JPG or PNG files up to 4mb."
395
+ "description_brand_logo": "JPG or PNG files up to 4mb.",
396
+ "powered_by": "بواسطة"
396
397
  }
@@ -422,5 +422,6 @@
422
422
  "file_delete_error": "Something went wrong with deleting file. Please try again",
423
423
  "file_download_error": "Something went wrong with downloading file. Please try again",
424
424
  "title_brand_logo": "Brand Logo",
425
- "description_brand_logo": "JPG or PNG files up to 4mb."
425
+ "description_brand_logo": "JPG or PNG files up to 4mb.",
426
+ "powered_by": "Powered by"
426
427
  }
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
+ import { MerchantInfo } from '../../@types';
2
3
  export interface AnimationFlowProps {
3
4
  open: boolean;
4
5
  children: React.ReactNode;
5
6
  isTapOrigin?: boolean;
6
- footer?: React.ReactNode;
7
7
  type?: 'PUPOP' | 'BOTTOMSHEET';
8
8
  breakpoint?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
9
9
  loading?: boolean;
@@ -13,5 +13,7 @@ export interface AnimationFlowProps {
13
13
  onClose?: () => void;
14
14
  onConfirm?: () => void;
15
15
  pointerEvents?: 'auto' | 'none';
16
+ merchantInfo?: MerchantInfo;
17
+ isMaturityExpress?: boolean;
16
18
  }
17
- export default function AnimationFlow({ open, children, breakpoint, type, footer, loading, error, isTapOrigin, screenId, animationType, onClose, onConfirm, pointerEvents }: AnimationFlowProps): JSX.Element;
19
+ export default function AnimationFlow({ open, children, breakpoint, type, loading, error, isTapOrigin, screenId, animationType, onClose, onConfirm, pointerEvents, merchantInfo, isMaturityExpress }: AnimationFlowProps): JSX.Element;
@@ -16,7 +16,7 @@ import BottomSheet from './BottomSheet';
16
16
  import Loader from './Loader';
17
17
  import Error from './Error';
18
18
  export default function AnimationFlow(_a) {
19
- var open = _a.open, children = _a.children, breakpoint = _a.breakpoint, type = _a.type, footer = _a.footer, loading = _a.loading, error = _a.error, isTapOrigin = _a.isTapOrigin, screenId = _a.screenId, animationType = _a.animationType, onClose = _a.onClose, onConfirm = _a.onConfirm, _b = _a.pointerEvents, pointerEvents = _b === void 0 ? 'auto' : _b;
19
+ var open = _a.open, children = _a.children, breakpoint = _a.breakpoint, type = _a.type, loading = _a.loading, error = _a.error, isTapOrigin = _a.isTapOrigin, screenId = _a.screenId, animationType = _a.animationType, onClose = _a.onClose, onConfirm = _a.onConfirm, _b = _a.pointerEvents, pointerEvents = _b === void 0 ? 'auto' : _b, merchantInfo = _a.merchantInfo, isMaturityExpress = _a.isMaturityExpress;
20
20
  var small = useScreen(breakpoint).small;
21
21
  if (loading) {
22
22
  return _jsx(Loader, {});
@@ -25,10 +25,10 @@ export default function AnimationFlow(_a) {
25
25
  return _jsx(Error, { error: error });
26
26
  }
27
27
  if (type === 'PUPOP') {
28
- return (_jsx(Dialog, __assign({ pointerEvents: pointerEvents, onClose: onClose, onConfirm: onConfirm, footer: footer, open: open, isTapOrigin: isTapOrigin, animationType: animationType }, { children: children })));
28
+ return (_jsx(Dialog, __assign({ pointerEvents: pointerEvents, onClose: onClose, onConfirm: onConfirm, open: open, isTapOrigin: isTapOrigin, animationType: animationType, merchantInfo: merchantInfo, isMaturityExpress: isMaturityExpress }, { children: children })));
29
29
  }
30
30
  if (type === 'BOTTOMSHEET') {
31
- return (_jsx(BottomSheet, __assign({ pointerEvents: pointerEvents, open: open }, { children: children })));
31
+ return (_jsx(BottomSheet, __assign({ pointerEvents: pointerEvents, open: open, isMaturityExpress: isMaturityExpress, merchantInfo: merchantInfo }, { children: children })));
32
32
  }
33
- return small ? (_jsx(BottomSheet, __assign({ pointerEvents: pointerEvents, open: open, screenId: screenId }, { children: children }))) : (_jsx(Dialog, __assign({ pointerEvents: pointerEvents, onClose: onClose, onConfirm: onConfirm, open: open, footer: footer, isTapOrigin: isTapOrigin, animationType: animationType }, { children: children })));
33
+ return small ? (_jsx(BottomSheet, __assign({ pointerEvents: pointerEvents, open: open, screenId: screenId, isMaturityExpress: isMaturityExpress, merchantInfo: merchantInfo }, { children: children }))) : (_jsx(Dialog, __assign({ pointerEvents: pointerEvents, onClose: onClose, onConfirm: onConfirm, open: open, isTapOrigin: isTapOrigin, animationType: animationType, merchantInfo: merchantInfo, isMaturityExpress: isMaturityExpress }, { children: children })));
34
34
  }
@@ -1,11 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import { BottomSheetProps as MainBottomSheetProps } from 'react-spring-bottom-sheet';
3
3
  import 'react-spring-bottom-sheet/dist/style.css';
4
+ import { MerchantInfo } from '../../@types';
4
5
  export interface BottomSheetProps extends MainBottomSheetProps {
5
6
  children: React.ReactNode;
6
7
  open: boolean;
7
8
  screenId?: string;
8
9
  pointerEvents?: 'none' | 'auto';
10
+ isMaturityExpress?: boolean;
11
+ merchantInfo?: MerchantInfo;
9
12
  }
10
- declare const _default: React.MemoExoticComponent<({ open, children, screenId, pointerEvents, ...rest }: BottomSheetProps) => JSX.Element>;
13
+ declare const _default: React.MemoExoticComponent<({ open, children, screenId, pointerEvents, isMaturityExpress, merchantInfo, ...rest }: BottomSheetProps) => JSX.Element>;
11
14
  export default _default;
@@ -20,30 +20,25 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  }
21
21
  return t;
22
22
  };
23
- import { jsx as _jsx } from "react/jsx-runtime";
23
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
24
  import * as React from 'react';
25
25
  import { BottomSheet } from 'react-spring-bottom-sheet';
26
26
  import { styled } from '@mui/material/styles';
27
+ import Box from '@mui/material/Box';
27
28
  import 'react-spring-bottom-sheet/dist/style.css';
28
- var BottomSheetStyled = styled(BottomSheet)(function (_a) {
29
- var theme = _a.theme;
29
+ import { ICONS_NAMES } from '../../constants';
30
+ import { useLanguage } from '../../hooks';
31
+ import { PoweredByFooter } from '../../features/shared/Footer';
32
+ import LogoBadge from '../LogoBadge';
33
+ var BottomSheetStyled = styled(BottomSheet, { shouldForwardProp: function (prop) { return prop !== 'isMaturityExpress'; } })(function (_a) {
34
+ var theme = _a.theme, isMaturityExpress = _a.isMaturityExpress;
30
35
  return ({
31
- '[data-rsbs-header]:before': {
32
- width: '75px',
33
- height: '5px'
34
- },
36
+ '[data-rsbs-header]:before': __assign({ width: '75px', height: '5px' }, (isMaturityExpress && { width: '0px', height: '0px' })),
35
37
  '[data-rsbs-backdrop]': {
36
38
  backgroundColor: 'transparent'
37
39
  },
38
- '[data-rsbs-header]': {
39
- paddingBottom: theme.spacing(6),
40
- position: 'absolute',
41
- width: '100vw'
42
- },
43
- '[data-rsbs-overlay]': {
44
- backgroundColor: theme.palette.background.paper,
45
- zIndex: 9999
46
- },
40
+ '[data-rsbs-header]': __assign({ paddingBottom: theme.spacing(6), position: 'absolute', width: '100vw' }, (isMaturityExpress && { display: 'none' })),
41
+ '[data-rsbs-overlay]': __assign({ backgroundColor: theme.palette.background.paper, zIndex: 9999 }, (isMaturityExpress && { maxHeight: 'calc(100vh - 80px)', marginBottom: theme.spacing(5.625), paddingTop: theme.spacing(5) })),
47
42
  '[data-rsbs-scroll]': {
48
43
  '&::-webkit-scrollbar': {
49
44
  width: '0px'
@@ -59,13 +54,21 @@ var BottomSheetStyled = styled(BottomSheet)(function (_a) {
59
54
  }
60
55
  });
61
56
  });
57
+ var FooterStyled = styled(Box)(function (_a) {
58
+ var theme = _a.theme;
59
+ return (__assign(__assign({ bottom: theme.spacing(-5.625), position: 'fixed', height: theme.spacing(5.625), display: 'flex' }, theme.typography.caption), { justifyContent: 'center', alignItems: 'center', width: '100vw', background: '#E6E7E9', borderTop: '1px solid rgba(156, 160, 169, 0.3)' }));
60
+ });
62
61
  var BottomSheetComponent = function (_a) {
63
- var open = _a.open, children = _a.children, screenId = _a.screenId, _b = _a.pointerEvents, pointerEvents = _b === void 0 ? 'auto' : _b, rest = __rest(_a, ["open", "children", "screenId", "pointerEvents"]);
62
+ var open = _a.open, children = _a.children, screenId = _a.screenId, _b = _a.pointerEvents, pointerEvents = _b === void 0 ? 'auto' : _b, isMaturityExpress = _a.isMaturityExpress, merchantInfo = _a.merchantInfo, rest = __rest(_a, ["open", "children", "screenId", "pointerEvents", "isMaturityExpress", "merchantInfo"]);
64
63
  var sheetRef = React.useRef(null);
64
+ var isAr = useLanguage().isAr;
65
+ var logo = (merchantInfo || {}).logo;
65
66
  var getMinHeight = function (maxHeight) {
66
67
  var el = document.getElementById('main-feature-container');
68
+ var footer = document.getElementById('bottom-sheet-powered_by_footer');
67
69
  var height = el ? el.clientHeight : 0;
68
- return height || maxHeight * 0.7;
70
+ var footerHeight = footer ? footer.clientHeight + 20 : 0;
71
+ return (height || maxHeight * 0.7) + footerHeight;
69
72
  };
70
73
  React.useEffect(function () {
71
74
  if (sheetRef.current && screenId) {
@@ -78,9 +81,9 @@ var BottomSheetComponent = function (_a) {
78
81
  }, 500);
79
82
  }
80
83
  }, [screenId]);
81
- return (_jsx(BottomSheetStyled, __assign({ sx: { pointerEvents: pointerEvents }, ref: sheetRef, open: open, snapPoints: function (_a) {
84
+ return (_jsxs(BottomSheetStyled, __assign({ isMaturityExpress: isMaturityExpress, sx: { pointerEvents: pointerEvents }, ref: sheetRef, open: open, snapPoints: function (_a) {
82
85
  var maxHeight = _a.maxHeight;
83
86
  return [getMinHeight(maxHeight), maxHeight * 0.95];
84
- } }, rest, { children: children })));
87
+ } }, rest, { children: [isMaturityExpress && _jsx(LogoBadge, { src: isMaturityExpress ? logo || ICONS_NAMES.LOGO_ICON : ICONS_NAMES.LOGO_ICON }), children, isMaturityExpress && (_jsx(FooterStyled, { children: _jsx(PoweredByFooter, { id: 'bottom-sheet-powered_by_footer', sx: { margin: '0px' }, textSx: { color: 'rgba(63, 66, 77, 0.6)' }, icon: isAr ? ICONS_NAMES.LOGO_WITH_NAME_DARK_AR_ICON : ICONS_NAMES.LOGO_WITH_NAME_DARK_EN_ICON }) }))] })));
85
88
  };
86
89
  export default React.memo(BottomSheetComponent);
@@ -1,15 +1,17 @@
1
1
  import * as React from 'react';
2
2
  import { DialogProps as MUIDialogProps } from '@mui/material/Dialog';
3
+ import { MerchantInfo } from '../../@types';
3
4
  export interface DialogProps extends MUIDialogProps {
4
5
  open: boolean;
5
6
  isTapOrigin?: boolean;
6
7
  children: React.ReactNode;
7
- footer?: React.ReactNode;
8
8
  transitionDuration?: number;
9
9
  animationType?: 'slide' | 'fade' | 'collapse';
10
10
  onClose?: () => void;
11
11
  onConfirm?: () => void;
12
12
  pointerEvents?: 'none' | 'auto';
13
+ merchantInfo?: MerchantInfo;
14
+ isMaturityExpress?: boolean;
13
15
  }
14
- declare const _default: React.MemoExoticComponent<({ open, children, footer, transitionDuration, isTapOrigin, animationType, onClose, onConfirm, pointerEvents, ...rest }: DialogProps) => JSX.Element>;
16
+ declare const _default: React.MemoExoticComponent<({ open, children, transitionDuration, isTapOrigin, animationType, onClose, onConfirm, pointerEvents, merchantInfo, isMaturityExpress, ...rest }: DialogProps) => JSX.Element>;
15
17
  export default _default;
@@ -29,11 +29,12 @@ import Box from '@mui/material/Box';
29
29
  import { styled } from '@mui/material/styles';
30
30
  import { DIALOG_ID, ICONS_NAMES } from '../../constants';
31
31
  import { useLanguage } from '../../hooks';
32
+ import DialogContainer from '../../features/shared/Dialog';
33
+ import { CustomFooter, PoweredByFooter } from '../../features/shared/Footer';
32
34
  import Slide from '../Slide';
33
35
  import LogoBadge from '../LogoBadge';
34
36
  import Icon from '../Icon';
35
37
  import Collapse from '../Collapse';
36
- import DialogContainer from '../../features/shared/Dialog';
37
38
  var Transition = React.forwardRef(function Transition(props, ref) {
38
39
  return _jsx(Slide, __assign({ direction: 'up', ref: ref }, props));
39
40
  });
@@ -50,11 +51,11 @@ var PaperStyled = styled(Paper)(function (_a) {
50
51
  maxWidth: theme.spacing(46.875)
51
52
  });
52
53
  });
53
- var DialogContentStyled = styled(DialogContent)(function (_a) {
54
- var theme = _a.theme;
54
+ var DialogContentStyled = styled(DialogContent, { shouldForwardProp: function (prop) { return prop !== 'isTapOrigin'; } })(function (_a) {
55
+ var theme = _a.theme, isTapOrigin = _a.isTapOrigin;
55
56
  return ({
56
57
  padding: theme.spacing(0),
57
- paddingTop: theme.spacing(3.75),
58
+ marginTop: isTapOrigin ? theme.spacing(3.75) : theme.spacing(4.375),
58
59
  width: '100%',
59
60
  '&::-webkit-scrollbar': {
60
61
  width: '0px'
@@ -74,7 +75,6 @@ var LogoIconBoxStyled = styled(Box)(function (_a) {
74
75
  var theme = _a.theme;
75
76
  return (_b = {
76
77
  paddingTop: theme.spacing(3.125),
77
- paddingBottom: theme.spacing(2.5),
78
78
  width: '100%',
79
79
  display: 'flex',
80
80
  justifyContent: 'center'
@@ -92,20 +92,43 @@ var LogoIconStyled = styled(Icon)(function (_a) {
92
92
  padding: theme.spacing(0)
93
93
  });
94
94
  });
95
+ var LanguageFooterStyled = styled(Box, { shouldForwardProp: function (prop) { return prop !== 'showLanguage'; } })(function (_a) {
96
+ var theme = _a.theme, showLanguage = _a.showLanguage;
97
+ return ({
98
+ position: 'fixed',
99
+ bottom: theme.spacing(7.5),
100
+ left: '50%',
101
+ transform: 'translateX(-50%)',
102
+ opacity: showLanguage ? 1 : 0,
103
+ transition: 'opacity 300ms'
104
+ });
105
+ });
95
106
  var Dialog = function (_a) {
96
- var open = _a.open, children = _a.children, footer = _a.footer, transitionDuration = _a.transitionDuration, isTapOrigin = _a.isTapOrigin, _b = _a.animationType, animationType = _b === void 0 ? 'slide' : _b, onClose = _a.onClose, onConfirm = _a.onConfirm, _c = _a.pointerEvents, pointerEvents = _c === void 0 ? 'auto' : _c, rest = __rest(_a, ["open", "children", "footer", "transitionDuration", "isTapOrigin", "animationType", "onClose", "onConfirm", "pointerEvents"]);
107
+ var open = _a.open, children = _a.children, transitionDuration = _a.transitionDuration, isTapOrigin = _a.isTapOrigin, _b = _a.animationType, animationType = _b === void 0 ? 'slide' : _b, onClose = _a.onClose, onConfirm = _a.onConfirm, _c = _a.pointerEvents, pointerEvents = _c === void 0 ? 'auto' : _c, merchantInfo = _a.merchantInfo, isMaturityExpress = _a.isMaturityExpress, rest = __rest(_a, ["open", "children", "transitionDuration", "isTapOrigin", "animationType", "onClose", "onConfirm", "pointerEvents", "merchantInfo", "isMaturityExpress"]);
97
108
  var isAr = useLanguage().isAr;
98
109
  var animation = {};
99
110
  if (animationType === 'slide') {
100
111
  Object.assign(animation, { TransitionComponent: Transition });
101
112
  }
113
+ var logo = (merchantInfo || {}).logo;
114
+ var _d = React.useState(false), showLanguage = _d[0], setShowLanguage = _d[1];
115
+ React.useEffect(function () {
116
+ if (isMaturityExpress) {
117
+ setTimeout(function () {
118
+ setShowLanguage(true);
119
+ }, transitionDuration || 500);
120
+ }
121
+ }, []);
102
122
  return (_jsxs(MuiDialog, __assign({ id: DIALOG_ID, PaperProps: {
103
123
  elevation: 0
104
124
  }, sx: {
105
125
  '& .MuiDialog-paper': {
106
126
  overflowY: 'visible'
107
127
  },
128
+ '&.MuiDialog-root': {
129
+ marginBottom: isMaturityExpress ? '60px' : '0px'
130
+ },
108
131
  pointerEvents: pointerEvents
109
- }, hideBackdrop: true, PaperComponent: PaperStyled, open: open, transitionDuration: transitionDuration || 500, keepMounted: true, "aria-describedby": 'dialog-slide-description' }, rest, animation, { children: [_jsx(DialogContainer, __assign({ isTapOrigin: isTapOrigin, onClose: onClose, onConfirm: onConfirm }, { children: _jsxs(DialogContentStyled, { children: [_jsxs(Collapse, __assign({ in: !isTapOrigin }, { children: [_jsx(LogoBadge, { src: ICONS_NAMES.LOGO_ICON }), _jsx(LogoIconBoxStyled, { children: _jsx(LogoIconStyled, { src: isAr ? ICONS_NAMES.TAP_AR : ICONS_NAMES.TAP_EN, alt: 'tap logo' }) })] })), children] }) })), footer] })));
132
+ }, hideBackdrop: true, PaperComponent: PaperStyled, open: open, transitionDuration: transitionDuration || 500, keepMounted: true, "aria-describedby": 'dialog-slide-description' }, rest, animation, { children: [_jsx(DialogContainer, __assign({ isTapOrigin: isTapOrigin, onClose: onClose, onConfirm: onConfirm }, { children: _jsxs(DialogContentStyled, __assign({ isTapOrigin: isTapOrigin }, { children: [_jsxs(Collapse, __assign({ in: !isTapOrigin }, { children: [_jsx(LogoBadge, { src: isMaturityExpress ? logo || ICONS_NAMES.LOGO_ICON : ICONS_NAMES.LOGO_ICON }), !isMaturityExpress && (_jsx(LogoIconBoxStyled, { children: _jsx(LogoIconStyled, { src: isAr ? ICONS_NAMES.TAP_AR : ICONS_NAMES.TAP_EN, alt: 'tap logo' }) }))] })), children] })) })), isMaturityExpress ? _jsx(PoweredByFooter, {}) : _jsx(CustomFooter, {}), _jsx(LanguageFooterStyled, __assign({ showLanguage: showLanguage }, { children: _jsx(CustomFooter, {}) }))] })));
110
133
  };
111
134
  export default React.memo(Dialog);
@@ -49,6 +49,9 @@ var AvatarStyled = styled(Avatar)(function (_a) {
49
49
  _b[theme.transitions.create(['opacity'])] = {
50
50
  duration: theme.transitions.duration.standard
51
51
  },
52
+ _b['.MuiAvatar-img'] = {
53
+ backgroundColor: theme.palette.common.white
54
+ },
52
55
  _b);
53
56
  });
54
57
  var LogoBadge = function (_a) {
@@ -2,5 +2,5 @@ import React from 'react';
2
2
  import { SlideProps as MUISlideProps } from '@mui/material/Slide';
3
3
  export interface SlideProps extends MUISlideProps {
4
4
  }
5
- declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<SlideProps, "className" | "style" | "color" | "direction" | "translate" | "slot" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "children" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "timeout" | "in" | "mountOnEnter" | "unmountOnExit" | "easing" | "addEndListener" | "onEnter" | "onEntering" | "onEntered" | "onExit" | "onExiting" | "onExited" | "appear" | "enter" | "exit" | "container"> & React.RefAttributes<unknown>>>;
5
+ declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<SlideProps, "className" | "style" | "color" | "direction" | "translate" | "slot" | "title" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "timeout" | "in" | "mountOnEnter" | "unmountOnExit" | "easing" | "addEndListener" | "onEnter" | "onEntering" | "onEntered" | "onExit" | "onExiting" | "onExited" | "appear" | "enter" | "exit" | "container"> & React.RefAttributes<unknown>>>;
6
6
  export default _default;
@@ -46,4 +46,5 @@ export declare const ENDPOINT_PATHS: {
46
46
  SEGMENTS_PATH: string;
47
47
  TEAM_SIZE_PATH: string;
48
48
  CITIES: string;
49
+ INIT: string;
49
50
  };
@@ -46,6 +46,7 @@ var DOCUMENT_PATH = '/document';
46
46
  var SEGMENTS_PATH = '/businessSegment/list';
47
47
  var TEAM_SIZE_PATH = '/businessSegment/team/list';
48
48
  var ADDRESS_PATH = '/address';
49
+ var INIT_PATH = 'init';
49
50
  export var ENDPOINT_PATHS = {
50
51
  CREATE_EXPRESS_AUTH_PATH: CREATE_EXPRESS_AUTH_PATH,
51
52
  Verify_Express_Auth_OTP_PATH: Verify_Express_Auth_OTP_PATH,
@@ -93,5 +94,6 @@ export var ENDPOINT_PATHS = {
93
94
  CREATE_AUTH_NID: CREATE_AUTH_NID_PATH,
94
95
  SEGMENTS_PATH: SEGMENTS_PATH,
95
96
  TEAM_SIZE_PATH: TEAM_SIZE_PATH,
96
- CITIES: CITIES_PATH
97
+ CITIES: CITIES_PATH,
98
+ INIT: INIT_PATH
97
99
  };
@@ -15,6 +15,10 @@ export declare const ICONS_NAMES: {
15
15
  DOWN_ARROW_ICON_DARK: string;
16
16
  CLEAR_ICON: string;
17
17
  LOGO_ICON: string;
18
+ LOGO_WITH_NAME_WHITE_EN_ICON: string;
19
+ LOGO_WITH_NAME_WHITE_AR_ICON: string;
20
+ LOGO_WITH_NAME_DARK_EN_ICON: string;
21
+ LOGO_WITH_NAME_DARK_AR_ICON: string;
18
22
  WEB_ICON: string;
19
23
  WEB_ACTIVE_ICON: string;
20
24
  TWITTER_ICON: string;
@@ -15,6 +15,10 @@ export var ICONS_NAMES = {
15
15
  DOWN_ARROW_ICON_DARK: ICONS_FULL_PATH + '/popup_arrow_dark' + ICONS_EXTENSION,
16
16
  CLEAR_ICON: ICONS_FULL_PATH + '/clear' + ICONS_EXTENSION,
17
17
  LOGO_ICON: ICONS_FULL_PATH + '/tap_logo_icon' + ICONS_EXTENSION,
18
+ LOGO_WITH_NAME_WHITE_EN_ICON: ICONS_FULL_PATH + '/tap_logo_with_name_white_en' + ICONS_EXTENSION,
19
+ LOGO_WITH_NAME_WHITE_AR_ICON: ICONS_FULL_PATH + '/tap_logo_with_name_white_ar' + ICONS_EXTENSION,
20
+ LOGO_WITH_NAME_DARK_EN_ICON: ICONS_FULL_PATH + '/tap_logo_with_name_dark_en' + ICONS_EXTENSION,
21
+ LOGO_WITH_NAME_DARK_AR_ICON: ICONS_FULL_PATH + '/tap_logo_with_name_dark_ar' + ICONS_EXTENSION,
18
22
  WEB_ICON: ICONS_FULL_PATH + '/website' + ICONS_EXTENSION,
19
23
  WEB_ACTIVE_ICON: ICONS_FULL_PATH + '/website-active' + ICONS_EXTENSION,
20
24
  TWITTER_ICON: ICONS_FULL_PATH + '/twitter-icon' + ICONS_EXTENSION,
@@ -33,7 +33,6 @@ import { findOrCreateElementAndInject } from '../../utils';
33
33
  import { FeatureContainer } from '../shared/Containers';
34
34
  import { BANK_SCREENS_NAVIGATION } from '../../constants';
35
35
  import { bankFeatureScreens } from '../featuresScreens';
36
- import CustomFooter from '../shared/Footer';
37
36
  import { bankSelector, verifyLeadToken } from '../app/bank/bankStore';
38
37
  import Background from '../shared/Background';
39
38
  var Bank = memo(function (_a) {
@@ -44,7 +43,7 @@ var Bank = memo(function (_a) {
44
43
  useAppConfig(__assign(__assign({ navigation: BANK_SCREENS_NAVIGATION }, props), { disableSettingFetching: !!verifyToken }));
45
44
  useErrorListener(bankError || error);
46
45
  useStepStartedListener();
47
- var activeScreen = data.activeScreen, isTapOrigin = data.isTapOrigin, open = data.open, featureScreensNavigation = data.featureScreensNavigation;
46
+ var activeScreen = data.activeScreen, isTapOrigin = data.isTapOrigin, open = data.open, featureScreensNavigation = data.featureScreensNavigation, merchant = data.merchant, isMaturityExpress = data.isMaturityExpress;
48
47
  useVerifyToken({
49
48
  verify: verifyLeadToken,
50
49
  loadingScreenName: 'BANK_LOADING_DATA_STEP',
@@ -54,11 +53,11 @@ var Bank = memo(function (_a) {
54
53
  settingLoading: settingLoading
55
54
  });
56
55
  var initialLoading = verifyToken ? settingLoading : settingLoading || customLoading;
57
- return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading ? 'none' : 'auto', isTapOrigin: isTapOrigin, loading: initialLoading, error: error, open: open, breakpoint: 'sm', footer: _jsx(CustomFooter, {}), screenId: activeScreen.name }, { children: _jsx(FeatureContainer, { children: bankFeatureScreens.map(function (_a, index) {
56
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading ? 'none' : 'auto', isTapOrigin: isTapOrigin, loading: initialLoading, error: error, open: open, breakpoint: 'sm', screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: isMaturityExpress }, { children: _jsx(FeatureContainer, __assign({ isMaturityExpress: isMaturityExpress }, { children: bankFeatureScreens.map(function (_a, index) {
58
57
  var Element = _a.element, name = _a.name;
59
58
  var isActive = activeScreen.name === name;
60
59
  return (_jsx(Collapse, __assign({ in: isActive, timeout: { enter: 1000, exit: 800 } }, { children: _jsx(Element, {}) }), index));
61
- }) }) })) })) })));
60
+ }) })) })) })) })));
62
61
  });
63
62
  export function BankElement(props) {
64
63
  return (_jsx(ReduxProvider, __assign({ store: store }, { children: _jsx(Bank, __assign({}, props)) })));