@wazo/sdk 0.41.0 → 0.41.2
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/dist/wazo-sdk.js +4 -4
- package/esm/__tests__/api-client.test.js +15 -5
- package/esm/domain/Phone/WebRTCPhone.js +6 -5
- package/esm/domain/types.js +2 -1
- package/esm/index.js +1 -0
- package/esm/service/__tests__/IssueReporter.test.js +5 -1
- package/esm/simple/Auth.js +16 -2
- package/esm/simple/Configuration.js +5 -4
- package/esm/simple/Directory.js +2 -1
- package/esm/simple/Phone.js +2 -1
- package/esm/simple/Websocket.js +2 -1
- package/esm/simple/__tests__/Auth.test.js +111 -0
- package/esm/simple/index.js +1 -0
- package/esm/simple/room/Participant.js +1 -0
- package/esm/simple/room/Room.js +2 -1
- package/esm/types/domain/Phone/WebRTCPhone.d.ts +1 -1
- package/esm/types/domain/Phone/WebRTCPhone.d.ts.map +1 -1
- package/esm/types/domain/types.d.ts +80 -0
- package/esm/types/domain/types.d.ts.map +1 -1
- package/esm/types/index.d.ts +1 -0
- package/esm/types/index.d.ts.map +1 -1
- package/esm/types/service/getApiClient.d.ts.map +1 -1
- package/esm/types/simple/Auth.d.ts +51 -1
- package/esm/types/simple/Auth.d.ts.map +1 -1
- package/esm/types/simple/Configuration.d.ts +5 -1
- package/esm/types/simple/Configuration.d.ts.map +1 -1
- package/esm/types/simple/Directory.d.ts +5 -1
- package/esm/types/simple/Directory.d.ts.map +1 -1
- package/esm/types/simple/Phone.d.ts +117 -1
- package/esm/types/simple/Phone.d.ts.map +1 -1
- package/esm/types/simple/Websocket.d.ts +19 -1
- package/esm/types/simple/Websocket.d.ts.map +1 -1
- package/esm/types/simple/__tests__/Auth.test.d.ts +2 -0
- package/esm/types/simple/__tests__/Auth.test.d.ts.map +1 -0
- package/esm/types/simple/index.d.ts +5 -5
- package/esm/types/simple/index.d.ts.map +1 -1
- package/esm/types/simple/room/Participant.d.ts.map +1 -1
- package/esm/types/simple/room/Room.d.ts +11 -11
- package/esm/types/simple/room/Room.d.ts.map +1 -1
- package/esm/types/simple/room/SipRoom.d.ts +1 -1
- package/esm/types/utils/array.d.ts.map +1 -1
- package/esm/types/web-rtc-client.d.ts +1 -1
- package/esm/types/web-rtc-client.d.ts.map +1 -1
- package/esm/types/websocket-client.d.ts +6 -6
- package/esm/types/websocket-client.d.ts.map +1 -1
- package/esm/utils/__tests__/api-requester.test.js +19 -15
- package/esm/web-rtc-client.js +3 -1
- package/esm/websocket-client.js +1 -1
- package/lib/__tests__/api-client.test.js +15 -5
- package/lib/checker/Checker.js +2 -2
- package/lib/domain/Phone/WebRTCPhone.js +17 -16
- package/lib/domain/types.js +36 -0
- package/lib/index.js +3 -0
- package/lib/service/CallApi.js +4 -4
- package/lib/service/__tests__/IssueReporter.test.js +5 -1
- package/lib/simple/Auth.js +21 -7
- package/lib/simple/Configuration.js +6 -3
- package/lib/simple/Directory.js +3 -0
- package/lib/simple/Phone.js +12 -9
- package/lib/simple/Websocket.js +3 -0
- package/lib/simple/__tests__/Auth.test.js +145 -0
- package/lib/simple/index.js +1 -0
- package/lib/simple/room/Participant.js +3 -2
- package/lib/simple/room/Room.js +10 -9
- package/lib/simple/room/SipRoom.js +2 -2
- package/lib/simple/utils.js +1 -1
- package/lib/types/domain/Phone/WebRTCPhone.d.ts +1 -1
- package/lib/types/domain/Phone/WebRTCPhone.d.ts.map +1 -1
- package/lib/types/domain/types.d.ts +80 -0
- package/lib/types/domain/types.d.ts.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/service/getApiClient.d.ts.map +1 -1
- package/lib/types/simple/Auth.d.ts +51 -1
- package/lib/types/simple/Auth.d.ts.map +1 -1
- package/lib/types/simple/Configuration.d.ts +5 -1
- package/lib/types/simple/Configuration.d.ts.map +1 -1
- package/lib/types/simple/Directory.d.ts +5 -1
- package/lib/types/simple/Directory.d.ts.map +1 -1
- package/lib/types/simple/Phone.d.ts +117 -1
- package/lib/types/simple/Phone.d.ts.map +1 -1
- package/lib/types/simple/Websocket.d.ts +19 -1
- package/lib/types/simple/Websocket.d.ts.map +1 -1
- package/lib/types/simple/__tests__/Auth.test.d.ts +2 -0
- package/lib/types/simple/__tests__/Auth.test.d.ts.map +1 -0
- package/lib/types/simple/index.d.ts +5 -5
- package/lib/types/simple/index.d.ts.map +1 -1
- package/lib/types/simple/room/Participant.d.ts.map +1 -1
- package/lib/types/simple/room/Room.d.ts +11 -11
- package/lib/types/simple/room/Room.d.ts.map +1 -1
- package/lib/types/simple/room/SipRoom.d.ts +1 -1
- package/lib/types/utils/array.d.ts.map +1 -1
- package/lib/types/web-rtc-client.d.ts +1 -1
- package/lib/types/web-rtc-client.d.ts.map +1 -1
- package/lib/types/websocket-client.d.ts +6 -6
- package/lib/types/websocket-client.d.ts.map +1 -1
- package/lib/utils/__tests__/api-requester.test.js +19 -15
- package/lib/utils/api-requester.js +2 -2
- package/lib/web-rtc-client.js +25 -27
- package/lib/websocket-client.js +1 -1
- package/package.json +23 -20
- package/src/__tests__/api-client.test.ts +15 -5
- package/src/domain/Phone/WebRTCPhone.ts +9 -8
- package/src/domain/types.ts +9 -0
- package/src/index.ts +1 -0
- package/src/service/__tests__/IssueReporter.test.ts +5 -1
- package/src/simple/Auth.ts +25 -6
- package/src/simple/Configuration.ts +5 -4
- package/src/simple/Directory.ts +2 -1
- package/src/simple/Phone.ts +2 -1
- package/src/simple/Websocket.ts +4 -2
- package/src/simple/__tests__/Auth.test.ts +123 -0
- package/src/simple/index.ts +1 -0
- package/src/simple/room/Participant.ts +3 -1
- package/src/simple/room/Room.ts +4 -3
- package/src/types/global.d.ts +11 -5
- package/src/utils/__tests__/api-requester.test.ts +20 -16
- package/src/web-rtc-client.ts +3 -1
- package/src/websocket-client.ts +2 -2
|
@@ -87,7 +87,9 @@ client.setToken(token);
|
|
|
87
87
|
describe('With correct API results', () => {
|
|
88
88
|
beforeEach(() => {
|
|
89
89
|
jest.resetModules();
|
|
90
|
-
|
|
90
|
+
Object.defineProperty(global, 'fetch', {
|
|
91
|
+
value: jest.fn(() => Promise.resolve(mockedJson)),
|
|
92
|
+
});
|
|
91
93
|
});
|
|
92
94
|
describe('logIn test', () => {
|
|
93
95
|
it('should retrieve user token', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -131,7 +133,9 @@ describe('With correct API results', () => {
|
|
|
131
133
|
describe('With unAuthorized API results', () => {
|
|
132
134
|
beforeEach(() => {
|
|
133
135
|
jest.resetModules();
|
|
134
|
-
|
|
136
|
+
Object.defineProperty(global, 'fetch', {
|
|
137
|
+
value: jest.fn(() => Promise.resolve(mockedUnAuthorized)),
|
|
138
|
+
});
|
|
135
139
|
});
|
|
136
140
|
describe('checkLogin test', () => {
|
|
137
141
|
it('should return false on 401 status', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -151,7 +155,9 @@ describe('With unAuthorized API results', () => {
|
|
|
151
155
|
describe('With not found API results', () => {
|
|
152
156
|
beforeEach(() => {
|
|
153
157
|
jest.resetModules();
|
|
154
|
-
|
|
158
|
+
Object.defineProperty(global, 'fetch', {
|
|
159
|
+
value: jest.fn(() => Promise.resolve(mockedNotFound)),
|
|
160
|
+
});
|
|
155
161
|
});
|
|
156
162
|
describe('fetchVoicemail test', () => {
|
|
157
163
|
it('should throw a BadResponse instance on 404 status', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -183,7 +189,9 @@ describe('With not found API results', () => {
|
|
|
183
189
|
describe('With erroneous text API results', () => {
|
|
184
190
|
beforeEach(() => {
|
|
185
191
|
jest.resetModules();
|
|
186
|
-
|
|
192
|
+
Object.defineProperty(global, 'fetch', {
|
|
193
|
+
value: jest.fn(() => Promise.resolve(mockedTextError)),
|
|
194
|
+
});
|
|
187
195
|
});
|
|
188
196
|
it('throw an exception when the response is >= 500', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
189
197
|
let error = null;
|
|
@@ -205,7 +213,9 @@ describe('With erroneous text API results', () => {
|
|
|
205
213
|
describe('With erroneous json API results', () => {
|
|
206
214
|
beforeEach(() => {
|
|
207
215
|
jest.resetModules();
|
|
208
|
-
|
|
216
|
+
Object.defineProperty(global, 'fetch', {
|
|
217
|
+
value: jest.fn(() => Promise.resolve(mockedJsonError)),
|
|
218
|
+
});
|
|
209
219
|
});
|
|
210
220
|
it('throw an exception when the response is >= 500', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
211
221
|
let error = null;
|
package/lib/checker/Checker.js
CHANGED
|
@@ -23,8 +23,8 @@ class Checker {
|
|
|
23
23
|
this.externalAppConfig = externalAppConfig;
|
|
24
24
|
this.checks = [...index_1.default];
|
|
25
25
|
}
|
|
26
|
-
check(
|
|
27
|
-
return __awaiter(this,
|
|
26
|
+
check() {
|
|
27
|
+
return __awaiter(this, arguments, void 0, function* (onCheckBegin = () => { }, onCheckResult = () => { }) {
|
|
28
28
|
yield this._addEngineVersion();
|
|
29
29
|
logger.info('Engine check starting');
|
|
30
30
|
for (let i = 0; i < this.checks.length; i++) {
|
|
@@ -118,8 +118,8 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
118
118
|
isWebRTC() {
|
|
119
119
|
return true;
|
|
120
120
|
}
|
|
121
|
-
sendReinvite(
|
|
122
|
-
return __awaiter(this,
|
|
121
|
+
sendReinvite(callSession_1) {
|
|
122
|
+
return __awaiter(this, arguments, void 0, function* (callSession, constraints = null, conference = false, audioOnly = false, iceRestart = false) {
|
|
123
123
|
const sipSession = this.findSipSession(callSession);
|
|
124
124
|
logger.info('WebRTC phone - send reinvite', {
|
|
125
125
|
sessionId: sipSession ? sipSession.id : null,
|
|
@@ -394,8 +394,8 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
394
394
|
return screenShareStream;
|
|
395
395
|
});
|
|
396
396
|
}
|
|
397
|
-
stopScreenSharing(
|
|
398
|
-
return __awaiter(this,
|
|
397
|
+
stopScreenSharing() {
|
|
398
|
+
return __awaiter(this, arguments, void 0, function* (restoreLocalStream = true, callSession) {
|
|
399
399
|
if (!this.currentScreenShare) {
|
|
400
400
|
return;
|
|
401
401
|
}
|
|
@@ -792,8 +792,8 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
792
792
|
}
|
|
793
793
|
return promise;
|
|
794
794
|
}
|
|
795
|
-
holdSipSession(
|
|
796
|
-
return __awaiter(this,
|
|
795
|
+
holdSipSession(sipSession_1, callSession_1) {
|
|
796
|
+
return __awaiter(this, arguments, void 0, function* (sipSession, callSession, withEvent = true) {
|
|
797
797
|
if (!sipSession) {
|
|
798
798
|
return new Promise((resolve, reject) => reject(new Error('No session to hold')));
|
|
799
799
|
}
|
|
@@ -820,8 +820,8 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
820
820
|
return promise;
|
|
821
821
|
});
|
|
822
822
|
}
|
|
823
|
-
unholdSipSession(
|
|
824
|
-
return __awaiter(this,
|
|
823
|
+
unholdSipSession(sipSession_1, callSession_1) {
|
|
824
|
+
return __awaiter(this, arguments, void 0, function* (sipSession, callSession, withEvent = true) {
|
|
825
825
|
if (!sipSession) {
|
|
826
826
|
return new Promise((resolve, reject) => reject(new Error('No session to unhold')));
|
|
827
827
|
}
|
|
@@ -956,14 +956,15 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
956
956
|
}
|
|
957
957
|
// Should be async to match CTIPhone definition
|
|
958
958
|
// @TODO: line is not used here
|
|
959
|
-
makeCall(
|
|
960
|
-
return __awaiter(this,
|
|
959
|
+
makeCall(number_1, line_1, cameraEnabled_1) {
|
|
960
|
+
return __awaiter(this, arguments, void 0, function* (number, line, cameraEnabled, audioOnly = false, conference = false, options = {}) {
|
|
961
961
|
logger.info('make WebRTC call', {
|
|
962
962
|
number,
|
|
963
963
|
lineId: line ? line.id : null,
|
|
964
964
|
cameraEnabled,
|
|
965
965
|
audioOnly,
|
|
966
966
|
conference,
|
|
967
|
+
options,
|
|
967
968
|
});
|
|
968
969
|
if (!number) {
|
|
969
970
|
return Promise.resolve(null);
|
|
@@ -978,7 +979,7 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
978
979
|
}
|
|
979
980
|
let sipSession;
|
|
980
981
|
try {
|
|
981
|
-
sipSession = this.client.call(number, this.allowVideo ? cameraEnabled : false, audioOnly, conference);
|
|
982
|
+
sipSession = this.client.call(number, this.allowVideo ? cameraEnabled : false, audioOnly, conference, options);
|
|
982
983
|
this._bindEvents(sipSession);
|
|
983
984
|
}
|
|
984
985
|
catch (error) {
|
|
@@ -1117,8 +1118,8 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
1117
1118
|
}
|
|
1118
1119
|
return this.client && this.client.isConference(callSession.sipCallId);
|
|
1119
1120
|
}
|
|
1120
|
-
close(
|
|
1121
|
-
return __awaiter(this,
|
|
1121
|
+
close() {
|
|
1122
|
+
return __awaiter(this, arguments, void 0, function* (force = false) {
|
|
1122
1123
|
logger.info('WebRTC close');
|
|
1123
1124
|
try {
|
|
1124
1125
|
yield Promise.race([
|
|
@@ -1222,6 +1223,9 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
1222
1223
|
this.incomingSessions.push(callSession.getId());
|
|
1223
1224
|
this._bindEvents(sipSession);
|
|
1224
1225
|
this.client.storeSipSession(sipSession);
|
|
1226
|
+
callSession.creationTime = new Date();
|
|
1227
|
+
this._updateCallSession(callSession);
|
|
1228
|
+
this.eventEmitter.emit(exports.ON_CALL_INCOMING, callSession, wantsToDoVideo);
|
|
1225
1229
|
if (!this.currentSipSession) {
|
|
1226
1230
|
if (this.ringingEnabled) {
|
|
1227
1231
|
this.eventEmitter.emit(exports.ON_PLAY_RING_SOUND, this.audioRingDeviceId, this.audioRingVolume, callSession);
|
|
@@ -1230,9 +1234,6 @@ class WebRTCPhone extends Emitter_1.default {
|
|
|
1230
1234
|
else {
|
|
1231
1235
|
this.eventEmitter.emit(exports.ON_PLAY_INBOUND_CALL_SIGNAL_SOUND, this.audioOutputDeviceId, this.audioOutputVolume, callSession);
|
|
1232
1236
|
}
|
|
1233
|
-
callSession.creationTime = new Date();
|
|
1234
|
-
this._updateCallSession(callSession);
|
|
1235
|
-
this.eventEmitter.emit(exports.ON_CALL_INCOMING, callSession, wantsToDoVideo);
|
|
1236
1237
|
});
|
|
1237
1238
|
this.client.on(this.client.ON_REINVITE, (...args) => {
|
|
1238
1239
|
logger.info('WebRTC on reinvite', {
|
package/lib/domain/types.js
CHANGED
|
@@ -1,2 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
2
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
const WebSocketClient = __importStar(require("../websocket-client"));
|
|
38
|
+
const { SOCKET_EVENTS } = WebSocketClient, OTHER_EVENTS = __rest(WebSocketClient, ["SOCKET_EVENTS"]);
|
package/lib/index.js
CHANGED
|
@@ -18,6 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
exports.ExternalApp = exports.Agent = exports.WazoApiClient = exports.WebRTCClient = exports.SOCKET_EVENTS = exports.WebSocketClient = exports.AdHocAPIConference = exports.CallApi = exports.setIsMobile = exports.setOnRefreshTokenError = exports.setOnRefreshToken = exports.setCurrentServer = exports.setApiToken = exports.getApiClient = exports.SipLine = exports.MeetingAuthorization = exports.MeetingStatus = exports.ApiRequester = exports.Checker = exports.DebugDevice = exports.Meeting = exports.CTIPhone = exports.WebRTCPhone = exports.SwitchboardCall = exports.IndirectTransfer = exports.CallSession = exports.Room = exports.Relocation = exports.Voicemail = exports.Session = exports.LINE_STATE = exports.PROFILE_STATE = exports.Profile = exports.NotificationOptions = exports.Line = exports.FORWARD_KEYS = exports.ForwardOption = exports.Features = exports.COUNTRIES = exports.Contact = exports.ChatRoom = exports.ChatMessage = exports.Recording = exports.CallLog = exports.Call = exports.SFUNotAvailableError = exports.ServerError = exports.BadResponse = exports.IssueReporter = exports.Emitter = void 0;
|
|
21
|
+
exports.SessionDescriptionHandler = void 0;
|
|
21
22
|
const index_1 = __importDefault(require("./simple/index"));
|
|
22
23
|
var Emitter_1 = require("./utils/Emitter");
|
|
23
24
|
Object.defineProperty(exports, "Emitter", { enumerable: true, get: function () { return __importDefault(Emitter_1).default; } });
|
|
@@ -110,6 +111,8 @@ var Agent_1 = require("./domain/Agent");
|
|
|
110
111
|
Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { return __importDefault(Agent_1).default; } });
|
|
111
112
|
var ExternalApp_1 = require("./domain/ExternalApp");
|
|
112
113
|
Object.defineProperty(exports, "ExternalApp", { enumerable: true, get: function () { return __importDefault(ExternalApp_1).default; } });
|
|
114
|
+
var WazoSessionDescriptionHandler_1 = require("./lib/WazoSessionDescriptionHandler");
|
|
115
|
+
Object.defineProperty(exports, "SessionDescriptionHandler", { enumerable: true, get: function () { return __importDefault(WazoSessionDescriptionHandler_1).default; } });
|
|
113
116
|
__exportStar(require("./types/WebSocketMessage"), exports);
|
|
114
117
|
__exportStar(require("./utils/PhoneNumberUtil"), exports);
|
|
115
118
|
__exportStar(require("./domain/types"), exports);
|
package/lib/service/CallApi.js
CHANGED
|
@@ -20,8 +20,8 @@ class CallApi {
|
|
|
20
20
|
return (0, getApiClient_1.default)().callLogd.listCallLogs(offset, limit);
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
-
static fetchDistinctCallLogs(
|
|
24
|
-
return __awaiter(this,
|
|
23
|
+
static fetchDistinctCallLogs(offset_1, limit_1) {
|
|
24
|
+
return __awaiter(this, arguments, void 0, function* (offset, limit, distinct = 'peer_exten') {
|
|
25
25
|
return (0, getApiClient_1.default)().callLogd.listDistinctCallLogs(offset, limit, distinct);
|
|
26
26
|
});
|
|
27
27
|
}
|
|
@@ -56,8 +56,8 @@ class CallApi {
|
|
|
56
56
|
return (0, getApiClient_1.default)().calld.cancelCall(callSession.callId);
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
|
-
static makeCall(
|
|
60
|
-
return __awaiter(this,
|
|
59
|
+
static makeCall(callFromLine_1, extension_1) {
|
|
60
|
+
return __awaiter(this, arguments, void 0, function* (callFromLine, extension, isMobile = false, callbackAllLines = false) {
|
|
61
61
|
const lineId = callFromLine ? callFromLine.id : null;
|
|
62
62
|
const response = yield (0, getApiClient_1.default)().calld.makeCall(extension, isMobile, lineId, callbackAllLines);
|
|
63
63
|
return Call_1.default.parse(response);
|
|
@@ -22,7 +22,11 @@ describe('IssueReporter', () => {
|
|
|
22
22
|
});
|
|
23
23
|
beforeEach(() => {
|
|
24
24
|
jest.resetAllMocks();
|
|
25
|
-
|
|
25
|
+
Object.defineProperty(global, 'fetch', {
|
|
26
|
+
value: jest.fn(() => ({
|
|
27
|
+
catch: () => { },
|
|
28
|
+
})),
|
|
29
|
+
});
|
|
26
30
|
});
|
|
27
31
|
afterAll(() => {
|
|
28
32
|
console.log = oldLog;
|
package/lib/simple/Auth.js
CHANGED
|
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
35
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
36
|
};
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
exports.NoDomainNameError = exports.NoTenantIdError = exports.InvalidAuthorization = exports.InvalidSubscription = void 0;
|
|
38
|
+
exports.Auth = exports.NoDomainNameError = exports.NoTenantIdError = exports.InvalidAuthorization = exports.InvalidSubscription = void 0;
|
|
39
39
|
const auth_1 = require("../api/auth");
|
|
40
40
|
const getApiClient_1 = __importStar(require("../service/getApiClient"));
|
|
41
41
|
const IssueReporter_1 = __importDefault(require("../service/IssueReporter"));
|
|
@@ -148,11 +148,15 @@ class Auth {
|
|
|
148
148
|
return this._onAuthenticated(rawSession);
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
|
-
validateToken(token, refreshToken) {
|
|
151
|
+
validateToken(token, refreshToken, headerUserUuid) {
|
|
152
152
|
return __awaiter(this, void 0, void 0, function* () {
|
|
153
153
|
if (!token) {
|
|
154
154
|
return;
|
|
155
155
|
}
|
|
156
|
+
if (this.usingEdgeServer && typeof headerUserUuid === 'string') {
|
|
157
|
+
logger.info('using edge server, setting user UUID header', { headerUserUuid });
|
|
158
|
+
this.setHttpUserUuidHeader(headerUserUuid);
|
|
159
|
+
}
|
|
156
160
|
if (refreshToken) {
|
|
157
161
|
(0, getApiClient_1.setRefreshToken)(refreshToken);
|
|
158
162
|
}
|
|
@@ -172,9 +176,9 @@ class Auth {
|
|
|
172
176
|
return (0, getApiClient_1.default)().auth.refreshToken(refreshToken, '', this.expiration);
|
|
173
177
|
});
|
|
174
178
|
}
|
|
175
|
-
logout(
|
|
176
|
-
|
|
177
|
-
|
|
179
|
+
logout() {
|
|
180
|
+
return __awaiter(this, arguments, void 0, function* (deleteRefreshToken = true) {
|
|
181
|
+
var _a;
|
|
178
182
|
try {
|
|
179
183
|
index_1.default.Websocket.close(true);
|
|
180
184
|
if (this.clientId && deleteRefreshToken) {
|
|
@@ -203,6 +207,10 @@ class Auth {
|
|
|
203
207
|
setOnHostFromHeaders(callback) {
|
|
204
208
|
this.onHostFromHeadersCallback = callback;
|
|
205
209
|
}
|
|
210
|
+
setOnSetUsingEdgeServer(callback) {
|
|
211
|
+
logger.info('setting onSetUsingEdgeServer callback', { callback: typeof callback === 'function' });
|
|
212
|
+
this.onSetUsingEdgeServer = callback;
|
|
213
|
+
}
|
|
206
214
|
setOnRefreshToken(callback) {
|
|
207
215
|
this.onRefreshTokenCallback = callback;
|
|
208
216
|
}
|
|
@@ -294,8 +302,8 @@ class Auth {
|
|
|
294
302
|
(0, getApiClient_1.setFetchOptions)(Object.assign(Object.assign({}, (0, getApiClient_1.getFetchOptions)()), { headers }));
|
|
295
303
|
}
|
|
296
304
|
checkHttpUserUuidHeader(uuid) {
|
|
297
|
-
var _a;
|
|
298
305
|
return __awaiter(this, void 0, void 0, function* () {
|
|
306
|
+
var _a;
|
|
299
307
|
logger.info('Checking user uuid http header', { uuid });
|
|
300
308
|
if (!uuid) {
|
|
301
309
|
return;
|
|
@@ -316,11 +324,15 @@ class Auth {
|
|
|
316
324
|
this.usingEdgeServer = false;
|
|
317
325
|
logger.info('Setting usingEdgeServer to FALSE', { justification: e });
|
|
318
326
|
}
|
|
327
|
+
if (typeof this.onSetUsingEdgeServer === 'function') {
|
|
328
|
+
logger.info('calling onSetUsingEdgeServer', { usingEdgeServer: this.usingEdgeServer });
|
|
329
|
+
this.onSetUsingEdgeServer(this.usingEdgeServer);
|
|
330
|
+
}
|
|
319
331
|
});
|
|
320
332
|
}
|
|
321
333
|
_onAuthenticated(rawSession) {
|
|
322
|
-
var _a;
|
|
323
334
|
return __awaiter(this, void 0, void 0, function* () {
|
|
335
|
+
var _a;
|
|
324
336
|
if (this.authenticated && this.session) {
|
|
325
337
|
return this.session;
|
|
326
338
|
}
|
|
@@ -372,7 +384,9 @@ class Auth {
|
|
|
372
384
|
});
|
|
373
385
|
}
|
|
374
386
|
}
|
|
387
|
+
exports.Auth = Auth;
|
|
375
388
|
if (!global.wazoAuthInstance) {
|
|
376
389
|
global.wazoAuthInstance = new Auth();
|
|
377
390
|
}
|
|
391
|
+
// @ts-ignore: Circular definition of import alias 'default'.
|
|
378
392
|
exports.default = global.wazoAuthInstance;
|
|
@@ -12,17 +12,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
|
|
15
|
+
exports.Configuration = void 0;
|
|
16
|
+
const _1 = __importDefault(require("."));
|
|
16
17
|
const getApiClient_1 = __importDefault(require("../service/getApiClient"));
|
|
17
18
|
class Configuration {
|
|
18
19
|
getCurrentUser() {
|
|
19
20
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
-
const session =
|
|
21
|
-
return (0, getApiClient_1.default)().confd.getUser(session ? session.uuid : '');
|
|
21
|
+
const session = _1.default.Auth.getSession();
|
|
22
|
+
return (0, getApiClient_1.default)().confd.getUser(`${session ? session.uuid : ''}`);
|
|
22
23
|
});
|
|
23
24
|
}
|
|
24
25
|
}
|
|
26
|
+
exports.Configuration = Configuration;
|
|
25
27
|
if (!global.wazoConfigurationInstance) {
|
|
26
28
|
global.wazoConfigurationInstance = new Configuration();
|
|
27
29
|
}
|
|
30
|
+
// @ts-ignore: Circular definition of import alias 'default'.
|
|
28
31
|
exports.default = global.wazoConfigurationInstance;
|
package/lib/simple/Directory.js
CHANGED
|
@@ -12,6 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Directory = void 0;
|
|
15
16
|
const getApiClient_1 = __importDefault(require("../service/getApiClient"));
|
|
16
17
|
class Directory {
|
|
17
18
|
findMultipleContactsByNumber(numbers, fields) {
|
|
@@ -20,7 +21,9 @@ class Directory {
|
|
|
20
21
|
});
|
|
21
22
|
}
|
|
22
23
|
}
|
|
24
|
+
exports.Directory = Directory;
|
|
23
25
|
if (!global.wazoDirectoryInstance) {
|
|
24
26
|
global.wazoDirectoryInstance = new Directory();
|
|
25
27
|
}
|
|
28
|
+
// @ts-ignore: Circular definition of import alias 'default'.
|
|
26
29
|
exports.default = global.wazoDirectoryInstance;
|
package/lib/simple/Phone.js
CHANGED
|
@@ -35,6 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
35
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
36
|
};
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.Phone = void 0;
|
|
38
39
|
const session_state_1 = require("sip.js/lib/api/session-state");
|
|
39
40
|
const AdHocAPIConference_1 = __importDefault(require("../domain/AdHocAPIConference"));
|
|
40
41
|
const WebRTCPhone_1 = __importStar(require("../domain/Phone/WebRTCPhone")), PHONE_EVENTS = WebRTCPhone_1;
|
|
@@ -58,8 +59,8 @@ class Phone extends Emitter_1.default {
|
|
|
58
59
|
});
|
|
59
60
|
this.SessionState = session_state_1.SessionState;
|
|
60
61
|
}
|
|
61
|
-
connect(
|
|
62
|
-
return __awaiter(this,
|
|
62
|
+
connect() {
|
|
63
|
+
return __awaiter(this, arguments, void 0, function* (rawOptions = {}, sipLine = null) {
|
|
63
64
|
const options = rawOptions;
|
|
64
65
|
if (this.phone) {
|
|
65
66
|
// Already connected
|
|
@@ -119,8 +120,8 @@ class Phone extends Emitter_1.default {
|
|
|
119
120
|
});
|
|
120
121
|
}
|
|
121
122
|
// If audioOnly is set to true, all video stream will be deactivated, even remotes ones.
|
|
122
|
-
call(
|
|
123
|
-
return __awaiter(this,
|
|
123
|
+
call(extension_1) {
|
|
124
|
+
return __awaiter(this, arguments, void 0, function* (extension, withCamera = false, rawSipLine = null, audioOnly = false, conference = false) {
|
|
124
125
|
if (!this.phone) {
|
|
125
126
|
return;
|
|
126
127
|
}
|
|
@@ -195,14 +196,14 @@ class Phone extends Emitter_1.default {
|
|
|
195
196
|
return (_a = this.phone) === null || _a === void 0 ? void 0 : _a.hold(callSession, true);
|
|
196
197
|
}
|
|
197
198
|
unhold(callSession) {
|
|
198
|
-
var _a;
|
|
199
199
|
return __awaiter(this, void 0, void 0, function* () {
|
|
200
|
+
var _a;
|
|
200
201
|
return (_a = this.phone) === null || _a === void 0 ? void 0 : _a.unhold(callSession, true);
|
|
201
202
|
});
|
|
202
203
|
}
|
|
203
204
|
resume(callSession) {
|
|
204
|
-
var _a;
|
|
205
205
|
return __awaiter(this, void 0, void 0, function* () {
|
|
206
|
+
var _a;
|
|
206
207
|
return ((_a = this.phone) === null || _a === void 0 ? void 0 : _a.resume(callSession)) || null;
|
|
207
208
|
});
|
|
208
209
|
}
|
|
@@ -218,8 +219,8 @@ class Phone extends Emitter_1.default {
|
|
|
218
219
|
var _a;
|
|
219
220
|
return ((_a = this.phone) === null || _a === void 0 ? void 0 : _a.atxfer(callSession)) || null;
|
|
220
221
|
}
|
|
221
|
-
reinvite(
|
|
222
|
-
return __awaiter(this,
|
|
222
|
+
reinvite(callSession_1) {
|
|
223
|
+
return __awaiter(this, arguments, void 0, function* (callSession, constraints = null, conference = false) {
|
|
223
224
|
return this.phone ? this.phone.sendReinvite(callSession, constraints, conference) : null;
|
|
224
225
|
});
|
|
225
226
|
}
|
|
@@ -268,8 +269,8 @@ class Phone extends Emitter_1.default {
|
|
|
268
269
|
(_a = this.phone) === null || _a === void 0 ? void 0 : _a.turnCameraOn(callSession);
|
|
269
270
|
}
|
|
270
271
|
startScreenSharing(constraints, callSession) {
|
|
271
|
-
var _a;
|
|
272
272
|
return __awaiter(this, void 0, void 0, function* () {
|
|
273
|
+
var _a;
|
|
273
274
|
return ((_a = this.phone) === null || _a === void 0 ? void 0 : _a.startScreenSharing(constraints, callSession)) || null;
|
|
274
275
|
});
|
|
275
276
|
}
|
|
@@ -409,7 +410,9 @@ class Phone extends Emitter_1.default {
|
|
|
409
410
|
}
|
|
410
411
|
}
|
|
411
412
|
}
|
|
413
|
+
exports.Phone = Phone;
|
|
412
414
|
if (!global.wazoTelephonyInstance) {
|
|
413
415
|
global.wazoTelephonyInstance = new Phone();
|
|
414
416
|
}
|
|
417
|
+
// @ts-ignore: Circular definition of import alias 'default'.
|
|
415
418
|
exports.default = global.wazoTelephonyInstance;
|
package/lib/simple/Websocket.js
CHANGED
|
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.Websocket = void 0;
|
|
40
41
|
const websocket_client_1 = __importStar(require("../websocket-client")), WebSocketClient = websocket_client_1;
|
|
41
42
|
const Emitter_1 = __importDefault(require("../utils/Emitter"));
|
|
42
43
|
const IssueReporter_1 = __importDefault(require("../service/IssueReporter"));
|
|
@@ -107,7 +108,9 @@ class Websocket extends Emitter_1.default {
|
|
|
107
108
|
this.unbind();
|
|
108
109
|
}
|
|
109
110
|
}
|
|
111
|
+
exports.Websocket = Websocket;
|
|
110
112
|
if (!global.wazoWebsocketInstance) {
|
|
111
113
|
global.wazoWebsocketInstance = new Websocket();
|
|
112
114
|
}
|
|
115
|
+
// @ts-ignore: Circular definition of import alias 'default'.
|
|
113
116
|
exports.default = global.wazoWebsocketInstance;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
const getApiClient_1 = __importStar(require("../../service/getApiClient"));
|
|
36
|
+
const Auth_1 = require("../Auth");
|
|
37
|
+
const Auth = new Auth_1.Auth();
|
|
38
|
+
const TOKEN = 'some-token';
|
|
39
|
+
const REFRESH_TOKEN = 'some-refresh-token';
|
|
40
|
+
const USER_UUID = 'some-user-uuid';
|
|
41
|
+
jest.mock('../../service/getApiClient');
|
|
42
|
+
describe('simple/Auth', () => {
|
|
43
|
+
beforeEach(() => {
|
|
44
|
+
const authenticate = jest.fn();
|
|
45
|
+
getApiClient_1.default.mockImplementation(() => ({
|
|
46
|
+
auth: {
|
|
47
|
+
authenticate,
|
|
48
|
+
},
|
|
49
|
+
}));
|
|
50
|
+
});
|
|
51
|
+
afterEach(() => {
|
|
52
|
+
jest.restoreAllMocks();
|
|
53
|
+
});
|
|
54
|
+
describe('validateToken', () => {
|
|
55
|
+
it('should return undefined if nullish', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
56
|
+
// @ts-expect-error
|
|
57
|
+
const result = yield Auth.validateToken(null);
|
|
58
|
+
expect(result).toEqual(undefined);
|
|
59
|
+
}));
|
|
60
|
+
it('should set refresh token if provided', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
61
|
+
yield Auth.validateToken(TOKEN, REFRESH_TOKEN);
|
|
62
|
+
expect(getApiClient_1.setRefreshToken).toHaveBeenCalledWith(REFRESH_TOKEN);
|
|
63
|
+
}));
|
|
64
|
+
it('should set user uuid header when using edge server', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
|
+
Auth.usingEdgeServer = true;
|
|
66
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
67
|
+
yield Auth.validateToken(TOKEN, undefined, USER_UUID);
|
|
68
|
+
expect(setHttpUserUuidHeader).toHaveBeenCalledWith(USER_UUID);
|
|
69
|
+
}));
|
|
70
|
+
it('should NOT set user uuid header when NOT using edge server', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
71
|
+
Auth.usingEdgeServer = false;
|
|
72
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
73
|
+
yield Auth.validateToken(TOKEN, undefined, USER_UUID);
|
|
74
|
+
expect(setHttpUserUuidHeader).not.toHaveBeenCalled();
|
|
75
|
+
}));
|
|
76
|
+
});
|
|
77
|
+
describe('checkHttpUserUuidHeader', () => {
|
|
78
|
+
it('should return undefined if UUID is null', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
|
+
const result = yield Auth.checkHttpUserUuidHeader(null);
|
|
80
|
+
expect(result).toEqual(undefined);
|
|
81
|
+
}));
|
|
82
|
+
it('should set user UUID header on successful HEAD call', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
83
|
+
const head = jest.fn(() => Promise.resolve({ headers: { get: () => null } }));
|
|
84
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
85
|
+
Auth.onSetUsingEdgeServer = jest.fn();
|
|
86
|
+
getApiClient_1.default.mockImplementation(() => ({
|
|
87
|
+
client: {
|
|
88
|
+
head,
|
|
89
|
+
},
|
|
90
|
+
}));
|
|
91
|
+
yield Auth.checkHttpUserUuidHeader(USER_UUID);
|
|
92
|
+
expect(head).toHaveBeenCalled();
|
|
93
|
+
expect(setHttpUserUuidHeader).toHaveBeenCalledWith(USER_UUID);
|
|
94
|
+
expect(Auth.usingEdgeServer).toEqual(true);
|
|
95
|
+
expect(Auth.onSetUsingEdgeServer).toHaveBeenCalledWith(true);
|
|
96
|
+
}));
|
|
97
|
+
it('should NOT set user UUID header on failed HEAD call', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
98
|
+
const head = jest.fn(() => Promise.reject());
|
|
99
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
100
|
+
Auth.onSetUsingEdgeServer = jest.fn();
|
|
101
|
+
getApiClient_1.default.mockImplementation(() => ({
|
|
102
|
+
client: {
|
|
103
|
+
head,
|
|
104
|
+
},
|
|
105
|
+
}));
|
|
106
|
+
yield Auth.checkHttpUserUuidHeader(USER_UUID);
|
|
107
|
+
expect(head).toHaveBeenCalled();
|
|
108
|
+
expect(setHttpUserUuidHeader).not.toHaveBeenCalled();
|
|
109
|
+
expect(Auth.usingEdgeServer).toEqual(false);
|
|
110
|
+
expect(Auth.onSetUsingEdgeServer).toHaveBeenCalledWith(false);
|
|
111
|
+
}));
|
|
112
|
+
it('should set user UUID header on mobile when header is present', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
113
|
+
Auth.mobile = true;
|
|
114
|
+
const head = jest.fn(() => Promise.resolve({ headers: { get: () => 'X-User-UUID: something' } }));
|
|
115
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
116
|
+
Auth.onSetUsingEdgeServer = jest.fn();
|
|
117
|
+
getApiClient_1.default.mockImplementation(() => ({
|
|
118
|
+
client: {
|
|
119
|
+
head,
|
|
120
|
+
},
|
|
121
|
+
}));
|
|
122
|
+
yield Auth.checkHttpUserUuidHeader(USER_UUID);
|
|
123
|
+
expect(head).toHaveBeenCalled();
|
|
124
|
+
expect(setHttpUserUuidHeader).toHaveBeenCalledWith(USER_UUID);
|
|
125
|
+
expect(Auth.usingEdgeServer).toEqual(true);
|
|
126
|
+
expect(Auth.onSetUsingEdgeServer).toHaveBeenCalledWith(true);
|
|
127
|
+
}));
|
|
128
|
+
it('should NOT set user UUID header on mobile when header is NOT present', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
129
|
+
Auth.mobile = true;
|
|
130
|
+
const head = jest.fn(() => Promise.resolve({ headers: { get: () => 'something' } }));
|
|
131
|
+
const setHttpUserUuidHeader = jest.spyOn(Auth, 'setHttpUserUuidHeader');
|
|
132
|
+
Auth.onSetUsingEdgeServer = jest.fn();
|
|
133
|
+
getApiClient_1.default.mockImplementation(() => ({
|
|
134
|
+
client: {
|
|
135
|
+
head,
|
|
136
|
+
},
|
|
137
|
+
}));
|
|
138
|
+
yield Auth.checkHttpUserUuidHeader(USER_UUID);
|
|
139
|
+
expect(head).toHaveBeenCalled();
|
|
140
|
+
expect(setHttpUserUuidHeader).not.toHaveBeenCalled();
|
|
141
|
+
expect(Auth.usingEdgeServer).toEqual(false);
|
|
142
|
+
expect(Auth.onSetUsingEdgeServer).toHaveBeenCalledWith(false);
|
|
143
|
+
}));
|
|
144
|
+
});
|
|
145
|
+
});
|
package/lib/simple/index.js
CHANGED
|
@@ -26,6 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
/* eslint-disable import/no-named-as-default */
|
|
29
30
|
/* global window */
|
|
30
31
|
const Auth_1 = __importStar(require("./Auth"));
|
|
31
32
|
const Phone_1 = __importDefault(require("./Phone"));
|