@wazo/sdk 0.41.1 → 0.42.0-rc.0

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 (73) hide show
  1. package/dist/wazo-sdk.js +42 -41913
  2. package/esm/__tests__/api-client.test.js +15 -5
  3. package/esm/api/confd.js +2 -0
  4. package/esm/domain/CallerID.js +24 -0
  5. package/esm/domain/Features.js +7 -1
  6. package/esm/index.js +1 -0
  7. package/esm/service/__tests__/IssueReporter.test.js +5 -1
  8. package/esm/types/api/confd.d.ts +2 -0
  9. package/esm/types/api/confd.d.ts.map +1 -1
  10. package/esm/types/domain/CallerID.d.ts +22 -0
  11. package/esm/types/domain/CallerID.d.ts.map +1 -0
  12. package/esm/types/domain/Features.d.ts +2 -0
  13. package/esm/types/domain/Features.d.ts.map +1 -1
  14. package/esm/types/index.d.ts +1 -0
  15. package/esm/types/index.d.ts.map +1 -1
  16. package/esm/types/service/getApiClient.d.ts.map +1 -1
  17. package/esm/types/simple/index.d.ts +2 -0
  18. package/esm/types/simple/index.d.ts.map +1 -1
  19. package/esm/types/utils/PhoneNumberUtil.d.ts +5 -6
  20. package/esm/types/utils/PhoneNumberUtil.d.ts.map +1 -1
  21. package/esm/types/utils/array.d.ts.map +1 -1
  22. package/esm/utils/PhoneNumberUtil.js +27 -19
  23. package/esm/utils/__tests__/PhoneNumberUtil.test.js +23 -6
  24. package/esm/utils/__tests__/api-requester.test.js +19 -15
  25. package/esm/web-rtc-client.js +1 -1
  26. package/esm/websocket-client.js +1 -1
  27. package/lib/__tests__/api-client.test.js +15 -5
  28. package/lib/api/confd.js +2 -0
  29. package/lib/checker/Checker.js +2 -2
  30. package/lib/domain/CallerID.js +27 -0
  31. package/lib/domain/Features.js +6 -1
  32. package/lib/domain/Phone/WebRTCPhone.js +12 -12
  33. package/lib/index.js +4 -2
  34. package/lib/service/CallApi.js +4 -4
  35. package/lib/service/__tests__/IssueReporter.test.js +5 -1
  36. package/lib/simple/Auth.js +5 -5
  37. package/lib/simple/Phone.js +9 -9
  38. package/lib/simple/room/Participant.js +2 -2
  39. package/lib/simple/room/Room.js +8 -8
  40. package/lib/simple/room/SipRoom.js +2 -2
  41. package/lib/simple/utils.js +1 -1
  42. package/lib/types/api/confd.d.ts +2 -0
  43. package/lib/types/api/confd.d.ts.map +1 -1
  44. package/lib/types/domain/CallerID.d.ts +22 -0
  45. package/lib/types/domain/CallerID.d.ts.map +1 -0
  46. package/lib/types/domain/Features.d.ts +2 -0
  47. package/lib/types/domain/Features.d.ts.map +1 -1
  48. package/lib/types/index.d.ts +1 -0
  49. package/lib/types/index.d.ts.map +1 -1
  50. package/lib/types/service/getApiClient.d.ts.map +1 -1
  51. package/lib/types/simple/index.d.ts +2 -0
  52. package/lib/types/simple/index.d.ts.map +1 -1
  53. package/lib/types/utils/PhoneNumberUtil.d.ts +5 -6
  54. package/lib/types/utils/PhoneNumberUtil.d.ts.map +1 -1
  55. package/lib/types/utils/array.d.ts.map +1 -1
  56. package/lib/utils/PhoneNumberUtil.js +28 -25
  57. package/lib/utils/__tests__/PhoneNumberUtil.test.js +22 -5
  58. package/lib/utils/__tests__/api-requester.test.js +19 -15
  59. package/lib/utils/api-requester.js +2 -2
  60. package/lib/web-rtc-client.js +23 -27
  61. package/lib/websocket-client.js +1 -1
  62. package/package.json +23 -21
  63. package/src/__tests__/api-client.test.ts +15 -5
  64. package/src/api/confd.ts +3 -0
  65. package/src/domain/CallerID.ts +49 -0
  66. package/src/domain/Features.ts +9 -1
  67. package/src/index.ts +1 -0
  68. package/src/service/__tests__/IssueReporter.test.ts +5 -1
  69. package/src/utils/PhoneNumberUtil.ts +31 -24
  70. package/src/utils/__tests__/PhoneNumberUtil.test.ts +31 -6
  71. package/src/utils/__tests__/api-requester.test.ts +20 -16
  72. package/src/web-rtc-client.ts +1 -1
  73. package/src/websocket-client.ts +1 -1
@@ -73,7 +73,9 @@ client.setToken(token);
73
73
  describe('With correct API results', () => {
74
74
  beforeEach(() => {
75
75
  jest.resetModules();
76
- global.fetch = jest.fn(() => Promise.resolve(mockedJson));
76
+ Object.defineProperty(global, 'fetch', {
77
+ value: jest.fn(() => Promise.resolve(mockedJson)),
78
+ });
77
79
  });
78
80
  describe('logIn test', () => {
79
81
  it('should retrieve user token', async () => {
@@ -117,7 +119,9 @@ describe('With correct API results', () => {
117
119
  describe('With unAuthorized API results', () => {
118
120
  beforeEach(() => {
119
121
  jest.resetModules();
120
- global.fetch = jest.fn(() => Promise.resolve(mockedUnAuthorized));
122
+ Object.defineProperty(global, 'fetch', {
123
+ value: jest.fn(() => Promise.resolve(mockedUnAuthorized)),
124
+ });
121
125
  });
122
126
  describe('checkLogin test', () => {
123
127
  it('should return false on 401 status', async () => {
@@ -137,7 +141,9 @@ describe('With unAuthorized API results', () => {
137
141
  describe('With not found API results', () => {
138
142
  beforeEach(() => {
139
143
  jest.resetModules();
140
- global.fetch = jest.fn(() => Promise.resolve(mockedNotFound));
144
+ Object.defineProperty(global, 'fetch', {
145
+ value: jest.fn(() => Promise.resolve(mockedNotFound)),
146
+ });
141
147
  });
142
148
  describe('fetchVoicemail test', () => {
143
149
  it('should throw a BadResponse instance on 404 status', async () => {
@@ -169,7 +175,9 @@ describe('With not found API results', () => {
169
175
  describe('With erroneous text API results', () => {
170
176
  beforeEach(() => {
171
177
  jest.resetModules();
172
- global.fetch = jest.fn(() => Promise.resolve(mockedTextError));
178
+ Object.defineProperty(global, 'fetch', {
179
+ value: jest.fn(() => Promise.resolve(mockedTextError)),
180
+ });
173
181
  });
174
182
  it('throw an exception when the response is >= 500', async () => {
175
183
  let error = null;
@@ -191,7 +199,9 @@ describe('With erroneous text API results', () => {
191
199
  describe('With erroneous json API results', () => {
192
200
  beforeEach(() => {
193
201
  jest.resetModules();
194
- global.fetch = jest.fn(() => Promise.resolve(mockedJsonError));
202
+ Object.defineProperty(global, 'fetch', {
203
+ value: jest.fn(() => Promise.resolve(mockedJsonError)),
204
+ });
195
205
  });
196
206
  it('throw an exception when the response is >= 500', async () => {
197
207
  let error = null;
package/esm/api/confd.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import ApiRequester from '../utils/api-requester';
2
+ import CallerID from '../domain/CallerID';
2
3
  import Profile from '../domain/Profile';
3
4
  import SipLine from '../domain/SipLine';
4
5
  import ExternalApp from '../domain/ExternalApp';
@@ -68,4 +69,5 @@ export default ((client, baseUrl) => ({
68
69
  guest_name: username,
69
70
  }).then(MeetingAuthorization.parse),
70
71
  guestAuthorizationCheck: (userUuid, meetingUuid, authorizationUuid) => client.get(`${baseUrl}/guests/${userUuid}/meetings/${meetingUuid}/authorizations/${authorizationUuid}`, null),
72
+ getOutgoingCallerIDs: (userUuid) => client.get(`${baseUrl}/users/${userUuid}/callerids/outgoing`, null).then(CallerID.parseMany),
71
73
  }));
@@ -0,0 +1,24 @@
1
+ import newFrom from '../utils/new-from';
2
+ export default class CallerID {
3
+ number;
4
+ idType;
5
+ type;
6
+ static parse(plain) {
7
+ return new CallerID({
8
+ number: plain.number,
9
+ type: plain.type,
10
+ });
11
+ }
12
+ static parseMany(plain) {
13
+ return plain.items.map(item => CallerID.parse(item));
14
+ }
15
+ static newFrom(profile) {
16
+ return newFrom(profile, CallerID);
17
+ }
18
+ constructor({ type, number, }) {
19
+ this.idType = type;
20
+ this.number = number;
21
+ // Useful to compare instead of instanceof with minified code
22
+ this.type = 'CallerID';
23
+ }
24
+ }
@@ -1,5 +1,5 @@
1
1
  import getApiClient from '../service/getApiClient';
2
- export const FEATURES = ['chat', 'video', 'call_recording', 'fax', 'mobile_double_call', 'mobile_gsm', 'meeting'];
2
+ export const FEATURES = ['chat', 'video', 'call_recording', 'fax', 'mobile_double_call', 'mobile_gsm', 'meeting', 'caller_id'];
3
3
  export const getScopeName = (featureName) => `enterprise.app.${featureName}`;
4
4
  const scopesToCheck = FEATURES.map(getScopeName); // Handle available features on the engine.
5
5
  class Features {
@@ -10,6 +10,7 @@ class Features {
10
10
  _hasMobileDoubleCall;
11
11
  _hasMobileGsm;
12
12
  _hasMeeting;
13
+ _hasCallerID;
13
14
  constructor() {
14
15
  this._hasChat = true;
15
16
  this._hasVideo = true;
@@ -18,6 +19,7 @@ class Features {
18
19
  this._hasMobileDoubleCall = true;
19
20
  this._hasMobileGsm = true;
20
21
  this._hasMeeting = true;
22
+ this._hasCallerID = false;
21
23
  }
22
24
  async fetchAccess() {
23
25
  let response;
@@ -37,6 +39,7 @@ class Features {
37
39
  this._hasMobileDoubleCall = this._hasFeatures(scopes, 'mobile_double_call');
38
40
  this._hasMobileGsm = this._hasFeatures(scopes, 'mobile_gsm');
39
41
  this._hasMeeting = this._hasFeatures(scopes, 'meeting');
42
+ this._hasCallerID = this._hasFeatures(scopes, 'caller_id');
40
43
  }
41
44
  hasChat() {
42
45
  return this._hasChat;
@@ -59,6 +62,9 @@ class Features {
59
62
  hasMeeting() {
60
63
  return this._hasMeeting;
61
64
  }
65
+ hasCallerID() {
66
+ return this._hasCallerID;
67
+ }
62
68
  _hasFeatures(scopes, featureName) {
63
69
  const scopeName = getScopeName(featureName);
64
70
  if (!scopes || !(scopeName in scopes)) {
package/esm/index.js CHANGED
@@ -23,6 +23,7 @@ export { default as Room } from './domain/Room';
23
23
  export { default as CallSession } from './domain/CallSession';
24
24
  export { default as IndirectTransfer } from './domain/IndirectTransfer';
25
25
  export { default as SwitchboardCall } from './domain/SwitchboardCall';
26
+ export { default as CallerID } from './domain/CallerID';
26
27
  export { default as WebRTCPhone } from './domain/Phone/WebRTCPhone';
27
28
  export { default as CTIPhone } from './domain/Phone/CTIPhone';
28
29
  export { default as Meeting } from './domain/Meeting';
@@ -17,7 +17,11 @@ describe('IssueReporter', () => {
17
17
  });
18
18
  beforeEach(() => {
19
19
  jest.resetAllMocks();
20
- jest.spyOn(global, 'fetch');
20
+ Object.defineProperty(global, 'fetch', {
21
+ value: jest.fn(() => ({
22
+ catch: () => { },
23
+ })),
24
+ });
21
25
  });
22
26
  afterAll(() => {
23
27
  console.log = oldLog;
@@ -1,6 +1,7 @@
1
1
  import ApiRequester from '../utils/api-requester';
2
2
  import type { UUID, ListConfdUsersResponse, ListApplicationsResponse } from '../domain/types';
3
3
  import type { MeetingCreateArguments, MeetingUpdateArguments } from '../domain/Meeting';
4
+ import CallerID from '../domain/CallerID';
4
5
  import Profile from '../domain/Profile';
5
6
  import SipLine from '../domain/SipLine';
6
7
  import ExternalApp from '../domain/ExternalApp';
@@ -33,6 +34,7 @@ export interface ConfD {
33
34
  guestGetMeeting: (meetingUuid: string) => Promise<Meeting>;
34
35
  guestAuthorizationRequest: (userUuid: string, meetingUuid: string, username: string) => Promise<any>;
35
36
  guestAuthorizationCheck: (userUuid: string, meetingUuid: string, authorizationUuid: string) => Promise<any>;
37
+ getOutgoingCallerIDs: (userUuid: string) => Promise<CallerID[]>;
36
38
  }
37
39
  declare const _default: (client: ApiRequester, baseUrl: string) => ConfD;
38
40
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"confd.d.ts","sourceRoot":"","sources":["../../../src/api/confd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"confd.d.ts","sourceRoot":"","sources":["../../../src/api/confd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ type Response = {
2
+ number?: string;
3
+ type: 'main' | 'associated' | 'anonymous';
4
+ };
5
+ type ListResponse = {
6
+ items: Response[];
7
+ };
8
+ type Arguments = {
9
+ number?: string;
10
+ type: 'main' | 'associated' | 'anonymous';
11
+ };
12
+ export default class CallerID {
13
+ number?: string;
14
+ idType: 'main' | 'associated' | 'anonymous';
15
+ type: string;
16
+ static parse(plain: Response): CallerID;
17
+ static parseMany(plain: ListResponse): CallerID[];
18
+ static newFrom(profile: CallerID): any;
19
+ constructor({ type, number, }: Arguments);
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=CallerID.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallerID.d.ts","sourceRoot":"","sources":["../../../src/domain/CallerID.ts"],"names":[],"mappings":"AAEA,KAAK,QAAQ,GAAG;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;CAC3C,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;CAC3C,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;IAE5C,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAOvC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,QAAQ,EAAE;IAIjD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ;gBAIpB,EACV,IAAI,EACJ,MAAM,GACP,EAAE,SAAS;CAOb"}
@@ -8,6 +8,7 @@ declare class Features {
8
8
  _hasMobileDoubleCall: boolean;
9
9
  _hasMobileGsm: boolean;
10
10
  _hasMeeting: boolean;
11
+ _hasCallerID: boolean;
11
12
  constructor();
12
13
  fetchAccess(): Promise<void>;
13
14
  hasChat(): boolean;
@@ -17,6 +18,7 @@ declare class Features {
17
18
  hasMobileDoubleCall(): boolean;
18
19
  hasMobileGsm(): boolean;
19
20
  hasMeeting(): boolean;
21
+ hasCallerID(): boolean;
20
22
  _hasFeatures(scopes: Record<string, any>, featureName: string): boolean;
21
23
  }
22
24
  declare const _default: Features;
@@ -1 +1 @@
1
- {"version":3,"file":"Features.d.ts","sourceRoot":"","sources":["../../../src/domain/Features.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,UAA4F,CAAC;AAClH,eAAO,MAAM,YAAY,gBAAiB,MAAM,WAAoC,CAAC;AAGrF,cAAM,QAAQ;IACZ,QAAQ,EAAE,OAAO,CAAC;IAElB,SAAS,EAAE,OAAO,CAAC;IAEnB,iBAAiB,EAAE,OAAO,CAAC;IAE3B,OAAO,EAAE,OAAO,CAAC;IAEjB,oBAAoB,EAAE,OAAO,CAAC;IAE9B,aAAa,EAAE,OAAO,CAAC;IAEvB,WAAW,EAAE,OAAO,CAAC;;IAYf,WAAW;IAwBjB,OAAO;IAIP,QAAQ;IAIR,gBAAgB;IAIhB,MAAM;IAIN,mBAAmB;IAInB,YAAY;IAIZ,UAAU;IAIV,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM;CAW9D;;AAED,wBAA8B"}
1
+ {"version":3,"file":"Features.d.ts","sourceRoot":"","sources":["../../../src/domain/Features.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,UAAyG,CAAC;AAC/H,eAAO,MAAM,YAAY,gBAAiB,MAAM,WAAoC,CAAC;AAGrF,cAAM,QAAQ;IACZ,QAAQ,EAAE,OAAO,CAAC;IAElB,SAAS,EAAE,OAAO,CAAC;IAEnB,iBAAiB,EAAE,OAAO,CAAC;IAE3B,OAAO,EAAE,OAAO,CAAC;IAEjB,oBAAoB,EAAE,OAAO,CAAC;IAE9B,aAAa,EAAE,OAAO,CAAC;IAEvB,WAAW,EAAE,OAAO,CAAC;IAErB,YAAY,EAAE,OAAO,CAAC;;IAahB,WAAW;IAyBjB,OAAO;IAIP,QAAQ;IAIR,gBAAgB;IAIhB,MAAM;IAIN,mBAAmB;IAInB,YAAY;IAIZ,UAAU;IAIV,WAAW;IAIX,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM;CAW9D;;AAED,wBAA8B"}
@@ -23,6 +23,7 @@ export { default as Room } from './domain/Room';
23
23
  export { default as CallSession } from './domain/CallSession';
24
24
  export { default as IndirectTransfer } from './domain/IndirectTransfer';
25
25
  export { default as SwitchboardCall } from './domain/SwitchboardCall';
26
+ export { default as CallerID } from './domain/CallerID';
26
27
  export { default as WebRTCPhone } from './domain/Phone/WebRTCPhone';
27
28
  export { default as CTIPhone } from './domain/Phone/CTIPhone';
28
29
  export { default as Meeting, MeetingCreateArguments, MeetingUpdateArguments } from './domain/Meeting';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getApiClient.d.ts","sourceRoot":"","sources":["../../../src/service/getApiClient.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,eAAe,CAAC;AAkB1C,eAAO,MAAM,cAAc,aAAc,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEpF,CAAC;AACF,eAAO,MAAM,gBAAgB,cAAe,MAAM,SAEjD,CAAC;AACF,eAAO,MAAM,WAAW,aAAc,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEpG,CAAC;AACF,eAAO,MAAM,eAAe,oBAAqB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE/G,CAAC;AACF,eAAO,MAAM,kBAAkB,oBAAqB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAGlH,CAAC;AACF,eAAO,MAAM,oBAAoB,sBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEtH,CAAC;AACF,eAAO,MAAM,iBAAiB,6BAA8B,MAAM,GAAG,CAAC,KAAK,GAAG,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEnH,CAAC;AACF,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,GAAG,CAAC,KAAK,GAAG,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAElH,CAAC;AACF,eAAO,MAAM,oBAAoB,sBAAuB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEnG,CAAC;AACF,eAAO,MAAM,iBAAiB,mBAAoB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE7F,CAAC;AACF,eAAO,MAAM,WAAW,aAAc,OAAO,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAElF,CAAC;AACF,eAAO,MAAM,iBAAiB,mBAAoB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE7F,CAAC;AACF,eAAO,MAAM,eAAe,iBAAkB,OAAO,MAAM,EAAE,GAAG,CAAC,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEtG,CAAC;AACF,eAAO,MAAM,eAAe,eAAe,MAAM,GAAG,IAAI,GAAG,SAAS,QAC6C,CAAC;qCAkCtF,MAAM,GAAG,IAAI,GAAG,SAAS,KAAU,aAAa;AAA5E,wBAWG"}
1
+ {"version":3,"file":"getApiClient.d.ts","sourceRoot":"","sources":["../../../src/service/getApiClient.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,eAAe,CAAC;AAkB1C,eAAO,MAAM,cAAc,aAAc,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEpF,CAAC;AACF,eAAO,MAAM,gBAAgB,cAAe,MAAM,SAEjD,CAAC;AACF,eAAO,MAAM,WAAW,aAAc,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEpG,CAAC;AACF,eAAO,MAAM,eAAe,oBAAqB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE/G,CAAC;AACF,eAAO,MAAM,kBAAkB,oBAAqB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAGlH,CAAC;AACF,eAAO,MAAM,oBAAoB,sBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEtH,CAAC;AACF,eAAO,MAAM,iBAAiB,mBAAoB,CAAC,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC,KAAK,GAAG,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEnH,CAAC;AACF,eAAO,MAAM,sBAAsB,aAAc,CAAC,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC,KAAK,GAAG,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAElH,CAAC;AACF,eAAO,MAAM,oBAAoB,sBAAuB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEnG,CAAC;AACF,eAAO,MAAM,iBAAiB,mBAAoB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE7F,CAAC;AACF,eAAO,MAAM,WAAW,aAAc,OAAO,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAElF,CAAC;AACF,eAAO,MAAM,iBAAiB,mBAAoB,MAAM,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAE7F,CAAC;AACF,eAAO,MAAM,eAAe,iBAAkB,OAAO,MAAM,EAAE,GAAG,CAAC,cAAa,MAAM,GAAG,IAAI,GAAG,SAAS,SAEtG,CAAC;AACF,eAAO,MAAM,eAAe,eAAe,MAAM,GAAG,IAAI,GAAG,SAAS,QAC6C,CAAC;qCAkCtF,MAAM,GAAG,IAAI,GAAG,SAAS,KAAU,aAAa;AAA5E,wBAWG"}
@@ -92,6 +92,7 @@ declare const Wazo: {
92
92
  _hasMobileDoubleCall: boolean;
93
93
  _hasMobileGsm: boolean;
94
94
  _hasMeeting: boolean;
95
+ _hasCallerID: boolean;
95
96
  fetchAccess(): Promise<void>;
96
97
  hasChat(): boolean;
97
98
  hasVideo(): boolean;
@@ -100,6 +101,7 @@ declare const Wazo: {
100
101
  hasMobileDoubleCall(): boolean;
101
102
  hasMobileGsm(): boolean;
102
103
  hasMeeting(): boolean;
104
+ hasCallerID(): boolean;
103
105
  _hasFeatures(scopes: Record<string, any>, featureName: string): boolean;
104
106
  };
105
107
  Checker: typeof Checker;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/simple/index.ts"],"names":[],"mappings":"AAEA,OAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG7G,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AACzD,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,MAAM,MAAM,eAAe,CAAC;AAKnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,oBAAoB,MAAM,gCAAgC,CAAC;AAClE,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,mBAAmB,MAAM,+BAA+B,CAAC;AAChE,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAC9C,OAAO,cAAc,MAAM,gBAAgB,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,gBAAgB,MAAM,4BAA4B,CAAC;AAC1D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAGxD,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGT,CAAC;AAUF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/simple/index.ts"],"names":[],"mappings":"AAEA,OAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG7G,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AACzD,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,MAAM,MAAM,eAAe,CAAC;AAKnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,oBAAoB,MAAM,gCAAgC,CAAC;AAClE,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,mBAAmB,MAAM,+BAA+B,CAAC;AAChE,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAC9C,OAAO,cAAc,MAAM,gBAAgB,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,gBAAgB,MAAM,4BAA4B,CAAC;AAC1D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAGxD,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGT,CAAC;AAUF,eAAe,IAAI,CAAC"}
@@ -1,8 +1,7 @@
1
- import LibPhoneNumber from 'google-libphonenumber';
2
- declare const PhoneNumberUtil: LibPhoneNumber.PhoneNumberUtil;
3
- declare const PhoneNumberFormat: typeof LibPhoneNumber.PhoneNumberFormat, AsYouTypeFormatter: typeof LibPhoneNumber.AsYouTypeFormatter;
4
- declare const getDisplayableNumber: (rawNumber: string, country: string, asYouType?: boolean) => string;
1
+ import { CountryCode } from 'libphonenumber-js';
2
+ declare const guessParsePhoneNumber: (number: string, defaultCountry?: CountryCode, guessingCountries?: CountryCode[]) => import("libphonenumber-js").PhoneNumber | undefined;
3
+ declare const getDisplayableNumber: (rawNumber: string, country: CountryCode, asYouType?: boolean, guessingCountries?: CountryCode[] | undefined) => string;
5
4
  declare const parsePhoneNumber: (phoneNumber: string) => string;
6
- declare const getCallableNumber: (number: string, country?: string | null) => string | null | undefined;
7
- export { PhoneNumberUtil, PhoneNumberFormat, parsePhoneNumber, AsYouTypeFormatter, getDisplayableNumber, getCallableNumber };
5
+ declare const getCallableNumber: (number: string, country?: CountryCode) => string;
6
+ export { parsePhoneNumber, getDisplayableNumber, guessParsePhoneNumber, getCallableNumber, type CountryCode };
8
7
  //# sourceMappingURL=PhoneNumberUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneNumberUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/PhoneNumberUtil.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,uBAAuB,CAAC;AAEnD,QAAA,MAAM,eAAe,gCAA+C,CAAC;AACrE,QAAA,MACE,iBAAiB,2CACjB,kBAAkB,0CACF,CAAC;AAoBnB,QAAA,MAAM,oBAAoB,cAAe,MAAM,WAAW,MAAM,0BAAsB,MA+BrF,CAAC;AAEF,QAAA,MAAM,gBAAgB,gBAAiB,MAAM,KAAG,MAAoD,CAAC;AAErG,QAAA,MAAM,iBAAiB,WAAY,MAAM,YAAY,MAAM,GAAG,IAAI,KAAG,MAAM,GAAG,IAAI,GAAG,SAUpF,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"PhoneNumberUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/PhoneNumberUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsD,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAsBpG,QAAA,MAAM,qBAAqB,WAAY,MAAM,mBAAmB,WAAW,sBAAqB,WAAW,EAAE,wDAc5G,CAAC;AAEF,QAAA,MAAM,oBAAoB,cAAe,MAAM,WAAW,WAAW,2CAAwC,WAAW,EAAE,GAAG,SAAS,KAAgC,MA6BrK,CAAC;AAEF,QAAA,MAAM,gBAAgB,gBAAiB,MAAM,KAAG,MAAoD,CAAC;AAErG,QAAA,MAAM,iBAAiB,WAAY,MAAM,YAAY,WAAW,KAAG,MAOlE,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,UAAW,GAAG,EAAE,oBAAoB,MAAM,GAAG,CAAC,KAAK,GAAG,KAAG,MAUhF,CAAC"}
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,UAAW,GAAG,EAAE,UAAU,CAAC,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC,KAAK,GAAG,KAAG,MAUhF,CAAC"}
@@ -1,8 +1,7 @@
1
- import LibPhoneNumber from 'google-libphonenumber';
2
- const PhoneNumberUtil = LibPhoneNumber.PhoneNumberUtil.getInstance();
3
- const { PhoneNumberFormat, AsYouTypeFormatter, } = LibPhoneNumber;
1
+ import { AsYouType, parsePhoneNumber as libParsePhoneNumber } from 'libphonenumber-js';
4
2
  // eslint-disable-next-line
5
3
  const EXTRA_CHAR_REGEXP = /[^+*\d]/g;
4
+ const DEFAULT_GUESSING_COUNTRIES = ['US', 'FR', 'GB', 'AU'];
6
5
  const shouldBeFormatted = (number) => {
7
6
  if (!number || number.length <= 5) {
8
7
  return false;
@@ -15,7 +14,19 @@ const isSameCountry = (country1, country2) => {
15
14
  }
16
15
  return country1 === country2;
17
16
  };
18
- const getDisplayableNumber = (rawNumber, country, asYouType = false) => {
17
+ const guessParsePhoneNumber = (number, defaultCountry, guessingCountries = DEFAULT_GUESSING_COUNTRIES) => {
18
+ const mergedCountries = [...new Set([defaultCountry, ...guessingCountries])].filter(Boolean);
19
+ let parsedNumber;
20
+ for (let i = 0; i < mergedCountries.length; i++) {
21
+ const country = mergedCountries[i];
22
+ parsedNumber = libParsePhoneNumber(number, country);
23
+ if (parsedNumber.isValid()) {
24
+ break;
25
+ }
26
+ }
27
+ return parsedNumber;
28
+ };
29
+ const getDisplayableNumber = (rawNumber, country, asYouType = false, guessingCountries = DEFAULT_GUESSING_COUNTRIES) => {
19
30
  if (!rawNumber) {
20
31
  return rawNumber;
21
32
  }
@@ -25,20 +36,19 @@ const getDisplayableNumber = (rawNumber, country, asYouType = false) => {
25
36
  }
26
37
  let displayValue = '';
27
38
  if (asYouType) {
28
- const formatter = new AsYouTypeFormatter(country);
29
- number.split('').forEach(char => {
30
- displayValue = formatter.inputDigit(char);
31
- });
39
+ displayValue = new AsYouType(country).input(number);
32
40
  }
33
41
  else {
34
42
  try {
35
- const parsedNumber = PhoneNumberUtil.parseAndKeepRawInput(number, country);
36
- const numberCountry = PhoneNumberUtil.getRegionCodeForNumber(parsedNumber);
37
- const format = isSameCountry(String(numberCountry), country) ? PhoneNumberFormat.NATIONAL : PhoneNumberFormat.INTERNATIONAL;
38
- displayValue = PhoneNumberUtil.format(parsedNumber, format);
43
+ const parsedNumber = guessParsePhoneNumber(number, country, guessingCountries);
44
+ if (parsedNumber?.isValid()) {
45
+ displayValue = isSameCountry(String(parsedNumber.country), country) ? parsedNumber.formatNational() : parsedNumber.formatInternational();
46
+ }
47
+ else {
48
+ displayValue = rawNumber;
49
+ }
39
50
  }
40
- catch (_) {
41
- // Avoid to crash when phone number like `0080510` can't be parsed
51
+ catch (error) {
42
52
  displayValue = rawNumber;
43
53
  }
44
54
  }
@@ -47,13 +57,11 @@ const getDisplayableNumber = (rawNumber, country, asYouType = false) => {
47
57
  const parsePhoneNumber = (phoneNumber) => phoneNumber.replace(EXTRA_CHAR_REGEXP, '');
48
58
  const getCallableNumber = (number, country) => {
49
59
  try {
50
- if (country) {
51
- return getDisplayableNumber(number, country).replace(EXTRA_CHAR_REGEXP, '');
52
- }
53
- return parsePhoneNumber(number);
60
+ const callableNumber = country ? getDisplayableNumber(number, country) : number;
61
+ return parsePhoneNumber(callableNumber);
54
62
  }
55
63
  catch (_) {
56
64
  return number;
57
65
  }
58
66
  };
59
- export { PhoneNumberUtil, PhoneNumberFormat, parsePhoneNumber, AsYouTypeFormatter, getDisplayableNumber, getCallableNumber };
67
+ export { parsePhoneNumber, getDisplayableNumber, guessParsePhoneNumber, getCallableNumber };
@@ -1,4 +1,4 @@
1
- import { getDisplayableNumber, getCallableNumber } from '../PhoneNumberUtil';
1
+ import { getDisplayableNumber, getCallableNumber, guessParsePhoneNumber } from '../PhoneNumberUtil';
2
2
  describe('Formatting phone numbers', () => {
3
3
  it('should not format all phone numbers', () => {
4
4
  expect(getDisplayableNumber('*143450', 'FR')).toBe('*143450');
@@ -11,7 +11,7 @@ describe('Formatting phone numbers', () => {
11
11
  expect(getDisplayableNumber('+33675456545', 'FR')).toBe('06 75 45 65 45');
12
12
  expect(getDisplayableNumber('0675456545', 'FR')).toBe('06 75 45 65 45');
13
13
  expect(getDisplayableNumber('+33675456545', 'US')).toBe('+33 6 75 45 65 45');
14
- expect(getDisplayableNumber('0675456545', 'US')).toBe('+1 0675456545');
14
+ expect(getDisplayableNumber('0675456545', 'US')).toBe('+33 6 75 45 65 45');
15
15
  expect(getDisplayableNumber('4188884356', 'US')).toBe('(418) 888-4356');
16
16
  });
17
17
  it('should format real phone numbers when typing', () => {
@@ -19,12 +19,12 @@ describe('Formatting phone numbers', () => {
19
19
  expect(getDisplayableNumber('067545', 'FR', true)).toBe('06 75 45');
20
20
  expect(getDisplayableNumber('+3367545', 'US', true)).toBe('+33 6 75 45');
21
21
  expect(getDisplayableNumber('067545', 'US', true)).toBe('067545');
22
- expect(getDisplayableNumber('418808', 'US', true)).toBe('418-808');
22
+ expect(getDisplayableNumber('418808', 'US', true)).toBe('(418) 808');
23
23
  });
24
24
  it('should use the international number if the country number is different from the given country', () => {
25
- expect(getDisplayableNumber('00201005803648', 'FR')).toBe('+20 100 580 3648');
26
- expect(getDisplayableNumber('+14188004554', 'FR')).toBe('+1 418-800-4554');
27
- expect(getDisplayableNumber('00201005803648', 'EG')).toBe('0100 580 3648');
25
+ expect(getDisplayableNumber('00201005803648', 'FR')).toBe('+20 10 05803648');
26
+ expect(getDisplayableNumber('+14188004554', 'FR')).toBe('+1 418 800 4554');
27
+ expect(getDisplayableNumber('00201005803648', 'EG')).toBe('010 05803648');
28
28
  expect(getDisplayableNumber('0634543450', 'FR')).toBe('06 34 54 34 50');
29
29
  expect(getDisplayableNumber('4188034302', 'US')).toBe('(418) 803-4302');
30
30
  expect(getDisplayableNumber('8775863230', 'CA')).toBe('(877) 586-3230');
@@ -51,3 +51,20 @@ describe('getCallableNumber', () => {
51
51
  expect(getCallableNumber('9000')).toBe('9000');
52
52
  });
53
53
  });
54
+ describe('guessParsePhoneNumber', () => {
55
+ it('should guess with default countries', () => {
56
+ const parsedNumber = guessParsePhoneNumber('0675456545');
57
+ expect(parsedNumber?.country).toBe('FR');
58
+ expect(parsedNumber?.isValid()).toBe(true);
59
+ });
60
+ it('should guess with specified countries', () => {
61
+ const parsedNumber = guessParsePhoneNumber('752097514', undefined, ['JP']);
62
+ expect(parsedNumber?.country).toBe('JP');
63
+ expect(parsedNumber?.isValid()).toBe(true);
64
+ });
65
+ it('should used use defaultCountry has guesser', () => {
66
+ const parsedNumber = guessParsePhoneNumber('752097514', 'JP', []);
67
+ expect(parsedNumber?.country).toBe('JP');
68
+ expect(parsedNumber?.isValid()).toBe(true);
69
+ });
70
+ });
@@ -74,12 +74,14 @@ describe('Retrieving headers', () => {
74
74
  });
75
75
  describe('Calling fetch', () => {
76
76
  it('should call fetch without body but query string in get method', async () => {
77
- global.fetch = jest.fn(() => Promise.resolve({
78
- json: () => Promise.resolve({}),
79
- headers: {
80
- get: () => '',
81
- },
82
- }));
77
+ Object.defineProperty(global, 'fetch', {
78
+ value: jest.fn(() => Promise.resolve({
79
+ json: () => Promise.resolve({}),
80
+ headers: {
81
+ get: () => '',
82
+ },
83
+ })),
84
+ });
83
85
  await new ApiRequester({
84
86
  server,
85
87
  agent: null,
@@ -99,15 +101,17 @@ describe('Calling fetch', () => {
99
101
  describe('With a refresh token', () => {
100
102
  it('should retry the call with a new token', async () => {
101
103
  let calls = 0;
102
- global.fetch = jest.fn(() => {
103
- calls++;
104
- return Promise.resolve({
105
- headers: {
106
- get: () => 'application/json',
107
- },
108
- status: calls === 1 ? 401 : 200,
109
- json: () => Promise.resolve({}),
110
- });
104
+ Object.defineProperty(global, 'fetch', {
105
+ value: jest.fn(() => {
106
+ calls++;
107
+ return Promise.resolve({
108
+ headers: {
109
+ get: () => 'application/json',
110
+ },
111
+ status: calls === 1 ? 401 : 200,
112
+ json: () => Promise.resolve({}),
113
+ });
114
+ }),
111
115
  });
112
116
  const requester = new ApiRequester({
113
117
  server,
@@ -440,7 +440,7 @@ export default class WebRTCClient extends Emitter {
440
440
  audioOnly,
441
441
  },
442
442
  earlyMedia: true,
443
- options,
443
+ ...options,
444
444
  };
445
445
  if (audioOnly) {
446
446
  inviterOptions.sessionDescriptionHandlerModifiersReInvite = [stripVideo];
@@ -218,7 +218,7 @@ class WebSocketClient extends Emitter {
218
218
  logger.warn('Trying to close an already closed websocket, bailing.', { url: this._getUrl() });
219
219
  return;
220
220
  }
221
- this.socket.close();
221
+ this.socket.close(1000);
222
222
  this.initialized = false;
223
223
  if (force) {
224
224
  this.host = null;
@@ -87,7 +87,9 @@ client.setToken(token);
87
87
  describe('With correct API results', () => {
88
88
  beforeEach(() => {
89
89
  jest.resetModules();
90
- global.fetch = jest.fn(() => Promise.resolve(mockedJson));
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
- global.fetch = jest.fn(() => Promise.resolve(mockedUnAuthorized));
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
- global.fetch = jest.fn(() => Promise.resolve(mockedNotFound));
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
- global.fetch = jest.fn(() => Promise.resolve(mockedTextError));
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
- global.fetch = jest.fn(() => Promise.resolve(mockedJsonError));
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/api/confd.js CHANGED
@@ -13,6 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const api_requester_1 = __importDefault(require("../utils/api-requester"));
16
+ const CallerID_1 = __importDefault(require("../domain/CallerID"));
16
17
  const Profile_1 = __importDefault(require("../domain/Profile"));
17
18
  const SipLine_1 = __importDefault(require("../domain/SipLine"));
18
19
  const ExternalApp_1 = __importDefault(require("../domain/ExternalApp"));
@@ -82,4 +83,5 @@ exports.default = ((client, baseUrl) => ({
82
83
  guest_name: username,
83
84
  }).then(MeetingAuthorization_1.default.parse),
84
85
  guestAuthorizationCheck: (userUuid, meetingUuid, authorizationUuid) => client.get(`${baseUrl}/guests/${userUuid}/meetings/${meetingUuid}/authorizations/${authorizationUuid}`, null),
86
+ getOutgoingCallerIDs: (userUuid) => client.get(`${baseUrl}/users/${userUuid}/callerids/outgoing`, null).then(CallerID_1.default.parseMany),
85
87
  }));
@@ -23,8 +23,8 @@ class Checker {
23
23
  this.externalAppConfig = externalAppConfig;
24
24
  this.checks = [...index_1.default];
25
25
  }
26
- check(onCheckBegin = () => { }, onCheckResult = () => { }) {
27
- return __awaiter(this, void 0, void 0, function* () {
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++) {