@tap-payments/auth-jsconnect 2.11.6-development → 2.11.6-sandbox

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 (44) hide show
  1. package/build/@types/terminal.d.ts +44 -32
  2. package/build/api/auth.d.ts +1 -7
  3. package/build/api/index.d.ts +2 -2
  4. package/build/api/terminal.d.ts +2 -2
  5. package/build/api/terminal.js +11 -21
  6. package/build/assets/locales/ar.json +4 -0
  7. package/build/assets/locales/en.json +4 -0
  8. package/build/components/DeviceCard/DeviceCard.js +1 -1
  9. package/build/components/Tooltip/Tooltip.js +1 -1
  10. package/build/constants/app.d.ts +3 -2
  11. package/build/constants/app.js +22 -32
  12. package/build/constants/flows.d.ts +1 -1
  13. package/build/constants/flows.js +1 -1
  14. package/build/features/app/terminal/terminalStore.d.ts +7 -7
  15. package/build/features/app/terminal/terminalStore.js +46 -50
  16. package/build/features/featuresScreens.js +3 -3
  17. package/build/features/terminal/Terminal.js +2 -2
  18. package/build/features/terminal/screens/LinkNewTerminal/LinkNewTerminal.js +9 -8
  19. package/build/features/terminal/screens/LinkedSuccess/LinkedSuccess.js +6 -5
  20. package/build/features/terminal/screens/LinkedTerminalInfo/LinkedTerminalInfo.js +9 -9
  21. package/build/features/terminal/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
  22. package/build/features/terminal/screens/TerminalDeviceList/DeviceList.d.ts +3 -3
  23. package/build/features/terminal/screens/TerminalDeviceList/DeviceList.js +1 -1
  24. package/build/features/terminal/screens/TerminalDeviceList/TerminalDeviceList.js +15 -15
  25. package/build/features/terminal/screens/{POSDeviceListPage/POSDeviceListPage.js → TerminalListPage/TerminalListPage.js} +9 -9
  26. package/build/features/terminal/screens/TerminalListPage/index.d.ts +2 -0
  27. package/build/features/terminal/screens/TerminalListPage/index.js +2 -0
  28. package/build/features/terminal/screens/UnlinkedSuccess/UnlinkedSuccess.js +7 -5
  29. package/build/features/terminal/screens/UnlinkedTerminalInfo/UnlinkedTerminalInfo.js +11 -12
  30. package/build/features/terminal/screens/shared/TerminalList.d.ts +11 -0
  31. package/build/features/terminal/screens/shared/TerminalList.js +25 -0
  32. package/build/features/terminal/screens/shared/index.d.ts +2 -2
  33. package/build/features/terminal/screens/shared/index.js +2 -2
  34. package/build/features/terminal/screens/shared/styles.d.ts +1 -1
  35. package/build/features/terminal/screens/shared/styles.js +1 -1
  36. package/build/features/terminal/screens/shared/utils.d.ts +4 -4
  37. package/build/features/terminal/screens/shared/utils.js +9 -8
  38. package/build/utils/common.js +3 -3
  39. package/package.json +2 -2
  40. package/build/features/terminal/screens/POSDeviceListPage/index.d.ts +0 -2
  41. package/build/features/terminal/screens/POSDeviceListPage/index.js +0 -2
  42. package/build/features/terminal/screens/shared/POSDeviceList.d.ts +0 -11
  43. package/build/features/terminal/screens/shared/POSDeviceList.js +0 -28
  44. /package/build/features/terminal/screens/{POSDeviceListPage/POSDeviceListPage.d.ts → TerminalListPage/TerminalListPage.d.ts} +0 -0
@@ -49,7 +49,7 @@ var _a;
49
49
  import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
50
50
  import { handlePublicKey, handleSetCountryByIso2, onCloseComplete } from '../../../app/settings';
51
51
  import { FlowsTypes } from '../../../@types';
52
- import { CONNECT_FLOWS, NAFATH_PACI_TIMEOUT_DURATION, SELECTED_POS_DEFAULT_INFO, SELECTED_TERMINAL_DEFAULT_INFO, TERMINAL_PUSH_NOTIFICATION_DURATION, TERMINAL_PUSH_NOTIFICATION_FAILED, TERMINAL_STEP_NAMES } from '../../../constants';
52
+ import { CONNECT_FLOWS, NAFATH_PACI_TIMEOUT_DURATION, SELECTED_TERMINAL_DEFAULT_INFO, SELECTED_TERMINAL_DEVICE_DEFAULT_INFO, TERMINAL_PUSH_NOTIFICATION_DURATION, TERMINAL_PUSH_NOTIFICATION_FAILED, TERMINAL_STEP_NAMES } from '../../../constants';
53
53
  import API from '../../../api';
54
54
  import { isNetworkError, isTimeoutError, retrieveIndividualData, sleep } from '../../../utils';
55
55
  export var verifyToken = createAsyncThunk('terminal/verifyLeadToken', function (_a, thunkApi) {
@@ -79,10 +79,10 @@ export var verifyToken = createAsyncThunk('terminal/verifyLeadToken', function (
79
79
  if (step_name === TERMINAL_STEP_NAMES.PHONE_AUTH) {
80
80
  return [2, { data: data, token: token, nextScreen: CONNECT_FLOWS.terminal.verify }];
81
81
  }
82
- return [4, API.terminalService.retrieveTerminalList([merchant_id])];
82
+ return [4, API.terminalService.retrieveTerminalDeviceList([merchant_id])];
83
83
  case 2:
84
84
  terminalData = _d.sent();
85
- nextScreen = ((_c = terminalData === null || terminalData === void 0 ? void 0 : terminalData.list) === null || _c === void 0 ? void 0 : _c.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked;
85
+ nextScreen = ((_c = terminalData === null || terminalData === void 0 ? void 0 : terminalData.terminal_devices) === null || _c === void 0 ? void 0 : _c.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked;
86
86
  return [2, {
87
87
  data: data,
88
88
  token: token,
@@ -135,28 +135,27 @@ export var verifyTokenOTP = createAsyncThunk('terminal/verifyOtp', function (par
135
135
  thunkApi.dispatch(handlePublicKey(publicKey));
136
136
  if (countryIso2)
137
137
  thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
138
- return [4, API.terminalService.retrieveTerminalList([merchant_id])];
138
+ return [4, API.terminalService.retrieveTerminalDeviceList([merchant_id])];
139
139
  case 2:
140
140
  terminalData = _g.sent();
141
- nextScreen = ((_d = terminalData === null || terminalData === void 0 ? void 0 : terminalData.list) === null || _d === void 0 ? void 0 : _d.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked;
141
+ nextScreen = ((_d = terminalData === null || terminalData === void 0 ? void 0 : terminalData.terminal_devices) === null || _d === void 0 ? void 0 : _d.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked;
142
142
  (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, { otp: params.otp });
143
143
  return [2, { data: data, terminalData: terminalData, formData: params, nextScreen: nextScreen }];
144
144
  }
145
145
  });
146
146
  }); });
147
147
  export var linkNewTerminal = createAsyncThunk('terminal/linkNewTerminal', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
148
- var _a, _b, selectedPOS, responseData, _c, language, businessCountry, scope, authData, payload, data;
149
- return __generator(this, function (_d) {
150
- switch (_d.label) {
148
+ var _a, terminal, _b, language, businessCountry, scope, terminalId, payload, data;
149
+ return __generator(this, function (_c) {
150
+ switch (_c.label) {
151
151
  case 0:
152
- _a = thunkApi.getState(), _b = _a.terminal.data, selectedPOS = _b.terminalInfo.selectedPOS, responseData = _b.responseData, _c = _a.settings.data, language = _c.language, businessCountry = _c.businessCountry, scope = _c.appConfig.scope;
153
- authData = (responseData || {}).authData;
152
+ _a = thunkApi.getState(), terminal = _a.terminal, _b = _a.settings.data, language = _b.language, businessCountry = _b.businessCountry, scope = _b.appConfig.scope;
153
+ terminalId = (terminal.data.terminalInfo.selectedTerminal || {}).id;
154
154
  payload = {
155
155
  user_credentail: {
156
- merchant: {
157
- id: authData === null || authData === void 0 ? void 0 : authData.merchant_id
158
- },
159
- device: { id: selectedPOS === null || selectedPOS === void 0 ? void 0 : selectedPOS.id }
156
+ terminal: {
157
+ id: terminalId
158
+ }
160
159
  },
161
160
  country: businessCountry === null || businessCountry === void 0 ? void 0 : businessCountry.iso2,
162
161
  scope: scope,
@@ -168,12 +167,12 @@ export var linkNewTerminal = createAsyncThunk('terminal/linkNewTerminal', functi
168
167
  };
169
168
  return [4, API.authService.createAuth(payload)];
170
169
  case 1:
171
- data = _d.sent();
170
+ data = _c.sent();
172
171
  return [2, { data: data, nextScreen: CONNECT_FLOWS.terminal.terminalLinkNew }];
173
172
  }
174
173
  });
175
174
  }); });
176
- export var retrievePOSDevices = createAsyncThunk('terminal/retrievePOSDevices', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
175
+ export var retrieveTerminalList = createAsyncThunk('terminal/retrieveTerminalList', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
177
176
  var terminal, merchant_id, data;
178
177
  var _a;
179
178
  return __generator(this, function (_b) {
@@ -181,7 +180,7 @@ export var retrievePOSDevices = createAsyncThunk('terminal/retrievePOSDevices',
181
180
  case 0:
182
181
  terminal = thunkApi.getState().terminal;
183
182
  merchant_id = (((_a = terminal.data.responseData) === null || _a === void 0 ? void 0 : _a.authData) || {}).merchant_id;
184
- return [4, API.terminalService.retrievePOSDevices([merchant_id])];
183
+ return [4, API.terminalService.retrieveTerminalList([merchant_id])];
185
184
  case 1:
186
185
  data = _b.sent();
187
186
  return [2, { data: data }];
@@ -248,17 +247,17 @@ export var pushNotificationLinkNewTerminal = createAsyncThunk('terminal/pushNoti
248
247
  });
249
248
  });
250
249
  export var unlinkTerminalDevice = createAsyncThunk('terminal/unlinkTerminalDevice', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
251
- var terminal, _a, id, terminal_device, merchant, payload, data;
250
+ var terminal, _a, id, terminalInfo, merchant, payload, data;
252
251
  return __generator(this, function (_b) {
253
252
  switch (_b.label) {
254
253
  case 0:
255
254
  terminal = thunkApi.getState().terminal;
256
- _a = terminal.data.terminalInfo.selectedTerminal, id = _a.id, terminal_device = _a.terminal_device, merchant = _a.merchant;
255
+ _a = terminal.data.terminalInfo.selectedTerminalDevice, id = _a.id, terminalInfo = _a.terminal, merchant = _a.merchant;
257
256
  payload = {
258
257
  deviceId: id,
259
258
  initiator: 'connect',
260
259
  terminal: {
261
- id: terminal_device.id
260
+ id: (terminalInfo === null || terminalInfo === void 0 ? void 0 : terminalInfo.id) || ''
262
261
  },
263
262
  merchant: {
264
263
  id: (merchant === null || merchant === void 0 ? void 0 : merchant.id) || ''
@@ -272,21 +271,18 @@ export var unlinkTerminalDevice = createAsyncThunk('terminal/unlinkTerminalDevic
272
271
  });
273
272
  }); });
274
273
  export var linkTerminalDevice = createAsyncThunk('terminal/linkTerminalDevice', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
275
- var _a, _b, posId, _c, id, terminal_device, _d, businessCountry, language, scope, payload, data;
276
- return __generator(this, function (_e) {
277
- switch (_e.label) {
274
+ var _a, _b, terminalId, deviceId, _c, businessCountry, language, scope, payload, data;
275
+ return __generator(this, function (_d) {
276
+ switch (_d.label) {
278
277
  case 0:
279
- _a = thunkApi.getState(), _b = _a.terminal.data.terminalInfo, posId = _b.selectedPOS.id, _c = _b.selectedTerminal, id = _c.id, terminal_device = _c.terminal_device, _d = _a.settings.data, businessCountry = _d.businessCountry, language = _d.language, scope = _d.appConfig.scope;
278
+ _a = thunkApi.getState(), _b = _a.terminal.data.terminalInfo, terminalId = _b.selectedTerminal.id, deviceId = _b.selectedTerminalDevice.id, _c = _a.settings.data, businessCountry = _c.businessCountry, language = _c.language, scope = _c.appConfig.scope;
280
279
  payload = {
281
280
  user_credentail: {
282
281
  terminal: {
283
- id: id,
282
+ id: terminalId,
284
283
  terminal_device: {
285
- id: terminal_device.id
284
+ id: deviceId
286
285
  }
287
- },
288
- device: {
289
- id: posId
290
286
  }
291
287
  },
292
288
  country: businessCountry === null || businessCountry === void 0 ? void 0 : businessCountry.iso2,
@@ -299,7 +295,7 @@ export var linkTerminalDevice = createAsyncThunk('terminal/linkTerminalDevice',
299
295
  };
300
296
  return [4, API.authService.createAuth(payload)];
301
297
  case 1:
302
- data = _e.sent();
298
+ data = _d.sent();
303
299
  return [2, { data: data }];
304
300
  }
305
301
  });
@@ -346,7 +342,7 @@ export var retrieveBoardStatus = createAsyncThunk('terminal/retrieveBoardStatus'
346
342
  });
347
343
  });
348
344
  });
349
- export var retrieveTerminalList = createAsyncThunk('terminal/retrieveTerminalList', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
345
+ export var retrieveTerminalDeviceList = createAsyncThunk('terminal/retrieveTerminalDeviceList', function (_, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
350
346
  var terminal, merchant_id, data;
351
347
  var _a;
352
348
  return __generator(this, function (_b) {
@@ -354,7 +350,7 @@ export var retrieveTerminalList = createAsyncThunk('terminal/retrieveTerminalLis
354
350
  case 0:
355
351
  terminal = thunkApi.getState().terminal;
356
352
  merchant_id = (((_a = terminal.data.responseData) === null || _a === void 0 ? void 0 : _a.authData) || {}).merchant_id;
357
- return [4, API.terminalService.retrieveTerminalList([merchant_id])];
353
+ return [4, API.terminalService.retrieveTerminalDeviceList([merchant_id])];
358
354
  case 1:
359
355
  data = _b.sent();
360
356
  return [2, { data: data }];
@@ -438,7 +434,7 @@ var initialState = {
438
434
  error: null,
439
435
  loading: false,
440
436
  customLoading: false,
441
- posDevicesLoading: false,
437
+ terminalListLoading: false,
442
438
  data: {
443
439
  flowName: FlowsTypes.TERMINAL,
444
440
  verify: {
@@ -448,8 +444,8 @@ var initialState = {
448
444
  otp: ''
449
445
  },
450
446
  terminalInfo: {
451
- selectedTerminal: SELECTED_TERMINAL_DEFAULT_INFO,
452
- selectedPOS: SELECTED_POS_DEFAULT_INFO
447
+ selectedTerminalDevice: SELECTED_TERMINAL_DEVICE_DEFAULT_INFO,
448
+ selectedTerminal: SELECTED_TERMINAL_DEFAULT_INFO
453
449
  }
454
450
  }
455
451
  };
@@ -469,12 +465,12 @@ export var terminalSlice = createSlice({
469
465
  resetOTPScreen: function (state) {
470
466
  state.data.otpData.otp = '';
471
467
  },
468
+ storeSelectedTerminalDevice: function (state, action) {
469
+ state.data.terminalInfo.selectedTerminalDevice = action.payload;
470
+ },
472
471
  storeSelectedTerminal: function (state, action) {
473
472
  state.data.terminalInfo.selectedTerminal = action.payload;
474
473
  },
475
- storeSelectedPOS: function (state, action) {
476
- state.data.terminalInfo.selectedPOS = action.payload;
477
- },
478
474
  resetTerminalLinkResponse: function (state) {
479
475
  state.data.responseData = __assign(__assign({}, state.data.responseData), { linkTerminalDeviceData: undefined, pushNotificationLinkedNewTerminalData: undefined, linkNewTerminalData: undefined });
480
476
  }
@@ -536,32 +532,32 @@ export var terminalSlice = createSlice({
536
532
  state.loading = false;
537
533
  state.error = action.error.message;
538
534
  })
539
- .addCase(retrievePOSDevices.fulfilled, function (state, action) {
535
+ .addCase(retrieveTerminalList.fulfilled, function (state, action) {
540
536
  var _a, _b;
541
- state.posDevicesLoading = false;
537
+ state.terminalListLoading = false;
542
538
  state.error = null;
543
539
  var data = action.payload.data;
544
540
  if ((_a = data === null || data === void 0 ? void 0 : data.list) === null || _a === void 0 ? void 0 : _a.length)
545
- state.data.terminalInfo.selectedPOS = data.list[0];
546
- state.data.responseData = __assign(__assign({}, state.data.responseData), { posDevices: (_b = data === null || data === void 0 ? void 0 : data.list) !== null && _b !== void 0 ? _b : [] });
541
+ state.data.terminalInfo.selectedTerminal = data.list[0];
542
+ state.data.responseData = __assign(__assign({}, state.data.responseData), { terminalList: (_b = data === null || data === void 0 ? void 0 : data.list) !== null && _b !== void 0 ? _b : [] });
547
543
  })
548
- .addCase(retrievePOSDevices.rejected, function (state, action) {
549
- state.posDevicesLoading = false;
544
+ .addCase(retrieveTerminalList.rejected, function (state, action) {
545
+ state.terminalListLoading = false;
550
546
  state.error = action.error.message;
551
547
  })
552
- .addCase(retrievePOSDevices.pending, function (state) {
553
- state.posDevicesLoading = true;
548
+ .addCase(retrieveTerminalList.pending, function (state) {
549
+ state.terminalListLoading = true;
554
550
  state.error = null;
555
551
  })
556
- .addCase(retrieveTerminalList.pending, function (state) {
552
+ .addCase(retrieveTerminalDeviceList.pending, function (state) {
557
553
  state.error = null;
558
554
  })
559
- .addCase(retrieveTerminalList.fulfilled, function (state, action) {
555
+ .addCase(retrieveTerminalDeviceList.fulfilled, function (state, action) {
560
556
  state.error = null;
561
557
  var data = action.payload.data;
562
558
  state.data.responseData = __assign(__assign({}, state.data.responseData), { terminalData: data });
563
559
  })
564
- .addCase(retrieveTerminalList.rejected, function (state, action) {
560
+ .addCase(retrieveTerminalDeviceList.rejected, function (state, action) {
565
561
  state.error = action.error.message;
566
562
  })
567
563
  .addCase(pushNotificationLinkNewTerminal.pending, function (state) {
@@ -675,6 +671,6 @@ export var terminalSlice = createSlice({
675
671
  });
676
672
  }
677
673
  });
678
- export var clearError = (_a = terminalSlice.actions, _a.clearError), setError = _a.setError, stopLoader = _a.stopLoader, resetOTPScreen = _a.resetOTPScreen, storeSelectedTerminal = _a.storeSelectedTerminal, storeSelectedPOS = _a.storeSelectedPOS, resetTerminalLinkResponse = _a.resetTerminalLinkResponse;
674
+ export var clearError = (_a = terminalSlice.actions, _a.clearError), setError = _a.setError, stopLoader = _a.stopLoader, resetOTPScreen = _a.resetOTPScreen, storeSelectedTerminalDevice = _a.storeSelectedTerminalDevice, storeSelectedTerminal = _a.storeSelectedTerminal, resetTerminalLinkResponse = _a.resetTerminalLinkResponse;
679
675
  export default terminalSlice.reducer;
680
676
  export var terminalSelector = function (state) { return state.terminal; };
@@ -146,7 +146,7 @@ import TerminalOperatorErrorPage from './terminal/screens/OperatorError';
146
146
  import TerminalVerifyPage from './terminal/screens/Verify';
147
147
  import NoTerminalDeviceLinkedPage from './terminal/screens/NoTerminalDeviceLinked';
148
148
  import TerminalDeviceListPage from './terminal/screens/TerminalDeviceList';
149
- import POSDeviceListPage from '../features/terminal/screens/POSDeviceListPage';
149
+ import TerminalListPage from './terminal/screens/TerminalListPage';
150
150
  import LinkNewTerminalPage from './terminal/screens/LinkNewTerminal';
151
151
  import LinkedTerminalInfoPage from './terminal/screens/LinkedTerminalInfo';
152
152
  import UnlinkedTerminalInfoPage from './terminal/screens/UnlinkedTerminalInfo';
@@ -744,8 +744,8 @@ export var terminalFeatureScreens = [
744
744
  element: LinkNewTerminalPage
745
745
  },
746
746
  {
747
- name: CONNECT_FLOWS.terminal.posDeviceList,
748
- element: POSDeviceListPage
747
+ name: CONNECT_FLOWS.terminal.terminalList,
748
+ element: TerminalListPage
749
749
  },
750
750
  {
751
751
  name: CONNECT_FLOWS.terminal.linkedTerminalInfo,
@@ -41,7 +41,7 @@ var Terminal = memo(function (_a) {
41
41
  var theme = useAppTheme().theme;
42
42
  var dispatch = useAppDispatch();
43
43
  var _d = useAppSelector(settingsSelector), data = _d.data, error = _d.error, settingLoading = _d.loading;
44
- var _e = useAppSelector(terminalSelector), customLoading = _e.customLoading, terminalError = _e.error, loading = _e.loading, posDevicesLoading = _e.posDevicesLoading;
44
+ var _e = useAppSelector(terminalSelector), customLoading = _e.customLoading, terminalError = _e.error, loading = _e.loading, terminalListLoading = _e.terminalListLoading;
45
45
  useAppConfig(__assign(__assign({ navigation: TERMINAL_SCREENS_NAVIGATION }, props), { disableSettingFetching: props.mode === 'content' ? false : !!verifyToken || !!configToken }));
46
46
  useErrorListener(terminalError || error);
47
47
  useStepStartedListener();
@@ -77,7 +77,7 @@ var Terminal = memo(function (_a) {
77
77
  });
78
78
  }, []);
79
79
  var initialLoading = verifyToken && props.mode !== 'content' ? settingLoading : settingLoading || customLoading;
80
- return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ mode: props.mode, open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading || posDevicesLoading ? 'none' : 'auto', isTapOrigin: isTapOrigin, animationDirection: animationDirection, open: open, error: error, loading: initialLoading, loaderColor: loaderColor, breakpoint: 'sm', screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: isMaturityExpress, type: props.mode === 'content' ? 'CONTENT' : undefined, dialogEdgeFormat: data.appConfig.dialogEdgeFormat, features: appConfig.features }, { children: _jsx(FeatureContainer, __assign({ mode: props.mode, isMaturityExpress: isMaturityExpress }, { children: terminalFeatureScreens.map(function (_a, index) {
80
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ mode: props.mode, open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading || terminalListLoading ? 'none' : 'auto', isTapOrigin: isTapOrigin, animationDirection: animationDirection, open: open, error: error, loading: initialLoading, loaderColor: loaderColor, breakpoint: 'sm', screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: isMaturityExpress, type: props.mode === 'content' ? 'CONTENT' : undefined, dialogEdgeFormat: data.appConfig.dialogEdgeFormat, features: appConfig.features }, { children: _jsx(FeatureContainer, __assign({ mode: props.mode, isMaturityExpress: isMaturityExpress }, { children: terminalFeatureScreens.map(function (_a, index) {
81
81
  var Element = _a.element, name = _a.name;
82
82
  var isActive = activeScreen.name === name;
83
83
  return (_jsx(Collapse, __assign({ in: isActive, timeout: { enter: 1000, exit: 800 } }, { children: _jsx(Element, {}) }), index));
@@ -27,15 +27,17 @@ var LinkNewTerminal = function () {
27
27
  var _a, _b, _c, _d;
28
28
  var t = useTranslation().t;
29
29
  var dispatch = useAppDispatch();
30
- var _e = useAppSelector(terminalSelector).data, terminal_device = _e.terminalInfo.selectedTerminal.terminal_device, responseData = _e.responseData;
31
- var _f = React.useState(false), isReady = _f[0], setIsReady = _f[1];
32
- var _g = React.useState(false), success = _g[0], setSuccess = _g[1];
33
- var _h = React.useState(false), failed = _h[0], setFailed = _h[1];
34
- var _j = responseData || {}, terminalData = _j.terminalData, linkNewTerminalData = _j.linkNewTerminalData;
30
+ var data = useAppSelector(terminalSelector).data;
31
+ var _e = React.useState(false), isReady = _e[0], setIsReady = _e[1];
32
+ var _f = React.useState(false), success = _f[0], setSuccess = _f[1];
33
+ var _g = React.useState(false), failed = _g[0], setFailed = _g[1];
34
+ var terminalInfo = data.terminalInfo, responseData = data.responseData;
35
+ var _h = responseData || {}, terminalData = _h.terminalData, linkNewTerminalData = _h.linkNewTerminalData;
36
+ var terminal_devices = (terminalData || {}).terminal_devices;
35
37
  var qrCode = "data:image/png;base64,".concat((_a = linkNewTerminalData === null || linkNewTerminalData === void 0 ? void 0 : linkNewTerminalData.linking) === null || _a === void 0 ? void 0 : _a.qr);
36
38
  var code = (_b = linkNewTerminalData === null || linkNewTerminalData === void 0 ? void 0 : linkNewTerminalData.linking) === null || _b === void 0 ? void 0 : _b.code;
37
39
  var expiry = TERMINAL_PUSH_NOTIFICATION_DURATION;
38
- var deviceName = ((_d = (_c = terminal_device === null || terminal_device === void 0 ? void 0 : terminal_device.model) === null || _c === void 0 ? void 0 : _c.name[0]) === null || _d === void 0 ? void 0 : _d.text) || '';
40
+ var deviceName = ((_d = (_c = terminalInfo.selectedTerminalDevice.model) === null || _c === void 0 ? void 0 : _c.name[0]) === null || _d === void 0 ? void 0 : _d.text) || '';
39
41
  var newTerminal = true;
40
42
  React.useEffect(function () {
41
43
  if (linkNewTerminalData && !isReady) {
@@ -59,8 +61,7 @@ var LinkNewTerminal = function () {
59
61
  };
60
62
  }, [isReady]);
61
63
  var handleOnBack = function () {
62
- var _a;
63
- var previousScreen = ((_a = terminalData === null || terminalData === void 0 ? void 0 : terminalData.list) === null || _a === void 0 ? void 0 : _a.length) ? CONNECT_FLOWS.terminal.posDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked;
64
+ var previousScreen = (terminal_devices === null || terminal_devices === void 0 ? void 0 : terminal_devices.length) ? CONNECT_FLOWS.terminal.terminalList : CONNECT_FLOWS.terminal.noTerminalLinked;
64
65
  dispatch(handlePrevScreenStep(previousScreen));
65
66
  };
66
67
  return (_jsxs(ScreenContainer, __assign({ minHeight: 200, justifyContent: 'space-between' }, { children: [_jsx(PushNotification, __assign({ error: t('terminal_request_denied', { device: deviceName }), failed: failed, success: success, expiryInSeconds: expiry }, { children: _jsxs(LinkNewTerminalContainer, { children: [_jsx(LinkTerminalText, { children: t('terminal_link_terminal') }), _jsx(QRCodeDescription, { children: t('terminal_qr_code_description') }), _jsx(QRCodeImage, { src: qrCode }), code && (_jsxs(_Fragment, { children: [_jsx(LinkTerminalText, { children: t('terminal_or_use_code') }), _jsx(CodeDescription, { children: formatCode(code) })] }))] }) })), _jsx(Box, __assign({ sx: { ml: 2.5, mr: 2.5 } }, { children: _jsx(Button, __assign({ sx: { mb: 1.5, mt: 1.5 }, onClick: handleOnBack, variant: 'text' }, { children: t('back') })) }))] })));
@@ -15,21 +15,22 @@ import { useTranslation } from 'react-i18next';
15
15
  import Box from '@mui/material/Box';
16
16
  import { useAppDispatch, useAppSelector, useLanguage } from '../../../../hooks';
17
17
  import { handleNextScreenStep, handlePrevScreenStep } from '../../../../app/settings';
18
- import { retrieveBoardDetails, retrieveBoardStatus, retrieveTerminalList, terminalSelector } from '../../../app/terminal/terminalStore';
18
+ import { retrieveBoardDetails, retrieveBoardStatus, retrieveTerminalDeviceList, terminalSelector } from '../../../app/terminal/terminalStore';
19
19
  import SuccessScreen from '../../../shared/SuccessScreen';
20
20
  import Button from '../../../shared/Button';
21
- import { SuccessContainerStyled } from '../shared';
21
+ import { getTerminalName, SuccessContainerStyled } from '../shared';
22
22
  import { CONNECT_FLOWS } from '../../../../constants';
23
23
  var LinkedSuccess = function () {
24
24
  var t = useTranslation().t;
25
25
  var isAr = useLanguage().isAr;
26
26
  var dispatch = useAppDispatch();
27
- var _a = useAppSelector(terminalSelector), error = _a.error, loading = _a.loading, _b = _a.data, selectedPOS = _b.terminalInfo.selectedPOS, responseData = _b.responseData;
27
+ var _a = useAppSelector(terminalSelector), error = _a.error, loading = _a.loading, _b = _a.data, selectedTerminal = _b.terminalInfo.selectedTerminal, responseData = _b.responseData;
28
28
  var _c = responseData || {}, boardData = _c.boardData, authData = _c.authData;
29
+ var deviceName = getTerminalName(selectedTerminal);
29
30
  var handleGoToBoard = function () {
30
31
  var board_id = (boardData || {}).id;
31
32
  var _a = (authData === null || authData === void 0 ? void 0 : authData.recipient) || {}, id = _a.id, type = _a.type;
32
- dispatch(retrieveTerminalList());
33
+ dispatch(retrieveTerminalDeviceList());
33
34
  dispatch(retrieveBoardStatus({ boardId: board_id }))
34
35
  .unwrap()
35
36
  .then(function () {
@@ -45,6 +46,6 @@ var LinkedSuccess = function () {
45
46
  var handleOnBack = function () {
46
47
  dispatch(handlePrevScreenStep());
47
48
  };
48
- return (_jsxs(SuccessContainerStyled, { children: [_jsx(SuccessScreen, { sx: { minHeight: 'unset', ml: 2.5, mr: 2.5 }, title: t('terminal_linked_success', { device: selectedPOS === null || selectedPOS === void 0 ? void 0 : selectedPOS.display_name }), successTitle: t('terminal_go_to_board'), loading: loading, error: error || '' }), _jsx(Box, __assign({ sx: { width: '100%' } }, { children: _jsx(Button, __assign({ loading: loading, disableBack: true, onBackClicked: handleOnBack, onClick: handleGoToBoard, isAr: isAr }, { children: t('terminal_go_to_board') })) }))] }));
49
+ return (_jsxs(SuccessContainerStyled, { children: [_jsx(SuccessScreen, { sx: { minHeight: 'unset', ml: 2.5, mr: 2.5 }, title: t('terminal_linked_success', { device: deviceName }), successTitle: t('terminal_go_to_board'), loading: loading, error: error || '' }), _jsx(Box, __assign({ sx: { width: '100%' } }, { children: _jsx(Button, __assign({ loading: loading, disableBack: true, onBackClicked: handleOnBack, onClick: handleGoToBoard, isAr: isAr }, { children: t('terminal_go_to_board') })) }))] }));
49
50
  };
50
51
  export default React.memo(LinkedSuccess);
@@ -23,17 +23,17 @@ import Button from '../../../shared/Button';
23
23
  import { clearError, terminalSelector, unlinkTerminalDevice } from '../../../app/terminal/terminalStore';
24
24
  import { Container, getId, getIdLabel, getPairedWith, LinkWithText } from '../shared';
25
25
  var LinkedTerminalInfo = function () {
26
- var _a;
26
+ var _a, _b, _c, _d, _e, _f, _g;
27
27
  var t = useTranslation().t;
28
- var _b = useTheme(), spacing = _b.spacing, palette = _b.palette;
28
+ var _h = useTheme(), spacing = _h.spacing, palette = _h.palette;
29
29
  var dispatch = useAppDispatch();
30
30
  var isAr = useLanguage().isAr;
31
- var _c = useAppSelector(terminalSelector), error = _c.error, selectedTerminal = _c.data.terminalInfo.selectedTerminal, loading = _c.loading;
32
- var terminal_device = selectedTerminal.terminal_device, linked = selectedTerminal.linked, device = selectedTerminal.device;
33
- var _d = (terminal_device.model || {}).image_url, image_url = _d === void 0 ? ICONS_NAMES.device_image : _d;
34
- var deviceName = (device === null || device === void 0 ? void 0 : device.display_name) || '';
35
- var deviceImage = (device === null || device === void 0 ? void 0 : device.logo) || ICONS_NAMES.platform_image;
36
- var deviceId = (device === null || device === void 0 ? void 0 : device.reference) || (device === null || device === void 0 ? void 0 : device.id) || '';
31
+ var _j = useAppSelector(terminalSelector), error = _j.error, selectedTerminalDevice = _j.data.terminalInfo.selectedTerminalDevice, loading = _j.loading;
32
+ var model = selectedTerminalDevice.model, linked = selectedTerminalDevice.linked, display_name = selectedTerminalDevice.display_name, terminal = selectedTerminalDevice.terminal, platform = selectedTerminalDevice.platform;
33
+ var _k = (model || {}).image_url, image_url = _k === void 0 ? ICONS_NAMES.device_image : _k;
34
+ var deviceName = (_b = (_a = terminal === null || terminal === void 0 ? void 0 : terminal.device) === null || _a === void 0 ? void 0 : _a.display_name) !== null && _b !== void 0 ? _b : (_c = terminal === null || terminal === void 0 ? void 0 : terminal.name) === null || _c === void 0 ? void 0 : _c.en;
35
+ var deviceImage = (_e = (_d = platform === null || platform === void 0 ? void 0 : platform.brand) === null || _d === void 0 ? void 0 : _d.logo) !== null && _e !== void 0 ? _e : ICONS_NAMES.platform_image;
36
+ var deviceId = (_g = (_f = terminal === null || terminal === void 0 ? void 0 : terminal.device) === null || _f === void 0 ? void 0 : _f.id) !== null && _g !== void 0 ? _g : terminal === null || terminal === void 0 ? void 0 : terminal.legacy_id;
37
37
  React.useEffect(function () {
38
38
  if (error)
39
39
  dispatch(clearError());
@@ -50,6 +50,6 @@ var LinkedTerminalInfo = function () {
50
50
  var handleOnBack = function () {
51
51
  dispatch(handlePrevScreenStep(CONNECT_FLOWS.terminal.terminalDeviceList));
52
52
  };
53
- return (_jsxs(ScreenContainer, __assign({ minHeight: 224, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(DeviceCard, { badge: true, image: image_url, name: ((_a = selectedTerminal.terminal_device) === null || _a === void 0 ? void 0 : _a.display_name) || '', deviceId: getId(selectedTerminal), deviceIdLabel: getIdLabel(selectedTerminal), pairedWith: getPairedWith(selectedTerminal), isLinked: linked }), _jsx(LinkWithText, { children: t('terminal_linked_with') }), _jsx(DeviceCard, { sx: { minHeight: spacing(10), borderRadius: spacing(1), background: palette.components.deviceCard.deviceInfoBackground }, image: deviceImage, name: deviceName, deviceId: deviceId, isLinked: linked })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Button, __assign({ loading: loading, onBackClicked: handleOnBack, onClick: handleOnNext, isAr: isAr }, { children: t('terminal_unlink') }))] })));
53
+ return (_jsxs(ScreenContainer, __assign({ minHeight: 224, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(DeviceCard, { badge: true, image: image_url, name: display_name, deviceId: getId(selectedTerminalDevice), deviceIdLabel: getIdLabel(selectedTerminalDevice), pairedWith: getPairedWith(selectedTerminalDevice), isLinked: linked }), _jsx(LinkWithText, { children: t('terminal_linked_with') }), _jsx(DeviceCard, { sx: { minHeight: spacing(10), borderRadius: spacing(1), background: palette.components.deviceCard.deviceInfoBackground }, image: deviceImage || '', name: deviceName || '', deviceId: deviceId !== null && deviceId !== void 0 ? deviceId : '', isLinked: linked })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Button, __assign({ loading: loading, onBackClicked: handleOnBack, onClick: handleOnNext, isAr: isAr }, { children: t('terminal_unlink') }))] })));
54
54
  };
55
55
  export default React.memo(LinkedTerminalInfo);
@@ -27,6 +27,6 @@ var SuccessWithFlowButtons = function () {
27
27
  var onClose = function () {
28
28
  dispatch(onCloseCompleteTerminal());
29
29
  };
30
- return (_jsx(SuccessFlowButtons, { flowName: data.flowName, loading: loading, bank: bank, brand: brand, entity: entity, merchant: merchant, user: __assign({ names: { en: name } }, user), business: business, boardId: board_id, boardInfoId: board_info_id, individuals: individuals, flows: boardFlows || [], onClose: isScopeAuthentication ? onClose : undefined, recipient: recipient, status: board_status, terminalStepName: ((_a = terminalData === null || terminalData === void 0 ? void 0 : terminalData.list) === null || _a === void 0 ? void 0 : _a.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked }));
30
+ return (_jsx(SuccessFlowButtons, { flowName: data.flowName, loading: loading, bank: bank, brand: brand, entity: entity, merchant: merchant, user: __assign({ names: { en: name } }, user), business: business, boardId: board_id, boardInfoId: board_info_id, individuals: individuals, flows: boardFlows || [], onClose: isScopeAuthentication ? onClose : undefined, recipient: recipient, status: board_status, terminalStepName: ((_a = terminalData === null || terminalData === void 0 ? void 0 : terminalData.terminal_devices) === null || _a === void 0 ? void 0 : _a.length) ? CONNECT_FLOWS.terminal.terminalDeviceList : CONNECT_FLOWS.terminal.noTerminalLinked }));
31
31
  };
32
32
  export default memo(SuccessWithFlowButtons);
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
- import { TerminalInfo } from '../../../../@types';
2
+ import { TerminalDeviceInfo } from '../../../../@types';
3
3
  interface DeviceListProps {
4
- devices: TerminalInfo[];
4
+ devices: TerminalDeviceInfo[];
5
5
  loading?: boolean;
6
- onClick: (device: TerminalInfo) => void;
6
+ onClick: (device: TerminalDeviceInfo) => void;
7
7
  }
8
8
  declare const _default: React.MemoExoticComponent<({ devices, onClick, loading }: DeviceListProps) => JSX.Element>;
9
9
  export default _default;
@@ -14,7 +14,7 @@ var DeviceList = function (_a) {
14
14
  };
15
15
  return (_jsx(DeviceListContainer, { children: devices.map(function (device, index) {
16
16
  var _a;
17
- return (_jsx(DeviceCard, { onClick: function () { return handleOnClick(device); }, loading: device.id === (selected === null || selected === void 0 ? void 0 : selected.id) && loading, image: (_a = device.terminal_device.model.image_url) !== null && _a !== void 0 ? _a : defaultImage, name: device.terminal_device.display_name, deviceId: getId(device), pairedWith: getPairedWith(device), deviceIdLabel: getIdLabel(device), isLinked: device.linked, arrow: true, badge: true }, index));
17
+ return (_jsx(DeviceCard, { onClick: function () { return handleOnClick(device); }, loading: device.id === (selected === null || selected === void 0 ? void 0 : selected.id) && loading, image: (_a = device.model.image_url) !== null && _a !== void 0 ? _a : defaultImage, name: device.display_name, deviceId: getId(device), pairedWith: getPairedWith(device), deviceIdLabel: getIdLabel(device), isLinked: device.linked, arrow: true, badge: true }, index));
18
18
  }) }));
19
19
  };
20
20
  export default memo(DeviceList);
@@ -56,27 +56,27 @@ import Button from '../../../../components/Button';
56
56
  import Loader from '../../../../components/Loader';
57
57
  import Warning from '../../../../components/Warning';
58
58
  import Box from '@mui/material/Box';
59
- import { clearError, resetTerminalLinkResponse, retrieveBoardDetails, retrieveBoardStatus, retrievePOSDevices, storeSelectedTerminal, terminalSelector } from '../../../app/terminal/terminalStore';
59
+ import { clearError, resetTerminalLinkResponse, retrieveBoardDetails, retrieveBoardStatus, retrieveTerminalList, storeSelectedTerminalDevice, terminalSelector } from '../../../app/terminal/terminalStore';
60
60
  import { Header, Container, TextTypography } from '../shared';
61
61
  import DeviceList from './DeviceList';
62
62
  var TerminalDeviceList = function () {
63
63
  var t = useTranslation().t;
64
64
  var dispatch = useAppDispatch();
65
- var _a = useAppSelector(terminalSelector), data = _a.data, loading = _a.loading, posDevicesLoading = _a.posDevicesLoading, error = _a.error;
65
+ var _a = useAppSelector(terminalSelector), data = _a.data, loading = _a.loading, terminalListLoading = _a.terminalListLoading, error = _a.error;
66
66
  var _b = React.useState(false), newLinkClicked = _b[0], setNewLinkClicked = _b[1];
67
- var _c = data.responseData || {}, boardFlows = _c.boardFlows, authData = _c.authData, boardData = _c.boardData, terminalData = _c.terminalData, posDevices = _c.posDevices;
68
- var list = (terminalData || {}).list;
67
+ var _c = data.responseData || {}, boardFlows = _c.boardFlows, authData = _c.authData, boardData = _c.boardData, terminalData = _c.terminalData, terminalList = _c.terminalList;
68
+ var terminal_devices = (terminalData || {}).terminal_devices;
69
69
  var _d = React.useMemo(function () {
70
- var linked = list === null || list === void 0 ? void 0 : list.filter(function (d) { return d.linked; });
71
- var unLinked = list === null || list === void 0 ? void 0 : list.filter(function (d) { return !d.linked; });
70
+ var linked = terminal_devices === null || terminal_devices === void 0 ? void 0 : terminal_devices.filter(function (d) { return d.linked; });
71
+ var unLinked = terminal_devices === null || terminal_devices === void 0 ? void 0 : terminal_devices.filter(function (d) { return !d.linked; });
72
72
  return { linkedDevices: linked, unLinkedDevices: unLinked };
73
- }, [list]), linkedDevices = _d.linkedDevices, unLinkedDevices = _d.unLinkedDevices;
73
+ }, [terminal_devices]), linkedDevices = _d.linkedDevices, unLinkedDevices = _d.unLinkedDevices;
74
74
  var handleOnClickNewTerminalLink = function () { return __awaiter(void 0, void 0, void 0, function () {
75
75
  return __generator(this, function (_a) {
76
76
  switch (_a.label) {
77
77
  case 0:
78
78
  setNewLinkClicked(true);
79
- return [4, retrievePOSDevicesAsync(CONNECT_FLOWS.terminal.posDeviceList)];
79
+ return [4, retrieveTerminalListAsync(CONNECT_FLOWS.terminal.terminalList)];
80
80
  case 1:
81
81
  _a.sent();
82
82
  return [2];
@@ -88,19 +88,19 @@ var TerminalDeviceList = function () {
88
88
  dispatch(clearError());
89
89
  dispatch(resetTerminalLinkResponse());
90
90
  }, []);
91
- var retrievePOSDevicesAsync = function (nextScreen) { return __awaiter(void 0, void 0, void 0, function () {
91
+ var retrieveTerminalListAsync = function (nextScreen) { return __awaiter(void 0, void 0, void 0, function () {
92
92
  var err_1;
93
93
  return __generator(this, function (_a) {
94
94
  switch (_a.label) {
95
95
  case 0:
96
- if (posDevices === null || posDevices === void 0 ? void 0 : posDevices.length) {
96
+ if (terminalList === null || terminalList === void 0 ? void 0 : terminalList.length) {
97
97
  dispatch(handleNextScreenStep(nextScreen));
98
98
  return [2];
99
99
  }
100
100
  _a.label = 1;
101
101
  case 1:
102
102
  _a.trys.push([1, 3, , 4]);
103
- return [4, dispatch(retrievePOSDevices()).unwrap()];
103
+ return [4, dispatch(retrieveTerminalList()).unwrap()];
104
104
  case 2:
105
105
  _a.sent();
106
106
  dispatch(handleNextScreenStep(nextScreen));
@@ -114,7 +114,7 @@ var TerminalDeviceList = function () {
114
114
  });
115
115
  }); };
116
116
  var handleOnClickLinkedTerminal = function (terminal) {
117
- dispatch(storeSelectedTerminal(terminal));
117
+ dispatch(storeSelectedTerminalDevice(terminal));
118
118
  dispatch(handleNextScreenStep(CONNECT_FLOWS.terminal.linkedTerminalInfo));
119
119
  };
120
120
  var handleOnClickUnlinkedTerminal = function (terminal) { return __awaiter(void 0, void 0, void 0, function () {
@@ -122,8 +122,8 @@ var TerminalDeviceList = function () {
122
122
  switch (_a.label) {
123
123
  case 0:
124
124
  setNewLinkClicked(false);
125
- dispatch(storeSelectedTerminal(terminal));
126
- return [4, retrievePOSDevicesAsync(CONNECT_FLOWS.terminal.unlinkedTerminalInfo)];
125
+ dispatch(storeSelectedTerminalDevice(terminal));
126
+ return [4, retrieveTerminalListAsync(CONNECT_FLOWS.terminal.unlinkedTerminalInfo)];
127
127
  case 1:
128
128
  _a.sent();
129
129
  return [2];
@@ -148,6 +148,6 @@ var TerminalDeviceList = function () {
148
148
  })
149
149
  .catch(function () { });
150
150
  };
151
- return (_jsxs(ScreenContainer, __assign({ minHeight: 200, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(Header, { onLinkClick: handleOnClickNewTerminalLink, loading: posDevicesLoading && newLinkClicked }), _jsx(DeviceList, { devices: linkedDevices, onClick: handleOnClickLinkedTerminal }), !!(unLinkedDevices === null || unLinkedDevices === void 0 ? void 0 : unLinkedDevices.length) && !!(linkedDevices === null || linkedDevices === void 0 ? void 0 : linkedDevices.length) && _jsx(TextTypography, __assign({ sx: { pt: 1, pb: 1 } }, { children: t('terminal_unlinked') })), _jsx(DeviceList, { loading: posDevicesLoading && !newLinkClicked, devices: unLinkedDevices, onClick: handleOnClickUnlinkedTerminal })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Box, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: _jsx(Button, __assign({ sx: { mb: 1.5, mt: 1.5 }, onClick: function () { return handleOnBack(); }, variant: 'text' }, { children: loading ? _jsx(Loader, { innerColor: 'black', outerColor: 'black', size: 15, toggleAnimation: !!loading }) : t('back') })) }))] })));
151
+ return (_jsxs(ScreenContainer, __assign({ minHeight: 200, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(Header, { onLinkClick: handleOnClickNewTerminalLink, loading: terminalListLoading && newLinkClicked }), _jsx(DeviceList, { devices: linkedDevices, onClick: handleOnClickLinkedTerminal }), !!(unLinkedDevices === null || unLinkedDevices === void 0 ? void 0 : unLinkedDevices.length) && !!(linkedDevices === null || linkedDevices === void 0 ? void 0 : linkedDevices.length) && _jsx(TextTypography, __assign({ sx: { pt: 1, pb: 1 } }, { children: t('terminal_unlinked') })), _jsx(DeviceList, { loading: terminalListLoading && !newLinkClicked, devices: unLinkedDevices, onClick: handleOnClickUnlinkedTerminal })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Box, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: _jsx(Button, __assign({ sx: { mb: 1.5, mt: 1.5 }, onClick: function () { return handleOnBack(); }, variant: 'text' }, { children: loading ? _jsx(Loader, { innerColor: 'black', outerColor: 'black', size: 15, toggleAnimation: !!loading }) : t('back') })) }))] })));
152
152
  };
153
153
  export default React.memo(TerminalDeviceList);
@@ -18,19 +18,19 @@ import { handleNextScreenStep, handlePrevScreenStep } from '../../../../app/sett
18
18
  import { useAppDispatch, useAppSelector } from '../../../../hooks';
19
19
  import Button from '../../../../components/Button';
20
20
  import Warning from '../../../../components/Warning';
21
- import { clearError, linkNewTerminal, storeSelectedPOS, terminalSelector } from '../../../app/terminal/terminalStore';
22
- import { Header, Container, POSDeviceList } from '../shared';
23
- var POSDeviceListPage = function () {
21
+ import { clearError, linkNewTerminal, storeSelectedTerminal, terminalSelector } from '../../../app/terminal/terminalStore';
22
+ import { Header, Container, TerminalList } from '../shared';
23
+ var TerminalListPage = function () {
24
24
  var t = useTranslation().t;
25
25
  var dispatch = useAppDispatch();
26
- var _a = useAppSelector(terminalSelector), _b = _a.data, selectedPOS = _b.terminalInfo.selectedPOS, responseData = _b.responseData, loading = _a.loading, error = _a.error;
27
- var posDevices = (responseData || {}).posDevices;
26
+ var _a = useAppSelector(terminalSelector), _b = _a.data, selectedTerminal = _b.terminalInfo.selectedTerminal, responseData = _b.responseData, loading = _a.loading, error = _a.error;
27
+ var terminalList = (responseData || {}).terminalList;
28
28
  React.useEffect(function () {
29
29
  if (error)
30
30
  dispatch(clearError());
31
31
  }, []);
32
- var handleOnSelectPOS = function (pos) {
33
- dispatch(storeSelectedPOS(pos));
32
+ var handleOnSelectTerminal = function (terminal) {
33
+ dispatch(storeSelectedTerminal(terminal));
34
34
  dispatch(linkNewTerminal())
35
35
  .unwrap()
36
36
  .then(function (_a) {
@@ -42,6 +42,6 @@ var POSDeviceListPage = function () {
42
42
  var handleOnBack = function () {
43
43
  dispatch(handlePrevScreenStep());
44
44
  };
45
- return (_jsxs(ScreenContainer, __assign({ minHeight: 200, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(Header, { title: 'terminal_select_device', sx: { pb: 0 } }), _jsx(POSDeviceList, { select: false, loading: loading, selectedPOS: selectedPOS, posDevices: posDevices, onClick: handleOnSelectPOS })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Box, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: _jsx(Button, __assign({ sx: { mb: 1.5, mt: 1.5 }, onClick: function () { return handleOnBack(); }, variant: 'text' }, { children: t('back') })) }))] })));
45
+ return (_jsxs(ScreenContainer, __assign({ minHeight: 200, justifyContent: 'space-between' }, { children: [_jsxs(Container, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: [_jsx(Header, { title: 'terminal_select_device', sx: { pb: 0 } }), _jsx(TerminalList, { select: false, loading: loading, selectedTerminal: selectedTerminal, list: terminalList, onClick: handleOnSelectTerminal })] })), error && _jsx(Warning, __assign({ sx: { mt: 2 } }, { children: t(error) })), _jsx(Box, __assign({ sx: { pl: 2.5, pr: 2.5 } }, { children: _jsx(Button, __assign({ sx: { mb: 1.5, mt: 1.5 }, onClick: function () { return handleOnBack(); }, variant: 'text' }, { children: t('back') })) }))] })));
46
46
  };
47
- export default React.memo(POSDeviceListPage);
47
+ export default React.memo(TerminalListPage);
@@ -0,0 +1,2 @@
1
+ import TerminalListPage from './TerminalListPage';
2
+ export default TerminalListPage;
@@ -0,0 +1,2 @@
1
+ import TerminalListPage from './TerminalListPage';
2
+ export default TerminalListPage;
@@ -16,21 +16,23 @@ import Box from '@mui/material/Box';
16
16
  import { useAppDispatch, useAppSelector, useLanguage } from '../../../../hooks';
17
17
  import { CONNECT_FLOWS } from '../../../../constants';
18
18
  import { handleNextScreenStep, handlePrevScreenStep } from '../../../../app/settings';
19
- import { retrieveBoardDetails, retrieveBoardStatus, retrieveTerminalList, terminalSelector } from '../../../app/terminal/terminalStore';
19
+ import { retrieveBoardDetails, retrieveBoardStatus, retrieveTerminalDeviceList, terminalSelector } from '../../../app/terminal/terminalStore';
20
20
  import SuccessScreen from '../../../shared/SuccessScreen';
21
21
  import Button from '../../../shared/Button';
22
22
  import { SuccessContainerStyled } from '../shared';
23
23
  var UnlinkedSuccess = function () {
24
+ var _a, _b, _c;
24
25
  var t = useTranslation().t;
25
26
  var isAr = useLanguage().isAr;
26
27
  var dispatch = useAppDispatch();
27
- var _a = useAppSelector(terminalSelector), error = _a.error, loading = _a.loading, _b = _a.data, device = _b.terminalInfo.selectedTerminal.device, responseData = _b.responseData;
28
- var _c = responseData || {}, boardData = _c.boardData, authData = _c.authData;
29
- var deviceName = device === null || device === void 0 ? void 0 : device.display_name;
28
+ var _d = useAppSelector(terminalSelector), error = _d.error, loading = _d.loading, _e = _d.data, selectedTerminalDevice = _e.terminalInfo.selectedTerminalDevice, responseData = _e.responseData;
29
+ var _f = responseData || {}, boardData = _f.boardData, authData = _f.authData;
30
+ var terminal = (selectedTerminalDevice || {}).terminal;
31
+ var deviceName = (_b = (_a = terminal === null || terminal === void 0 ? void 0 : terminal.device) === null || _a === void 0 ? void 0 : _a.display_name) !== null && _b !== void 0 ? _b : (_c = terminal === null || terminal === void 0 ? void 0 : terminal.name) === null || _c === void 0 ? void 0 : _c.en;
30
32
  var handleGoToBoard = function () {
31
33
  var board_id = (boardData || {}).id;
32
34
  var _a = (authData === null || authData === void 0 ? void 0 : authData.recipient) || {}, id = _a.id, type = _a.type;
33
- dispatch(retrieveTerminalList());
35
+ dispatch(retrieveTerminalDeviceList());
34
36
  dispatch(retrieveBoardStatus({ boardId: board_id }))
35
37
  .unwrap()
36
38
  .then(function () {