@tap-payments/auth-jsconnect 2.3.26-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.
- package/build/@types/app.d.ts +12 -1
- package/build/@types/app.js +1 -0
- package/build/@types/form.d.ts +2 -1
- package/build/app/settings.d.ts +3 -1
- package/build/app/settings.js +5 -1
- package/build/assets/locales/ar.json +3 -1
- package/build/assets/locales/en.json +3 -1
- package/build/constants/app.d.ts +2 -1
- package/build/constants/app.js +1 -0
- package/build/constants/validation.d.ts +1 -0
- package/build/constants/validation.js +1 -0
- package/build/features/app/brand/brandStore.d.ts +5 -2
- package/build/features/app/brand/brandStore.js +12 -3
- package/build/features/bank/screens/BankDetails/BankDetails.js +18 -4
- package/build/features/bank/screens/BankDetails/BankName.d.ts +4 -1
- package/build/features/bank/screens/BankDetails/BankName.js +8 -7
- package/build/features/bank/screens/BankDetails/BankStatement.d.ts +4 -1
- package/build/features/bank/screens/BankDetails/BankStatement.js +3 -8
- package/build/features/bank/screens/BankDetails/Beneficiary.d.ts +2 -1
- package/build/features/bank/screens/BankDetails/Beneficiary.js +8 -7
- package/build/features/bank/screens/BankDetails/ConfirmPolicy.d.ts +4 -1
- package/build/features/bank/screens/BankDetails/ConfirmPolicy.js +6 -3
- package/build/features/bank/screens/BankDetails/IBAN.d.ts +2 -1
- package/build/features/bank/screens/BankDetails/IBAN.js +2 -2
- package/build/features/brand/screens/BrandActivities/ActivitiesList.d.ts +3 -1
- package/build/features/brand/screens/BrandActivities/ActivitiesList.js +11 -6
- package/build/features/brand/screens/BrandActivities/BrandActivities.js +3 -1
- package/build/features/brand/screens/BrandActivities/CustomerBase.d.ts +2 -1
- package/build/features/brand/screens/BrandActivities/CustomerBase.js +12 -9
- package/build/features/brand/screens/BrandActivities/ExpectedCustomers.d.ts +2 -1
- package/build/features/brand/screens/BrandActivities/ExpectedCustomers.js +10 -7
- package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.d.ts +2 -1
- package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.js +9 -6
- package/build/features/brand/screens/BrandActivities/RefundPolicy.d.ts +4 -1
- package/build/features/brand/screens/BrandActivities/RefundPolicy.js +7 -4
- package/build/features/brand/screens/BrandActivities/TAC.d.ts +2 -1
- package/build/features/brand/screens/BrandActivities/TAC.js +3 -1
- package/build/features/brand/screens/BrandActivities/TransactionPolicy.d.ts +4 -1
- package/build/features/brand/screens/BrandActivities/TransactionPolicy.js +7 -4
- package/build/features/brand/screens/BrandInfo/BrandInfo.js +14 -9
- package/build/features/brand/screens/BrandInfo/BrandLogo.d.ts +9 -0
- package/build/features/brand/screens/BrandInfo/BrandLogo.js +52 -0
- package/build/features/brand/screens/BrandInfo/BrandName.d.ts +2 -1
- package/build/features/brand/screens/BrandInfo/BrandName.js +2 -2
- package/build/features/brand/screens/BrandInfo/SalesChannels.d.ts +2 -1
- package/build/features/brand/screens/BrandInfo/SalesChannels.js +2 -1
- package/build/features/brand/screens/BrandInfo/Segments.d.ts +2 -1
- package/build/features/brand/screens/BrandInfo/Segments.js +3 -1
- package/build/features/brand/screens/BrandInfo/TeamSize.d.ts +2 -1
- package/build/features/brand/screens/BrandInfo/TeamSize.js +3 -1
- package/build/features/brand/screens/BrandInfo/validation.d.ts +3 -0
- package/build/features/brand/screens/BrandInfo/validation.js +1 -0
- package/build/features/entity/screens/EntityCapital/ActivityList.d.ts +2 -1
- package/build/features/entity/screens/EntityCapital/ActivityList.js +12 -22
- package/build/features/entity/screens/EntityCapital/CapitalPaid.d.ts +2 -1
- package/build/features/entity/screens/EntityCapital/CapitalPaid.js +2 -1
- package/build/features/entity/screens/EntityCapital/CapitalShareCount.d.ts +2 -1
- package/build/features/entity/screens/EntityCapital/CapitalShareCount.js +2 -1
- package/build/features/entity/screens/EntityCapital/CapitalShareValue.d.ts +2 -1
- package/build/features/entity/screens/EntityCapital/CapitalShareValue.js +2 -1
- package/build/features/entity/screens/EntityCapital/EntityCapital.js +3 -1
- package/build/features/entity/screens/EntityName/Article.d.ts +4 -1
- package/build/features/entity/screens/EntityName/Article.js +3 -4
- package/build/features/entity/screens/EntityName/EntityName.js +6 -3
- package/build/features/entity/screens/EntityName/EntityTypeList.d.ts +2 -1
- package/build/features/entity/screens/EntityName/EntityTypeList.js +9 -19
- package/build/features/entity/screens/EntityName/ExpiryDate.d.ts +2 -1
- package/build/features/entity/screens/EntityName/ExpiryDate.js +2 -2
- package/build/features/entity/screens/EntityName/IssuingDate.d.ts +2 -1
- package/build/features/entity/screens/EntityName/IssuingDate.js +2 -2
- package/build/features/entity/screens/EntityName/LegalName.d.ts +2 -1
- package/build/features/entity/screens/EntityName/LegalName.js +2 -1
- package/build/features/entity/screens/EntityName/LicenseCertificate.d.ts +4 -1
- package/build/features/entity/screens/EntityName/LicenseCertificate.js +3 -8
- package/build/features/entity/screens/EntityName/LicenseNumber.d.ts +2 -1
- package/build/features/entity/screens/EntityName/LicenseNumber.js +2 -2
- package/build/features/entity/screens/EntityName/UnifiedNumber.d.ts +2 -1
- package/build/features/entity/screens/EntityName/UnifiedNumber.js +2 -2
- package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js +5 -2
- package/build/features/individual/screens/AdditionalIndividualInfo/CivilIDFile.d.ts +6 -3
- package/build/features/individual/screens/AdditionalIndividualInfo/CivilIDFile.js +3 -8
- package/build/features/individual/screens/AdditionalIndividualInfo/InfluencerSwitch.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/InfluencerSwitch.js +3 -4
- package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.js +11 -22
- package/build/features/individual/screens/AdditionalIndividualInfo/Occupation.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/Occupation.js +12 -23
- package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.js +3 -4
- package/build/features/individual/screens/AdditionalIndividualInfo/ShareCount.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/ShareCount.js +2 -2
- package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.js +2 -2
- package/build/features/individual/screens/AdditionalIndividualInfo/SignatureFile.d.ts +4 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/SignatureFile.js +3 -8
- package/build/features/individual/screens/AdditionalIndividualInfo/SourceOfIncome.d.ts +2 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/SourceOfIncome.js +12 -23
- package/build/features/individual/screens/IndividualList/MobileNumber.js +0 -1
- package/build/features/individual/screens/IndividualPersonalInfo/BirthCity.d.ts +1 -0
- package/build/features/individual/screens/IndividualPersonalInfo/BirthCity.js +3 -1
- package/build/features/individual/screens/IndividualPersonalInfo/BirthCountry.d.ts +1 -0
- package/build/features/individual/screens/IndividualPersonalInfo/BirthCountry.js +3 -1
- package/build/features/individual/screens/IndividualPersonalInfo/DOB.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/DOB.js +2 -2
- package/build/features/individual/screens/IndividualPersonalInfo/Email.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/Email.js +2 -4
- package/build/features/individual/screens/IndividualPersonalInfo/ExpiryDate.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/ExpiryDate.js +3 -4
- package/build/features/individual/screens/IndividualPersonalInfo/Gender.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/Gender.js +3 -1
- package/build/features/individual/screens/IndividualPersonalInfo/ID.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/ID.js +2 -7
- package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.js +3 -3
- package/build/features/individual/screens/IndividualPersonalInfo/IssuedCountry.d.ts +1 -0
- package/build/features/individual/screens/IndividualPersonalInfo/IssuedCountry.js +4 -6
- package/build/features/individual/screens/IndividualPersonalInfo/MobileNumber.d.ts +1 -0
- package/build/features/individual/screens/IndividualPersonalInfo/MobileNumber.js +2 -4
- package/build/features/individual/screens/IndividualPersonalInfo/Name.d.ts +2 -1
- package/build/features/individual/screens/IndividualPersonalInfo/Name.js +2 -2
- package/build/features/individual/screens/IndividualPersonalInfo/Nationality.d.ts +1 -0
- package/build/features/individual/screens/IndividualPersonalInfo/Nationality.js +4 -6
- package/build/features/individual/screens/IndividualPhoneInfo/MobileNumber.d.ts +1 -0
- package/build/features/individual/screens/IndividualPhoneInfo/MobileNumber.js +6 -3
- package/build/features/individual/screens/IndividualPhoneInfo/PhoneInfo.js +1 -1
- package/build/features/shared/SalesChannels/SaleChannelIconsInput.d.ts +2 -1
- package/build/features/shared/SalesChannels/SaleChannelIconsInput.js +3 -3
- package/build/features/shared/SalesChannels/SalesChannel.d.ts +2 -1
- package/build/features/shared/SalesChannels/SalesChannel.js +3 -3
- package/build/features/shared/UploadFile/FileUpload.d.ts +3 -1
- package/build/features/shared/UploadFile/FileUpload.js +14 -10
- package/build/features/shared/UploadFile/UploadWrapper.d.ts +3 -1
- package/build/features/shared/UploadFile/UploadWrapper.js +3 -2
- package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +2 -1
- package/build/features/shared/UploadMultipleFile/UploadFile.js +9 -5
- package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +2 -1
- package/build/features/shared/UploadMultipleFile/UploadMultipleFile.js +3 -3
- package/build/features/tax/screens/TaxDetails/ConfirmPolicy.d.ts +4 -1
- package/build/features/tax/screens/TaxDetails/ConfirmPolicy.js +6 -3
- package/build/features/tax/screens/TaxDetails/TaxDetails.js +4 -2
- package/build/features/tax/screens/TaxDetails/TaxDocument.d.ts +4 -1
- package/build/features/tax/screens/TaxDetails/TaxDocument.js +3 -8
- package/build/features/tax/screens/TaxDetails/VATId.d.ts +4 -1
- package/build/features/tax/screens/TaxDetails/VATId.js +5 -7
- package/build/hooks/index.d.ts +2 -0
- package/build/hooks/index.js +2 -0
- package/build/hooks/useAppConfig.d.ts +1 -1
- package/build/hooks/useAppConfig.js +4 -2
- package/build/hooks/useDataNoneEditable.d.ts +2 -0
- package/build/hooks/useDataNoneEditable.js +19 -0
- package/build/hooks/useFormReadOnly.d.ts +6 -0
- package/build/hooks/useFormReadOnly.js +38 -0
- package/build/utils/string.js +7 -8
- package/package.json +1 -1
- package/build/features/brand/screens/BrandActivities/OperationStartDate.d.ts +0 -20
- package/build/features/brand/screens/BrandActivities/OperationStartDate.js +0 -45
package/build/@types/app.d.ts
CHANGED
|
@@ -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 {};
|
package/build/@types/app.js
CHANGED
|
@@ -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) {
|
package/build/@types/form.d.ts
CHANGED
|
@@ -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:
|
|
78
|
+
confirmPolicy: boolean;
|
|
78
79
|
documentId?: Array<string>;
|
|
79
80
|
};
|
|
80
81
|
export interface IndividualMobileFormValues {
|
package/build/app/settings.d.ts
CHANGED
|
@@ -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;
|
package/build/app/settings.js
CHANGED
|
@@ -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
|
}
|
package/build/constants/app.d.ts
CHANGED
|
@@ -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",
|
package/build/constants/app.js
CHANGED
|
@@ -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
|
-
|
|
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;
|
|
@@ -34,16 +34,17 @@ var InputStyled = styled(Input)(function () { return ({
|
|
|
34
34
|
cursor: 'default'
|
|
35
35
|
}
|
|
36
36
|
}); });
|
|
37
|
-
var BankName = function () {
|
|
38
|
-
var
|
|
37
|
+
var BankName = function (_a) {
|
|
38
|
+
var _b, _c, _d;
|
|
39
|
+
var readOnly = _a.readOnly;
|
|
39
40
|
var t = useTranslation().t;
|
|
40
|
-
var
|
|
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 = !!((
|
|
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 = ((
|
|
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
|
-
}, [(
|
|
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
|
|
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
|
|
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
|
-
|
|
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;
|
|
@@ -21,17 +21,18 @@ var InputStyled = styled(Input)(function () { return ({
|
|
|
21
21
|
textTransform: 'capitalize'
|
|
22
22
|
}
|
|
23
23
|
}); });
|
|
24
|
-
var Beneficiary = function () {
|
|
25
|
-
var
|
|
24
|
+
var Beneficiary = function (_a) {
|
|
25
|
+
var _b, _c, _d;
|
|
26
|
+
var readOnly = _a.readOnly;
|
|
26
27
|
var t = useTranslation().t;
|
|
27
|
-
var
|
|
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 = (
|
|
32
|
-
var error = (
|
|
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 = ((
|
|
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;
|
|
@@ -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
|
|
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 = (
|
|
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
|
|
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 : (
|
|
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 ?
|
|
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
|
} }) }))] })] }) })));
|