@tap-payments/auth-jsconnect 2.8.63-development → 2.8.64-beta

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 (53) hide show
  1. package/build/@types/redux.d.ts +0 -1
  2. package/build/api/entity.d.ts +2 -2
  3. package/build/api/entity.js +4 -12
  4. package/build/api/index.d.ts +2 -2
  5. package/build/app/settings.js +2 -3
  6. package/build/components/Tooltip/Tooltip.js +1 -1
  7. package/build/constants/api.d.ts +1 -0
  8. package/build/constants/api.js +2 -0
  9. package/build/constants/app.d.ts +3 -0
  10. package/build/constants/app.js +3 -0
  11. package/build/features/app/bank/bankStore.d.ts +19 -13
  12. package/build/features/app/bank/bankStore.js +165 -183
  13. package/build/features/app/board/boardStore.js +10 -16
  14. package/build/features/app/brand/brandStore.d.ts +31 -16
  15. package/build/features/app/brand/brandStore.js +239 -243
  16. package/build/features/app/business/businessStore.js +1 -7
  17. package/build/features/app/entity/entityStore.d.ts +34 -20
  18. package/build/features/app/entity/entityStore.js +249 -204
  19. package/build/features/app/individual/individualStore.d.ts +36 -17
  20. package/build/features/app/individual/individualStore.js +270 -221
  21. package/build/features/app/password/passwordStore.d.ts +25 -21
  22. package/build/features/app/password/passwordStore.js +219 -196
  23. package/build/features/app/tax/taxStore.d.ts +7 -13
  24. package/build/features/app/tax/taxStore.js +147 -168
  25. package/build/features/auth/screens/AuthenticationList/LicenseNumber.js +2 -2
  26. package/build/features/bank/screens/BankDetails/BankDetails.js +4 -17
  27. package/build/features/brand/screens/BrandActivities/BrandActivities.js +11 -48
  28. package/build/features/brand/screens/BrandInfo/BrandInfo.js +4 -22
  29. package/build/features/brand/screens/BrandSegmentInfo/BrandSegmentInfo.js +6 -22
  30. package/build/features/business/screens/Activities/Activities.js +1 -9
  31. package/build/features/business/screens/BusinessType/LicenseNumber.js +2 -2
  32. package/build/features/business/screens/Customers/Customers.js +1 -9
  33. package/build/features/connect/screens/BusinessCountry/BusinessCountry.js +1 -7
  34. package/build/features/connectExpress/screens/AuthenticationList/LicenseNumber.js +2 -2
  35. package/build/features/connectExpress/screens/CollectBusinessInfo/LicenseNumber.js +2 -2
  36. package/build/features/entity/screens/EntityCapital/EntityCapital.js +9 -33
  37. package/build/features/entity/screens/EntityName/EntityName.js +14 -31
  38. package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js +10 -43
  39. package/build/features/individual/screens/IndividualList/IndividualList.js +0 -7
  40. package/build/features/individual/screens/IndividualList/UserList.js +3 -3
  41. package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.js +18 -73
  42. package/build/features/password/Password.js +1 -1
  43. package/build/features/shared/Button/FlowsButtons.js +1 -7
  44. package/build/features/signIn/SignIn.js +2 -10
  45. package/build/features/tax/screens/TaxDetails/TaxDetails.js +2 -7
  46. package/build/hooks/index.d.ts +0 -1
  47. package/build/hooks/index.js +0 -1
  48. package/build/utils/common.js +4 -4
  49. package/build/utils/validation.d.ts +1 -0
  50. package/build/utils/validation.js +3 -0
  51. package/package.json +2 -2
  52. package/build/hooks/useFormDirtyCheck.d.ts +0 -10
  53. package/build/hooks/useFormDirtyCheck.js +0 -66
@@ -6,7 +6,8 @@ interface VerifyLeadTokenProps {
6
6
  }
7
7
  export declare const verifyLeadToken: import("@reduxjs/toolkit").AsyncThunk<{
8
8
  data: any;
9
- entityData: any;
9
+ individualData: any;
10
+ boardResponse: any;
10
11
  token: string;
11
12
  }, VerifyLeadTokenProps, {
12
13
  state?: unknown;
@@ -42,12 +43,9 @@ export declare const retrieveBoardStatus: import("@reduxjs/toolkit").AsyncThunk<
42
43
  fulfilledMeta?: unknown;
43
44
  rejectedMeta?: unknown;
44
45
  }>;
45
- type RetrieveBoardProps = {
46
- boardId: string;
47
- individualId: string;
48
- individualType: string;
49
- };
50
- export declare const retrieveBoardDetails: import("@reduxjs/toolkit").AsyncThunk<any, RetrieveBoardProps, {
46
+ export declare const retrieveEntityInfo: import("@reduxjs/toolkit").AsyncThunk<{
47
+ data: any;
48
+ }, string, {
51
49
  state?: unknown;
52
50
  dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
53
51
  extra?: unknown;
@@ -59,7 +57,6 @@ export declare const retrieveBoardDetails: import("@reduxjs/toolkit").AsyncThunk
59
57
  }>;
60
58
  export declare const verifyTaxLeadOTP: import("@reduxjs/toolkit").AsyncThunk<{
61
59
  data: any;
62
- entityData: any;
63
60
  formData: OTPFormValues;
64
61
  }, OTPFormValues, {
65
62
  state?: unknown;
@@ -85,11 +82,8 @@ export declare const updateTaxInfo: import("@reduxjs/toolkit").AsyncThunk<{
85
82
  rejectedMeta?: unknown;
86
83
  }>;
87
84
  export declare const updateLeadSuccess: import("@reduxjs/toolkit").AsyncThunk<{
88
- data: any;
89
- flows?: undefined;
90
- } | {
91
- data: any;
92
- flows: any;
85
+ response: any;
86
+ formData: void;
93
87
  } | undefined, void, {
94
88
  state?: unknown;
95
89
  dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
@@ -55,10 +55,10 @@ import { getRecentDocumentBasedOnPurpose, hasNoneEditableValue, retrieveIndividu
55
55
  export var verifyLeadToken = createAsyncThunk('taxVerifyLeadToken', function (_a, thunkApi) {
56
56
  var token = _a.token, isInternally = _a.isInternally;
57
57
  return __awaiter(void 0, void 0, void 0, function () {
58
- var payload, data, entityData, _b, config, country_code, entity_id, boardId, publicKey, data_1;
59
- var _c, _d, _e;
60
- return __generator(this, function (_f) {
61
- switch (_f.label) {
58
+ var payload, data, boardData, boardInfoData, individualData, publicKey, countryIso2, _b, id_1, type_1, serviceCallBack, _c, boardRes, individualRes;
59
+ var _d, _e, _f, _g, _h;
60
+ return __generator(this, function (_j) {
61
+ switch (_j.label) {
62
62
  case 0:
63
63
  payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
64
64
  notification: {
@@ -67,48 +67,56 @@ export var verifyLeadToken = createAsyncThunk('taxVerifyLeadToken', function (_a
67
67
  }));
68
68
  return [4, API.leadService.verifyLeadToken(payload)];
69
69
  case 1:
70
- data = (_f.sent()).data;
71
- entityData = undefined;
72
- if (((_c = data === null || data === void 0 ? void 0 : data.errors) === null || _c === void 0 ? void 0 : _c.length) || (data === null || data === void 0 ? void 0 : data.mw_error))
70
+ data = (_j.sent()).data;
71
+ individualData = undefined;
72
+ if (((_d = data === null || data === void 0 ? void 0 : data.errors) === null || _d === void 0 ? void 0 : _d.length) || (data === null || data === void 0 ? void 0 : data.mw_error))
73
73
  throw new Error(data.errors[0].description || (data === null || data === void 0 ? void 0 : data.mw_error));
74
74
  if (isInternally)
75
75
  data.step_name = TAX_STEP_NAMES.TAX_INFO;
76
- _b = data || {}, config = _b.config, country_code = _b.country_code, entity_id = _b.entity_id, boardId = _b.id;
77
- publicKey = config === null || config === void 0 ? void 0 : config.public_key;
78
- if (publicKey)
76
+ publicKey = (_e = data === null || data === void 0 ? void 0 : data.config) === null || _e === void 0 ? void 0 : _e.public_key;
77
+ countryIso2 = data === null || data === void 0 ? void 0 : data.country_code;
78
+ if (publicKey) {
79
79
  thunkApi.dispatch(handlePublicKey(publicKey));
80
- if (country_code)
81
- thunkApi.dispatch(handleSetCountryByIso2(country_code));
82
- if (!(data.step_name === TAX_STEP_NAMES.PHONE_AUTH)) return [3, 2];
83
- thunkApi.dispatch(handleCurrentActiveScreen('TAX_VERIFY_STEP'));
84
- return [3, 7];
80
+ }
81
+ if (countryIso2)
82
+ thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
83
+ if (!(data === null || data === void 0 ? void 0 : data.id)) return [3, 6];
84
+ if (!data.board_info_id) return [3, 3];
85
+ return [4, API.boardService.retrieveBoardInfo({ id: data.id, infoId: data.board_info_id })];
85
86
  case 2:
86
- if (!(data.step_name === TAX_STEP_NAMES.TAX_INFO)) return [3, 7];
87
- if (!!entity_id) return [3, 4];
88
- return [4, API.boardService.retrieveBoardDetails(boardId)];
89
- case 3:
90
- data_1 = _f.sent();
91
- if (!((_d = data_1 === null || data_1 === void 0 ? void 0 : data_1.entity) === null || _d === void 0 ? void 0 : _d.id))
92
- throw new Error('entity_id_missing');
93
- entityData = data_1;
94
- return [3, 6];
95
- case 4: return [4, API.entityService.retrieveEntity(entity_id)];
87
+ boardInfoData = _j.sent();
88
+ _j.label = 3;
89
+ case 3: return [4, API.boardService.retrieveBoardDetails(data.id)];
90
+ case 4:
91
+ boardData = _j.sent();
92
+ _b = ((_f = boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification) === null || _f === void 0 ? void 0 : _f.recipient) || {}, id_1 = _b.id, type_1 = _b.type;
93
+ serviceCallBack = function () { return API.individualService.retrieveIndividual(id_1, type_1); };
94
+ return [4, retrieveIndividualData(type_1, boardData, serviceCallBack)];
96
95
  case 5:
97
- entityData = _f.sent();
98
- _f.label = 6;
96
+ _c = _j.sent(), boardRes = _c.boardRes, individualRes = _c.individualRes;
97
+ boardData = boardRes;
98
+ individualData = individualRes;
99
+ _j.label = 6;
99
100
  case 6:
100
- if (!country_code && ((_e = entityData === null || entityData === void 0 ? void 0 : entityData.entity) === null || _e === void 0 ? void 0 : _e.country))
101
- thunkApi.dispatch(handleSetCountryByIso2(entityData.entity.country));
102
- if (isInternally)
103
- sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP')); });
104
- else
105
- thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP'));
106
- _f.label = 7;
107
- case 7: return [2, {
108
- data: data,
109
- entityData: entityData === null || entityData === void 0 ? void 0 : entityData.entity,
110
- token: token
111
- }];
101
+ if (!countryIso2 && ((_g = boardData === null || boardData === void 0 ? void 0 : boardData.entity) === null || _g === void 0 ? void 0 : _g.country)) {
102
+ countryIso2 = boardData.entity.country;
103
+ thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
104
+ }
105
+ if (data.step_name === TAX_STEP_NAMES.PHONE_AUTH) {
106
+ thunkApi.dispatch(handleCurrentActiveScreen('TAX_VERIFY_STEP'));
107
+ }
108
+ else if (data.step_name === TAX_STEP_NAMES.TAX_INFO) {
109
+ if (isInternally)
110
+ sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP')); });
111
+ else
112
+ thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP'));
113
+ }
114
+ return [2, {
115
+ data: data,
116
+ individualData: individualData,
117
+ boardResponse: __assign(__assign({}, boardData === null || boardData === void 0 ? void 0 : boardData.business), { entity: boardData === null || boardData === void 0 ? void 0 : boardData.entity, brand: boardData === null || boardData === void 0 ? void 0 : boardData.brand, user: boardData === null || boardData === void 0 ? void 0 : boardData.user, bank_account: boardData === null || boardData === void 0 ? void 0 : boardData.bank_account, vatID: (_h = boardData === null || boardData === void 0 ? void 0 : boardData.entity) === null || _h === void 0 ? void 0 : _h.vat_id, merchant: boardData === null || boardData === void 0 ? void 0 : boardData.merchant, individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals, business: boardData === null || boardData === void 0 ? void 0 : boardData.business, notification: boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status }),
118
+ token: token
119
+ }];
112
120
  }
113
121
  });
114
122
  });
@@ -131,139 +139,98 @@ export var resendOTP = createAsyncThunk('resendOTPTax', function (params, thunkA
131
139
  });
132
140
  }); });
133
141
  export var retrieveBoardStatus = createAsyncThunk('tax/retrieveBoardStatus', function (parmas, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
134
- var tax, _a, board_id, board_info_id, recipient, _b, id, type, data;
135
- return __generator(this, function (_c) {
136
- switch (_c.label) {
142
+ var tax, board_id, data;
143
+ return __generator(this, function (_a) {
144
+ switch (_a.label) {
137
145
  case 0:
138
146
  tax = thunkApi.getState().tax;
139
- _a = tax.data.verify.responseBody || {}, board_id = _a.board_id, board_info_id = _a.board_info_id, recipient = _a.recipient;
140
- if (!board_id || !board_info_id)
141
- throw new Error('Internal server error');
142
- _b = recipient || {}, id = _b.id, type = _b.type;
143
- return [4, Promise.all([
144
- API.boardService.retrieveBoardInfoStatus(board_id),
145
- thunkApi.dispatch(retrieveBoardDetails({ boardId: board_id, individualId: id, individualType: type })).unwrap()
146
- ])];
147
+ board_id = (tax.data.verify.responseBody || {}).board_id;
148
+ return [4, API.boardService.retrieveBoardInfoStatus(board_id)];
147
149
  case 1:
148
- data = (_c.sent())[0];
150
+ data = _a.sent();
149
151
  thunkApi.dispatch(handlePrevScreenStep());
150
152
  return [2, { flows: (data === null || data === void 0 ? void 0 : data.info) || [] }];
151
153
  }
152
154
  });
153
155
  }); });
154
- export var retrieveBoardDetails = createAsyncThunk('tax/retrieveBrandInfo', function (_a) {
155
- var boardId = _a.boardId, id = _a.individualId, type = _a.individualType;
156
- return __awaiter(void 0, void 0, void 0, function () {
157
- var data, individualData, boardData, serviceCallBack, _b, boardRes, individualRes;
158
- var _c, _d, _e, _f;
159
- return __generator(this, function (_g) {
160
- switch (_g.label) {
161
- case 0: return [4, API.boardService.retrieveBoardDetails(boardId)];
162
- case 1:
163
- data = _g.sent();
164
- individualData = data === null || data === void 0 ? void 0 : data.user;
165
- boardData = data;
166
- if (!(((_c = data === null || data === void 0 ? void 0 : data.user) === null || _c === void 0 ? void 0 : _c.id) !== id)) return [3, 3];
167
- serviceCallBack = function () { return API.individualService.retrieveIndividual(id, type); };
168
- return [4, retrieveIndividualData(type, data, serviceCallBack)];
169
- case 2:
170
- _b = _g.sent(), boardRes = _b.boardRes, individualRes = _b.individualRes;
171
- individualData = individualRes;
172
- boardData = boardRes;
173
- _g.label = 3;
174
- case 3: return [2, __assign(__assign({}, boardData), { brand: boardData === null || boardData === void 0 ? void 0 : boardData.brand, bank_account: boardData === null || boardData === void 0 ? void 0 : boardData.bank_account, entity: boardData === null || boardData === void 0 ? void 0 : boardData.entity, merchant: boardData === null || boardData === void 0 ? void 0 : boardData.merchant, name: (_d = boardData === null || boardData === void 0 ? void 0 : boardData.user) === null || _d === void 0 ? void 0 : _d.names, vatID: (_e = boardData === null || boardData === void 0 ? void 0 : boardData.entity) === null || _e === void 0 ? void 0 : _e.vat_id, individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals, contact: (_f = boardData === null || boardData === void 0 ? void 0 : boardData.user) === null || _f === void 0 ? void 0 : _f.contact, user: individualData, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status })];
175
- }
176
- });
156
+ export var retrieveEntityInfo = createAsyncThunk('retrieveTaxEntityInfo', function (entityID) { return __awaiter(void 0, void 0, void 0, function () {
157
+ var data;
158
+ return __generator(this, function (_a) {
159
+ switch (_a.label) {
160
+ case 0: return [4, API.entityService.retrieveEntityInfo(entityID)];
161
+ case 1:
162
+ data = (_a.sent()).data;
163
+ return [2, { data: data }];
164
+ }
177
165
  });
178
- });
166
+ }); });
179
167
  export var verifyTaxLeadOTP = createAsyncThunk('verifyTaxLeadOTP', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
180
- var _a, tax, settings, responseBody, payload, data, _b, config, entity_id, boardId, country_code, entityData, publicKey, countryIso2, data_2;
181
- var _c, _d, _e, _f, _g, _h;
182
- return __generator(this, function (_j) {
183
- switch (_j.label) {
168
+ var _a, tax, settings, responseBody, payload, data, publicKey;
169
+ var _b, _c, _d, _e, _f;
170
+ return __generator(this, function (_g) {
171
+ switch (_g.label) {
184
172
  case 0:
185
173
  _a = thunkApi.getState(), tax = _a.tax, settings = _a.settings;
186
174
  responseBody = tax.data.verify.responseBody;
187
175
  payload = {
188
176
  data: params.otp,
189
- service_name: (_c = responseBody === null || responseBody === void 0 ? void 0 : responseBody.verification_by) === null || _c === void 0 ? void 0 : _c.service_name,
177
+ service_name: (_b = responseBody === null || responseBody === void 0 ? void 0 : responseBody.verification_by) === null || _b === void 0 ? void 0 : _b.service_name,
190
178
  verify_token: responseBody === null || responseBody === void 0 ? void 0 : responseBody.verify_token,
191
179
  step_name: TAX_STEP_NAMES.PHONE_AUTH,
192
180
  encryption_contract: ['data']
193
181
  };
194
182
  return [4, API.leadService.verifyLeadOTP(payload)];
195
183
  case 1:
196
- data = (_j.sent()).data;
197
- if ((_d = data.errors) === null || _d === void 0 ? void 0 : _d.length)
184
+ data = (_g.sent()).data;
185
+ if ((_c = data.errors) === null || _c === void 0 ? void 0 : _c.length)
198
186
  throw new Error(data.errors[0].description);
199
- _b = data || {}, config = _b.config, entity_id = _b.entity_id, boardId = _b.id, country_code = _b.country_code;
200
- entityData = undefined;
201
- publicKey = config === null || config === void 0 ? void 0 : config.public_key;
202
- countryIso2 = country_code || (responseBody === null || responseBody === void 0 ? void 0 : responseBody.country_code);
203
- if (publicKey)
187
+ publicKey = (_d = data === null || data === void 0 ? void 0 : data.config) === null || _d === void 0 ? void 0 : _d.public_key;
188
+ if (publicKey) {
204
189
  thunkApi.dispatch(handlePublicKey(publicKey));
205
- if (countryIso2)
206
- thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
207
- if (!!entity_id) return [3, 3];
208
- return [4, API.boardService.retrieveBoardDetails(boardId)];
209
- case 2:
210
- data_2 = _j.sent();
211
- if (!((_e = data_2 === null || data_2 === void 0 ? void 0 : data_2.entity) === null || _e === void 0 ? void 0 : _e.id))
212
- throw new Error('entity_id_missing');
213
- entityData = data_2;
214
- return [3, 5];
215
- case 3: return [4, API.entityService.retrieveEntity(entity_id)];
216
- case 4:
217
- entityData = _j.sent();
218
- _j.label = 5;
219
- case 5:
220
- if (!countryIso2 && ((_f = entityData === null || entityData === void 0 ? void 0 : entityData.entity) === null || _f === void 0 ? void 0 : _f.country))
221
- thunkApi.dispatch(handleSetCountryByIso2(entityData.entity.country));
222
- (_h = (_g = settings.data.appConfig).onStepCompleted) === null || _h === void 0 ? void 0 : _h.call(_g, settings.data.activeScreen.name, { otp: params.otp });
190
+ }
191
+ (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, { otp: params.otp });
223
192
  sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP')); });
224
- return [2, { data: data, entityData: entityData === null || entityData === void 0 ? void 0 : entityData.entity, formData: params }];
193
+ return [2, { data: data, formData: params }];
225
194
  }
226
195
  });
227
196
  }); });
228
197
  export var updateTaxInfo = createAsyncThunk('updateTaxInfo', function (_a, thunkApi) {
229
- var formData = _a.formData, originalFormData = _a.originalFormData, isDirty = _a.isDirty;
198
+ var formData = _a.formData, originalFormData = _a.originalFormData;
230
199
  return __awaiter(void 0, void 0, void 0, function () {
231
- var _b, settings, tax, _c, entity, recipient, _d, id, data_status, documents, isTaxNumberNonEditable, isConfirmPolicyNonEditable, isDocumentsNonEditable, document, vatId, confirmPolicy, documentId, data, requestBody, documentBody, documentData, documentBody, documentData;
232
- var _e, _f;
233
- return __generator(this, function (_g) {
234
- switch (_g.label) {
200
+ var _b, settings, tax, _c, entity, notification, _d, id, data_status, documents, isTaxNumberNonEditable, isConfirmPolicyNonEditable, isDocumentsNonEditable, document, vatId, confirmPolicy, documentId, requestBody, data, documentBody, _e, documentBody, _f;
201
+ var _g, _h, _j, _k;
202
+ return __generator(this, function (_l) {
203
+ switch (_l.label) {
235
204
  case 0:
236
205
  _b = thunkApi.getState(), settings = _b.settings, tax = _b.tax;
237
- _c = tax.data.verify.responseBody || {}, entity = _c.entity, recipient = _c.recipient;
206
+ _c = tax.data.verify.responseBody || {}, entity = _c.entity, notification = _c.notification;
238
207
  _d = entity || {}, id = _d.id, data_status = _d.data_status, documents = _d.documents;
239
208
  isTaxNumberNonEditable = hasNoneEditableValue(data_status, 'tax_number');
240
209
  isConfirmPolicyNonEditable = hasNoneEditableValue(data_status, 'is_vat_acknowledged');
241
210
  isDocumentsNonEditable = hasNoneEditableValue(data_status, 'documents');
242
211
  document = getRecentDocumentBasedOnPurpose(documents, DocumentPurpose.TAX_DOCUMENT);
243
212
  vatId = formData.vatId, confirmPolicy = formData.confirmPolicy, documentId = formData.documentId;
244
- data = entity || {};
245
213
  requestBody = __assign(__assign({ id: id, vat_id: isTaxNumberNonEditable ? undefined : vatId }, (!isConfirmPolicyNonEditable && {
246
- vat_acknowledged_by: recipient === null || recipient === void 0 ? void 0 : recipient.id,
214
+ vat_acknowledged_by: (_g = notification === null || notification === void 0 ? void 0 : notification.recipient) === null || _g === void 0 ? void 0 : _g.id,
247
215
  is_vat_acknowledged: confirmPolicy
248
216
  })), { step_name: TAX_STEP_NAMES.TAX_INFO });
249
- if (!isDirty) return [3, 2];
250
217
  return [4, API.entityService.updateEntityInfo(requestBody)];
251
218
  case 1:
252
- data = _g.sent();
253
- _g.label = 2;
254
- case 2:
255
- if (!(!isDocumentsNonEditable && (documentId || []).length > 0)) return [3, 6];
256
- if (!(document === null || document === void 0 ? void 0 : document.id)) return [3, 4];
219
+ data = (_l.sent()).data;
220
+ if ((_h = data.errors) === null || _h === void 0 ? void 0 : _h.length)
221
+ throw new Error(data.errors[0].description);
222
+ if (!(!isDocumentsNonEditable && (documentId || []).length > 0)) return [3, 5];
223
+ if (!(document === null || document === void 0 ? void 0 : document.id)) return [3, 3];
257
224
  documentBody = {
258
225
  id: document === null || document === void 0 ? void 0 : document.id,
259
226
  images: documentId
260
227
  };
228
+ _e = data;
261
229
  return [4, API.documentService.addFilesToExistingDocument(documentBody)];
230
+ case 2:
231
+ _e.documentData = _l.sent();
232
+ return [3, 5];
262
233
  case 3:
263
- documentData = _g.sent();
264
- data = __assign(__assign({}, data), { documentData: documentData });
265
- return [3, 6];
266
- case 4:
267
234
  documentBody = {
268
235
  entity_id: id || '',
269
236
  documents: [
@@ -273,53 +240,55 @@ export var updateTaxInfo = createAsyncThunk('updateTaxInfo', function (_a, thunk
273
240
  }
274
241
  ]
275
242
  };
243
+ _f = data;
276
244
  return [4, API.documentService.updateDocumentInfo(documentBody)];
245
+ case 4:
246
+ _f.documentData = _l.sent();
247
+ _l.label = 5;
277
248
  case 5:
278
- documentData = _g.sent();
279
- data = __assign(__assign({}, data), { documentData: documentData });
280
- _g.label = 6;
281
- case 6:
282
249
  thunkApi.dispatch(handleNextScreenStep());
283
- (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, requestBody);
250
+ (_k = (_j = settings.data.appConfig).onStepCompleted) === null || _k === void 0 ? void 0 : _k.call(_j, settings.data.activeScreen.name, requestBody);
284
251
  return [2, { data: data, formData: originalFormData }];
285
252
  }
286
253
  });
287
254
  });
288
255
  });
289
256
  export var updateLeadSuccess = createAsyncThunk('taxUpdateLeadSuccess', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
290
- var _a, settings, tax, _b, board_id, infoId, _c, showBoard, mode, payload, data, _d, id, type, boardInfoStatusData;
291
- var _e, _f, _g, _h, _j, _k, _l, _m, _o;
292
- return __generator(this, function (_p) {
293
- switch (_p.label) {
257
+ var _a, settings, tax, _b, id, infoId, _c, showBoard, mode, payload, data, boardInfoData, boardData;
258
+ var _d, _e, _f, _g, _h, _j, _k, _l, _m;
259
+ return __generator(this, function (_o) {
260
+ switch (_o.label) {
294
261
  case 0:
295
262
  _a = thunkApi.getState(), settings = _a.settings, tax = _a.tax;
296
- _b = tax.data.verify.responseBody || {}, board_id = _b.board_id, infoId = _b.board_info_id;
263
+ _b = tax.data.verify.responseBody || {}, id = _b.board_id, infoId = _b.board_info_id;
297
264
  _c = settings.data.appConfig, showBoard = _c.showBoard, mode = _c.mode;
298
- if (!board_id)
265
+ if (!id)
299
266
  return [2];
300
267
  payload = {
301
268
  lang: settings.data.language,
302
269
  step_name: TAX_STEP_NAMES.TAX_SUCCESS
303
270
  };
304
- return [4, API.boardService.updateBoardInfo(__assign({ id: board_id, infoId: infoId }, payload))];
271
+ return [4, API.boardService.updateBoardInfo(__assign({ id: id, infoId: infoId }, payload))];
305
272
  case 1:
306
- data = _p.sent();
273
+ data = _o.sent();
307
274
  if (!showBoard && mode === 'content') {
308
- (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, {});
309
- (_h = (_g = settings.data.appConfig).onFlowCompleted) === null || _h === void 0 ? void 0 : _h.call(_g, { data: data });
310
- return [2, { data: data }];
275
+ (_e = (_d = settings.data.appConfig).onStepCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, settings.data.activeScreen.name, {});
276
+ (_g = (_f = settings.data.appConfig).onFlowCompleted) === null || _g === void 0 ? void 0 : _g.call(_f, { data: data });
277
+ return [2, { response: __assign({}, data), formData: params }];
311
278
  }
312
- _d = ((_j = data === null || data === void 0 ? void 0 : data.notification) === null || _j === void 0 ? void 0 : _j.recipient) || {}, id = _d.id, type = _d.type;
313
- return [4, Promise.all([
314
- API.boardService.retrieveBoardInfoStatus(board_id),
315
- thunkApi.dispatch(retrieveBoardDetails({ boardId: board_id, individualId: id, individualType: type })).unwrap()
316
- ])];
279
+ return [4, API.boardService.retrieveBoardInfoStatus(id)];
317
280
  case 2:
318
- boardInfoStatusData = (_p.sent())[0];
319
- (_l = (_k = settings.data.appConfig).onStepCompleted) === null || _l === void 0 ? void 0 : _l.call(_k, settings.data.activeScreen.name, {});
320
- (_o = (_m = settings.data.appConfig).onFlowCompleted) === null || _o === void 0 ? void 0 : _o.call(_m, { data: data });
281
+ boardInfoData = _o.sent();
282
+ return [4, API.boardService.retrieveBoardDetails(id)];
283
+ case 3:
284
+ boardData = _o.sent();
285
+ (_j = (_h = settings.data.appConfig).onStepCompleted) === null || _j === void 0 ? void 0 : _j.call(_h, settings.data.activeScreen.name, {});
286
+ (_l = (_k = settings.data.appConfig).onFlowCompleted) === null || _l === void 0 ? void 0 : _l.call(_k, { data: data });
321
287
  thunkApi.dispatch(handleNextScreenStep());
322
- return [2, { data: data, flows: (boardInfoStatusData === null || boardInfoStatusData === void 0 ? void 0 : boardInfoStatusData.info) || [] }];
288
+ return [2, {
289
+ response: __assign(__assign({}, data), { flows: (boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.info) || [], user: boardData === null || boardData === void 0 ? void 0 : boardData.user, entity: boardData === null || boardData === void 0 ? void 0 : boardData.entity, brand: boardData === null || boardData === void 0 ? void 0 : boardData.brand, bank_account: boardData === null || boardData === void 0 ? void 0 : boardData.bank_account, vatID: (_m = boardData === null || boardData === void 0 ? void 0 : boardData.entity) === null || _m === void 0 ? void 0 : _m.vat_id, merchant: boardData === null || boardData === void 0 ? void 0 : boardData.merchant, individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals, business: boardData === null || boardData === void 0 ? void 0 : boardData.business, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status }),
290
+ formData: params
291
+ }];
323
292
  }
324
293
  });
325
294
  }); });
@@ -377,13 +346,13 @@ export var taxSlice = createSlice({
377
346
  .addCase(verifyLeadToken.fulfilled, function (state, action) {
378
347
  state.error = null;
379
348
  state.customLoading = false;
380
- var _a = action.payload, data = _a.data, token = _a.token, entityData = _a.entityData;
381
- var _b = entityData || {}, vat_id = _b.vat_id, is_vat_acknowledged = _b.is_vat_acknowledged;
382
- state.data.verify.responseBody = __assign(__assign({}, data), { entity: entityData, board_id: data.id });
349
+ var _a = action.payload, data = _a.data, token = _a.token, boardResponse = _a.boardResponse, individualData = _a.individualData;
350
+ var user = boardResponse.user, bank_account = boardResponse.bank_account, vatID = boardResponse.vatID, merchant = boardResponse.merchant, individuals = boardResponse.individuals, entity = boardResponse.entity;
351
+ state.data.verify.responseBody = __assign(__assign(__assign(__assign({}, data), boardResponse), state.data.verify.responseBody), { board_id: data.id, name: user === null || user === void 0 ? void 0 : user.names, bank_account: bank_account, vatID: vatID, merchant: merchant, individuals: individuals, individualData: individualData });
383
352
  state.data.verify.token = token;
384
- state.data.taxData.vatId = vat_id;
385
- if (is_vat_acknowledged)
386
- state.data.taxData.confirmPolicy = is_vat_acknowledged;
353
+ state.data.taxData.vatId = vatID;
354
+ if (entity === null || entity === void 0 ? void 0 : entity.is_vat_acknowledged)
355
+ state.data.taxData.confirmPolicy = entity === null || entity === void 0 ? void 0 : entity.is_vat_acknowledged;
387
356
  })
388
357
  .addCase(verifyLeadToken.pending, function (state) {
389
358
  state.error = null;
@@ -417,14 +386,9 @@ export var taxSlice = createSlice({
417
386
  .addCase(verifyTaxLeadOTP.fulfilled, function (state, action) {
418
387
  state.loading = false;
419
388
  state.error = null;
420
- var _a = action.payload, data = _a.data, entityData = _a.entityData, formData = _a.formData;
389
+ var _a = action.payload, data = _a.data, formData = _a.formData;
421
390
  state.data.otpData = formData;
422
391
  state.data.otpData.responseBody = data;
423
- var _b = entityData || {}, vat_id = _b.vat_id, is_vat_acknowledged = _b.is_vat_acknowledged;
424
- state.data.verify.responseBody = __assign(__assign(__assign({}, state.data.verify.responseBody), data), { board_id: data.id, entity: entityData });
425
- state.data.taxData.vatId = vat_id;
426
- if (is_vat_acknowledged)
427
- state.data.taxData.confirmPolicy = is_vat_acknowledged;
428
392
  })
429
393
  .addCase(verifyTaxLeadOTP.rejected, function (state, action) {
430
394
  state.loading = false;
@@ -439,24 +403,29 @@ export var taxSlice = createSlice({
439
403
  state.error = null;
440
404
  var _a = action.payload, data = _a.data, formData = _a.formData;
441
405
  state.data.taxData = formData;
442
- state.data.taxData = __assign(__assign({}, formData), { documentId: undefined });
443
406
  state.data.taxData.responseBody = data;
444
407
  })
445
408
  .addCase(updateTaxInfo.rejected, function (state, action) {
446
409
  state.loading = false;
447
410
  state.error = action.error.message;
448
411
  })
449
- .addCase(retrieveBoardDetails.pending, function (state) {
412
+ .addCase(retrieveEntityInfo.pending, function (state) {
450
413
  state.error = null;
451
414
  state.loading = true;
452
415
  })
453
- .addCase(retrieveBoardDetails.fulfilled, function (state, action) {
416
+ .addCase(retrieveEntityInfo.fulfilled, function (state, action) {
417
+ var _a;
454
418
  state.error = null;
455
419
  state.loading = false;
456
- var data = action.payload || {};
420
+ var data = (action.payload || {}).data;
421
+ var description = (((_a = data === null || data === void 0 ? void 0 : data.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
422
+ if (description) {
423
+ state.error = description;
424
+ return;
425
+ }
457
426
  state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), data);
458
427
  })
459
- .addCase(retrieveBoardDetails.rejected, function (state, action) {
428
+ .addCase(retrieveEntityInfo.rejected, function (state, action) {
460
429
  state.error = action.error.message;
461
430
  state.loading = false;
462
431
  })
@@ -477,9 +446,19 @@ export var taxSlice = createSlice({
477
446
  .addCase(updateLeadSuccess.fulfilled, function (state, action) {
478
447
  var _a;
479
448
  state.loading = false;
449
+ state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), { updateBoardSuccessLoading: false });
480
450
  state.error = null;
481
- var _b = action.payload || {}, flows = _b.flows, data = _b.data;
482
- state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), { flows: flows, recipient: (_a = data === null || data === void 0 ? void 0 : data.notification) === null || _a === void 0 ? void 0 : _a.recipient, updateBoardSuccessLoading: false });
451
+ var response = (action.payload || {}).response;
452
+ var description = (((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
453
+ if (description) {
454
+ state.error = description;
455
+ return;
456
+ }
457
+ var flows = response.flows, steps = response.steps, user = response.user, bank_account = response.bank_account, vatID = response.vatID, merchant = response.merchant, individuals = response.individuals, entity = response.entity, brand = response.brand, individualData = response.individualData;
458
+ var data_state = (((individualData === null || individualData === void 0 ? void 0 : individualData.is_authorized) ? individuals : individualData) || {}).data_state;
459
+ state.data.verify.responseBody = __assign(__assign(__assign(__assign({}, state.data.verify.responseBody), { flows: flows, steps: steps, bank_account: bank_account, name: user === null || user === void 0 ? void 0 : user.names, vatID: vatID, merchant: merchant, individuals: individuals, entity: entity, brand: brand }), (individualData && { user: individualData })), (data_state && {
460
+ individuals: __assign(__assign({}, individuals), { data_state: data_state })
461
+ }));
483
462
  })
484
463
  .addCase(updateLeadSuccess.pending, function (state) {
485
464
  state.loading = true;
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { useTranslation } from 'react-i18next';
4
4
  import { useController, useFormContext } from 'react-hook-form';
5
5
  import { KW_MAX_LICENSE_LENGTH, KW_MIN_LICENSE_LENGTH, LICENSE_NUMBER_MAX_LENGTH, LICENSE_NUMBER_MIN_LENGTH } from '../../../../constants';
6
- import { removeAllOtherThanCharsAndNumber, isSA } from '../../../../utils';
6
+ import { isSA, cleanFLandCRNumber } from '../../../../utils';
7
7
  import ScreenContainer from '../../../shared/Containers/ScreenContainer';
8
8
  import ClearIcon from '../../../shared/ClearIcon';
9
9
  import CheckIcon from '../../../shared/CheckIcon';
@@ -19,7 +19,7 @@ var LicenseNumber = function () {
19
19
  var isSACountry = React.useMemo(function () { return isSA(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
20
20
  var handleFLNumberChange = function (_a) {
21
21
  var target = _a.target;
22
- var value = removeAllOtherThanCharsAndNumber(target.value);
22
+ var value = cleanFLandCRNumber(target.value);
23
23
  licenseNumberControl.field.onChange(value);
24
24
  };
25
25
  var clearLicenseNumber = function () {
@@ -16,7 +16,7 @@ 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, useFormReadOnly, useSetFromDefaultValues, useDataNoneEditable, useFormErrorAndUpdateReadOnly, useExcludeReadOnlyFelids, useDataVerified, useFormDirtyCheck } from '../../../../hooks';
19
+ import { useAppDispatch, useAppSelector, useFormReadOnly, useSetFromDefaultValues, useDataNoneEditable, useFormErrorAndUpdateReadOnly, useExcludeReadOnlyFelids, useDataVerified } 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';
@@ -29,7 +29,7 @@ import Form from '../../../../components/Form';
29
29
  import { handlePrevScreenStep, settingsSelector } from '../../../../app/settings';
30
30
  import ConfirmPolicy from './ConfirmPolicy';
31
31
  import BankStatement from './BankStatement';
32
- import { deepCopy, getFileDetailsFromDocument, isKW, isStringHasOneAsterisk, sendCustomEventToGTM } from '../../../../utils';
32
+ import { deepCopy, getFileDetailsFromDocument, isKW, isStringHasOneAsterisk } from '../../../../utils';
33
33
  var FormStyled = styled(Form)(function () { return ({
34
34
  display: 'flex',
35
35
  flexDirection: 'column',
@@ -50,7 +50,7 @@ var BankDetails = function () {
50
50
  var _e = data.bankData, iban = _e.iban, beneficiaryName = _e.beneficiaryName, bankName = _e.bankName, bankStatementId = _e.bankStatementId, bankStatementUploading = _e.uploading, confirmPolicy = _e.confirmPolicy;
51
51
  var verify = data.verify;
52
52
  var _f = verify.responseBody || {}, bank_account = _f.bank_account, entity = _f.entity, flows = _f.flows;
53
- var _g = bank_account || {}, document = _g.document, data_status = _g.data_status, data_verification = _g.data_verification, beneficiary_name = _g.beneficiary_name, resIban = _g.iban, bank_name = _g.bank_name, is_acknowledged = _g.is_acknowledged;
53
+ var _g = bank_account || {}, document = _g.document, data_status = _g.data_status, data_verification = _g.data_verification, beneficiary_name = _g.beneficiary_name, resIban = _g.iban, bank_name = _g.bank_name;
54
54
  var isKWCountry = React.useMemo(function () { return isKW(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
55
55
  var isFL = ((_a = entity === null || entity === void 0 ? void 0 : entity.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === BusinessType.FL ? true : false;
56
56
  var bankHasDocument = ((_b = document === null || document === void 0 ? void 0 : document.file_details) === null || _b === void 0 ? void 0 : _b.length) > 0;
@@ -71,12 +71,6 @@ var BankDetails = function () {
71
71
  var t = useTranslation().t;
72
72
  var isAr = useLanguage().isAr;
73
73
  var onBack = function () {
74
- sendCustomEventToGTM({
75
- event: 'Send Event',
76
- event_category: 'Board Flows - Wallet',
77
- event_action: 'Wallet Details Back button',
78
- event_label: settingsData.businessCountry.iso2
79
- });
80
74
  if ((flows === null || flows === void 0 ? void 0 : flows.length) > 0) {
81
75
  dispatch(handlePrevScreenStep());
82
76
  return;
@@ -107,16 +101,9 @@ var BankDetails = function () {
107
101
  var isBeneficiaryNameVerified = dataVerified['beneficiary_name'] && beneficiary_name === methods.watch('beneficiaryName');
108
102
  var isIBANVerified = dataVerified['iban'] && resIban === methods.watch('iban');
109
103
  var isBankNameVerified = dataVerified['bank_name'] && bank_name === methods.watch('bankName');
110
- var isDirty = useFormDirtyCheck(methods, {
111
- iban: resIban,
112
- beneficiaryName: beneficiary_name,
113
- bankName: bank_name,
114
- confirmPolicy: is_acknowledged
115
- }).isDirty;
116
104
  var getFelids = useExcludeReadOnlyFelids(methods, readOnly).getFelids;
117
105
  var onSubmit = function (data) {
118
- var formData = __assign(__assign({}, deepCopy(getFelids(data))), { isDirty: isDirty });
119
- dispatch(createBankAccount(formData));
106
+ dispatch(createBankAccount(deepCopy(getFelids(data))));
120
107
  };
121
108
  var disableBack = settingsData.appConfig.mode === 'content';
122
109
  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'], isVerified: isBeneficiaryNameVerified }), _jsx(IBAN, { fetchingIban: function (value) { return setIbanChecking(value); }, ibanChecking: ibanChecking, readOnly: readOnly['iban'] || noneEditable['iban'], isVerified: isIBANVerified }), _jsx(BankName, { readOnly: readOnly['bankName'] || noneEditable['bank_name'], isVerified: isBankNameVerified }), _jsx(BankStatement, { isVerified: dataVerified['document'], 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({ disableBack: disableBack, onBackClicked: function () { return onBack(); }, disabled: disabled, isAr: isAr, loading: loading, error: t(error || '') }, { children: t('confirm') }))] })) })) }));