@tap-payments/auth-jsconnect 2.8.61-beta → 2.8.61-development

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 (46) hide show
  1. package/build/@types/redux.d.ts +1 -0
  2. package/build/api/entity.d.ts +2 -2
  3. package/build/api/entity.js +12 -4
  4. package/build/api/index.d.ts +2 -2
  5. package/build/components/Tooltip/Tooltip.js +1 -1
  6. package/build/constants/api.d.ts +0 -1
  7. package/build/constants/api.js +0 -2
  8. package/build/constants/app.d.ts +0 -2
  9. package/build/constants/app.js +0 -2
  10. package/build/features/app/bank/bankStore.d.ts +13 -19
  11. package/build/features/app/bank/bankStore.js +183 -165
  12. package/build/features/app/board/boardStore.js +16 -10
  13. package/build/features/app/brand/brandStore.d.ts +16 -31
  14. package/build/features/app/brand/brandStore.js +243 -239
  15. package/build/features/app/business/businessStore.js +7 -1
  16. package/build/features/app/entity/entityStore.d.ts +20 -34
  17. package/build/features/app/entity/entityStore.js +204 -249
  18. package/build/features/app/individual/individualStore.d.ts +17 -36
  19. package/build/features/app/individual/individualStore.js +221 -270
  20. package/build/features/app/password/passwordStore.d.ts +19 -25
  21. package/build/features/app/password/passwordStore.js +170 -216
  22. package/build/features/app/tax/taxStore.d.ts +13 -7
  23. package/build/features/app/tax/taxStore.js +168 -147
  24. package/build/features/bank/screens/BankDetails/BankDetails.js +17 -4
  25. package/build/features/brand/screens/BrandActivities/BrandActivities.js +48 -11
  26. package/build/features/brand/screens/BrandInfo/BrandInfo.js +22 -4
  27. package/build/features/brand/screens/BrandSegmentInfo/BrandSegmentInfo.js +22 -6
  28. package/build/features/business/screens/Activities/Activities.js +9 -1
  29. package/build/features/business/screens/Customers/Customers.js +9 -1
  30. package/build/features/connect/screens/BusinessCountry/BusinessCountry.js +7 -1
  31. package/build/features/entity/screens/EntityCapital/EntityCapital.js +33 -9
  32. package/build/features/entity/screens/EntityName/EntityName.js +31 -14
  33. package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js +43 -10
  34. package/build/features/individual/screens/IndividualList/IndividualList.js +7 -0
  35. package/build/features/individual/screens/IndividualList/UserList.js +3 -3
  36. package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.js +73 -18
  37. package/build/features/password/Password.js +1 -1
  38. package/build/features/shared/Button/FlowsButtons.js +7 -1
  39. package/build/features/signIn/SignIn.js +10 -2
  40. package/build/features/tax/screens/TaxDetails/TaxDetails.js +7 -2
  41. package/build/hooks/index.d.ts +1 -0
  42. package/build/hooks/index.js +1 -0
  43. package/build/hooks/useFormDirtyCheck.d.ts +10 -0
  44. package/build/hooks/useFormDirtyCheck.js +66 -0
  45. package/build/utils/common.js +4 -4
  46. package/package.json +2 -2
@@ -51,14 +51,14 @@ import API from '../../../api';
51
51
  import { DocumentPurpose, FlowsTypes } from '../../../@types';
52
52
  import { handleCurrentActiveScreen, handleNextScreenStep, handlePrevScreenStep, handlePublicKey, handleSetCountryByIso2, onCloseComplete } from '../../../app/settings';
53
53
  import { BANK_STEP_NAMES } from '../../../constants';
54
- import { hasNoneEditableValue, isStringHasOneAsterisk, retrieveIndividualData, sleep } from '../../../utils';
54
+ import { hasNoneEditableValue, isStringHasOneAsterisk, retrieveIndividualData, sendCustomEventToGTM, sleep } from '../../../utils';
55
55
  export var verifyLeadToken = createAsyncThunk('bankVerifyLeadToken', 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, boardData, boardInfoData, individualData, _b, board_id, board_info_id, config, country_code, publicKey, countryIso2, _c, id_1, type_1, serviceCallBack, _d, boardRes, individualRes;
59
- var _e, _f, _g, _h, _j;
60
- return __generator(this, function (_k) {
61
- switch (_k.label) {
58
+ var payload, data, bankData, _b, config, country_code, step_name, bank_account_id, wallet_id, boardId, publicKey, data_1;
59
+ var _c, _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,69 +67,51 @@ export var verifyLeadToken = createAsyncThunk('bankVerifyLeadToken', function (_
67
67
  }));
68
68
  return [4, API.leadService.verifyLeadToken(payload)];
69
69
  case 1:
70
- data = (_k.sent()).data;
71
- individualData = undefined;
72
- if ((_e = data.errors) === null || _e === void 0 ? void 0 : _e.length)
70
+ data = (_j.sent()).data;
71
+ if ((_c = data.errors) === null || _c === void 0 ? void 0 : _c.length)
73
72
  throw new Error(data.errors[0].description);
74
- _b = data || {}, board_id = _b.id, board_info_id = _b.board_info_id, config = _b.config, country_code = _b.country_code;
73
+ bankData = undefined;
74
+ _b = data || {}, config = _b.config, country_code = _b.country_code, step_name = _b.step_name, bank_account_id = _b.bank_account_id, wallet_id = _b.wallet_id, boardId = _b.id;
75
75
  publicKey = config === null || config === void 0 ? void 0 : config.public_key;
76
- countryIso2 = country_code;
77
- if (publicKey) {
76
+ if (country_code)
77
+ thunkApi.dispatch(handleSetCountryByIso2(country_code));
78
+ if (publicKey)
78
79
  thunkApi.dispatch(handlePublicKey(publicKey));
79
- }
80
- if (countryIso2)
81
- thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
82
- if (!board_id) return [3, 6];
83
- if (!board_info_id) return [3, 3];
84
- return [4, API.boardService.retrieveBoardInfo({ id: board_id, infoId: board_info_id })];
80
+ if (isInternally)
81
+ data.step_name = BANK_STEP_NAMES.BANK_INFO;
82
+ if (!(step_name === BANK_STEP_NAMES.PHONE_AUTH)) return [3, 2];
83
+ thunkApi.dispatch(handleCurrentActiveScreen('BANK_VERIFY_STEP'));
84
+ return [3, 7];
85
85
  case 2:
86
- boardInfoData = _k.sent();
87
- _k.label = 3;
88
- case 3: return [4, API.boardService.retrieveBoardDetails(board_id)];
86
+ if (!(step_name === BANK_STEP_NAMES.BANK_INFO)) return [3, 7];
87
+ if (!(!wallet_id || !country_code)) return [3, 4];
88
+ return [4, API.boardService.retrieveBoardDetails(boardId)];
89
+ case 3:
90
+ data_1 = _j.sent();
91
+ if (!country_code && ((_d = data_1 === null || data_1 === void 0 ? void 0 : data_1.entity) === null || _d === void 0 ? void 0 : _d.country))
92
+ thunkApi.dispatch(handleSetCountryByIso2(data_1.entity.country));
93
+ if (!((_h = (_g = (_f = (_e = data_1 === null || data_1 === void 0 ? void 0 : data_1.business) === null || _e === void 0 ? void 0 : _e.entity) === null || _f === void 0 ? void 0 : _f.merchant) === null || _g === void 0 ? void 0 : _g.wallet) === null || _h === void 0 ? void 0 : _h.id))
94
+ throw new Error('wallet_id_missing');
95
+ if (data_1 === null || data_1 === void 0 ? void 0 : data_1.bank_account)
96
+ bankData = data_1.bank_account;
97
+ return [3, 6];
89
98
  case 4:
90
- boardData = _k.sent();
91
- _c = ((_f = boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification) === null || _f === void 0 ? void 0 : _f.recipient) || {}, id_1 = _c.id, type_1 = _c.type;
92
- serviceCallBack = function () { return API.individualService.retrieveIndividual(id_1, type_1); };
93
- return [4, retrieveIndividualData(type_1, boardData, serviceCallBack)];
99
+ if (!bank_account_id) return [3, 6];
100
+ return [4, API.entityService.retrieveBankAccount(bank_account_id)];
94
101
  case 5:
95
- _d = _k.sent(), boardRes = _d.boardRes, individualRes = _d.individualRes;
96
- boardData = boardRes;
97
- individualData = individualRes;
98
- _k.label = 6;
102
+ bankData = _j.sent();
103
+ _j.label = 6;
99
104
  case 6:
100
- if (!countryIso2 && ((_g = boardData === null || boardData === void 0 ? void 0 : boardData.entity) === null || _g === void 0 ? void 0 : _g.country)) {
101
- countryIso2 = boardData.entity.country;
102
- thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
103
- }
104
105
  if (isInternally)
105
- data.step_name = BANK_STEP_NAMES.BANK_INFO;
106
- if (data.step_name === BANK_STEP_NAMES.PHONE_AUTH) {
107
- thunkApi.dispatch(handleCurrentActiveScreen('BANK_VERIFY_STEP'));
108
- }
109
- else if (data.step_name === BANK_STEP_NAMES.BANK_INFO) {
110
- if (isInternally)
111
- sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep()); });
112
- else
113
- thunkApi.dispatch(handleNextScreenStep());
114
- }
115
- return [2, {
116
- data: data,
117
- individualData: individualData,
118
- boardResponse: {
119
- user: boardData === null || boardData === void 0 ? void 0 : boardData.user,
120
- brand: boardData === null || boardData === void 0 ? void 0 : boardData.brand,
121
- bank_account: boardData === null || boardData === void 0 ? void 0 : boardData.bank_account,
122
- entity: boardData === null || boardData === void 0 ? void 0 : boardData.entity,
123
- merchant: boardData === null || boardData === void 0 ? void 0 : boardData.merchant,
124
- name: (_h = boardData === null || boardData === void 0 ? void 0 : boardData.user) === null || _h === void 0 ? void 0 : _h.names,
125
- contact: (_j = boardData === null || boardData === void 0 ? void 0 : boardData.user) === null || _j === void 0 ? void 0 : _j.contact,
126
- business: boardData === null || boardData === void 0 ? void 0 : boardData.business,
127
- individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals,
128
- notification: boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification,
129
- board_status: data === null || data === void 0 ? void 0 : data.status
130
- },
131
- token: token
132
- }];
106
+ sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep()); });
107
+ else
108
+ thunkApi.dispatch(handleNextScreenStep());
109
+ _j.label = 7;
110
+ case 7: return [2, {
111
+ data: data,
112
+ bankData: bankData,
113
+ token: token
114
+ }];
133
115
  }
134
116
  });
135
117
  });
@@ -152,75 +134,118 @@ export var resendOTP = createAsyncThunk('resendOTPBank', function (params, thunk
152
134
  });
153
135
  }); });
154
136
  export var verifyBankLeadOTP = createAsyncThunk('verifyBankLeadOTP', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
155
- var _a, bank, settings, responseBody, payload, data, publicKey;
156
- var _b, _c, _d, _e;
157
- return __generator(this, function (_f) {
158
- switch (_f.label) {
137
+ var _a, bank, settings, responseBody, payload, data, countryIso2, publicKey, _b, bank_account_id, wallet_id, boardId, bankData, data_2;
138
+ var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
139
+ return __generator(this, function (_o) {
140
+ switch (_o.label) {
159
141
  case 0:
160
142
  _a = thunkApi.getState(), bank = _a.bank, settings = _a.settings;
161
143
  responseBody = bank.data.verify.responseBody;
162
144
  payload = {
163
145
  data: params.otp,
164
- service_name: (_b = responseBody === null || responseBody === void 0 ? void 0 : responseBody.verification_by) === null || _b === void 0 ? void 0 : _b.service_name,
146
+ service_name: (_c = responseBody === null || responseBody === void 0 ? void 0 : responseBody.verification_by) === null || _c === void 0 ? void 0 : _c.service_name,
165
147
  verify_token: responseBody === null || responseBody === void 0 ? void 0 : responseBody.verify_token,
166
148
  step_name: BANK_STEP_NAMES.PHONE_AUTH,
167
149
  encryption_contract: ['data']
168
150
  };
169
151
  return [4, API.leadService.verifyLeadOTP(payload)];
170
152
  case 1:
171
- data = (_f.sent()).data;
172
- if (!data.errors) {
173
- publicKey = (_c = data === null || data === void 0 ? void 0 : data.config) === null || _c === void 0 ? void 0 : _c.public_key;
174
- if (publicKey) {
175
- thunkApi.dispatch(handlePublicKey(publicKey));
176
- }
177
- (_e = (_d = settings.data.appConfig).onStepCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, settings.data.activeScreen.name, { otp: params.otp });
178
- sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep()); });
179
- }
180
- return [2, { data: data, formData: params }];
153
+ data = (_o.sent()).data;
154
+ if ((_d = data.errors) === null || _d === void 0 ? void 0 : _d.length)
155
+ throw new Error(data.errors[0].description);
156
+ countryIso2 = (data === null || data === void 0 ? void 0 : data.country_code) || (responseBody === null || responseBody === void 0 ? void 0 : responseBody.country_code);
157
+ publicKey = (_e = data === null || data === void 0 ? void 0 : data.config) === null || _e === void 0 ? void 0 : _e.public_key;
158
+ if (countryIso2)
159
+ thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
160
+ if (publicKey)
161
+ thunkApi.dispatch(handlePublicKey(publicKey));
162
+ _b = data || {}, bank_account_id = _b.bank_account_id, wallet_id = _b.wallet_id, boardId = _b.id;
163
+ bankData = undefined;
164
+ if (!(!wallet_id || !countryIso2)) return [3, 3];
165
+ return [4, API.boardService.retrieveBoardDetails(boardId)];
166
+ case 2:
167
+ data_2 = _o.sent();
168
+ if (!countryIso2 && ((_f = data_2 === null || data_2 === void 0 ? void 0 : data_2.entity) === null || _f === void 0 ? void 0 : _f.country))
169
+ thunkApi.dispatch(handleSetCountryByIso2(data_2.entity.country));
170
+ if (!((_k = (_j = (_h = (_g = data_2 === null || data_2 === void 0 ? void 0 : data_2.business) === null || _g === void 0 ? void 0 : _g.entity) === null || _h === void 0 ? void 0 : _h.merchant) === null || _j === void 0 ? void 0 : _j.wallet) === null || _k === void 0 ? void 0 : _k.id))
171
+ throw new Error('wallet_id_missing');
172
+ if (data_2 === null || data_2 === void 0 ? void 0 : data_2.bank_account)
173
+ bankData = data_2.bank_account;
174
+ return [3, 5];
175
+ case 3:
176
+ if (!bank_account_id) return [3, 5];
177
+ return [4, API.entityService.retrieveBankAccount(bank_account_id)];
178
+ case 4:
179
+ bankData = _o.sent();
180
+ _o.label = 5;
181
+ case 5:
182
+ (_m = (_l = settings.data.appConfig).onStepCompleted) === null || _m === void 0 ? void 0 : _m.call(_l, settings.data.activeScreen.name, { otp: params.otp });
183
+ sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep()); });
184
+ return [2, {
185
+ data: data,
186
+ bankData: bankData,
187
+ formData: params
188
+ }];
181
189
  }
182
190
  });
183
191
  }); });
184
192
  export var retrieveBoardStatus = createAsyncThunk('bank/retrieveBoardStatus', function (parmas, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
185
- var bank, board_id, data;
186
- return __generator(this, function (_a) {
187
- switch (_a.label) {
193
+ var bank, _a, board_id, board_info_id, recipient, _b, id, type, data;
194
+ return __generator(this, function (_c) {
195
+ switch (_c.label) {
188
196
  case 0:
189
197
  bank = thunkApi.getState().bank;
190
- board_id = (bank.data.verify.responseBody || {}).id;
191
- return [4, API.boardService.retrieveBoardInfoStatus(board_id)];
198
+ _a = bank.data.verify.responseBody || {}, board_id = _a.board_id, board_info_id = _a.board_info_id, recipient = _a.recipient;
199
+ if (!board_id || !board_info_id)
200
+ throw new Error('Internal server error');
201
+ _b = recipient || {}, id = _b.id, type = _b.type;
202
+ return [4, Promise.all([
203
+ API.boardService.retrieveBoardInfoStatus(board_id),
204
+ thunkApi.dispatch(retrieveBoardDetails({ boardId: board_id, individualId: id, individualType: type })).unwrap()
205
+ ])];
192
206
  case 1:
193
- data = _a.sent();
207
+ data = (_c.sent())[0];
194
208
  thunkApi.dispatch(handlePrevScreenStep());
195
209
  return [2, { flows: (data === null || data === void 0 ? void 0 : data.info) || [] }];
196
210
  }
197
211
  });
198
212
  }); });
199
- export var retrieveBoardDetails = createAsyncThunk('bank/retrieveBoardDetails', function (boardId) { return __awaiter(void 0, void 0, void 0, function () {
200
- var data;
201
- var _a, _b;
202
- return __generator(this, function (_c) {
203
- switch (_c.label) {
204
- case 0: return [4, API.boardService.retrieveBoardDetails(boardId)];
205
- case 1:
206
- data = _c.sent();
207
- return [2, {
208
- data: __assign(__assign({}, data), { user: data === null || data === void 0 ? void 0 : data.user, brand: data === null || data === void 0 ? void 0 : data.brand, bank_account: data === null || data === void 0 ? void 0 : data.bank_account, entity: data === null || data === void 0 ? void 0 : data.entity, merchant: data === null || data === void 0 ? void 0 : data.merchant, name: (_a = data === null || data === void 0 ? void 0 : data.user) === null || _a === void 0 ? void 0 : _a.names, business: data === null || data === void 0 ? void 0 : data.business, individuals: data === null || data === void 0 ? void 0 : data.individuals, contact: (_b = data === null || data === void 0 ? void 0 : data.user) === null || _b === void 0 ? void 0 : _b.contact, board_status: data === null || data === void 0 ? void 0 : data.status })
209
- }];
210
- }
213
+ export var retrieveBoardDetails = createAsyncThunk('bank/retrieveBoardDetails', function (_a) {
214
+ var boardId = _a.boardId, id = _a.individualId, type = _a.individualType;
215
+ return __awaiter(void 0, void 0, void 0, function () {
216
+ var data, individualData, boardData, serviceCallBack, _b, boardRes, individualRes;
217
+ var _c, _d, _e;
218
+ return __generator(this, function (_f) {
219
+ switch (_f.label) {
220
+ case 0: return [4, API.boardService.retrieveBoardDetails(boardId)];
221
+ case 1:
222
+ data = _f.sent();
223
+ individualData = data === null || data === void 0 ? void 0 : data.user;
224
+ boardData = data;
225
+ if (!(((_c = data === null || data === void 0 ? void 0 : data.user) === null || _c === void 0 ? void 0 : _c.id) !== id)) return [3, 3];
226
+ serviceCallBack = function () { return API.individualService.retrieveIndividual(id, type); };
227
+ return [4, retrieveIndividualData(type, data, serviceCallBack)];
228
+ case 2:
229
+ _b = _f.sent(), boardRes = _b.boardRes, individualRes = _b.individualRes;
230
+ individualData = individualRes;
231
+ boardData = boardRes;
232
+ _f.label = 3;
233
+ 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, business: boardData === null || boardData === void 0 ? void 0 : boardData.business, individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals, contact: (_e = boardData === null || boardData === void 0 ? void 0 : boardData.user) === null || _e === void 0 ? void 0 : _e.contact, user: individualData, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status })];
234
+ }
235
+ });
211
236
  });
212
- }); });
237
+ });
213
238
  export var createBankAccount = createAsyncThunk('createBankAccount', function (_a, thunkApi) {
214
- var formData = _a.formData, originalFormData = _a.originalFormData;
239
+ var formData = _a.formData, originalFormData = _a.originalFormData, isDirty = _a.isDirty;
215
240
  return __awaiter(void 0, void 0, void 0, function () {
216
- var _b, settings, bank, iban, beneficiaryName, bankName, bankStatementId, confirmPolicy, _c, bank_account, notification, _d, data_status, document, isIBANMasked, isIBANNonEditable, isBeneficiaryNameNonEditable, isBankNameNonEditable, isBankStatementIdNonEditable, isConfirmPolicyNonEditable, documentResponse, hasDocument, documentId, requestBody, data, documentBody;
217
- var _e, _f, _g, _h, _j, _k, _l, _m, _o;
218
- return __generator(this, function (_p) {
219
- switch (_p.label) {
241
+ var _b, settings, bank, iban, beneficiaryName, bankName, bankStatementId, confirmPolicy, _c, bank_account, wallet_id, recipient, _d, data_status, document, isIBANMasked, isIBANNonEditable, isBeneficiaryNameNonEditable, isBankNameNonEditable, isBankStatementIdNonEditable, isConfirmPolicyNonEditable, documentResponse, data, hasDocument, documentId, requestBody, documentBody;
242
+ var _e, _f;
243
+ return __generator(this, function (_g) {
244
+ switch (_g.label) {
220
245
  case 0:
221
246
  _b = thunkApi.getState(), settings = _b.settings, bank = _b.bank;
222
247
  iban = formData.iban, beneficiaryName = formData.beneficiaryName, bankName = formData.bankName, bankStatementId = formData.bankStatementId, confirmPolicy = formData.confirmPolicy;
223
- _c = bank.data.verify.responseBody || {}, bank_account = _c.bank_account, notification = _c.notification;
248
+ _c = bank.data.verify.responseBody || {}, bank_account = _c.bank_account, wallet_id = _c.wallet_id, recipient = _c.recipient;
224
249
  _d = bank_account || {}, data_status = _d.data_status, document = _d.document;
225
250
  isIBANMasked = isStringHasOneAsterisk(iban);
226
251
  isIBANNonEditable = hasNoneEditableValue(data_status, 'iban');
@@ -229,14 +254,16 @@ export var createBankAccount = createAsyncThunk('createBankAccount', function (_
229
254
  isBankStatementIdNonEditable = hasNoneEditableValue(data_status, 'bank_statement_file_id');
230
255
  isConfirmPolicyNonEditable = hasNoneEditableValue(data_status, 'is_acknowledged');
231
256
  documentResponse = undefined;
232
- hasDocument = (bankStatementId || []).length > 0;
257
+ data = bank_account || {};
258
+ hasDocument = !isBankStatementIdNonEditable && (bankStatementId || []).length > 0;
233
259
  documentId = document === null || document === void 0 ? void 0 : document.id;
234
260
  requestBody = {
235
- wallet_id: (_j = (_h = (_g = (_f = (_e = bank.data.verify.responseBody) === null || _e === void 0 ? void 0 : _e.business) === null || _f === void 0 ? void 0 : _f.entity) === null || _g === void 0 ? void 0 : _g.merchant) === null || _h === void 0 ? void 0 : _h.wallet) === null || _j === void 0 ? void 0 : _j.id,
261
+ wallet_id: wallet_id,
236
262
  bank_account: __assign(__assign({ iban: isIBANNonEditable || isIBANMasked ? undefined : iban, beneficiary_name: isBeneficiaryNameNonEditable ? undefined : beneficiaryName, bank_name: isBankNameNonEditable ? undefined : bankName }, (!isConfirmPolicyNonEditable && {
237
- acknowledged_by: (_k = notification === null || notification === void 0 ? void 0 : notification.recipient) === null || _k === void 0 ? void 0 : _k.id,
263
+ acknowledged_by: recipient === null || recipient === void 0 ? void 0 : recipient.id,
238
264
  is_acknowledged: confirmPolicy
239
- })), (!(isBankStatementIdNonEditable || documentId || !hasDocument) && {
265
+ })), (!documentId &&
266
+ hasDocument && {
240
267
  document: {
241
268
  type: DocumentPurpose.BANK_STATEMENT,
242
269
  files: bankStatementId || []
@@ -245,24 +272,25 @@ export var createBankAccount = createAsyncThunk('createBankAccount', function (_
245
272
  step_name: BANK_STEP_NAMES.BANK_INFO,
246
273
  encryption_contract: ['bank_account.iban', 'bank_account.beneficiary_name', 'bank_account.bank_name']
247
274
  };
275
+ if (!(isDirty || (!documentId && hasDocument))) return [3, 2];
248
276
  return [4, API.entityService.createBankAccount(requestBody)];
249
277
  case 1:
250
- data = (_p.sent()).data;
251
- if ((_l = data.errors) === null || _l === void 0 ? void 0 : _l.length)
252
- throw new Error(data.errors[0].description);
253
- if (!(!isBankStatementIdNonEditable && documentId && hasDocument)) return [3, 3];
278
+ data = _g.sent();
279
+ _g.label = 2;
280
+ case 2:
281
+ if (!(documentId && hasDocument)) return [3, 4];
254
282
  documentBody = {
255
283
  id: documentId,
256
284
  files: bankStatementId || []
257
285
  };
258
286
  return [4, API.documentService.addFilesToExistingDocument(documentBody)];
259
- case 2:
260
- documentResponse = _p.sent();
261
- _p.label = 3;
262
287
  case 3:
263
- data.documentData = documentResponse;
288
+ documentResponse = _g.sent();
289
+ _g.label = 4;
290
+ case 4:
291
+ data = __assign(__assign({}, data), { documentResponse: documentResponse });
264
292
  thunkApi.dispatch(handleNextScreenStep());
265
- (_o = (_m = settings.data.appConfig).onStepCompleted) === null || _o === void 0 ? void 0 : _o.call(_m, settings.data.activeScreen.name, requestBody);
293
+ (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, requestBody);
266
294
  return [2, { data: data, formData: originalFormData }];
267
295
  }
268
296
  });
@@ -289,40 +317,45 @@ export var checkIbanBank = createAsyncThunk('checkIbanBank', function (_a) {
289
317
  });
290
318
  });
291
319
  export var updateBoardSuccess = createAsyncThunk('updateBoardBankSuccess', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
292
- var _a, settings, bank, verify, _b, id, infoId, _c, showBoard, mode, payload, data, boardInfoData;
293
- var _d, _e, _f, _g, _h, _j, _k, _l;
294
- return __generator(this, function (_m) {
295
- switch (_m.label) {
320
+ var _a, settings, bank, _b, board_id, infoId, _c, showBoard, mode, payload, data, _d, id, type, boardInfoStatusData;
321
+ var _e, _f, _g, _h, _j, _k, _l, _m, _o;
322
+ return __generator(this, function (_p) {
323
+ switch (_p.label) {
296
324
  case 0:
297
325
  _a = thunkApi.getState(), settings = _a.settings, bank = _a.bank;
298
- verify = bank.data.verify;
299
- _b = verify.responseBody || {}, id = _b.board_id, infoId = _b.board_info_id;
326
+ _b = bank.data.verify.responseBody || {}, board_id = _b.board_id, infoId = _b.board_info_id;
300
327
  _c = settings.data.appConfig, showBoard = _c.showBoard, mode = _c.mode;
301
- if (!id)
328
+ if (!board_id)
302
329
  return [2];
303
330
  payload = {
304
331
  lang: settings.data.language,
305
- step_name: BANK_STEP_NAMES.BANK_SUCCESS,
306
- id: id
332
+ step_name: BANK_STEP_NAMES.BANK_SUCCESS
307
333
  };
308
- return [4, API.boardService.updateBoardInfo(__assign({ id: id, infoId: infoId }, payload))];
334
+ return [4, API.boardService.updateBoardInfo(__assign({ id: board_id, infoId: infoId }, payload))];
309
335
  case 1:
310
- data = _m.sent();
336
+ data = _p.sent();
337
+ sendCustomEventToGTM({
338
+ event: 'Send Event',
339
+ event_category: 'Board Flows - Wallet',
340
+ event_action: 'Wallet Update Success Page',
341
+ event_label: settings.data.businessCountry.iso2
342
+ });
311
343
  if (!showBoard && mode === 'content') {
312
- (_e = (_d = settings.data.appConfig).onStepCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, settings.data.activeScreen.name, {});
313
- (_g = (_f = settings.data.appConfig).onFlowCompleted) === null || _g === void 0 ? void 0 : _g.call(_f, { data: data });
314
- return [2, { response: __assign({}, data), formData: params }];
344
+ (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, {});
345
+ (_h = (_g = settings.data.appConfig).onFlowCompleted) === null || _h === void 0 ? void 0 : _h.call(_g, { data: data });
346
+ return [2, { data: data }];
315
347
  }
316
- return [4, API.boardService.retrieveBoardInfoStatus(id)];
348
+ _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;
349
+ return [4, Promise.all([
350
+ API.boardService.retrieveBoardInfoStatus(board_id),
351
+ thunkApi.dispatch(retrieveBoardDetails({ boardId: board_id, individualId: id, individualType: type })).unwrap()
352
+ ])];
317
353
  case 2:
318
- boardInfoData = _m.sent();
319
- return [4, thunkApi.dispatch(retrieveBoardDetails(id))];
320
- case 3:
321
- _m.sent();
322
- (_j = (_h = settings.data.appConfig).onStepCompleted) === null || _j === void 0 ? void 0 : _j.call(_h, settings.data.activeScreen.name, {});
323
- (_l = (_k = settings.data.appConfig).onFlowCompleted) === null || _l === void 0 ? void 0 : _l.call(_k, { data: data });
354
+ boardInfoStatusData = (_p.sent())[0];
355
+ (_l = (_k = settings.data.appConfig).onStepCompleted) === null || _l === void 0 ? void 0 : _l.call(_k, settings.data.activeScreen.name, {});
356
+ (_o = (_m = settings.data.appConfig).onFlowCompleted) === null || _o === void 0 ? void 0 : _o.call(_m, { data: data });
324
357
  thunkApi.dispatch(handleNextScreenStep());
325
- return [2, { response: __assign(__assign({}, data), { flows: (boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.info) || [] }), formData: params }];
358
+ return [2, { data: data, flows: (boardInfoStatusData === null || boardInfoStatusData === void 0 ? void 0 : boardInfoStatusData.info) || [] }];
326
359
  }
327
360
  });
328
361
  }); });
@@ -385,23 +418,17 @@ export var bankSlice = createSlice({
385
418
  state.customLoading = true;
386
419
  })
387
420
  .addCase(verifyLeadToken.fulfilled, function (state, action) {
388
- var _a;
389
421
  state.error = null;
390
422
  state.customLoading = false;
391
- var _b = action.payload, data = _b.data, token = _b.token, boardResponse = _b.boardResponse, individualData = _b.individualData;
392
- var description = (((_a = data === null || data === void 0 ? void 0 : data.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
393
- if (description) {
394
- state.error = description;
395
- return;
396
- }
397
- state.data.verify.responseBody = __assign(__assign(__assign(__assign({}, data), boardResponse), state.data.verify.responseBody), { board_id: data.id, individualData: individualData });
398
- state.data.verify.token = token;
399
- var _c = (boardResponse === null || boardResponse === void 0 ? void 0 : boardResponse.bank_account) || {}, bank_name = _c.bank_name, beneficiary_name = _c.beneficiary_name, iban = _c.iban, is_acknowledged = _c.is_acknowledged;
423
+ var _a = action.payload || {}, data = _a.data, token = _a.token, bank_account = _a.bankData;
424
+ var _b = bank_account || {}, bank_name = _b.bank_name, beneficiary_name = _b.beneficiary_name, iban = _b.iban, is_acknowledged = _b.is_acknowledged;
400
425
  state.data.bankData.bankName = bank_name || '';
401
426
  state.data.bankData.beneficiaryName = beneficiary_name || '';
402
427
  state.data.bankData.iban = iban || '';
403
428
  if (is_acknowledged)
404
429
  state.data.bankData.confirmPolicy = is_acknowledged;
430
+ state.data.verify.responseBody = __assign(__assign(__assign({}, data), state.data.verify.responseBody), { bank_account: bank_account, board_id: data.id });
431
+ state.data.verify.token = token;
405
432
  })
406
433
  .addCase(verifyLeadToken.rejected, function (state, action) {
407
434
  state.error = action.error.message;
@@ -429,17 +456,18 @@ export var bankSlice = createSlice({
429
456
  state.error = null;
430
457
  })
431
458
  .addCase(verifyBankLeadOTP.fulfilled, function (state, action) {
432
- var _a;
433
459
  state.loading = false;
434
460
  state.error = null;
435
- var _b = action.payload, data = _b.data, formData = _b.formData;
436
- var description = (((_a = data === null || data === void 0 ? void 0 : data.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
437
- if (description) {
438
- state.error = description;
439
- return;
440
- }
461
+ var _a = action.payload, data = _a.data, bank_account = _a.bankData, formData = _a.formData;
441
462
  state.data.otpData = formData;
442
463
  state.data.otpData.responseBody = data;
464
+ var _b = bank_account || {}, bank_name = _b.bank_name, beneficiary_name = _b.beneficiary_name, iban = _b.iban, is_acknowledged = _b.is_acknowledged;
465
+ state.data.bankData.bankName = bank_name || '';
466
+ state.data.bankData.beneficiaryName = beneficiary_name || '';
467
+ state.data.bankData.iban = iban || '';
468
+ if (is_acknowledged)
469
+ state.data.bankData.confirmPolicy = is_acknowledged;
470
+ state.data.verify.responseBody = __assign(__assign(__assign({}, data), state.data.verify.responseBody), { bank_account: bank_account, board_id: data.id });
443
471
  })
444
472
  .addCase(verifyBankLeadOTP.rejected, function (state, action) {
445
473
  state.loading = false;
@@ -452,7 +480,7 @@ export var bankSlice = createSlice({
452
480
  .addCase(retrieveBoardDetails.fulfilled, function (state, action) {
453
481
  state.error = null;
454
482
  state.loading = false;
455
- var data = (action.payload || {}).data;
483
+ var data = action.payload || {};
456
484
  state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), data);
457
485
  })
458
486
  .addCase(retrieveBoardDetails.rejected, function (state, action) {
@@ -477,18 +505,8 @@ export var bankSlice = createSlice({
477
505
  var _a;
478
506
  state.loading = false;
479
507
  state.error = null;
480
- var response = (action.payload || {}).response;
481
- var description = (((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
482
- if (description) {
483
- state.error = description;
484
- return;
485
- }
486
- var flows = response.flows;
487
- var _b = state.data.verify.responseBody || {}, individuals = _b.individuals, individualData = _b.individualData;
488
- var data_state = (((individualData === null || individualData === void 0 ? void 0 : individualData.is_authorized) ? individuals : individualData) || {}).data_state;
489
- state.data.verify.responseBody = __assign(__assign(__assign(__assign({}, state.data.verify.responseBody), { flows: flows }), (individualData && { user: individualData })), (data_state && {
490
- individuals: __assign(__assign({}, individuals), { data_state: data_state })
491
- }));
508
+ var _b = action.payload || {}, flows = _b.flows, data = _b.data;
509
+ 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 });
492
510
  })
493
511
  .addCase(updateBoardSuccess.pending, function (state) {
494
512
  state.loading = true;
@@ -146,27 +146,33 @@ export var verifyBoardLeadOTP = createAsyncThunk('board/verifyBoardLeadOTP', fun
146
146
  export var retrieveBoardDetails = createAsyncThunk('board/retrieveBoardDetails', function (_a) {
147
147
  var boardId = _a.boardId, boardInfoId = _a.boardInfoId;
148
148
  return __awaiter(void 0, void 0, void 0, function () {
149
- var boardInfoData, _b, boardInfoStatusData, boardData, _c, id, type, serviceCallBack, _d, boardRes, individualRes;
150
- var _e, _f;
151
- return __generator(this, function (_g) {
152
- switch (_g.label) {
149
+ var boardInfoData, _b, boardInfoStatusData, data, _c, id, type, individualData, boardData, serviceCallBack, _d, boardRes, individualRes;
150
+ var _e, _f, _g;
151
+ return __generator(this, function (_h) {
152
+ switch (_h.label) {
153
153
  case 0: return [4, API.boardService.retrieveBoardInfo({ id: boardId, infoId: boardInfoId })];
154
154
  case 1:
155
- boardInfoData = _g.sent();
155
+ boardInfoData = _h.sent();
156
156
  return [4, Promise.all([
157
157
  API.boardService.retrieveBoardInfoStatus(boardId),
158
158
  API.boardService.retrieveBoardDetails(boardId)
159
159
  ])];
160
160
  case 2:
161
- _b = _g.sent(), boardInfoStatusData = _b[0], boardData = _b[1];
161
+ _b = _h.sent(), boardInfoStatusData = _b[0], data = _b[1];
162
162
  _c = ((_e = boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification) === null || _e === void 0 ? void 0 : _e.recipient) || {}, id = _c.id, type = _c.type;
163
+ individualData = data === null || data === void 0 ? void 0 : data.user;
164
+ boardData = data;
165
+ if (!(((_f = data === null || data === void 0 ? void 0 : data.user) === null || _f === void 0 ? void 0 : _f.id) !== id)) return [3, 4];
163
166
  serviceCallBack = function () { return API.individualService.retrieveIndividual(id, type); };
164
167
  return [4, retrieveIndividualData(type, boardData, serviceCallBack)];
165
168
  case 3:
166
- _d = _g.sent(), boardRes = _d.boardRes, individualRes = _d.individualRes;
167
- return [2, {
168
- data: __assign(__assign({}, boardRes), { user: individualRes, brand: boardRes === null || boardRes === void 0 ? void 0 : boardRes.brand, bank_account: boardRes === null || boardRes === void 0 ? void 0 : boardRes.bank_account, entity: boardRes === null || boardRes === void 0 ? void 0 : boardRes.entity, merchant: boardRes === null || boardRes === void 0 ? void 0 : boardRes.merchant, name: individualRes === null || individualRes === void 0 ? void 0 : individualRes.names, business: boardRes === null || boardRes === void 0 ? void 0 : boardRes.business, individuals: boardRes === null || boardRes === void 0 ? void 0 : boardRes.individuals, contact: individualRes === null || individualRes === void 0 ? void 0 : individualRes.contact, flows: (boardInfoStatusData === null || boardInfoStatusData === void 0 ? void 0 : boardInfoStatusData.info) || [], recipient: (_f = boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification) === null || _f === void 0 ? void 0 : _f.recipient, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status })
169
- }];
169
+ _d = _h.sent(), boardRes = _d.boardRes, individualRes = _d.individualRes;
170
+ boardData = boardRes;
171
+ individualData = individualRes;
172
+ _h.label = 4;
173
+ case 4: return [2, {
174
+ data: __assign(__assign({}, boardData), { user: individualData, 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: individualData === null || individualData === void 0 ? void 0 : individualData.names, business: boardData === null || boardData === void 0 ? void 0 : boardData.business, individuals: boardData === null || boardData === void 0 ? void 0 : boardData.individuals, contact: individualData === null || individualData === void 0 ? void 0 : individualData.contact, flows: (boardInfoStatusData === null || boardInfoStatusData === void 0 ? void 0 : boardInfoStatusData.info) || [], recipient: (_g = boardInfoData === null || boardInfoData === void 0 ? void 0 : boardInfoData.notification) === null || _g === void 0 ? void 0 : _g.recipient, board_status: boardData === null || boardData === void 0 ? void 0 : boardData.status })
175
+ }];
170
176
  }
171
177
  });
172
178
  });
@@ -7,41 +7,19 @@ interface VerifyLeadTokenProps {
7
7
  }
8
8
  export declare const verifyLeadToken: import("@reduxjs/toolkit").AsyncThunk<{
9
9
  data: any;
10
- individualData: any;
11
- boardResponse: {
12
- user: any;
13
- brand: any;
14
- entity: any;
15
- bank_account: any;
16
- merchant: any;
17
- name: any;
18
- contact: any;
19
- individuals: any;
20
- business: any;
21
- notification: any;
22
- };
10
+ brandData: any;
23
11
  salesChannels: any;
24
12
  token: string;
13
+ entityInfoId: any;
25
14
  }, VerifyLeadTokenProps, {}>;
26
15
  export declare const resendOTP: import("@reduxjs/toolkit").AsyncThunk<{
27
16
  data: any;
28
17
  }, void, {}>;
29
18
  export declare const verifyBrandLeadOTP: import("@reduxjs/toolkit").AsyncThunk<{
30
19
  data: any;
31
- individualData: any;
32
- boardResponse: {
33
- user: any;
34
- brand: any;
35
- entity: any;
36
- bank_account: any;
37
- merchant: any;
38
- name: any;
39
- contact: any;
40
- individuals: any;
41
- business: any;
42
- notification: any;
43
- };
20
+ brandData: any;
44
21
  salesChannels: any;
22
+ entityInfoId: any;
45
23
  formData: OTPFormValues;
46
24
  }, OTPFormValues, {}>;
47
25
  export declare const retrieveSegmentDataList: import("@reduxjs/toolkit").AsyncThunk<{
@@ -52,9 +30,12 @@ export declare const retrieveSegmentDataList: import("@reduxjs/toolkit").AsyncTh
52
30
  export declare const retrieveBoardStatus: import("@reduxjs/toolkit").AsyncThunk<{
53
31
  flows: any;
54
32
  }, void, {}>;
55
- export declare const retrieveBoardDetails: import("@reduxjs/toolkit").AsyncThunk<{
56
- data: any;
57
- }, string, {}>;
33
+ declare type RetrieveBoardProps = {
34
+ boardId: string;
35
+ individualId: string;
36
+ individualType: string;
37
+ };
38
+ export declare const retrieveBoardDetails: import("@reduxjs/toolkit").AsyncThunk<any, RetrieveBoardProps, {}>;
58
39
  export declare const checkBrandNameAvailability: import("@reduxjs/toolkit").AsyncThunk<{
59
40
  response: any;
60
41
  formData: {
@@ -75,6 +56,7 @@ export declare const updateBrand: import("@reduxjs/toolkit").AsyncThunk<{
75
56
  }, AsyncThunkParams<Omit<BrandFormValues, "termAndConditionChecked" | "selectedBrandItem">>, {}>;
76
57
  export declare const updateSegmentBrand: import("@reduxjs/toolkit").AsyncThunk<{
77
58
  data: any;
59
+ entityData: any;
78
60
  formData: BrandSegmentFormValues;
79
61
  }, AsyncThunkParams<BrandSegmentFormValues>, {}>;
80
62
  export declare const retrieveEntityList: import("@reduxjs/toolkit").AsyncThunk<any, {
@@ -91,8 +73,11 @@ export declare const retrieveDataList: import("@reduxjs/toolkit").AsyncThunk<{
91
73
  countryISO2: string;
92
74
  }, void, {}>;
93
75
  export declare const updateBoardSuccess: import("@reduxjs/toolkit").AsyncThunk<{
94
- response: any;
95
- formData: void;
76
+ data: any;
77
+ flows?: undefined;
78
+ } | {
79
+ data: any;
80
+ flows: any;
96
81
  } | undefined, void, {}>;
97
82
  export declare const onCloseCompleteBrand: import("@reduxjs/toolkit").AsyncThunk<void, void, {}>;
98
83
  declare type VerifyData = {