@tap-payments/auth-jsconnect 2.3.25-test → 2.3.27-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 (155) hide show
  1. package/build/@types/app.d.ts +12 -1
  2. package/build/@types/app.js +1 -0
  3. package/build/@types/form.d.ts +2 -1
  4. package/build/app/settings.d.ts +3 -1
  5. package/build/app/settings.js +5 -1
  6. package/build/assets/locales/ar.json +3 -1
  7. package/build/assets/locales/en.json +3 -1
  8. package/build/constants/app.d.ts +2 -1
  9. package/build/constants/app.js +1 -0
  10. package/build/constants/validation.d.ts +1 -0
  11. package/build/constants/validation.js +1 -0
  12. package/build/features/app/brand/brandStore.d.ts +5 -2
  13. package/build/features/app/brand/brandStore.js +12 -3
  14. package/build/features/bank/screens/BankDetails/BankDetails.js +18 -4
  15. package/build/features/bank/screens/BankDetails/BankName.d.ts +4 -1
  16. package/build/features/bank/screens/BankDetails/BankName.js +8 -7
  17. package/build/features/bank/screens/BankDetails/BankStatement.d.ts +4 -1
  18. package/build/features/bank/screens/BankDetails/BankStatement.js +3 -8
  19. package/build/features/bank/screens/BankDetails/Beneficiary.d.ts +2 -1
  20. package/build/features/bank/screens/BankDetails/Beneficiary.js +8 -7
  21. package/build/features/bank/screens/BankDetails/ConfirmPolicy.d.ts +4 -1
  22. package/build/features/bank/screens/BankDetails/ConfirmPolicy.js +6 -3
  23. package/build/features/bank/screens/BankDetails/IBAN.d.ts +2 -1
  24. package/build/features/bank/screens/BankDetails/IBAN.js +2 -2
  25. package/build/features/brand/screens/BrandActivities/ActivitiesList.d.ts +3 -1
  26. package/build/features/brand/screens/BrandActivities/ActivitiesList.js +11 -6
  27. package/build/features/brand/screens/BrandActivities/BrandActivities.js +3 -1
  28. package/build/features/brand/screens/BrandActivities/CustomerBase.d.ts +2 -1
  29. package/build/features/brand/screens/BrandActivities/CustomerBase.js +12 -9
  30. package/build/features/brand/screens/BrandActivities/ExpectedCustomers.d.ts +2 -1
  31. package/build/features/brand/screens/BrandActivities/ExpectedCustomers.js +10 -7
  32. package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.d.ts +2 -1
  33. package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.js +9 -6
  34. package/build/features/brand/screens/BrandActivities/RefundPolicy.d.ts +4 -1
  35. package/build/features/brand/screens/BrandActivities/RefundPolicy.js +7 -4
  36. package/build/features/brand/screens/BrandActivities/TAC.d.ts +2 -1
  37. package/build/features/brand/screens/BrandActivities/TAC.js +3 -1
  38. package/build/features/brand/screens/BrandActivities/TransactionPolicy.d.ts +4 -1
  39. package/build/features/brand/screens/BrandActivities/TransactionPolicy.js +7 -4
  40. package/build/features/brand/screens/BrandInfo/BrandInfo.js +14 -9
  41. package/build/features/brand/screens/BrandInfo/BrandLogo.d.ts +9 -0
  42. package/build/features/brand/screens/BrandInfo/BrandLogo.js +52 -0
  43. package/build/features/brand/screens/BrandInfo/BrandName.d.ts +2 -1
  44. package/build/features/brand/screens/BrandInfo/BrandName.js +2 -2
  45. package/build/features/brand/screens/BrandInfo/SalesChannels.d.ts +2 -1
  46. package/build/features/brand/screens/BrandInfo/SalesChannels.js +2 -1
  47. package/build/features/brand/screens/BrandInfo/Segments.d.ts +2 -1
  48. package/build/features/brand/screens/BrandInfo/Segments.js +3 -1
  49. package/build/features/brand/screens/BrandInfo/TeamSize.d.ts +2 -1
  50. package/build/features/brand/screens/BrandInfo/TeamSize.js +3 -1
  51. package/build/features/brand/screens/BrandInfo/validation.d.ts +3 -0
  52. package/build/features/brand/screens/BrandInfo/validation.js +1 -0
  53. package/build/features/entity/screens/EntityCapital/ActivityList.d.ts +2 -1
  54. package/build/features/entity/screens/EntityCapital/ActivityList.js +12 -22
  55. package/build/features/entity/screens/EntityCapital/CapitalPaid.d.ts +2 -1
  56. package/build/features/entity/screens/EntityCapital/CapitalPaid.js +2 -1
  57. package/build/features/entity/screens/EntityCapital/CapitalShareCount.d.ts +2 -1
  58. package/build/features/entity/screens/EntityCapital/CapitalShareCount.js +2 -1
  59. package/build/features/entity/screens/EntityCapital/CapitalShareValue.d.ts +2 -1
  60. package/build/features/entity/screens/EntityCapital/CapitalShareValue.js +2 -1
  61. package/build/features/entity/screens/EntityCapital/EntityCapital.js +3 -1
  62. package/build/features/entity/screens/EntityName/Article.d.ts +4 -1
  63. package/build/features/entity/screens/EntityName/Article.js +3 -4
  64. package/build/features/entity/screens/EntityName/EntityName.js +6 -3
  65. package/build/features/entity/screens/EntityName/EntityTypeList.d.ts +2 -1
  66. package/build/features/entity/screens/EntityName/EntityTypeList.js +9 -19
  67. package/build/features/entity/screens/EntityName/ExpiryDate.d.ts +2 -1
  68. package/build/features/entity/screens/EntityName/ExpiryDate.js +2 -2
  69. package/build/features/entity/screens/EntityName/IssuingDate.d.ts +2 -1
  70. package/build/features/entity/screens/EntityName/IssuingDate.js +2 -2
  71. package/build/features/entity/screens/EntityName/LegalName.d.ts +2 -1
  72. package/build/features/entity/screens/EntityName/LegalName.js +2 -1
  73. package/build/features/entity/screens/EntityName/LicenseCertificate.d.ts +4 -1
  74. package/build/features/entity/screens/EntityName/LicenseCertificate.js +3 -8
  75. package/build/features/entity/screens/EntityName/LicenseNumber.d.ts +2 -1
  76. package/build/features/entity/screens/EntityName/LicenseNumber.js +2 -2
  77. package/build/features/entity/screens/EntityName/UnifiedNumber.d.ts +2 -1
  78. package/build/features/entity/screens/EntityName/UnifiedNumber.js +2 -2
  79. package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js +5 -2
  80. package/build/features/individual/screens/AdditionalIndividualInfo/CivilIDFile.d.ts +6 -3
  81. package/build/features/individual/screens/AdditionalIndividualInfo/CivilIDFile.js +3 -8
  82. package/build/features/individual/screens/AdditionalIndividualInfo/InfluencerSwitch.d.ts +2 -1
  83. package/build/features/individual/screens/AdditionalIndividualInfo/InfluencerSwitch.js +3 -4
  84. package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.d.ts +2 -1
  85. package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.js +11 -22
  86. package/build/features/individual/screens/AdditionalIndividualInfo/Occupation.d.ts +2 -1
  87. package/build/features/individual/screens/AdditionalIndividualInfo/Occupation.js +12 -23
  88. package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.d.ts +2 -1
  89. package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.js +3 -4
  90. package/build/features/individual/screens/AdditionalIndividualInfo/ShareCount.d.ts +2 -1
  91. package/build/features/individual/screens/AdditionalIndividualInfo/ShareCount.js +2 -2
  92. package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.d.ts +2 -1
  93. package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.js +2 -2
  94. package/build/features/individual/screens/AdditionalIndividualInfo/SignatureFile.d.ts +4 -1
  95. package/build/features/individual/screens/AdditionalIndividualInfo/SignatureFile.js +3 -8
  96. package/build/features/individual/screens/AdditionalIndividualInfo/SourceOfIncome.d.ts +2 -1
  97. package/build/features/individual/screens/AdditionalIndividualInfo/SourceOfIncome.js +12 -23
  98. package/build/features/individual/screens/IndividualList/MobileNumber.js +0 -1
  99. package/build/features/individual/screens/IndividualPersonalInfo/BirthCity.d.ts +1 -0
  100. package/build/features/individual/screens/IndividualPersonalInfo/BirthCity.js +3 -1
  101. package/build/features/individual/screens/IndividualPersonalInfo/BirthCountry.d.ts +1 -0
  102. package/build/features/individual/screens/IndividualPersonalInfo/BirthCountry.js +3 -1
  103. package/build/features/individual/screens/IndividualPersonalInfo/DOB.d.ts +2 -1
  104. package/build/features/individual/screens/IndividualPersonalInfo/DOB.js +2 -2
  105. package/build/features/individual/screens/IndividualPersonalInfo/Email.d.ts +2 -1
  106. package/build/features/individual/screens/IndividualPersonalInfo/Email.js +2 -4
  107. package/build/features/individual/screens/IndividualPersonalInfo/ExpiryDate.d.ts +2 -1
  108. package/build/features/individual/screens/IndividualPersonalInfo/ExpiryDate.js +3 -4
  109. package/build/features/individual/screens/IndividualPersonalInfo/Gender.d.ts +2 -1
  110. package/build/features/individual/screens/IndividualPersonalInfo/Gender.js +3 -1
  111. package/build/features/individual/screens/IndividualPersonalInfo/ID.d.ts +2 -1
  112. package/build/features/individual/screens/IndividualPersonalInfo/ID.js +2 -7
  113. package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.js +3 -3
  114. package/build/features/individual/screens/IndividualPersonalInfo/IssuedCountry.d.ts +1 -0
  115. package/build/features/individual/screens/IndividualPersonalInfo/IssuedCountry.js +4 -6
  116. package/build/features/individual/screens/IndividualPersonalInfo/MobileNumber.d.ts +1 -0
  117. package/build/features/individual/screens/IndividualPersonalInfo/MobileNumber.js +2 -4
  118. package/build/features/individual/screens/IndividualPersonalInfo/Name.d.ts +2 -1
  119. package/build/features/individual/screens/IndividualPersonalInfo/Name.js +2 -2
  120. package/build/features/individual/screens/IndividualPersonalInfo/Nationality.d.ts +1 -0
  121. package/build/features/individual/screens/IndividualPersonalInfo/Nationality.js +4 -6
  122. package/build/features/individual/screens/IndividualPhoneInfo/MobileNumber.d.ts +1 -0
  123. package/build/features/individual/screens/IndividualPhoneInfo/MobileNumber.js +6 -3
  124. package/build/features/individual/screens/IndividualPhoneInfo/PhoneInfo.js +1 -1
  125. package/build/features/shared/SalesChannels/SaleChannelIconsInput.d.ts +2 -1
  126. package/build/features/shared/SalesChannels/SaleChannelIconsInput.js +3 -3
  127. package/build/features/shared/SalesChannels/SalesChannel.d.ts +2 -1
  128. package/build/features/shared/SalesChannels/SalesChannel.js +3 -3
  129. package/build/features/shared/UploadFile/FileUpload.d.ts +3 -1
  130. package/build/features/shared/UploadFile/FileUpload.js +14 -10
  131. package/build/features/shared/UploadFile/UploadWrapper.d.ts +3 -1
  132. package/build/features/shared/UploadFile/UploadWrapper.js +3 -2
  133. package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +2 -1
  134. package/build/features/shared/UploadMultipleFile/UploadFile.js +9 -5
  135. package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +2 -1
  136. package/build/features/shared/UploadMultipleFile/UploadMultipleFile.js +3 -3
  137. package/build/features/tax/screens/TaxDetails/ConfirmPolicy.d.ts +4 -1
  138. package/build/features/tax/screens/TaxDetails/ConfirmPolicy.js +6 -3
  139. package/build/features/tax/screens/TaxDetails/TaxDetails.js +4 -2
  140. package/build/features/tax/screens/TaxDetails/TaxDocument.d.ts +4 -1
  141. package/build/features/tax/screens/TaxDetails/TaxDocument.js +3 -8
  142. package/build/features/tax/screens/TaxDetails/VATId.d.ts +4 -1
  143. package/build/features/tax/screens/TaxDetails/VATId.js +5 -7
  144. package/build/hooks/index.d.ts +2 -0
  145. package/build/hooks/index.js +2 -0
  146. package/build/hooks/useAppConfig.d.ts +1 -1
  147. package/build/hooks/useAppConfig.js +4 -2
  148. package/build/hooks/useDataNoneEditable.d.ts +2 -0
  149. package/build/hooks/useDataNoneEditable.js +19 -0
  150. package/build/hooks/useFormReadOnly.d.ts +6 -0
  151. package/build/hooks/useFormReadOnly.js +38 -0
  152. package/build/utils/string.js +7 -7
  153. package/package.json +1 -1
  154. package/build/features/brand/screens/BrandActivities/OperationStartDate.d.ts +0 -20
  155. package/build/features/brand/screens/BrandActivities/OperationStartDate.js +0 -45
@@ -186,6 +186,7 @@ export interface LibConfig extends LibCallbacks {
186
186
  appInfo: AppInfo;
187
187
  businessCountryCode: string;
188
188
  scope: string;
189
+ boardMaturity?: boolean;
189
190
  }
190
191
  export interface OSDetails {
191
192
  name: string;
@@ -331,7 +332,8 @@ export declare enum DocumentPurpose {
331
332
  BANK_STATEMENT = "bank_statement",
332
333
  IDENTITY_DOCUMENT = "identity_document",
333
334
  CUSTOMER_SIGNATURE = "customer_signature",
334
- TAX_DOCUMENT = "tax_document_user_upload"
335
+ TAX_DOCUMENT = "tax_document_user_upload",
336
+ BRAND_LOGO = "business_logo"
335
337
  }
336
338
  export declare type FileDetails = {
337
339
  created: string;
@@ -348,4 +350,13 @@ export declare enum VerificationStatus {
348
350
  ENTERED = "entered",
349
351
  NOT_ENTERED = "not_entered"
350
352
  }
353
+ export declare type BankDataStatus = {
354
+ account_number: FieldType;
355
+ bank_name: FieldType;
356
+ bank_statement_file_id: FieldType;
357
+ beneficiary_name: FieldType;
358
+ iban: FieldType;
359
+ is_acknowledged: FieldType;
360
+ swift_code: FieldType;
361
+ };
351
362
  export {};
@@ -67,6 +67,7 @@ export var DocumentPurpose;
67
67
  DocumentPurpose["IDENTITY_DOCUMENT"] = "identity_document";
68
68
  DocumentPurpose["CUSTOMER_SIGNATURE"] = "customer_signature";
69
69
  DocumentPurpose["TAX_DOCUMENT"] = "tax_document_user_upload";
70
+ DocumentPurpose["BRAND_LOGO"] = "business_logo";
70
71
  })(DocumentPurpose || (DocumentPurpose = {}));
71
72
  export var VerificationStatus;
72
73
  (function (VerificationStatus) {
@@ -30,6 +30,7 @@ export declare type IndividualFormValues = {
30
30
  };
31
31
  export declare type BrandFormValues = {
32
32
  brandName: string;
33
+ brandLogoId?: string;
33
34
  segment?: Segment | undefined;
34
35
  teamSize?: TeamSize | undefined;
35
36
  salesChannels: Array<SaleChannel>;
@@ -74,7 +75,7 @@ export declare type BankFormValues = {
74
75
  };
75
76
  export declare type TaxFormValues = {
76
77
  vatId: string;
77
- confirmPolicy: false;
78
+ confirmPolicy: boolean;
78
79
  documentId?: Array<string>;
79
80
  };
80
81
  export interface IndividualMobileFormValues {
@@ -25,10 +25,12 @@ export interface SettingsData {
25
25
  businessCountry: CountryCode;
26
26
  countries: Array<CountryCode>;
27
27
  isValidOperator: boolean;
28
+ boardMaturity: boolean;
28
29
  }
29
30
  export interface SettingsState extends SharedState<SettingsData> {
30
31
  }
31
32
  export declare const settingsSlice: import("@reduxjs/toolkit").Slice<SettingsState, {
33
+ handelBoardMaturity: (state: import("immer/dist/internal").WritableDraft<SettingsState>, action: ActionState<boolean>) => void;
32
34
  handleIsTapOrigin: (state: import("immer/dist/internal").WritableDraft<SettingsState>, action: ActionState<boolean>) => void;
33
35
  handleOpen: (state: import("immer/dist/internal").WritableDraft<SettingsState>, action: ActionState<boolean>) => void;
34
36
  handleSkin: (state: SettingsState, action: ActionState<ThemeMode>) => void;
@@ -40,7 +42,7 @@ export declare const settingsSlice: import("@reduxjs/toolkit").Slice<SettingsSta
40
42
  handleSetAppConfig: (state: SettingsState, action: ActionState<LibConfig>) => void;
41
43
  handleSetCountryByIso2: (state: SettingsState, action: ActionState<string>) => void;
42
44
  }, "settings">;
43
- export declare const handleSkin: import("@reduxjs/toolkit").ActionCreatorWithPayload<ThemeMode, string>, handleLanguage: import("@reduxjs/toolkit").ActionCreatorWithPayload<LanguageMode, string>, handleActiveFlowScreens: import("@reduxjs/toolkit").ActionCreatorWithPayload<ScreenStepNavigation[], string>, handleNextScreenStep: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, string>, handlePrevScreenStep: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, string>, handleCurrentActiveScreen: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, handleSetAppConfig: import("@reduxjs/toolkit").ActionCreatorWithPayload<LibConfig, string>, handleOpen: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, handleSetCountryByIso2: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, handleIsTapOrigin: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
45
+ export declare const handleSkin: import("@reduxjs/toolkit").ActionCreatorWithPayload<ThemeMode, string>, handleLanguage: import("@reduxjs/toolkit").ActionCreatorWithPayload<LanguageMode, string>, handleActiveFlowScreens: import("@reduxjs/toolkit").ActionCreatorWithPayload<ScreenStepNavigation[], string>, handleNextScreenStep: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, string>, handlePrevScreenStep: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, string>, handleCurrentActiveScreen: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, handleSetAppConfig: import("@reduxjs/toolkit").ActionCreatorWithPayload<LibConfig, string>, handleOpen: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, handleSetCountryByIso2: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, handleIsTapOrigin: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, handelBoardMaturity: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
44
46
  declare const _default: import("redux").Reducer<SettingsState, import("redux").AnyAction>;
45
47
  export default _default;
46
48
  export declare const settingsSelector: (state: RootState) => SettingsState;
@@ -124,6 +124,7 @@ var initialState = {
124
124
  error: null,
125
125
  loading: true,
126
126
  data: {
127
+ boardMaturity: true,
127
128
  open: true,
128
129
  isTapOrigin: true,
129
130
  skin: getStoredData(LOCAL_STORAGE_KEYS.themeMode) || 'light',
@@ -141,6 +142,9 @@ export var settingsSlice = createSlice({
141
142
  name: 'settings',
142
143
  initialState: initialState,
143
144
  reducers: {
145
+ handelBoardMaturity: function (state, action) {
146
+ state.data.boardMaturity = action.payload;
147
+ },
144
148
  handleIsTapOrigin: function (state, action) {
145
149
  state.data.isTapOrigin = action.payload;
146
150
  },
@@ -259,6 +263,6 @@ export var settingsSlice = createSlice({
259
263
  });
260
264
  }
261
265
  });
262
- export var handleSkin = (_a = settingsSlice.actions, _a.handleSkin), handleLanguage = _a.handleLanguage, handleActiveFlowScreens = _a.handleActiveFlowScreens, handleNextScreenStep = _a.handleNextScreenStep, handlePrevScreenStep = _a.handlePrevScreenStep, handleCurrentActiveScreen = _a.handleCurrentActiveScreen, handleSetAppConfig = _a.handleSetAppConfig, handleOpen = _a.handleOpen, handleSetCountryByIso2 = _a.handleSetCountryByIso2, handleIsTapOrigin = _a.handleIsTapOrigin;
266
+ export var handleSkin = (_a = settingsSlice.actions, _a.handleSkin), handleLanguage = _a.handleLanguage, handleActiveFlowScreens = _a.handleActiveFlowScreens, handleNextScreenStep = _a.handleNextScreenStep, handlePrevScreenStep = _a.handlePrevScreenStep, handleCurrentActiveScreen = _a.handleCurrentActiveScreen, handleSetAppConfig = _a.handleSetAppConfig, handleOpen = _a.handleOpen, handleSetCountryByIso2 = _a.handleSetCountryByIso2, handleIsTapOrigin = _a.handleIsTapOrigin, handelBoardMaturity = _a.handelBoardMaturity;
263
267
  export default settingsSlice.reducer;
264
268
  export var settingsSelector = function (state) { return state.settings; };
@@ -390,5 +390,7 @@
390
390
  "brand": "الاسم التجاري",
391
391
  "try_again": "حاول مرة أخرى",
392
392
  "file_delete_error": "حدث خطأ ما في حذف الملف. حاول مرة اخرى",
393
- "file_download_error": "حدث خطأ ما في تحميل الملف. حاول مرة اخرى"
393
+ "file_download_error": "حدث خطأ ما في تحميل الملف. حاول مرة اخرى",
394
+ "title_brand_logo": "لوجو العلامة التجارية",
395
+ "description_brand_logo": "JPG or PNG files up to 4mb."
394
396
  }
@@ -420,5 +420,7 @@
420
420
  "brand": "Brand",
421
421
  "try_again": "Try again",
422
422
  "file_delete_error": "Something went wrong with deleting file. Please try again",
423
- "file_download_error": "Something went wrong with downloading file. Please try again"
423
+ "file_download_error": "Something went wrong with downloading file. Please try again",
424
+ "title_brand_logo": "Brand Logo",
425
+ "description_brand_logo": "JPG or PNG files up to 4mb."
424
426
  }
@@ -194,7 +194,8 @@ export declare const BUSINESS_FLOW_SUCCESS: {
194
194
  url: string;
195
195
  }[];
196
196
  export declare enum FileRemoveType {
197
- AOA_FILE_ID = "AOA_file_id"
197
+ AOA_FILE_ID = "AOA_file_id",
198
+ BRAND_LOGO_FILE_ID = "Brand_logo_id"
198
199
  }
199
200
  export declare enum FileType {
200
201
  IMAGES = "images",
@@ -699,6 +699,7 @@ export var BUSINESS_FLOW_SUCCESS = [{ name: 'business', status: 'completed', url
699
699
  export var FileRemoveType;
700
700
  (function (FileRemoveType) {
701
701
  FileRemoveType["AOA_FILE_ID"] = "AOA_file_id";
702
+ FileRemoveType["BRAND_LOGO_FILE_ID"] = "Brand_logo_id";
702
703
  })(FileRemoveType || (FileRemoveType = {}));
703
704
  export var FileType;
704
705
  (function (FileType) {
@@ -14,6 +14,7 @@ export declare const SAUDI_NUMBER_LENGTH = 9;
14
14
  export declare const MAX_FILE_SIZE = 5000000;
15
15
  export declare const MAX_FILE_SIZE_FOUR_MB = 4000000;
16
16
  export declare const VALID_FILE_FORMATS: string[];
17
+ export declare const VALID_FILE_FORMATS_FOR_IMAGE: string[];
17
18
  export declare const REGEX_FULL_NAME: RegExp;
18
19
  export declare const REGEX_WEBSITE: RegExp;
19
20
  export declare const REGEX_BENEFICIARY_NAME: RegExp;
@@ -14,6 +14,7 @@ export var SAUDI_NUMBER_LENGTH = 9;
14
14
  export var MAX_FILE_SIZE = 5000000;
15
15
  export var MAX_FILE_SIZE_FOUR_MB = 4000000;
16
16
  export var VALID_FILE_FORMATS = ['image/jpeg', 'image/png', 'image/jpg', 'application/pdf'];
17
+ export var VALID_FILE_FORMATS_FOR_IMAGE = ['image/jpeg', 'image/png', 'image/jpg'];
17
18
  export var REGEX_FULL_NAME = /^([a-zA-Z]{2,}\s{1}[a-zA-Z]{1,}|[a-zA-Z]+\s{1}[a-zA-Z.-]{1,}\s{1}[a-zA-Z.-]{1,}\s{1}[a-zA-Z]{1,}|[a-zA-Z]+\s{1}[a-zA-Z.-]{1,}\s{1}[a-zA-Z]{1,})$/g;
18
19
  export var REGEX_WEBSITE = /^[a-zA-Z0-9]+([\-\.]{1}[a-zA-Z0-9]+)*\.[a-zA-Z]{2,63}(:[0-9]{1,5})?(\/.*)?$/;
19
20
  export var REGEX_BENEFICIARY_NAME = /^([\u0600-\u065F\u066A-\u06EF\u06FA-\u06FFa-zA-Z()\s])*$/g;
@@ -1,5 +1,5 @@
1
1
  import { RootState } from '../../../app/store';
2
- import { BrandActivitiesFormValues, BrandFormValues, FlowsTypes, OTPFormValues, ResponseData, SharedState } from '../../../@types';
2
+ import { ActionState, BrandActivitiesFormValues, BrandFormValues, FlowsTypes, OTPFormValues, ResponseData, SharedState } from '../../../@types';
3
3
  import { CancelToken } from 'axios';
4
4
  interface VerifyLeadTokenProps {
5
5
  token: string;
@@ -93,13 +93,16 @@ export interface BrandData {
93
93
  export interface BrandState extends SharedState<BrandData> {
94
94
  customLoading?: boolean;
95
95
  uploading?: boolean;
96
+ uploadingBrandLogo?: boolean;
96
97
  }
97
98
  export declare const brandSlice: import("@reduxjs/toolkit").Slice<BrandState, {
98
99
  clearError: (state: BrandState) => void;
99
100
  stopLoader: (state: BrandState) => void;
100
101
  resetOTPScreen: (state: BrandState) => void;
102
+ uploadingBrandLogoStatus: (state: BrandState, action: ActionState<boolean>) => void;
103
+ clearBrandLogo: (state: BrandState) => void;
101
104
  }, "brand/store">;
102
- export declare const clearError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, stopLoader: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetOTPScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
105
+ export declare const clearError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, stopLoader: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetOTPScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, uploadingBrandLogoStatus: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, clearBrandLogo: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
103
106
  declare const _default: import("redux").Reducer<BrandState, import("redux").AnyAction>;
104
107
  export default _default;
105
108
  export declare const brandSelector: (state: RootState) => BrandState;
@@ -257,7 +257,7 @@ export var checkBrandNameAvailability = createAsyncThunk('checkBrandNameAvailabi
257
257
  });
258
258
  });
259
259
  export var updateBrand = createAsyncThunk('brandUpdateBrand', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
260
- var _a, settings, brand, responseBody, id, isNameEditable, isChannelServicesEditable, salesChannels, brandName, segment, teamSize, segmentId, teamSizeId, getAddress, channel_services, requestBody, brandData, activities, activityList;
260
+ var _a, settings, brand, responseBody, id, isNameEditable, isChannelServicesEditable, salesChannels, brandName, segment, teamSize, brandLogoId, segmentId, teamSizeId, getAddress, channel_services, requestBody, brandData, activities, activityList;
261
261
  var _b, _c, _d, _e;
262
262
  return __generator(this, function (_f) {
263
263
  switch (_f.label) {
@@ -267,7 +267,7 @@ export var updateBrand = createAsyncThunk('brandUpdateBrand', function (params,
267
267
  id = (_b = responseBody === null || responseBody === void 0 ? void 0 : responseBody.brand) === null || _b === void 0 ? void 0 : _b.id;
268
268
  isNameEditable = true;
269
269
  isChannelServicesEditable = true;
270
- salesChannels = params.salesChannels, brandName = params.brandName, segment = params.segment, teamSize = params.teamSize;
270
+ salesChannels = params.salesChannels, brandName = params.brandName, segment = params.segment, teamSize = params.teamSize, brandLogoId = params.brandLogoId;
271
271
  segmentId = segment && { id: segment.id };
272
272
  teamSizeId = teamSize && { id: teamSize.id };
273
273
  getAddress = function (value, isTwitter, isWeb) {
@@ -292,6 +292,7 @@ export var updateBrand = createAsyncThunk('brandUpdateBrand', function (params,
292
292
  requestBody = {
293
293
  id: id,
294
294
  name: isNameEditable ? { en: brandName, ar: brandName } : undefined,
295
+ logo: brandLogoId,
295
296
  segment: { type: segmentId, team: teamSizeId },
296
297
  channel_services: channel_services
297
298
  };
@@ -434,6 +435,7 @@ var initialState = {
434
435
  loading: false,
435
436
  customLoading: false,
436
437
  uploading: false,
438
+ uploadingBrandLogo: false,
437
439
  data: {
438
440
  flowName: FlowsTypes.BRAND,
439
441
  verify: {
@@ -469,6 +471,13 @@ export var brandSlice = createSlice({
469
471
  },
470
472
  resetOTPScreen: function (state) {
471
473
  state.data.otpData.otp = '';
474
+ },
475
+ uploadingBrandLogoStatus: function (state, action) {
476
+ state.uploadingBrandLogo = action.payload;
477
+ },
478
+ clearBrandLogo: function (state) {
479
+ var brand = (state.data.verify.responseBody || {}).brand;
480
+ state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), { brand: __assign(__assign({}, brand), { logo_details: undefined, logo: undefined }) });
472
481
  }
473
482
  },
474
483
  extraReducers: function (builder) {
@@ -666,6 +675,6 @@ export var brandSlice = createSlice({
666
675
  });
667
676
  }
668
677
  });
669
- export var clearError = (_a = brandSlice.actions, _a.clearError), stopLoader = _a.stopLoader, resetOTPScreen = _a.resetOTPScreen;
678
+ export var clearError = (_a = brandSlice.actions, _a.clearError), stopLoader = _a.stopLoader, resetOTPScreen = _a.resetOTPScreen, uploadingBrandLogoStatus = _a.uploadingBrandLogoStatus, clearBrandLogo = _a.clearBrandLogo;
670
679
  export default brandSlice.reducer;
671
680
  export var brandSelector = function (state) { return state.brand; };
@@ -16,20 +16,20 @@ import Beneficiary from './Beneficiary';
16
16
  import IBAN from './IBAN';
17
17
  import BankName from './BankName';
18
18
  import Button from '../../../shared/Button';
19
- import { useAppDispatch, useAppSelector, useSetFromDefaultValues } from '../../../../hooks';
19
+ import { useAppDispatch, useAppSelector, useFormReadOnly, useSetFromDefaultValues, useDataNoneEditable } from '../../../../hooks';
20
20
  import { BankKWFLValidation, BankValidation } from './validation';
21
21
  import { useTranslation } from 'react-i18next';
22
22
  import { useForm, FormProvider } from 'react-hook-form';
23
23
  import { yupResolver } from '@hookform/resolvers/yup';
24
24
  import { useLanguage } from '../../../../hooks';
25
25
  import { styled } from '@mui/material/styles';
26
- import { BusinessType } from '../../../../@types';
26
+ import { BusinessType, DocumentPurpose } from '../../../../@types';
27
27
  import { bankSelector, clearError, createBankAccount } from '../../../app/bank/bankStore';
28
28
  import Form from '../../../../components/Form';
29
29
  import { handleCurrentActiveScreen, settingsSelector } from '../../../../app/settings';
30
30
  import ConfirmPolicy from './ConfirmPolicy';
31
31
  import BankStatement from './BankStatement';
32
- import { isKW } from '../../../../utils';
32
+ import { getFileDetailsFromDocument, isKW } from '../../../../utils';
33
33
  var FormStyled = styled(Form)(function () { return ({
34
34
  display: 'flex',
35
35
  flexDirection: 'column',
@@ -79,6 +79,20 @@ var BankDetails = function () {
79
79
  if (error)
80
80
  dispatch(clearError());
81
81
  }, [methods.formState.isValid, methods.watch('bankStatementId')]);
82
- return (_jsx(ScreenContainer, { children: _jsx(FormProvider, __assign({}, methods, { children: _jsxs(FormStyled, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsx(Beneficiary, {}), _jsx(IBAN, { fetchingIban: function (value) { return setIbanChecking(value); }, ibanChecking: ibanChecking }), _jsx(BankName, {}), _jsx(BankStatement, { required: isKWCountry && isFL && !bankHasDocument }), _jsx(ConfirmPolicy, {}), _jsx(ButtonStyled, __assign({ onBackClicked: function () { return onBack(); }, disabled: disabled, disableBack: true, isAr: isAr, loading: loading, error: t(error || '') }, { children: t('confirm') }))] })) })) }));
82
+ var defaultBankFiles = React.useMemo(function () {
83
+ if (!(bank_account === null || bank_account === void 0 ? void 0 : bank_account.document))
84
+ return [];
85
+ return getFileDetailsFromDocument([bank_account.document], DocumentPurpose.BANK_STATEMENT);
86
+ }, [bank_account === null || bank_account === void 0 ? void 0 : bank_account.document]);
87
+ var readOnly = useFormReadOnly(methods, { bankStatementId: defaultBankFiles });
88
+ var noneEditable = useDataNoneEditable(bank_account === null || bank_account === void 0 ? void 0 : bank_account.data_status, [
89
+ 'beneficiary_name',
90
+ 'bank_name',
91
+ 'iban',
92
+ 'beneficiary_name',
93
+ 'bank_statement_file_id',
94
+ 'is_acknowledged'
95
+ ]);
96
+ return (_jsx(ScreenContainer, { children: _jsx(FormProvider, __assign({}, methods, { children: _jsxs(FormStyled, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsx(Beneficiary, { readOnly: readOnly['beneficiaryName'] || noneEditable['beneficiary_name'] }), _jsx(IBAN, { fetchingIban: function (value) { return setIbanChecking(value); }, ibanChecking: ibanChecking, readOnly: readOnly['iban'] || noneEditable['iban'] }), _jsx(BankName, { readOnly: readOnly['bankName'] || noneEditable['bank_name'] }), _jsx(BankStatement, { required: isKWCountry && isFL && !bankHasDocument, defaultFiles: defaultBankFiles, readOnly: readOnly['bankStatementId'] || noneEditable['bank_statement_file_id'] }), _jsx(ConfirmPolicy, { readOnly: readOnly['confirmPolicy'] || noneEditable['is_acknowledged'] }), _jsx(ButtonStyled, __assign({ onBackClicked: function () { return onBack(); }, disabled: disabled, disableBack: true, isAr: isAr, loading: loading, error: t(error || '') }, { children: t('confirm') }))] })) })) }));
83
97
  };
84
98
  export default BankDetails;
@@ -1,3 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare const BankName: () => JSX.Element;
2
+ declare type BankNameProps = {
3
+ readOnly?: boolean;
4
+ };
5
+ declare const BankName: ({ readOnly }: BankNameProps) => JSX.Element;
3
6
  export default BankName;
@@ -34,16 +34,17 @@ var InputStyled = styled(Input)(function () { return ({
34
34
  cursor: 'default'
35
35
  }
36
36
  }); });
37
- var BankName = function () {
38
- var _a, _b, _c;
37
+ var BankName = function (_a) {
38
+ var _b, _c, _d;
39
+ var readOnly = _a.readOnly;
39
40
  var t = useTranslation().t;
40
- var _d = useFormContext(), setValue = _d.setValue, control = _d.control;
41
+ var _e = useFormContext(), setValue = _e.setValue, control = _e.control;
41
42
  var data = useAppSelector(bankSelector).data;
42
43
  var bankNameControl = useController({ name: 'bankName', control: control });
43
44
  var bankNameValue = bankNameControl.field.value;
44
- var hasError = !!((_a = bankNameControl.fieldState.error) === null || _a === void 0 ? void 0 : _a.message);
45
+ var hasError = !!((_b = bankNameControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message);
45
46
  var bank_account = (data.verify.responseBody || {}).bank_account;
46
- var isNonEditable = ((_b = bank_account === null || bank_account === void 0 ? void 0 : bank_account.data_status) === null || _b === void 0 ? void 0 : _b.bank_name) === FieldType.NON_EDITABLE;
47
+ var isNonEditable = ((_c = bank_account === null || bank_account === void 0 ? void 0 : bank_account.data_status) === null || _c === void 0 ? void 0 : _c.bank_name) === FieldType.NON_EDITABLE;
47
48
  var clearValue = function () {
48
49
  bankNameControl.field.onChange('');
49
50
  };
@@ -52,12 +53,12 @@ var BankName = function () {
52
53
  var bankName = (_a = data.bankData.responseBody) === null || _a === void 0 ? void 0 : _a.bank_name;
53
54
  if (bankName && !bankNameValue)
54
55
  setValue('bankName', bankName);
55
- }, [(_c = data.bankData.responseBody) === null || _c === void 0 ? void 0 : _c.bank_name]);
56
+ }, [(_d = data.bankData.responseBody) === null || _d === void 0 ? void 0 : _d.bank_name]);
56
57
  var handleBankChange = function (_a) {
57
58
  var target = _a.target;
58
59
  var value = removeAllOtherThanAlphabetAndSpace(target.value);
59
60
  bankNameControl.field.onChange(value);
60
61
  };
61
- return (_jsx(Collapse, __assign({ in: !!bankNameValue }, { children: _jsx(FeatureStyled, { children: _jsx(InputStyled, { label: t('enter_bank_name'), placeholder: t('enter_bank_name_placeholder'), onChange: handleBankChange, value: bankNameValue, required: true, disabled: isNonEditable, endAdornment: !hasError && bankNameValue ? _jsx(CheckIcon, {}) : bankNameValue && _jsx(ClearIcon, { onClick: clearValue }) }) }) })));
62
+ return (_jsx(Collapse, __assign({ in: !!bankNameValue }, { children: _jsx(FeatureStyled, { children: _jsx(InputStyled, { readOnly: readOnly, label: t('enter_bank_name'), placeholder: t('enter_bank_name_placeholder'), onChange: handleBankChange, value: bankNameValue, required: true, disabled: isNonEditable, endAdornment: !hasError && bankNameValue ? _jsx(CheckIcon, {}) : bankNameValue && _jsx(ClearIcon, { onClick: clearValue }) }) }) })));
62
63
  };
63
64
  export default BankName;
@@ -1,6 +1,9 @@
1
1
  /// <reference types="react" />
2
+ import { FileDetails } from '../../../../@types';
2
3
  declare type BankStatementProps = {
3
4
  required: boolean;
5
+ readOnly?: boolean;
6
+ defaultFiles?: Array<FileDetails>;
4
7
  };
5
- declare const BankStatement: ({ required }: BankStatementProps) => JSX.Element;
8
+ declare const BankStatement: ({ required, readOnly, defaultFiles }: BankStatementProps) => JSX.Element;
6
9
  export default BankStatement;
@@ -1,12 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import React from 'react';
3
2
  import { styled } from '@mui/material/styles';
4
3
  import { ScreenContainer } from '../../../shared/Containers';
5
4
  import { useTranslation } from 'react-i18next';
6
5
  import { useController, useFormContext } from 'react-hook-form';
7
6
  import { useAppDispatch, useAppSelector } from '../../../../hooks';
8
7
  import { DocumentPurpose } from '../../../../@types';
9
- import { getFileDetailsFromDocument } from '../../../../utils';
10
8
  import { FileType } from '../../../../constants';
11
9
  import { bankSelector, bankStatementUploadingStatus } from '../../../app/bank/bankStore';
12
10
  import UploadMultipleFile from '../../../shared/UploadMultipleFile';
@@ -17,21 +15,18 @@ var FeatureStyled = styled(ScreenContainer)(function (_a) {
17
15
  });
18
16
  });
19
17
  var BankStatement = function (_a) {
20
- var _b;
21
- var required = _a.required;
18
+ var required = _a.required, readOnly = _a.readOnly, defaultFiles = _a.defaultFiles;
22
19
  var t = useTranslation().t;
23
20
  var control = useFormContext().control;
24
21
  var bankStatementIdControl = useController({ name: 'bankStatementId', control: control });
25
- var _c = useAppSelector(bankSelector), loading = _c.loading, data = _c.data;
22
+ var loading = useAppSelector(bankSelector).loading;
26
23
  var dispatch = useAppDispatch();
27
- var document = (((_b = data.verify.responseBody) === null || _b === void 0 ? void 0 : _b.bank_account) || {}).document;
28
24
  var handleBankStatementChange = function (ids) {
29
25
  bankStatementIdControl.field.onChange(ids);
30
26
  };
31
27
  var handleReset = function (ids) {
32
28
  bankStatementIdControl.field.onChange(ids);
33
29
  };
34
- var defaultFiles = React.useMemo(function () { return getFileDetailsFromDocument(document ? [document] : [], DocumentPurpose.BANK_STATEMENT); }, [document]);
35
- return (_jsx(FeatureStyled, { children: _jsx(UploadMultipleFile, { id: 'bankStatementId', control: control, label: t('title_bank_statement'), title: t('drag_and_drop'), subTitle: t('subtitle_drop'), dragDescription: t('desc_drag_and_drop'), uploadingTitle: t('file_uploading_title'), successTitle: t('success_upload_bank_statement'), onFileUploaded: handleBankStatementChange, isSubmitting: loading, required: required, onDeleteFile: handleReset, purpose: DocumentPurpose.BANK_STATEMENT, defaultFiles: defaultFiles, maxLimit: 4, fileUploadingStatus: function (uploading) { return dispatch(bankStatementUploadingStatus(uploading)); }, fileType: FileType.FILES }) }));
30
+ return (_jsx(FeatureStyled, { children: _jsx(UploadMultipleFile, { readOnly: readOnly, id: 'bankStatementId', control: control, label: t('title_bank_statement'), title: t('drag_and_drop'), subTitle: t('subtitle_drop'), dragDescription: t('desc_drag_and_drop'), uploadingTitle: t('file_uploading_title'), successTitle: t('success_upload_bank_statement'), onFileUploaded: handleBankStatementChange, isSubmitting: loading, required: required, onDeleteFile: handleReset, purpose: DocumentPurpose.BANK_STATEMENT, defaultFiles: defaultFiles, maxLimit: 4, fileUploadingStatus: function (uploading) { return dispatch(bankStatementUploadingStatus(uploading)); }, fileType: FileType.FILES }) }));
36
31
  };
37
32
  export default BankStatement;
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  export interface BeneficiaryProps {
3
+ readOnly?: boolean;
3
4
  }
4
- declare const Beneficiary: () => JSX.Element;
5
+ declare const Beneficiary: ({ readOnly }: BeneficiaryProps) => JSX.Element;
5
6
  export default Beneficiary;
@@ -21,17 +21,18 @@ var InputStyled = styled(Input)(function () { return ({
21
21
  textTransform: 'capitalize'
22
22
  }
23
23
  }); });
24
- var Beneficiary = function () {
25
- var _a, _b, _c;
24
+ var Beneficiary = function (_a) {
25
+ var _b, _c, _d;
26
+ var readOnly = _a.readOnly;
26
27
  var t = useTranslation().t;
27
- var _d = useFormContext(), setValue = _d.setValue, control = _d.control;
28
+ var _e = useFormContext(), setValue = _e.setValue, control = _e.control;
28
29
  var data = useAppSelector(bankSelector).data;
29
30
  var beneficiaryControl = useController({ name: 'beneficiaryName', control: control });
30
31
  var beneficiaryValue = beneficiaryControl.field.value;
31
- var hasError = (_a = beneficiaryControl.fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
32
- var error = (_b = beneficiaryControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
32
+ var hasError = (_b = beneficiaryControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
33
+ var error = (_c = beneficiaryControl.fieldState.error) === null || _c === void 0 ? void 0 : _c.message;
33
34
  var bank_account = (data.verify.responseBody || {}).bank_account;
34
- var isNonEditable = ((_c = bank_account === null || bank_account === void 0 ? void 0 : bank_account.data_status) === null || _c === void 0 ? void 0 : _c.beneficiary_name) === FieldType.NON_EDITABLE;
35
+ var isNonEditable = ((_d = bank_account === null || bank_account === void 0 ? void 0 : bank_account.data_status) === null || _d === void 0 ? void 0 : _d.beneficiary_name) === FieldType.NON_EDITABLE;
35
36
  React.useEffect(function () {
36
37
  var beneficiary_name = (bank_account || {}).beneficiary_name;
37
38
  if (beneficiary_name)
@@ -44,6 +45,6 @@ var Beneficiary = function () {
44
45
  var clearValue = function () {
45
46
  beneficiaryControl.field.onChange('');
46
47
  };
47
- return (_jsx(FeatureStyled, { children: _jsx(InputStyled, { label: t('beneficiary_name'), onChange: handleBeneficiaryChange, disabled: isNonEditable, value: beneficiaryValue, placeholder: t('beneficiary_name'), warningType: 'alert', warningMessage: error && t(error), required: true, endAdornment: !hasError && beneficiaryValue ? _jsx(CheckIcon, {}) : beneficiaryValue && _jsx(ClearIcon, { onClick: clearValue }) }) }));
48
+ return (_jsx(FeatureStyled, { children: _jsx(InputStyled, { readOnly: readOnly, label: t('beneficiary_name'), onChange: handleBeneficiaryChange, disabled: isNonEditable, value: beneficiaryValue, placeholder: t('beneficiary_name'), warningType: 'alert', warningMessage: error && t(error), required: true, endAdornment: !hasError && beneficiaryValue ? _jsx(CheckIcon, {}) : beneficiaryValue && _jsx(ClearIcon, { onClick: clearValue }) }) }));
48
49
  };
49
50
  export default Beneficiary;
@@ -1,3 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare const ConfirmPolicy: () => JSX.Element;
2
+ declare type ConfirmPolicyProps = {
3
+ readOnly?: boolean;
4
+ };
5
+ declare const ConfirmPolicy: ({ readOnly }: ConfirmPolicyProps) => JSX.Element;
3
6
  export default ConfirmPolicy;
@@ -52,14 +52,17 @@ var CheckboxStyled = styled(CheckBox)(function (_a) {
52
52
  var CollapseStyled = styled(Collapse)(function () { return ({
53
53
  width: '100%'
54
54
  }); });
55
- var ConfirmPolicy = function () {
56
- var _a;
55
+ var ConfirmPolicy = function (_a) {
56
+ var _b;
57
+ var readOnly = _a.readOnly;
57
58
  var t = useTranslation().t;
58
59
  var control = useFormContext().control;
59
60
  var confirmControl = useController({ control: control, name: 'confirmPolicy' });
60
61
  var confirmChecked = confirmControl.field.value;
61
- var warningMessage = (_a = confirmControl.fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
62
+ var warningMessage = (_b = confirmControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
62
63
  var handleConfirmCheckedChange = function (event, checked) {
64
+ if (readOnly)
65
+ return;
63
66
  confirmControl.field.onChange(checked);
64
67
  };
65
68
  return (_jsxs(ScreenContainer, { children: [_jsxs(ConfirmContainerStyled, { children: [_jsx(CheckboxStyled, { disableRipple: true, disableFocusRipple: true, focusRipple: false, checked: confirmChecked, onChange: handleConfirmCheckedChange }), _jsx(TextStyled, { children: t('bank_confirm_information') })] }), _jsx(CollapseStyled, __assign({ in: !!warningMessage }, { children: _jsx(Warning, __assign({ warningType: 'alert' }, { children: warningMessage && t(warningMessage) })) }))] }));
@@ -2,6 +2,7 @@
2
2
  export interface IBANProps {
3
3
  fetchingIban: (flag: boolean) => void;
4
4
  ibanChecking: boolean;
5
+ readOnly?: boolean;
5
6
  }
6
- declare const IBAN: ({ fetchingIban, ibanChecking }: IBANProps) => JSX.Element;
7
+ declare const IBAN: ({ fetchingIban, ibanChecking, readOnly }: IBANProps) => JSX.Element;
7
8
  export default IBAN;
@@ -61,7 +61,7 @@ var InputStyled = styled(Input)(function () { return ({
61
61
  var cancelToken = null;
62
62
  var IBAN = function (_a) {
63
63
  var _b, _c;
64
- var fetchingIban = _a.fetchingIban, ibanChecking = _a.ibanChecking;
64
+ var fetchingIban = _a.fetchingIban, ibanChecking = _a.ibanChecking, readOnly = _a.readOnly;
65
65
  var dispatch = useAppDispatch();
66
66
  var settingsData = useAppSelector(settingsSelector).data;
67
67
  var data = useAppSelector(bankSelector).data;
@@ -99,6 +99,6 @@ var IBAN = function (_a) {
99
99
  var clearValue = function () {
100
100
  ibanControl.field.onChange('');
101
101
  };
102
- return (_jsx(ScreenContainer, { children: _jsx(InputStyled, { label: t('enter_iban'), inputProps: { maxLength: MAX_IBAN_VALUE }, onChange: handleIbanChange, value: ibanValue, placeholder: t('iban_input_placeholder', { countrycode: settingsData.businessCountry.iso2.toUpperCase() }), warningType: 'alert', warningMessage: error && t(error), required: true, disabled: isNonEditable, endAdornment: ibanChecking ? (_jsx(CircularProgress, { size: 25, thickness: 5, sx: { height: 'auto !important' } })) : !error && ibanValue ? (_jsx(CheckIcon, {})) : (ibanValue && _jsx(ClearIcon, { onClick: clearValue })) }) }));
102
+ return (_jsx(ScreenContainer, { children: _jsx(InputStyled, { readOnly: readOnly, label: t('enter_iban'), inputProps: { maxLength: MAX_IBAN_VALUE }, onChange: handleIbanChange, value: ibanValue, placeholder: t('iban_input_placeholder', { countrycode: settingsData.businessCountry.iso2.toUpperCase() }), warningType: 'alert', warningMessage: error && t(error), required: true, disabled: isNonEditable, endAdornment: ibanChecking ? (_jsx(CircularProgress, { size: 25, thickness: 5, sx: { height: 'auto !important' } })) : !error && ibanValue ? (_jsx(CheckIcon, {})) : (ibanValue && _jsx(ClearIcon, { onClick: clearValue })) }) }));
103
103
  };
104
104
  export default IBAN;
@@ -12,6 +12,7 @@ export declare const InputLabelStyled: import("@emotion/styled").StyledComponent
12
12
  } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "key" | keyof React.HTMLAttributes<HTMLSpanElement>> & {
13
13
  ref?: ((instance: HTMLSpanElement | null) => void) | React.RefObject<HTMLSpanElement> | null | undefined;
14
14
  }, keyof import("@mui/material/OverridableComponent").CommonProps | ("border" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderColor" | "borderRadius" | "display" | "displayPrint" | "overflow" | "textOverflow" | "visibility" | "whiteSpace" | "flexBasis" | "flexDirection" | "flexWrap" | "justifyContent" | "alignItems" | "alignContent" | "order" | "flex" | "flexGrow" | "flexShrink" | "alignSelf" | "justifyItems" | "justifySelf" | "gap" | "columnGap" | "rowGap" | "gridColumn" | "gridRow" | "gridAutoFlow" | "gridAutoColumns" | "gridAutoRows" | "gridTemplateColumns" | "gridTemplateRows" | "gridTemplateAreas" | "gridArea" | "bgcolor" | "color" | "zIndex" | "position" | "top" | "right" | "bottom" | "left" | "boxShadow" | "width" | "maxWidth" | "minWidth" | "height" | "maxHeight" | "minHeight" | "boxSizing" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "my" | "p" | "pt" | "pr" | "pb" | "pl" | "px" | "py" | "margin" | "marginTop" | "marginRight" | "marginBottom" | "marginLeft" | "marginX" | "marginY" | "padding" | "paddingTop" | "paddingRight" | "paddingBottom" | "paddingLeft" | "paddingX" | "paddingY" | "typography" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "letterSpacing" | "lineHeight" | "textAlign" | "textTransform") | "children" | "sx" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
15
+ export declare const MandatoryStyled: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
15
16
  export declare const InputStyled: import("@emotion/styled").StyledComponent<Pick<import("../../../../components/Input").InputProps, "name" | "type" | "className" | "style" | "classes" | "color" | "margin" | "translate" | "slot" | "title" | "ref" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "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" | "sx" | "size" | "disabled" | "error" | "value" | "components" | "componentsProps" | "autoFocus" | "fullWidth" | "required" | "rows" | "inputProps" | "inputRef" | "readOnly" | "autoComplete" | "disableInjectingGlobalStyles" | "endAdornment" | "inputComponent" | "multiline" | "renderSuffix" | "maxRows" | "minRows" | "startAdornment" | "disableUnderline" | "onEnterPressed" | "warningMessage"> & {
16
17
  placeholder?: string | undefined;
17
18
  hide?: boolean | undefined;
@@ -86,6 +87,7 @@ export interface ActivitiesListProps {
86
87
  show: boolean;
87
88
  onListOpen?: () => void;
88
89
  onListClose?: () => void;
90
+ readOnly?: boolean;
89
91
  }
90
- declare const ActivitiesList: ({ show, ...rest }: ActivitiesListProps) => JSX.Element;
92
+ declare const ActivitiesList: ({ show, readOnly, ...rest }: ActivitiesListProps) => JSX.Element;
91
93
  export default ActivitiesList;
@@ -48,11 +48,14 @@ import { sortActivitiesByName } from '../../../../utils';
48
48
  import { ScreenContainer } from '../../../shared/Containers';
49
49
  import { brandSelector } from '../../../app/brand/brandStore';
50
50
  import CheckIcon from '@mui/icons-material/Check';
51
- import { MandatoryStyled } from './OperationStartDate';
52
51
  export var InputLabelStyled = styled(Text)(function (_a) {
53
52
  var theme = _a.theme;
54
53
  return (__assign({ color: alpha(theme.palette.text.primary, 0.4) }, theme.typography.caption));
55
54
  });
55
+ export var MandatoryStyled = styled('span')(function (_a) {
56
+ var theme = _a.theme;
57
+ return (__assign(__assign({ color: alpha(theme.palette.error.light, 0.4) }, theme.typography.h6), { fontWeight: theme.typography.fontWeightLight, verticalAlign: 'sub' }));
58
+ });
56
59
  export var InputStyled = styled(Input)(function (_a) {
57
60
  var theme = _a.theme;
58
61
  return ({
@@ -103,7 +106,7 @@ export var NameContainer = styled(Text, { shouldForwardProp: function (prop) { r
103
106
  });
104
107
  var ActivitiesList = function (_a) {
105
108
  var _b, _c, _d;
106
- var show = _a.show, rest = __rest(_a, ["show"]);
109
+ var show = _a.show, readOnly = _a.readOnly, rest = __rest(_a, ["show", "readOnly"]);
107
110
  var _e = React.useState([]), activitiesMenuList = _e[0], setActivitiesMenuList = _e[1];
108
111
  var _f = React.useState(null), anchorEl = _f[0], setAnchorEl = _f[1];
109
112
  var t = useTranslation().t;
@@ -114,7 +117,7 @@ var ActivitiesList = function (_a) {
114
117
  var controlValue = activitiesControl.field.value;
115
118
  var _g = React.useState(false), isHovered = _g[0], setIsHovered = _g[1];
116
119
  var verify = data.verify;
117
- var _h = verify.responseBody || {}, activities = _h.activities, brand = _h.brand;
120
+ var activities = (verify.responseBody || {}).activities;
118
121
  var isCR = ((_d = (_c = (_b = verify.responseBody) === null || _b === void 0 ? void 0 : _b.entity) === null || _c === void 0 ? void 0 : _c.license) === null || _d === void 0 ? void 0 : _d.type) === 'commercial_registration';
119
122
  var disabled = false;
120
123
  React.useEffect(function () {
@@ -126,6 +129,8 @@ var ActivitiesList = function (_a) {
126
129
  }, [activities]);
127
130
  var onOpenList = function (event) {
128
131
  var _a;
132
+ if (readOnly)
133
+ return;
129
134
  setAnchorEl(event.currentTarget);
130
135
  (_a = rest.onListOpen) === null || _a === void 0 ? void 0 : _a.call(rest);
131
136
  };
@@ -145,17 +150,17 @@ var ActivitiesList = function (_a) {
145
150
  activitiesControl.field.onChange(__spreadArray(__spreadArray([], controlValue, true), [item], false));
146
151
  };
147
152
  var getSelectedActivities = function () {
148
- var _a, _b;
153
+ var _a, _b, _c, _d;
149
154
  if ((controlValue === null || controlValue === void 0 ? void 0 : controlValue.length) > 1) {
150
155
  return (controlValue === null || controlValue === void 0 ? void 0 : controlValue.length) + ' ' + t('activities_selected');
151
156
  }
152
157
  var item = controlValue[0];
153
- return isAr ? (_a = item === null || item === void 0 ? void 0 : item.name) === null || _a === void 0 ? void 0 : _a.ar : (_b = item === null || item === void 0 ? void 0 : item.name) === null || _b === void 0 ? void 0 : _b.en;
158
+ return isAr ? (_b = (_a = item === null || item === void 0 ? void 0 : item.name) === null || _a === void 0 ? void 0 : _a.ar) !== null && _b !== void 0 ? _b : '' : (_d = (_c = item === null || item === void 0 ? void 0 : item.name) === null || _c === void 0 ? void 0 : _c.en) !== null && _d !== void 0 ? _d : '';
154
159
  };
155
160
  var getSelectedActivityFlag = function (item) {
156
161
  return controlValue === null || controlValue === void 0 ? void 0 : controlValue.find(function (activity) { return activity.id === item.id; });
157
162
  };
158
- return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, { children: [_jsxs(LabelContainerStyled, { children: [_jsxs(InputLabelStyled, { children: [t(isCR ? 'activities' : 'category'), " ", _jsx(MandatoryStyled, { children: "*" })] }), _jsx(Tooltip, __assign({ title: t('activities_name_hint'), onMouseOver: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, onTouchStartCapture: function () { return setIsHovered(true); } }, { children: isHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), _jsxs(Box, { children: [_jsx(InputStyled, { readOnly: true, disabled: disabled, value: getSelectedActivities(), placeholder: isCR ? t('choose_activities') : t('category_name'), onClick: disabled ? undefined : !!anchorEl ? function () { return onCloseList(); } : onOpenList, endAdornment: disabled ? _jsx(_Fragment, {}) : _jsx(ExpandIcon, { anchorEl: !!anchorEl }) }), _jsx(Collapse, __assign({ in: !!anchorEl, timeout: 300 }, { children: _jsx(SimpleListStyled, { searchKeyPath: 'name.en', searchValuePath: ['name.ar', 'name.en'], list: activitiesMenuList, onSelectItem: onSelectItem, renderItem: function (item) {
163
+ return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, { children: [_jsxs(LabelContainerStyled, { children: [_jsxs(InputLabelStyled, { children: [t(isCR ? 'activities' : 'category'), " ", _jsx(MandatoryStyled, { children: "*" })] }), _jsx(Tooltip, __assign({ title: t('activities_name_hint'), onMouseOver: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, onTouchStartCapture: function () { return setIsHovered(true); } }, { children: isHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), _jsxs(Box, { children: [_jsx(InputStyled, { readOnly: true, disabled: disabled, value: getSelectedActivities(), placeholder: isCR ? t('choose_activities') : t('category_name'), onClick: disabled ? undefined : !!anchorEl ? onCloseList : onOpenList, endAdornment: disabled ? _jsx(_Fragment, {}) : _jsx(ExpandIcon, { anchorEl: !!anchorEl }) }), _jsx(Collapse, __assign({ in: !!anchorEl, timeout: 300 }, { children: _jsx(SimpleListStyled, { searchKeyPath: 'name.en', searchValuePath: ['name.ar', 'name.en'], list: activitiesMenuList, onSelectItem: onSelectItem, renderItem: function (item) {
159
164
  var _a, _b, _c;
160
165
  return (_jsxs(_Fragment, { children: [_jsx(Box, __assign({ display: 'flex' }, { children: _jsx(NameContainer, __assign({ isSelected: item.id === ((_a = getSelectedActivityFlag(item)) === null || _a === void 0 ? void 0 : _a.id) }, { children: isAr ? (_b = item === null || item === void 0 ? void 0 : item.name) === null || _b === void 0 ? void 0 : _b.ar : (_c = item === null || item === void 0 ? void 0 : item.name) === null || _c === void 0 ? void 0 : _c.en })) })), getSelectedActivityFlag(item) && _jsx(CheckIconStyled, {})] }));
161
166
  } }) }))] })] }) })));