@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.
- package/build/@types/terminal.d.ts +44 -32
- package/build/api/auth.d.ts +1 -7
- package/build/api/index.d.ts +2 -2
- package/build/api/terminal.d.ts +2 -2
- package/build/api/terminal.js +11 -21
- package/build/assets/locales/ar.json +4 -0
- package/build/assets/locales/en.json +4 -0
- package/build/components/DeviceCard/DeviceCard.js +1 -1
- package/build/components/Tooltip/Tooltip.js +1 -1
- package/build/constants/app.d.ts +3 -2
- package/build/constants/app.js +22 -32
- package/build/constants/flows.d.ts +1 -1
- package/build/constants/flows.js +1 -1
- package/build/features/app/terminal/terminalStore.d.ts +7 -7
- package/build/features/app/terminal/terminalStore.js +46 -50
- package/build/features/featuresScreens.js +3 -3
- package/build/features/terminal/Terminal.js +2 -2
- package/build/features/terminal/screens/LinkNewTerminal/LinkNewTerminal.js +9 -8
- package/build/features/terminal/screens/LinkedSuccess/LinkedSuccess.js +6 -5
- package/build/features/terminal/screens/LinkedTerminalInfo/LinkedTerminalInfo.js +9 -9
- package/build/features/terminal/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/terminal/screens/TerminalDeviceList/DeviceList.d.ts +3 -3
- package/build/features/terminal/screens/TerminalDeviceList/DeviceList.js +1 -1
- package/build/features/terminal/screens/TerminalDeviceList/TerminalDeviceList.js +15 -15
- package/build/features/terminal/screens/{POSDeviceListPage/POSDeviceListPage.js → TerminalListPage/TerminalListPage.js} +9 -9
- package/build/features/terminal/screens/TerminalListPage/index.d.ts +2 -0
- package/build/features/terminal/screens/TerminalListPage/index.js +2 -0
- package/build/features/terminal/screens/UnlinkedSuccess/UnlinkedSuccess.js +7 -5
- package/build/features/terminal/screens/UnlinkedTerminalInfo/UnlinkedTerminalInfo.js +11 -12
- package/build/features/terminal/screens/shared/TerminalList.d.ts +11 -0
- package/build/features/terminal/screens/shared/TerminalList.js +25 -0
- package/build/features/terminal/screens/shared/index.d.ts +2 -2
- package/build/features/terminal/screens/shared/index.js +2 -2
- package/build/features/terminal/screens/shared/styles.d.ts +1 -1
- package/build/features/terminal/screens/shared/styles.js +1 -1
- package/build/features/terminal/screens/shared/utils.d.ts +4 -4
- package/build/features/terminal/screens/shared/utils.js +9 -8
- package/build/utils/common.js +3 -3
- package/package.json +2 -2
- package/build/features/terminal/screens/POSDeviceListPage/index.d.ts +0 -2
- package/build/features/terminal/screens/POSDeviceListPage/index.js +0 -2
- package/build/features/terminal/screens/shared/POSDeviceList.d.ts +0 -11
- package/build/features/terminal/screens/shared/POSDeviceList.js +0 -28
- /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,
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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,
|
|
149
|
-
return __generator(this, function (
|
|
150
|
-
switch (
|
|
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(),
|
|
153
|
-
|
|
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
|
-
|
|
157
|
-
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 =
|
|
170
|
+
data = _c.sent();
|
|
172
171
|
return [2, { data: data, nextScreen: CONNECT_FLOWS.terminal.terminalLinkNew }];
|
|
173
172
|
}
|
|
174
173
|
});
|
|
175
174
|
}); });
|
|
176
|
-
export var
|
|
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.
|
|
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,
|
|
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.
|
|
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:
|
|
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,
|
|
276
|
-
return __generator(this, function (
|
|
277
|
-
switch (
|
|
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,
|
|
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:
|
|
282
|
+
id: terminalId,
|
|
284
283
|
terminal_device: {
|
|
285
|
-
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 =
|
|
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
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
452
|
-
|
|
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(
|
|
535
|
+
.addCase(retrieveTerminalList.fulfilled, function (state, action) {
|
|
540
536
|
var _a, _b;
|
|
541
|
-
state.
|
|
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.
|
|
546
|
-
state.data.responseData = __assign(__assign({}, state.data.responseData), {
|
|
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(
|
|
549
|
-
state.
|
|
544
|
+
.addCase(retrieveTerminalList.rejected, function (state, action) {
|
|
545
|
+
state.terminalListLoading = false;
|
|
550
546
|
state.error = action.error.message;
|
|
551
547
|
})
|
|
552
|
-
.addCase(
|
|
553
|
-
state.
|
|
548
|
+
.addCase(retrieveTerminalList.pending, function (state) {
|
|
549
|
+
state.terminalListLoading = true;
|
|
554
550
|
state.error = null;
|
|
555
551
|
})
|
|
556
|
-
.addCase(
|
|
552
|
+
.addCase(retrieveTerminalDeviceList.pending, function (state) {
|
|
557
553
|
state.error = null;
|
|
558
554
|
})
|
|
559
|
-
.addCase(
|
|
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(
|
|
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,
|
|
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
|
|
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.
|
|
748
|
-
element:
|
|
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,
|
|
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 ||
|
|
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
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var
|
|
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 =
|
|
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
|
|
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,
|
|
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,
|
|
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(
|
|
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:
|
|
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
|
|
28
|
+
var _h = useTheme(), spacing = _h.spacing, palette = _h.palette;
|
|
29
29
|
var dispatch = useAppDispatch();
|
|
30
30
|
var isAr = useLanguage().isAr;
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var deviceName = (
|
|
35
|
-
var deviceImage = (
|
|
36
|
-
var deviceId = (
|
|
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:
|
|
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.
|
|
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 {
|
|
2
|
+
import { TerminalDeviceInfo } from '../../../../@types';
|
|
3
3
|
interface DeviceListProps {
|
|
4
|
-
devices:
|
|
4
|
+
devices: TerminalDeviceInfo[];
|
|
5
5
|
loading?: boolean;
|
|
6
|
-
onClick: (device:
|
|
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.
|
|
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,
|
|
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,
|
|
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,
|
|
68
|
-
var
|
|
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 =
|
|
71
|
-
var unLinked =
|
|
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
|
-
}, [
|
|
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,
|
|
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
|
|
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 (
|
|
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(
|
|
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(
|
|
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(
|
|
126
|
-
return [4,
|
|
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:
|
|
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,
|
|
22
|
-
import { Header, Container,
|
|
23
|
-
var
|
|
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,
|
|
27
|
-
var
|
|
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
|
|
33
|
-
dispatch(
|
|
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(
|
|
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(
|
|
47
|
+
export default React.memo(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,
|
|
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
|
|
28
|
-
var
|
|
29
|
-
var
|
|
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(
|
|
35
|
+
dispatch(retrieveTerminalDeviceList());
|
|
34
36
|
dispatch(retrieveBoardStatus({ boardId: board_id }))
|
|
35
37
|
.unwrap()
|
|
36
38
|
.then(function () {
|