@wazo/sdk 0.43.15 → 0.44.1
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/index.js +10630 -0
- package/dist/index.mjs +10541 -0
- package/{lib → dist}/types/domain/Contact.d.ts +3 -1
- package/dist/types/domain/Contact.d.ts.map +1 -0
- package/{lib → dist}/types/index.d.ts +13 -13
- package/dist/types/index.d.ts.map +1 -0
- package/dist/wazo-sdk.js +69378 -43
- package/dist/wazo-sdk.js.LICENSE.txt +684 -0
- package/package.json +11 -22
- package/esm/__tests__/api-client.test.js +0 -281
- package/esm/__tests__/web-rtc-client.test.js +0 -192
- package/esm/api/agentd.js +0 -23
- package/esm/api/amid.js +0 -17
- package/esm/api/application.js +0 -63
- package/esm/api/auth.js +0 -198
- package/esm/api/call-logd.js +0 -24
- package/esm/api/calld.js +0 -120
- package/esm/api/chatd.js +0 -50
- package/esm/api/confd.js +0 -77
- package/esm/api/ctid-ng.js +0 -96
- package/esm/api/dird.js +0 -110
- package/esm/api/webhookd.js +0 -7
- package/esm/api-client.js +0 -41
- package/esm/base-api-client.js +0 -125
- package/esm/checker/Checker.js +0 -54
- package/esm/checker/checks/aor.js +0 -28
- package/esm/checker/checks/api.js +0 -76
- package/esm/checker/checks/ice-ipv4.js +0 -69
- package/esm/checker/checks/index.js +0 -8
- package/esm/checker/checks/symmetric-nat.js +0 -59
- package/esm/checker/checks/wazo-websocket.js +0 -38
- package/esm/checker/checks/webrtc-transport.js +0 -35
- package/esm/checker/checks/webrtc.js +0 -40
- package/esm/constants.js +0 -11
- package/esm/domain/AdHocAPIConference.js +0 -102
- package/esm/domain/Agent.js +0 -30
- package/esm/domain/BadResponse.js +0 -21
- package/esm/domain/Call.js +0 -123
- package/esm/domain/CallLog.js +0 -157
- package/esm/domain/CallSession.js +0 -253
- package/esm/domain/CallerID.js +0 -24
- package/esm/domain/ChatMessage.js +0 -55
- package/esm/domain/ChatRoom.js +0 -30
- package/esm/domain/Contact.js +0 -464
- package/esm/domain/Country.js +0 -19
- package/esm/domain/Device/DebugDevice.js +0 -32
- package/esm/domain/Device/Device.js +0 -1
- package/esm/domain/DirectorySource.js +0 -1
- package/esm/domain/ExternalApp.js +0 -24
- package/esm/domain/Features.js +0 -77
- package/esm/domain/ForwardOption.js +0 -37
- package/esm/domain/Incall.js +0 -28
- package/esm/domain/IndirectTransfer.js +0 -40
- package/esm/domain/Line.js +0 -39
- package/esm/domain/Meeting.js +0 -61
- package/esm/domain/MeetingAuthorization.js +0 -46
- package/esm/domain/MeetingStatus.js +0 -14
- package/esm/domain/NotificationOptions.js +0 -45
- package/esm/domain/Phone/CTIPhone.js +0 -288
- package/esm/domain/Phone/Phone.js +0 -1
- package/esm/domain/Phone/WebRTCPhone.js +0 -1482
- package/esm/domain/Profile.js +0 -128
- package/esm/domain/Recording.js +0 -30
- package/esm/domain/Relocation.js +0 -20
- package/esm/domain/Room.js +0 -97
- package/esm/domain/SFUNotAvailableError.js +0 -6
- package/esm/domain/ServerError.js +0 -9
- package/esm/domain/Session.js +0 -174
- package/esm/domain/SipLine.js +0 -82
- package/esm/domain/Subscription.js +0 -42
- package/esm/domain/SwitchboardCall.js +0 -56
- package/esm/domain/Voicemail.js +0 -76
- package/esm/domain/__tests__/Agent.test.js +0 -37
- package/esm/domain/__tests__/Call.test.js +0 -25
- package/esm/domain/__tests__/CallLog.test.js +0 -181
- package/esm/domain/__tests__/CallSession.test.js +0 -78
- package/esm/domain/__tests__/Contact.test.js +0 -393
- package/esm/domain/__tests__/IndirectTransfer.test.js +0 -67
- package/esm/domain/__tests__/Line.test.js +0 -52
- package/esm/domain/__tests__/Meeting.test.js +0 -77
- package/esm/domain/__tests__/MeetingAuthorization.test.js +0 -49
- package/esm/domain/__tests__/Profile.test.js +0 -169
- package/esm/domain/__tests__/Room.test.js +0 -206
- package/esm/domain/__tests__/Session.test.js +0 -382
- package/esm/domain/__tests__/SipLine.test.js +0 -27
- package/esm/domain/__tests__/Voicemail.test.js +0 -90
- package/esm/domain/types.js +0 -2
- package/esm/index.js +0 -51
- package/esm/lib/WazoSessionDescriptionHandler.js +0 -429
- package/esm/pubkey.js +0 -10
- package/esm/service/CallApi.js +0 -61
- package/esm/service/IssueReporter.js +0 -331
- package/esm/service/__tests__/IssueReporter.test.js +0 -112
- package/esm/service/__tests__/getApiclient.test.js +0 -37
- package/esm/service/getApiClient.js +0 -94
- package/esm/simple/Auth.js +0 -384
- package/esm/simple/Configuration.js +0 -13
- package/esm/simple/Directory.js +0 -11
- package/esm/simple/Phone.js +0 -389
- package/esm/simple/Websocket.js +0 -81
- package/esm/simple/__tests__/Auth.test.js +0 -144
- package/esm/simple/index.js +0 -137
- package/esm/simple/room/LocalParticipant.js +0 -4
- package/esm/simple/room/Participant.js +0 -315
- package/esm/simple/room/RemoteParticipant.js +0 -10
- package/esm/simple/room/Room.js +0 -714
- package/esm/simple/room/SipRoom.js +0 -121
- package/esm/simple/room/Stream.js +0 -47
- package/esm/simple/room/__tests__/Participant.test.js +0 -71
- package/esm/simple/room/__tests__/RemoteParticipant.test.js +0 -12
- package/esm/simple/utils.js +0 -10
- package/esm/types/WebSocketMessage.js +0 -1
- package/esm/types/domain/Contact.d.ts +0 -332
- package/esm/types/domain/Contact.d.ts.map +0 -1
- package/esm/types/index.d.ts +0 -59
- package/esm/types/index.d.ts.map +0 -1
- package/esm/utils/Emitter.js +0 -19
- package/esm/utils/Heartbeat.js +0 -73
- package/esm/utils/PhoneNumberUtil.js +0 -67
- package/esm/utils/__tests__/Heartbeat.test.js +0 -65
- package/esm/utils/__tests__/PhoneNumberUtil.test.js +0 -70
- package/esm/utils/__tests__/api-requester.test.js +0 -166
- package/esm/utils/__tests__/array.test.js +0 -18
- package/esm/utils/__tests__/compare-version.test.js +0 -10
- package/esm/utils/__tests__/object.test.js +0 -76
- package/esm/utils/__tests__/sdp.test.js +0 -172
- package/esm/utils/__tests__/string.test.js +0 -49
- package/esm/utils/api-requester.js +0 -213
- package/esm/utils/array.js +0 -9
- package/esm/utils/compare-version.js +0 -17
- package/esm/utils/isMobile.js +0 -3
- package/esm/utils/new-from.js +0 -7
- package/esm/utils/object.js +0 -10
- package/esm/utils/once.js +0 -15
- package/esm/utils/sdp.js +0 -104
- package/esm/utils/string.js +0 -12
- package/esm/utils/update-from.js +0 -10
- package/esm/utils/webrtc.js +0 -37
- package/esm/web-rtc-client.js +0 -2200
- package/esm/websocket-client.js +0 -385
- package/index.js +0 -1
- package/lib/__tests__/api-client.test.js +0 -295
- package/lib/__tests__/web-rtc-client.test.js +0 -210
- package/lib/api/agentd.js +0 -28
- package/lib/api/amid.js +0 -28
- package/lib/api/application.js +0 -68
- package/lib/api/auth.js +0 -210
- package/lib/api/call-logd.js +0 -29
- package/lib/api/calld.js +0 -134
- package/lib/api/chatd.js +0 -68
- package/lib/api/confd.js +0 -91
- package/lib/api/ctid-ng.js +0 -101
- package/lib/api/dird.js +0 -124
- package/lib/api/webhookd.js +0 -12
- package/lib/api-client.js +0 -37
- package/lib/base-api-client.js +0 -133
- package/lib/checker/Checker.js +0 -68
- package/lib/checker/checks/aor.js +0 -42
- package/lib/checker/checks/api.js +0 -90
- package/lib/checker/checks/ice-ipv4.js +0 -73
- package/lib/checker/checks/index.js +0 -13
- package/lib/checker/checks/symmetric-nat.js +0 -61
- package/lib/checker/checks/wazo-websocket.js +0 -63
- package/lib/checker/checks/webrtc-transport.js +0 -49
- package/lib/checker/checks/webrtc.js +0 -54
- package/lib/constants.js +0 -14
- package/lib/domain/AdHocAPIConference.js +0 -101
- package/lib/domain/Agent.js +0 -25
- package/lib/domain/BadResponse.js +0 -19
- package/lib/domain/Call.js +0 -112
- package/lib/domain/CallLog.js +0 -151
- package/lib/domain/CallSession.js +0 -224
- package/lib/domain/CallerID.js +0 -27
- package/lib/domain/ChatMessage.js +0 -53
- package/lib/domain/ChatRoom.js +0 -32
- package/lib/domain/Contact.js +0 -439
- package/lib/domain/Country.js +0 -21
- package/lib/domain/Device/DebugDevice.js +0 -35
- package/lib/domain/Device/Device.js +0 -2
- package/lib/domain/DirectorySource.js +0 -2
- package/lib/domain/ExternalApp.js +0 -27
- package/lib/domain/Features.js +0 -87
- package/lib/domain/ForwardOption.js +0 -41
- package/lib/domain/Incall.js +0 -32
- package/lib/domain/IndirectTransfer.js +0 -42
- package/lib/domain/Line.js +0 -39
- package/lib/domain/Meeting.js +0 -55
- package/lib/domain/MeetingAuthorization.js +0 -45
- package/lib/domain/MeetingStatus.js +0 -15
- package/lib/domain/NotificationOptions.js +0 -49
- package/lib/domain/Phone/CTIPhone.js +0 -324
- package/lib/domain/Phone/Phone.js +0 -2
- package/lib/domain/Phone/WebRTCPhone.js +0 -1492
- package/lib/domain/Profile.js +0 -138
- package/lib/domain/Recording.js +0 -31
- package/lib/domain/Relocation.js +0 -18
- package/lib/domain/Room.js +0 -81
- package/lib/domain/SFUNotAvailableError.js +0 -9
- package/lib/domain/ServerError.js +0 -15
- package/lib/domain/Session.js +0 -166
- package/lib/domain/SipLine.js +0 -76
- package/lib/domain/Subscription.js +0 -34
- package/lib/domain/SwitchboardCall.js +0 -50
- package/lib/domain/Voicemail.js +0 -77
- package/lib/domain/__tests__/Agent.test.js +0 -42
- package/lib/domain/__tests__/Call.test.js +0 -30
- package/lib/domain/__tests__/CallLog.test.js +0 -166
- package/lib/domain/__tests__/CallSession.test.js +0 -83
- package/lib/domain/__tests__/Contact.test.js +0 -371
- package/lib/domain/__tests__/IndirectTransfer.test.js +0 -81
- package/lib/domain/__tests__/Line.test.js +0 -57
- package/lib/domain/__tests__/Meeting.test.js +0 -82
- package/lib/domain/__tests__/MeetingAuthorization.test.js +0 -54
- package/lib/domain/__tests__/Profile.test.js +0 -197
- package/lib/domain/__tests__/Room.test.js +0 -220
- package/lib/domain/__tests__/Session.test.js +0 -378
- package/lib/domain/__tests__/SipLine.test.js +0 -32
- package/lib/domain/__tests__/Voicemail.test.js +0 -95
- package/lib/domain/types.js +0 -38
- package/lib/index.js +0 -127
- package/lib/lib/WazoSessionDescriptionHandler.js +0 -434
- package/lib/pubkey.js +0 -12
- package/lib/service/CallApi.js +0 -112
- package/lib/service/IssueReporter.js +0 -317
- package/lib/service/__tests__/IssueReporter.test.js +0 -117
- package/lib/service/__tests__/getApiclient.test.js +0 -42
- package/lib/service/getApiClient.js +0 -114
- package/lib/simple/Auth.js +0 -433
- package/lib/simple/Configuration.js +0 -31
- package/lib/simple/Directory.js +0 -29
- package/lib/simple/Phone.js +0 -418
- package/lib/simple/Websocket.js +0 -116
- package/lib/simple/__tests__/Auth.test.js +0 -181
- package/lib/simple/index.js +0 -165
- package/lib/simple/room/LocalParticipant.js +0 -9
- package/lib/simple/room/Participant.js +0 -302
- package/lib/simple/room/RemoteParticipant.js +0 -15
- package/lib/simple/room/Room.js +0 -711
- package/lib/simple/room/SipRoom.js +0 -141
- package/lib/simple/room/Stream.js +0 -50
- package/lib/simple/room/__tests__/Participant.test.js +0 -85
- package/lib/simple/room/__tests__/RemoteParticipant.test.js +0 -17
- package/lib/simple/utils.js +0 -27
- package/lib/types/WebSocketMessage.js +0 -2
- package/lib/types/__tests__/api-client.test.d.ts +0 -2
- package/lib/types/__tests__/api-client.test.d.ts.map +0 -1
- package/lib/types/__tests__/web-rtc-client.test.d.ts +0 -2
- package/lib/types/__tests__/web-rtc-client.test.d.ts.map +0 -1
- package/lib/types/api/agentd.d.ts +0 -17
- package/lib/types/api/agentd.d.ts.map +0 -1
- package/lib/types/api/amid.d.ts +0 -8
- package/lib/types/api/amid.d.ts.map +0 -1
- package/lib/types/api/application.d.ts +0 -34
- package/lib/types/api/application.d.ts.map +0 -1
- package/lib/types/api/auth.d.ts +0 -69
- package/lib/types/api/auth.d.ts.map +0 -1
- package/lib/types/api/call-logd.d.ts +0 -12
- package/lib/types/api/call-logd.d.ts.map +0 -1
- package/lib/types/api/calld.d.ts +0 -52
- package/lib/types/api/calld.d.ts.map +0 -1
- package/lib/types/api/chatd.d.ts +0 -29
- package/lib/types/api/chatd.d.ts.map +0 -1
- package/lib/types/api/confd.d.ts +0 -46
- package/lib/types/api/confd.d.ts.map +0 -1
- package/lib/types/api/ctid-ng.d.ts +0 -36
- package/lib/types/api/ctid-ng.d.ts.map +0 -1
- package/lib/types/api/dird.d.ts +0 -33
- package/lib/types/api/dird.d.ts.map +0 -1
- package/lib/types/api/webhookd.d.ts +0 -24
- package/lib/types/api/webhookd.d.ts.map +0 -1
- package/lib/types/api-client.d.ts +0 -26
- package/lib/types/api-client.d.ts.map +0 -1
- package/lib/types/base-api-client.d.ts +0 -43
- package/lib/types/base-api-client.d.ts.map +0 -1
- package/lib/types/checker/Checker.d.ts +0 -13
- package/lib/types/checker/Checker.d.ts.map +0 -1
- package/lib/types/checker/checks/aor.d.ts +0 -6
- package/lib/types/checker/checks/aor.d.ts.map +0 -1
- package/lib/types/checker/checks/api.d.ts +0 -6
- package/lib/types/checker/checks/api.d.ts.map +0 -1
- package/lib/types/checker/checks/ice-ipv4.d.ts +0 -6
- package/lib/types/checker/checks/ice-ipv4.d.ts.map +0 -1
- package/lib/types/checker/checks/index.d.ts +0 -9
- package/lib/types/checker/checks/index.d.ts.map +0 -1
- package/lib/types/checker/checks/symmetric-nat.d.ts +0 -6
- package/lib/types/checker/checks/symmetric-nat.d.ts.map +0 -1
- package/lib/types/checker/checks/wazo-websocket.d.ts +0 -6
- package/lib/types/checker/checks/wazo-websocket.d.ts.map +0 -1
- package/lib/types/checker/checks/webrtc-transport.d.ts +0 -7
- package/lib/types/checker/checks/webrtc-transport.d.ts.map +0 -1
- package/lib/types/checker/checks/webrtc.d.ts +0 -6
- package/lib/types/checker/checks/webrtc.d.ts.map +0 -1
- package/lib/types/constants.d.ts +0 -12
- package/lib/types/constants.d.ts.map +0 -1
- package/lib/types/domain/AdHocAPIConference.d.ts +0 -54
- package/lib/types/domain/AdHocAPIConference.d.ts.map +0 -1
- package/lib/types/domain/Agent.d.ts +0 -31
- package/lib/types/domain/Agent.d.ts.map +0 -1
- package/lib/types/domain/BadResponse.d.ts +0 -11
- package/lib/types/domain/BadResponse.d.ts.map +0 -1
- package/lib/types/domain/Call.d.ts +0 -79
- package/lib/types/domain/Call.d.ts.map +0 -1
- package/lib/types/domain/CallLog.d.ts +0 -88
- package/lib/types/domain/CallLog.d.ts.map +0 -1
- package/lib/types/domain/CallSession.d.ts +0 -119
- package/lib/types/domain/CallSession.d.ts.map +0 -1
- package/lib/types/domain/CallerID.d.ts +0 -22
- package/lib/types/domain/CallerID.d.ts.map +0 -1
- package/lib/types/domain/ChatMessage.d.ts +0 -41
- package/lib/types/domain/ChatMessage.d.ts.map +0 -1
- package/lib/types/domain/ChatRoom.d.ts +0 -22
- package/lib/types/domain/ChatRoom.d.ts.map +0 -1
- package/lib/types/domain/Contact.d.ts.map +0 -1
- package/lib/types/domain/Country.d.ts +0 -21
- package/lib/types/domain/Country.d.ts.map +0 -1
- package/lib/types/domain/Device/DebugDevice.d.ts +0 -14
- package/lib/types/domain/Device/DebugDevice.d.ts.map +0 -1
- package/lib/types/domain/Device/Device.d.ts +0 -13
- package/lib/types/domain/Device/Device.d.ts.map +0 -1
- package/lib/types/domain/DirectorySource.d.ts +0 -13
- package/lib/types/domain/DirectorySource.d.ts.map +0 -1
- package/lib/types/domain/ExternalApp.d.ts +0 -22
- package/lib/types/domain/ExternalApp.d.ts.map +0 -1
- package/lib/types/domain/Features.d.ts +0 -26
- package/lib/types/domain/Features.d.ts.map +0 -1
- package/lib/types/domain/ForwardOption.d.ts +0 -28
- package/lib/types/domain/ForwardOption.d.ts.map +0 -1
- package/lib/types/domain/Incall.d.ts +0 -21
- package/lib/types/domain/Incall.d.ts.map +0 -1
- package/lib/types/domain/IndirectTransfer.d.ts +0 -31
- package/lib/types/domain/IndirectTransfer.d.ts.map +0 -1
- package/lib/types/domain/Line.d.ts +0 -35
- package/lib/types/domain/Line.d.ts.map +0 -1
- package/lib/types/domain/Meeting.d.ts +0 -45
- package/lib/types/domain/Meeting.d.ts.map +0 -1
- package/lib/types/domain/MeetingAuthorization.d.ts +0 -32
- package/lib/types/domain/MeetingAuthorization.d.ts.map +0 -1
- package/lib/types/domain/MeetingStatus.d.ts +0 -10
- package/lib/types/domain/MeetingStatus.d.ts.map +0 -1
- package/lib/types/domain/NotificationOptions.d.ts +0 -22
- package/lib/types/domain/NotificationOptions.d.ts.map +0 -1
- package/lib/types/domain/Phone/CTIPhone.d.ts +0 -79
- package/lib/types/domain/Phone/CTIPhone.d.ts.map +0 -1
- package/lib/types/domain/Phone/Phone.d.ts +0 -83
- package/lib/types/domain/Phone/Phone.d.ts.map +0 -1
- package/lib/types/domain/Phone/WebRTCPhone.d.ts +0 -183
- package/lib/types/domain/Phone/WebRTCPhone.d.ts.map +0 -1
- package/lib/types/domain/Profile.d.ts +0 -155
- package/lib/types/domain/Profile.d.ts.map +0 -1
- package/lib/types/domain/Recording.d.ts +0 -26
- package/lib/types/domain/Recording.d.ts.map +0 -1
- package/lib/types/domain/Relocation.d.ts +0 -23
- package/lib/types/domain/Relocation.d.ts.map +0 -1
- package/lib/types/domain/Room.d.ts +0 -33
- package/lib/types/domain/Room.d.ts.map +0 -1
- package/lib/types/domain/SFUNotAvailableError.d.ts +0 -4
- package/lib/types/domain/SFUNotAvailableError.d.ts.map +0 -1
- package/lib/types/domain/ServerError.d.ts +0 -6
- package/lib/types/domain/ServerError.d.ts.map +0 -1
- package/lib/types/domain/Session.d.ts +0 -100
- package/lib/types/domain/Session.d.ts.map +0 -1
- package/lib/types/domain/SipLine.d.ts +0 -54
- package/lib/types/domain/SipLine.d.ts.map +0 -1
- package/lib/types/domain/Subscription.d.ts +0 -43
- package/lib/types/domain/Subscription.d.ts.map +0 -1
- package/lib/types/domain/SwitchboardCall.d.ts +0 -62
- package/lib/types/domain/SwitchboardCall.d.ts.map +0 -1
- package/lib/types/domain/Voicemail.d.ts +0 -58
- package/lib/types/domain/Voicemail.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Agent.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Agent.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Call.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Call.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/CallLog.test.d.ts +0 -2
- package/lib/types/domain/__tests__/CallLog.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/CallSession.test.d.ts +0 -2
- package/lib/types/domain/__tests__/CallSession.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Contact.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Contact.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/IndirectTransfer.test.d.ts +0 -2
- package/lib/types/domain/__tests__/IndirectTransfer.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Line.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Line.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Meeting.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Meeting.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/MeetingAuthorization.test.d.ts +0 -2
- package/lib/types/domain/__tests__/MeetingAuthorization.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Profile.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Profile.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Room.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Room.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Session.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Session.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/SipLine.test.d.ts +0 -2
- package/lib/types/domain/__tests__/SipLine.test.d.ts.map +0 -1
- package/lib/types/domain/__tests__/Voicemail.test.d.ts +0 -2
- package/lib/types/domain/__tests__/Voicemail.test.d.ts.map +0 -1
- package/lib/types/domain/types.d.ts +0 -378
- package/lib/types/domain/types.d.ts.map +0 -1
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/lib/WazoSessionDescriptionHandler.d.ts +0 -31
- package/lib/types/lib/WazoSessionDescriptionHandler.d.ts.map +0 -1
- package/lib/types/pubkey.d.ts +0 -3
- package/lib/types/pubkey.d.ts.map +0 -1
- package/lib/types/service/CallApi.d.ts +0 -28
- package/lib/types/service/CallApi.d.ts.map +0 -1
- package/lib/types/service/IssueReporter.d.ts +0 -42
- package/lib/types/service/IssueReporter.d.ts.map +0 -1
- package/lib/types/service/__tests__/IssueReporter.test.d.ts +0 -2
- package/lib/types/service/__tests__/IssueReporter.test.d.ts.map +0 -1
- package/lib/types/service/__tests__/getApiclient.test.d.ts +0 -2
- package/lib/types/service/__tests__/getApiclient.test.d.ts.map +0 -1
- package/lib/types/service/getApiClient.d.ts +0 -21
- package/lib/types/service/getApiClient.d.ts.map +0 -1
- package/lib/types/simple/Auth.d.ts +0 -75
- package/lib/types/simple/Auth.d.ts.map +0 -1
- package/lib/types/simple/Configuration.d.ts +0 -7
- package/lib/types/simple/Configuration.d.ts.map +0 -1
- package/lib/types/simple/Directory.d.ts +0 -7
- package/lib/types/simple/Directory.d.ts.map +0 -1
- package/lib/types/simple/Phone.d.ts +0 -119
- package/lib/types/simple/Phone.d.ts.map +0 -1
- package/lib/types/simple/Websocket.d.ts +0 -21
- package/lib/types/simple/Websocket.d.ts.map +0 -1
- package/lib/types/simple/__tests__/Auth.test.d.ts +0 -2
- package/lib/types/simple/__tests__/Auth.test.d.ts.map +0 -1
- package/lib/types/simple/index.d.ts +0 -153
- package/lib/types/simple/index.d.ts.map +0 -1
- package/lib/types/simple/room/LocalParticipant.d.ts +0 -5
- package/lib/types/simple/room/LocalParticipant.d.ts.map +0 -1
- package/lib/types/simple/room/Participant.d.ts +0 -77
- package/lib/types/simple/room/Participant.d.ts.map +0 -1
- package/lib/types/simple/room/RemoteParticipant.d.ts +0 -7
- package/lib/types/simple/room/RemoteParticipant.d.ts.map +0 -1
- package/lib/types/simple/room/Room.d.ts +0 -127
- package/lib/types/simple/room/Room.d.ts.map +0 -1
- package/lib/types/simple/room/SipRoom.d.ts +0 -14
- package/lib/types/simple/room/SipRoom.d.ts.map +0 -1
- package/lib/types/simple/room/Stream.d.ts +0 -13
- package/lib/types/simple/room/Stream.d.ts.map +0 -1
- package/lib/types/simple/room/__tests__/Participant.test.d.ts +0 -2
- package/lib/types/simple/room/__tests__/Participant.test.d.ts.map +0 -1
- package/lib/types/simple/room/__tests__/RemoteParticipant.test.d.ts +0 -2
- package/lib/types/simple/room/__tests__/RemoteParticipant.test.d.ts.map +0 -1
- package/lib/types/simple/utils.d.ts +0 -3
- package/lib/types/simple/utils.d.ts.map +0 -1
- package/lib/types/types/WebSocketMessage.d.ts +0 -285
- package/lib/types/types/WebSocketMessage.d.ts.map +0 -1
- package/lib/types/utils/Emitter.d.ts +0 -18
- package/lib/types/utils/Emitter.d.ts.map +0 -1
- package/lib/types/utils/Heartbeat.d.ts +0 -22
- package/lib/types/utils/Heartbeat.d.ts.map +0 -1
- package/lib/types/utils/PhoneNumberUtil.d.ts +0 -7
- package/lib/types/utils/PhoneNumberUtil.d.ts.map +0 -1
- package/lib/types/utils/__tests__/Heartbeat.test.d.ts +0 -2
- package/lib/types/utils/__tests__/Heartbeat.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/PhoneNumberUtil.test.d.ts +0 -2
- package/lib/types/utils/__tests__/PhoneNumberUtil.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/api-requester.test.d.ts +0 -2
- package/lib/types/utils/__tests__/api-requester.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/array.test.d.ts +0 -2
- package/lib/types/utils/__tests__/array.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/compare-version.test.d.ts +0 -2
- package/lib/types/utils/__tests__/compare-version.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/object.test.d.ts +0 -2
- package/lib/types/utils/__tests__/object.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/sdp.test.d.ts +0 -2
- package/lib/types/utils/__tests__/sdp.test.d.ts.map +0 -1
- package/lib/types/utils/__tests__/string.test.d.ts +0 -2
- package/lib/types/utils/__tests__/string.test.d.ts.map +0 -1
- package/lib/types/utils/api-requester.d.ts +0 -48
- package/lib/types/utils/api-requester.d.ts.map +0 -1
- package/lib/types/utils/array.d.ts +0 -2
- package/lib/types/utils/array.d.ts.map +0 -1
- package/lib/types/utils/compare-version.d.ts +0 -3
- package/lib/types/utils/compare-version.d.ts.map +0 -1
- package/lib/types/utils/isMobile.d.ts +0 -3
- package/lib/types/utils/isMobile.d.ts.map +0 -1
- package/lib/types/utils/new-from.d.ts +0 -3
- package/lib/types/utils/new-from.d.ts.map +0 -1
- package/lib/types/utils/object.d.ts +0 -2
- package/lib/types/utils/object.d.ts.map +0 -1
- package/lib/types/utils/once.d.ts +0 -2
- package/lib/types/utils/once.d.ts.map +0 -1
- package/lib/types/utils/sdp.d.ts +0 -28
- package/lib/types/utils/sdp.d.ts.map +0 -1
- package/lib/types/utils/string.d.ts +0 -3
- package/lib/types/utils/string.d.ts.map +0 -1
- package/lib/types/utils/update-from.d.ts +0 -3
- package/lib/types/utils/update-from.d.ts.map +0 -1
- package/lib/types/utils/webrtc.d.ts +0 -15
- package/lib/types/utils/webrtc.d.ts.map +0 -1
- package/lib/types/web-rtc-client.d.ts +0 -198
- package/lib/types/web-rtc-client.d.ts.map +0 -1
- package/lib/types/websocket-client.d.ts +0 -138
- package/lib/types/websocket-client.d.ts.map +0 -1
- package/lib/utils/Emitter.js +0 -24
- package/lib/utils/Heartbeat.js +0 -66
- package/lib/utils/PhoneNumberUtil.js +0 -73
- package/lib/utils/__tests__/Heartbeat.test.js +0 -79
- package/lib/utils/__tests__/PhoneNumberUtil.test.js +0 -72
- package/lib/utils/__tests__/api-requester.test.js +0 -180
- package/lib/utils/__tests__/array.test.js +0 -20
- package/lib/utils/__tests__/compare-version.test.js +0 -15
- package/lib/utils/__tests__/object.test.js +0 -78
- package/lib/utils/__tests__/sdp.test.js +0 -188
- package/lib/utils/__tests__/string.test.js +0 -51
- package/lib/utils/api-requester.js +0 -200
- package/lib/utils/array.js +0 -13
- package/lib/utils/compare-version.js +0 -19
- package/lib/utils/isMobile.js +0 -5
- package/lib/utils/new-from.js +0 -9
- package/lib/utils/object.js +0 -14
- package/lib/utils/once.js +0 -18
- package/lib/utils/sdp.js +0 -115
- package/lib/utils/string.js +0 -17
- package/lib/utils/update-from.js +0 -12
- package/lib/utils/webrtc.js +0 -41
- package/lib/web-rtc-client.js +0 -2239
- package/lib/websocket-client.js +0 -390
- package/src/__tests__/api-client.test.ts +0 -315
- package/src/__tests__/web-rtc-client.test.ts +0 -198
- package/src/api/agentd.ts +0 -37
- package/src/api/amid.ts +0 -25
- package/src/api/application.ts +0 -96
- package/src/api/auth.ts +0 -305
- package/src/api/call-logd.ts +0 -38
- package/src/api/calld.ts +0 -185
- package/src/api/chatd.ts +0 -87
- package/src/api/confd.ts +0 -119
- package/src/api/ctid-ng.ts +0 -152
- package/src/api/dird.ts +0 -143
- package/src/api/webhookd.ts +0 -30
- package/src/api-client.ts +0 -65
- package/src/base-api-client.ts +0 -184
- package/src/checker/Checker.ts +0 -73
- package/src/checker/checks/aor.ts +0 -34
- package/src/checker/checks/api.ts +0 -78
- package/src/checker/checks/ice-ipv4.ts +0 -80
- package/src/checker/checks/index.ts +0 -9
- package/src/checker/checks/symmetric-nat.ts +0 -69
- package/src/checker/checks/wazo-websocket.ts +0 -41
- package/src/checker/checks/webrtc-transport.ts +0 -42
- package/src/checker/checks/webrtc.ts +0 -48
- package/src/constants.ts +0 -11
- package/src/domain/AdHocAPIConference.ts +0 -166
- package/src/domain/Agent.ts +0 -68
- package/src/domain/BadResponse.ts +0 -29
- package/src/domain/Call.ts +0 -217
- package/src/domain/CallLog.ts +0 -265
- package/src/domain/CallSession.ts +0 -401
- package/src/domain/CallerID.ts +0 -49
- package/src/domain/ChatMessage.ts +0 -107
- package/src/domain/ChatRoom.ts +0 -55
- package/src/domain/Contact.ts +0 -851
- package/src/domain/Country.ts +0 -19
- package/src/domain/Device/DebugDevice.ts +0 -44
- package/src/domain/Device/Device.ts +0 -12
- package/src/domain/DirectorySource.ts +0 -13
- package/src/domain/ExternalApp.ts +0 -46
- package/src/domain/Features.ts +0 -105
- package/src/domain/ForwardOption.ts +0 -65
- package/src/domain/Incall.ts +0 -50
- package/src/domain/IndirectTransfer.ts +0 -73
- package/src/domain/Line.ts +0 -79
- package/src/domain/Meeting.ts +0 -113
- package/src/domain/MeetingAuthorization.ts +0 -81
- package/src/domain/MeetingStatus.ts +0 -23
- package/src/domain/NotificationOptions.ts +0 -68
- package/src/domain/Phone/CTIPhone.ts +0 -381
- package/src/domain/Phone/Phone.ts +0 -81
- package/src/domain/Phone/WebRTCPhone.ts +0 -1830
- package/src/domain/Profile.ts +0 -289
- package/src/domain/Recording.ts +0 -60
- package/src/domain/Relocation.ts +0 -45
- package/src/domain/Room.ts +0 -141
- package/src/domain/SFUNotAvailableError.ts +0 -7
- package/src/domain/ServerError.ts +0 -12
- package/src/domain/Session.ts +0 -297
- package/src/domain/SipLine.ts +0 -154
- package/src/domain/Subscription.ts +0 -95
- package/src/domain/SwitchboardCall.ts +0 -127
- package/src/domain/Voicemail.ts +0 -138
- package/src/domain/__tests__/Agent.test.ts +0 -38
- package/src/domain/__tests__/Call.test.ts +0 -26
- package/src/domain/__tests__/CallLog.test.ts +0 -203
- package/src/domain/__tests__/CallSession.test.ts +0 -80
- package/src/domain/__tests__/Contact.test.ts +0 -407
- package/src/domain/__tests__/IndirectTransfer.test.ts +0 -68
- package/src/domain/__tests__/Line.test.ts +0 -53
- package/src/domain/__tests__/Meeting.test.ts +0 -93
- package/src/domain/__tests__/MeetingAuthorization.test.ts +0 -50
- package/src/domain/__tests__/Profile.test.ts +0 -170
- package/src/domain/__tests__/Room.test.ts +0 -207
- package/src/domain/__tests__/Session.test.ts +0 -385
- package/src/domain/__tests__/SipLine.test.ts +0 -30
- package/src/domain/__tests__/Voicemail.test.ts +0 -91
- package/src/domain/types.ts +0 -331
- package/src/index.ts +0 -60
- package/src/lib/WazoSessionDescriptionHandler.ts +0 -532
- package/src/pubkey.ts +0 -11
- package/src/service/CallApi.ts +0 -86
- package/src/service/IssueReporter.ts +0 -434
- package/src/service/__tests__/IssueReporter.test.ts +0 -127
- package/src/service/__tests__/getApiclient.test.ts +0 -46
- package/src/service/getApiClient.ts +0 -113
- package/src/simple/Auth.ts +0 -496
- package/src/simple/Configuration.ts +0 -18
- package/src/simple/Directory.ts +0 -16
- package/src/simple/Phone.ts +0 -531
- package/src/simple/Websocket.ts +0 -107
- package/src/simple/__tests__/Auth.test.ts +0 -168
- package/src/simple/index.ts +0 -153
- package/src/simple/room/LocalParticipant.ts +0 -5
- package/src/simple/room/Participant.ts +0 -409
- package/src/simple/room/RemoteParticipant.ts +0 -15
- package/src/simple/room/Room.ts +0 -942
- package/src/simple/room/SipRoom.ts +0 -164
- package/src/simple/room/Stream.ts +0 -64
- package/src/simple/room/__tests__/Participant.test.ts +0 -73
- package/src/simple/room/__tests__/RemoteParticipant.test.ts +0 -15
- package/src/simple/utils.ts +0 -12
- package/src/types/WebSocketMessage.ts +0 -335
- package/src/types/global.d.ts +0 -33
- package/src/types/wazo.d.ts +0 -1
- package/src/utils/Emitter.ts +0 -34
- package/src/utils/Heartbeat.ts +0 -102
- package/src/utils/PhoneNumberUtil.ts +0 -81
- package/src/utils/__tests__/Heartbeat.test.ts +0 -66
- package/src/utils/__tests__/PhoneNumberUtil.test.ts +0 -79
- package/src/utils/__tests__/api-requester.test.ts +0 -180
- package/src/utils/__tests__/array.test.ts +0 -19
- package/src/utils/__tests__/compare-version.test.ts +0 -11
- package/src/utils/__tests__/object.test.ts +0 -77
- package/src/utils/__tests__/sdp.test.ts +0 -173
- package/src/utils/__tests__/string.test.ts +0 -55
- package/src/utils/api-requester.ts +0 -294
- package/src/utils/array.ts +0 -11
- package/src/utils/compare-version.ts +0 -21
- package/src/utils/isMobile.ts +0 -4
- package/src/utils/new-from.ts +0 -7
- package/src/utils/object.ts +0 -12
- package/src/utils/once.ts +0 -14
- package/src/utils/sdp.ts +0 -140
- package/src/utils/string.ts +0 -15
- package/src/utils/update-from.ts +0 -11
- package/src/utils/webrtc.ts +0 -56
- package/src/web-rtc-client.ts +0 -2687
- package/src/websocket-client.ts +0 -475
- /package/{esm → dist}/types/__tests__/api-client.test.d.ts +0 -0
- /package/{esm → dist}/types/__tests__/api-client.test.d.ts.map +0 -0
- /package/{esm → dist}/types/__tests__/web-rtc-client.test.d.ts +0 -0
- /package/{esm → dist}/types/__tests__/web-rtc-client.test.d.ts.map +0 -0
- /package/{esm → dist}/types/api/agentd.d.ts +0 -0
- /package/{esm → dist}/types/api/agentd.d.ts.map +0 -0
- /package/{esm → dist}/types/api/amid.d.ts +0 -0
- /package/{esm → dist}/types/api/amid.d.ts.map +0 -0
- /package/{esm → dist}/types/api/application.d.ts +0 -0
- /package/{esm → dist}/types/api/application.d.ts.map +0 -0
- /package/{esm → dist}/types/api/auth.d.ts +0 -0
- /package/{esm → dist}/types/api/auth.d.ts.map +0 -0
- /package/{esm → dist}/types/api/call-logd.d.ts +0 -0
- /package/{esm → dist}/types/api/call-logd.d.ts.map +0 -0
- /package/{esm → dist}/types/api/calld.d.ts +0 -0
- /package/{esm → dist}/types/api/calld.d.ts.map +0 -0
- /package/{esm → dist}/types/api/chatd.d.ts +0 -0
- /package/{esm → dist}/types/api/chatd.d.ts.map +0 -0
- /package/{esm → dist}/types/api/confd.d.ts +0 -0
- /package/{esm → dist}/types/api/confd.d.ts.map +0 -0
- /package/{esm → dist}/types/api/ctid-ng.d.ts +0 -0
- /package/{esm → dist}/types/api/ctid-ng.d.ts.map +0 -0
- /package/{esm → dist}/types/api/dird.d.ts +0 -0
- /package/{esm → dist}/types/api/dird.d.ts.map +0 -0
- /package/{esm → dist}/types/api/webhookd.d.ts +0 -0
- /package/{esm → dist}/types/api/webhookd.d.ts.map +0 -0
- /package/{esm → dist}/types/api-client.d.ts +0 -0
- /package/{esm → dist}/types/api-client.d.ts.map +0 -0
- /package/{esm → dist}/types/base-api-client.d.ts +0 -0
- /package/{esm → dist}/types/base-api-client.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/Checker.d.ts +0 -0
- /package/{esm → dist}/types/checker/Checker.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/aor.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/aor.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/api.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/api.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/ice-ipv4.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/ice-ipv4.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/index.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/index.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/symmetric-nat.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/symmetric-nat.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/wazo-websocket.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/wazo-websocket.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/webrtc-transport.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/webrtc-transport.d.ts.map +0 -0
- /package/{esm → dist}/types/checker/checks/webrtc.d.ts +0 -0
- /package/{esm → dist}/types/checker/checks/webrtc.d.ts.map +0 -0
- /package/{esm → dist}/types/constants.d.ts +0 -0
- /package/{esm → dist}/types/constants.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/AdHocAPIConference.d.ts +0 -0
- /package/{esm → dist}/types/domain/AdHocAPIConference.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Agent.d.ts +0 -0
- /package/{esm → dist}/types/domain/Agent.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/BadResponse.d.ts +0 -0
- /package/{esm → dist}/types/domain/BadResponse.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Call.d.ts +0 -0
- /package/{esm → dist}/types/domain/Call.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/CallLog.d.ts +0 -0
- /package/{esm → dist}/types/domain/CallLog.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/CallSession.d.ts +0 -0
- /package/{esm → dist}/types/domain/CallSession.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/CallerID.d.ts +0 -0
- /package/{esm → dist}/types/domain/CallerID.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/ChatMessage.d.ts +0 -0
- /package/{esm → dist}/types/domain/ChatMessage.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/ChatRoom.d.ts +0 -0
- /package/{esm → dist}/types/domain/ChatRoom.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Country.d.ts +0 -0
- /package/{esm → dist}/types/domain/Country.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Device/DebugDevice.d.ts +0 -0
- /package/{esm → dist}/types/domain/Device/DebugDevice.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Device/Device.d.ts +0 -0
- /package/{esm → dist}/types/domain/Device/Device.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/DirectorySource.d.ts +0 -0
- /package/{esm → dist}/types/domain/DirectorySource.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/ExternalApp.d.ts +0 -0
- /package/{esm → dist}/types/domain/ExternalApp.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Features.d.ts +0 -0
- /package/{esm → dist}/types/domain/Features.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/ForwardOption.d.ts +0 -0
- /package/{esm → dist}/types/domain/ForwardOption.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Incall.d.ts +0 -0
- /package/{esm → dist}/types/domain/Incall.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/IndirectTransfer.d.ts +0 -0
- /package/{esm → dist}/types/domain/IndirectTransfer.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Line.d.ts +0 -0
- /package/{esm → dist}/types/domain/Line.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Meeting.d.ts +0 -0
- /package/{esm → dist}/types/domain/Meeting.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/MeetingAuthorization.d.ts +0 -0
- /package/{esm → dist}/types/domain/MeetingAuthorization.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/MeetingStatus.d.ts +0 -0
- /package/{esm → dist}/types/domain/MeetingStatus.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/NotificationOptions.d.ts +0 -0
- /package/{esm → dist}/types/domain/NotificationOptions.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Phone/CTIPhone.d.ts +0 -0
- /package/{esm → dist}/types/domain/Phone/CTIPhone.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Phone/Phone.d.ts +0 -0
- /package/{esm → dist}/types/domain/Phone/Phone.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Phone/WebRTCPhone.d.ts +0 -0
- /package/{esm → dist}/types/domain/Phone/WebRTCPhone.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Profile.d.ts +0 -0
- /package/{esm → dist}/types/domain/Profile.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Recording.d.ts +0 -0
- /package/{esm → dist}/types/domain/Recording.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Relocation.d.ts +0 -0
- /package/{esm → dist}/types/domain/Relocation.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Room.d.ts +0 -0
- /package/{esm → dist}/types/domain/Room.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/SFUNotAvailableError.d.ts +0 -0
- /package/{esm → dist}/types/domain/SFUNotAvailableError.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/ServerError.d.ts +0 -0
- /package/{esm → dist}/types/domain/ServerError.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Session.d.ts +0 -0
- /package/{esm → dist}/types/domain/Session.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/SipLine.d.ts +0 -0
- /package/{esm → dist}/types/domain/SipLine.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Subscription.d.ts +0 -0
- /package/{esm → dist}/types/domain/Subscription.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/SwitchboardCall.d.ts +0 -0
- /package/{esm → dist}/types/domain/SwitchboardCall.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/Voicemail.d.ts +0 -0
- /package/{esm → dist}/types/domain/Voicemail.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Agent.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Agent.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Call.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Call.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/CallLog.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/CallLog.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/CallSession.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/CallSession.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Contact.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Contact.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/IndirectTransfer.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/IndirectTransfer.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Line.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Line.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Meeting.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Meeting.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/MeetingAuthorization.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/MeetingAuthorization.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Profile.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Profile.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Room.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Room.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Session.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Session.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/SipLine.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/SipLine.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/__tests__/Voicemail.test.d.ts +0 -0
- /package/{esm → dist}/types/domain/__tests__/Voicemail.test.d.ts.map +0 -0
- /package/{esm → dist}/types/domain/types.d.ts +0 -0
- /package/{esm → dist}/types/domain/types.d.ts.map +0 -0
- /package/{esm → dist}/types/lib/WazoSessionDescriptionHandler.d.ts +0 -0
- /package/{esm → dist}/types/lib/WazoSessionDescriptionHandler.d.ts.map +0 -0
- /package/{esm → dist}/types/pubkey.d.ts +0 -0
- /package/{esm → dist}/types/pubkey.d.ts.map +0 -0
- /package/{esm → dist}/types/service/CallApi.d.ts +0 -0
- /package/{esm → dist}/types/service/CallApi.d.ts.map +0 -0
- /package/{esm → dist}/types/service/IssueReporter.d.ts +0 -0
- /package/{esm → dist}/types/service/IssueReporter.d.ts.map +0 -0
- /package/{esm → dist}/types/service/__tests__/IssueReporter.test.d.ts +0 -0
- /package/{esm → dist}/types/service/__tests__/IssueReporter.test.d.ts.map +0 -0
- /package/{esm → dist}/types/service/__tests__/getApiclient.test.d.ts +0 -0
- /package/{esm → dist}/types/service/__tests__/getApiclient.test.d.ts.map +0 -0
- /package/{esm → dist}/types/service/getApiClient.d.ts +0 -0
- /package/{esm → dist}/types/service/getApiClient.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/Auth.d.ts +0 -0
- /package/{esm → dist}/types/simple/Auth.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/Configuration.d.ts +0 -0
- /package/{esm → dist}/types/simple/Configuration.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/Directory.d.ts +0 -0
- /package/{esm → dist}/types/simple/Directory.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/Phone.d.ts +0 -0
- /package/{esm → dist}/types/simple/Phone.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/Websocket.d.ts +0 -0
- /package/{esm → dist}/types/simple/Websocket.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/__tests__/Auth.test.d.ts +0 -0
- /package/{esm → dist}/types/simple/__tests__/Auth.test.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/index.d.ts +0 -0
- /package/{esm → dist}/types/simple/index.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/LocalParticipant.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/LocalParticipant.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/Participant.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/Participant.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/RemoteParticipant.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/RemoteParticipant.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/Room.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/Room.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/SipRoom.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/SipRoom.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/Stream.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/Stream.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/__tests__/Participant.test.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/__tests__/Participant.test.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/room/__tests__/RemoteParticipant.test.d.ts +0 -0
- /package/{esm → dist}/types/simple/room/__tests__/RemoteParticipant.test.d.ts.map +0 -0
- /package/{esm → dist}/types/simple/utils.d.ts +0 -0
- /package/{esm → dist}/types/simple/utils.d.ts.map +0 -0
- /package/{esm → dist}/types/types/WebSocketMessage.d.ts +0 -0
- /package/{esm → dist}/types/types/WebSocketMessage.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/Emitter.d.ts +0 -0
- /package/{esm → dist}/types/utils/Emitter.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/Heartbeat.d.ts +0 -0
- /package/{esm → dist}/types/utils/Heartbeat.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/PhoneNumberUtil.d.ts +0 -0
- /package/{esm → dist}/types/utils/PhoneNumberUtil.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/Heartbeat.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/Heartbeat.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/PhoneNumberUtil.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/PhoneNumberUtil.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/api-requester.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/api-requester.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/array.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/array.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/compare-version.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/compare-version.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/object.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/object.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/sdp.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/sdp.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/__tests__/string.test.d.ts +0 -0
- /package/{esm → dist}/types/utils/__tests__/string.test.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/api-requester.d.ts +0 -0
- /package/{esm → dist}/types/utils/api-requester.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/array.d.ts +0 -0
- /package/{esm → dist}/types/utils/array.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/compare-version.d.ts +0 -0
- /package/{esm → dist}/types/utils/compare-version.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/isMobile.d.ts +0 -0
- /package/{esm → dist}/types/utils/isMobile.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/new-from.d.ts +0 -0
- /package/{esm → dist}/types/utils/new-from.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/object.d.ts +0 -0
- /package/{esm → dist}/types/utils/object.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/once.d.ts +0 -0
- /package/{esm → dist}/types/utils/once.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/sdp.d.ts +0 -0
- /package/{esm → dist}/types/utils/sdp.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/string.d.ts +0 -0
- /package/{esm → dist}/types/utils/string.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/update-from.d.ts +0 -0
- /package/{esm → dist}/types/utils/update-from.d.ts.map +0 -0
- /package/{esm → dist}/types/utils/webrtc.d.ts +0 -0
- /package/{esm → dist}/types/utils/webrtc.d.ts.map +0 -0
- /package/{esm → dist}/types/web-rtc-client.d.ts +0 -0
- /package/{esm → dist}/types/web-rtc-client.d.ts.map +0 -0
- /package/{esm → dist}/types/websocket-client.d.ts +0 -0
- /package/{esm → dist}/types/websocket-client.d.ts.map +0 -0
package/lib/utils/Heartbeat.js
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const DEFAULT_HEARTBEAT_DELAY = 2000;
|
|
4
|
-
const DEFAULT_HEARTBEAT_TIMEOUT = 5000;
|
|
5
|
-
const DEFAULT_MAX_HEARTBEATS = 3;
|
|
6
|
-
class Heartbeat {
|
|
7
|
-
constructor(heartbeatDelay = DEFAULT_HEARTBEAT_DELAY, heartbeatTimeout = DEFAULT_HEARTBEAT_TIMEOUT, maxHeartbeats = DEFAULT_MAX_HEARTBEATS) {
|
|
8
|
-
this.heartbeatDelay = heartbeatDelay;
|
|
9
|
-
this.heartbeatTimeout = heartbeatTimeout;
|
|
10
|
-
this.maxHeartbeats = maxHeartbeats;
|
|
11
|
-
this.hasHeartbeat = false;
|
|
12
|
-
this._heartbeatTries = 0;
|
|
13
|
-
}
|
|
14
|
-
setSendHeartbeat(cb) {
|
|
15
|
-
this._sendHeartbeatCallback = cb;
|
|
16
|
-
}
|
|
17
|
-
setOnHeartbeatTimeout(cb) {
|
|
18
|
-
this._onTimeoutCallback = cb;
|
|
19
|
-
}
|
|
20
|
-
stop() {
|
|
21
|
-
this.hasHeartbeat = false;
|
|
22
|
-
if (this._heartbeatNotReceivedTimeout) {
|
|
23
|
-
clearTimeout(this._heartbeatNotReceivedTimeout);
|
|
24
|
-
}
|
|
25
|
-
if (this._heartbeatDelayTimeout) {
|
|
26
|
-
clearTimeout(this._heartbeatDelayTimeout);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
start() {
|
|
30
|
-
this.stop();
|
|
31
|
-
this.hasHeartbeat = true;
|
|
32
|
-
this._heartbeatTries = 0;
|
|
33
|
-
this._sendHeartbeat();
|
|
34
|
-
}
|
|
35
|
-
onHeartbeat() {
|
|
36
|
-
this._clearTimeouts();
|
|
37
|
-
if (!this.hasHeartbeat) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
this._sendHeartbeat();
|
|
41
|
-
}
|
|
42
|
-
_sendHeartbeat() {
|
|
43
|
-
if (this._heartbeatTries >= this.maxHeartbeats) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
this._clearTimeouts();
|
|
47
|
-
this._heartbeatDelayTimeout = setTimeout(() => {
|
|
48
|
-
this._heartbeatTries++;
|
|
49
|
-
if (this._sendHeartbeatCallback) {
|
|
50
|
-
this._sendHeartbeatCallback();
|
|
51
|
-
}
|
|
52
|
-
}, this.heartbeatDelay);
|
|
53
|
-
if (this._onTimeoutCallback) {
|
|
54
|
-
this._heartbeatNotReceivedTimeout = setTimeout(this._onTimeoutCallback, this.heartbeatTimeout);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
_clearTimeouts() {
|
|
58
|
-
if (this._heartbeatNotReceivedTimeout) {
|
|
59
|
-
clearTimeout(this._heartbeatNotReceivedTimeout);
|
|
60
|
-
}
|
|
61
|
-
if (this._heartbeatDelayTimeout) {
|
|
62
|
-
clearTimeout(this._heartbeatDelayTimeout);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
exports.default = Heartbeat;
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getCallableNumber = exports.guessParsePhoneNumber = exports.getDisplayableNumber = exports.parsePhoneNumber = void 0;
|
|
4
|
-
const libphonenumber_js_1 = require("libphonenumber-js");
|
|
5
|
-
// eslint-disable-next-line
|
|
6
|
-
const EXTRA_CHAR_REGEXP = /[^+*\d]/g;
|
|
7
|
-
const DEFAULT_GUESSING_COUNTRIES = ['US', 'FR', 'GB', 'AU'];
|
|
8
|
-
const shouldBeFormatted = (number) => {
|
|
9
|
-
if (!number || number.length <= 5) {
|
|
10
|
-
return false;
|
|
11
|
-
}
|
|
12
|
-
return !number.includes('#') && !number.includes('*') && !number.match(/[aA-zZ]/);
|
|
13
|
-
};
|
|
14
|
-
const isSameCountry = (country1, country2) => {
|
|
15
|
-
if ((country1 === 'US' && country2 === 'CA') || (country2 === 'US' && country1 === 'CA')) {
|
|
16
|
-
return true;
|
|
17
|
-
}
|
|
18
|
-
return country1 === country2;
|
|
19
|
-
};
|
|
20
|
-
const guessParsePhoneNumber = (number, defaultCountry, guessingCountries = DEFAULT_GUESSING_COUNTRIES) => {
|
|
21
|
-
const mergedCountries = [...new Set([defaultCountry, ...guessingCountries])].filter(Boolean);
|
|
22
|
-
let parsedNumber;
|
|
23
|
-
for (let i = 0; i < mergedCountries.length; i++) {
|
|
24
|
-
const country = mergedCountries[i];
|
|
25
|
-
parsedNumber = (0, libphonenumber_js_1.parsePhoneNumber)(number, country);
|
|
26
|
-
if (parsedNumber.isValid()) {
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return parsedNumber;
|
|
31
|
-
};
|
|
32
|
-
exports.guessParsePhoneNumber = guessParsePhoneNumber;
|
|
33
|
-
const getDisplayableNumber = (rawNumber, country, asYouType = false, guessingCountries = DEFAULT_GUESSING_COUNTRIES) => {
|
|
34
|
-
if (!rawNumber) {
|
|
35
|
-
return rawNumber;
|
|
36
|
-
}
|
|
37
|
-
const number = String(rawNumber);
|
|
38
|
-
if (!shouldBeFormatted(number)) {
|
|
39
|
-
return number;
|
|
40
|
-
}
|
|
41
|
-
let displayValue = '';
|
|
42
|
-
if (asYouType) {
|
|
43
|
-
displayValue = new libphonenumber_js_1.AsYouType(country).input(number);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
try {
|
|
47
|
-
const parsedNumber = guessParsePhoneNumber(number, country, guessingCountries);
|
|
48
|
-
if (parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.isValid()) {
|
|
49
|
-
displayValue = isSameCountry(String(parsedNumber.country), country) ? parsedNumber.formatNational() : parsedNumber.formatInternational();
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
displayValue = rawNumber;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
catch (error) {
|
|
56
|
-
displayValue = rawNumber;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
return displayValue;
|
|
60
|
-
};
|
|
61
|
-
exports.getDisplayableNumber = getDisplayableNumber;
|
|
62
|
-
const parsePhoneNumber = (phoneNumber) => phoneNumber.replace(EXTRA_CHAR_REGEXP, '');
|
|
63
|
-
exports.parsePhoneNumber = parsePhoneNumber;
|
|
64
|
-
const getCallableNumber = (number, country) => {
|
|
65
|
-
try {
|
|
66
|
-
const callableNumber = country ? getDisplayableNumber(number, country) : number;
|
|
67
|
-
return parsePhoneNumber(callableNumber);
|
|
68
|
-
}
|
|
69
|
-
catch (_) {
|
|
70
|
-
return number;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
exports.getCallableNumber = getCallableNumber;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const Heartbeat_1 = __importDefault(require("../Heartbeat"));
|
|
16
|
-
describe('Heartbeat', () => {
|
|
17
|
-
describe('When onHearbeat is not called', () => {
|
|
18
|
-
it('should retry the call with a new token', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
|
-
const spy = jest.fn();
|
|
20
|
-
const heartbeat = new Heartbeat_1.default(10, 50, 2);
|
|
21
|
-
heartbeat.setOnHeartbeatTimeout(spy);
|
|
22
|
-
heartbeat.start();
|
|
23
|
-
yield new Promise(resolve => setTimeout(resolve, 70));
|
|
24
|
-
expect(spy).toHaveBeenCalled();
|
|
25
|
-
}));
|
|
26
|
-
});
|
|
27
|
-
describe('When onHearbeat is called', () => {
|
|
28
|
-
it('should not call onTimeout', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
-
const timeout = jest.fn();
|
|
30
|
-
const sendHeartbeat = jest.fn();
|
|
31
|
-
const heartbeat = new Heartbeat_1.default(10, 50, 2);
|
|
32
|
-
heartbeat.setSendHeartbeat(sendHeartbeat);
|
|
33
|
-
heartbeat.setOnHeartbeatTimeout(timeout);
|
|
34
|
-
heartbeat.start();
|
|
35
|
-
setTimeout(() => {
|
|
36
|
-
heartbeat.onHeartbeat();
|
|
37
|
-
}, 30);
|
|
38
|
-
yield new Promise(resolve => setTimeout(resolve, 70));
|
|
39
|
-
expect(sendHeartbeat).toHaveBeenCalled();
|
|
40
|
-
expect(timeout).not.toHaveBeenCalled();
|
|
41
|
-
}));
|
|
42
|
-
});
|
|
43
|
-
describe('When onHearbeat is called every times', () => {
|
|
44
|
-
it('should not timeout', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const timeout = jest.fn();
|
|
46
|
-
const heartbeat = new Heartbeat_1.default(5, 50, 8);
|
|
47
|
-
const sendHeartbeat = jest.fn(() => {
|
|
48
|
-
heartbeat.onHeartbeat();
|
|
49
|
-
});
|
|
50
|
-
heartbeat.setSendHeartbeat(sendHeartbeat);
|
|
51
|
-
heartbeat.setOnHeartbeatTimeout(timeout);
|
|
52
|
-
heartbeat.start();
|
|
53
|
-
yield new Promise(resolve => setTimeout(resolve, 100));
|
|
54
|
-
expect(sendHeartbeat).toHaveBeenNthCalledWith(8);
|
|
55
|
-
expect(timeout).not.toHaveBeenCalled();
|
|
56
|
-
}));
|
|
57
|
-
});
|
|
58
|
-
describe('When calling it twice', () => {
|
|
59
|
-
it('should work like the first time', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
60
|
-
const timeout = jest.fn();
|
|
61
|
-
const heartbeat = new Heartbeat_1.default(5, 50, 8);
|
|
62
|
-
const sendHeartbeat = jest.fn(() => {
|
|
63
|
-
heartbeat.onHeartbeat();
|
|
64
|
-
});
|
|
65
|
-
heartbeat.setSendHeartbeat(sendHeartbeat);
|
|
66
|
-
heartbeat.setOnHeartbeatTimeout(timeout);
|
|
67
|
-
// First call
|
|
68
|
-
heartbeat.start();
|
|
69
|
-
yield new Promise(resolve => setTimeout(resolve, 100));
|
|
70
|
-
expect(sendHeartbeat).toHaveBeenNthCalledWith(8);
|
|
71
|
-
expect(timeout).not.toHaveBeenCalled();
|
|
72
|
-
// Second call
|
|
73
|
-
heartbeat.setSendHeartbeat(() => { });
|
|
74
|
-
heartbeat.start();
|
|
75
|
-
yield new Promise(resolve => setTimeout(resolve, 100));
|
|
76
|
-
expect(timeout).toHaveBeenCalled();
|
|
77
|
-
}));
|
|
78
|
-
});
|
|
79
|
-
});
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const PhoneNumberUtil_1 = require("../PhoneNumberUtil");
|
|
4
|
-
describe('Formatting phone numbers', () => {
|
|
5
|
-
it('should not format all phone numbers', () => {
|
|
6
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('*143450', 'FR')).toBe('*143450');
|
|
7
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('*10', 'US')).toBe('*10');
|
|
8
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('Wazo Fax', 'US')).toBe('Wazo Fax');
|
|
9
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('#23445433', 'DE')).toBe('#23445433');
|
|
10
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('0080510', 'FR')).toBe('0080510');
|
|
11
|
-
});
|
|
12
|
-
it('should format real phone numbers', () => {
|
|
13
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('+33675456545', 'FR')).toBe('06 75 45 65 45');
|
|
14
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('0675456545', 'FR')).toBe('06 75 45 65 45');
|
|
15
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('+33675456545', 'US')).toBe('+33 6 75 45 65 45');
|
|
16
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('0675456545', 'US')).toBe('+33 6 75 45 65 45');
|
|
17
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('4188884356', 'US')).toBe('(418) 888-4356');
|
|
18
|
-
});
|
|
19
|
-
it('should format real phone numbers when typing', () => {
|
|
20
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('+3367545', 'FR', true)).toBe('+33 6 75 45');
|
|
21
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('067545', 'FR', true)).toBe('06 75 45');
|
|
22
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('+3367545', 'US', true)).toBe('+33 6 75 45');
|
|
23
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('067545', 'US', true)).toBe('067545');
|
|
24
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('418808', 'US', true)).toBe('(418) 808');
|
|
25
|
-
});
|
|
26
|
-
it('should use the international number if the country number is different from the given country', () => {
|
|
27
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('00201005803648', 'FR')).toBe('+20 10 05803648');
|
|
28
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('+14188004554', 'FR')).toBe('+1 418 800 4554');
|
|
29
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('00201005803648', 'EG')).toBe('010 05803648');
|
|
30
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('0634543450', 'FR')).toBe('06 34 54 34 50');
|
|
31
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('4188034302', 'US')).toBe('(418) 803-4302');
|
|
32
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('8775863230', 'CA')).toBe('(877) 586-3230');
|
|
33
|
-
expect((0, PhoneNumberUtil_1.getDisplayableNumber)('8775863230', 'US')).toBe('(877) 586-3230');
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
describe('getCallableNumber', () => {
|
|
37
|
-
it('works with a country', () => {
|
|
38
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('+33 6 75 45 12 34', 'FR')).toBe('0675451234');
|
|
39
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('06 75 45 12 34', 'FR')).toBe('0675451234');
|
|
40
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('+1-202-555-0147', 'US')).toBe('2025550147');
|
|
41
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('202-555-0113', 'US')).toBe('2025550113');
|
|
42
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('8008', 'US')).toBe('8008');
|
|
43
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('80.08', 'US')).toBe('8008');
|
|
44
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('*10', 'US')).toBe('*10');
|
|
45
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('9000', 'US')).toBe('9000');
|
|
46
|
-
});
|
|
47
|
-
it('works without a country', () => {
|
|
48
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('06 75 45')).toBe('067545');
|
|
49
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('067-545')).toBe('067545');
|
|
50
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('8008')).toBe('8008');
|
|
51
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('80.08')).toBe('8008');
|
|
52
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('*10')).toBe('*10');
|
|
53
|
-
expect((0, PhoneNumberUtil_1.getCallableNumber)('9000')).toBe('9000');
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
describe('guessParsePhoneNumber', () => {
|
|
57
|
-
it('should guess with default countries', () => {
|
|
58
|
-
const parsedNumber = (0, PhoneNumberUtil_1.guessParsePhoneNumber)('0675456545');
|
|
59
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.country).toBe('FR');
|
|
60
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.isValid()).toBe(true);
|
|
61
|
-
});
|
|
62
|
-
it('should guess with specified countries', () => {
|
|
63
|
-
const parsedNumber = (0, PhoneNumberUtil_1.guessParsePhoneNumber)('752097514', undefined, ['JP']);
|
|
64
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.country).toBe('JP');
|
|
65
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.isValid()).toBe(true);
|
|
66
|
-
});
|
|
67
|
-
it('should used use defaultCountry has guesser', () => {
|
|
68
|
-
const parsedNumber = (0, PhoneNumberUtil_1.guessParsePhoneNumber)('752097514', 'JP', []);
|
|
69
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.country).toBe('JP');
|
|
70
|
-
expect(parsedNumber === null || parsedNumber === void 0 ? void 0 : parsedNumber.isValid()).toBe(true);
|
|
71
|
-
});
|
|
72
|
-
});
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const api_requester_1 = __importDefault(require("../api-requester"));
|
|
16
|
-
const server = 'localhost';
|
|
17
|
-
const path = 'auth';
|
|
18
|
-
const method = 'get';
|
|
19
|
-
const body = {
|
|
20
|
-
a: 1,
|
|
21
|
-
};
|
|
22
|
-
const url = `https://${server}/api/${path}?a=1`;
|
|
23
|
-
const token = 'abc';
|
|
24
|
-
const newToken = 'newToken';
|
|
25
|
-
const headers = {
|
|
26
|
-
Accept: 'application/json',
|
|
27
|
-
'Content-Type': 'application/json',
|
|
28
|
-
'X-Auth-Token': token,
|
|
29
|
-
};
|
|
30
|
-
describe('Generating query string', () => {
|
|
31
|
-
it('should generate a simple query string from an object', () => {
|
|
32
|
-
expect(api_requester_1.default.getQueryString({
|
|
33
|
-
a: 1,
|
|
34
|
-
b: 'someString',
|
|
35
|
-
})).toBe('a=1&b=someString');
|
|
36
|
-
expect(api_requester_1.default.getQueryString({
|
|
37
|
-
bool: true,
|
|
38
|
-
b: 'booléen',
|
|
39
|
-
})).toBe('bool=true&b=bool%C3%A9en');
|
|
40
|
-
expect(api_requester_1.default.getQueryString({
|
|
41
|
-
nope: undefined,
|
|
42
|
-
b: 'yep',
|
|
43
|
-
})).toBe('b=yep');
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
describe('Computing fetch URL', () => {
|
|
47
|
-
it('should add query string to URL in get method with body', () => {
|
|
48
|
-
const client = new api_requester_1.default({
|
|
49
|
-
server: 'localhost',
|
|
50
|
-
agent: null,
|
|
51
|
-
clientId: null,
|
|
52
|
-
refreshTokenCallback: () => null,
|
|
53
|
-
fetchOptions: null,
|
|
54
|
-
});
|
|
55
|
-
expect(client.computeUrl('get', 'auth', {
|
|
56
|
-
a: 1,
|
|
57
|
-
})).toBe('https://localhost/api/auth?a=1');
|
|
58
|
-
expect(client.computeUrl('post', 'auth', {
|
|
59
|
-
a: 1,
|
|
60
|
-
})).toBe('https://localhost/api/auth');
|
|
61
|
-
expect(client.computeUrl('get', 'auth', null)).toBe('https://localhost/api/auth');
|
|
62
|
-
expect(client.computeUrl('get', 'auth', {})).toBe('https://localhost/api/auth');
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
describe('Retrieving headers', () => {
|
|
66
|
-
it('should send a tenant if exists', () => {
|
|
67
|
-
const tenant = 'abc234';
|
|
68
|
-
const requester = new api_requester_1.default({
|
|
69
|
-
server,
|
|
70
|
-
agent: null,
|
|
71
|
-
clientId: null,
|
|
72
|
-
refreshTokenCallback: () => null,
|
|
73
|
-
fetchOptions: null,
|
|
74
|
-
});
|
|
75
|
-
requester.setTenant(tenant);
|
|
76
|
-
expect(requester.getHeaders(null)['Wazo-Tenant']).toBe(tenant);
|
|
77
|
-
});
|
|
78
|
-
it('should not send a tenant if not present', () => {
|
|
79
|
-
const requester = new api_requester_1.default({
|
|
80
|
-
server,
|
|
81
|
-
agent: null,
|
|
82
|
-
clientId: null,
|
|
83
|
-
refreshTokenCallback: () => null,
|
|
84
|
-
fetchOptions: null,
|
|
85
|
-
});
|
|
86
|
-
expect(requester.getHeaders(null)).not.toHaveProperty('Wazo-Tenant');
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
describe('Calling fetch', () => {
|
|
90
|
-
it('should call fetch without body but query string in get method', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
91
|
-
Object.defineProperty(global, 'fetch', {
|
|
92
|
-
value: jest.fn(() => Promise.resolve({
|
|
93
|
-
json: () => Promise.resolve({}),
|
|
94
|
-
headers: {
|
|
95
|
-
get: () => '',
|
|
96
|
-
},
|
|
97
|
-
})),
|
|
98
|
-
});
|
|
99
|
-
yield new api_requester_1.default({
|
|
100
|
-
server,
|
|
101
|
-
agent: null,
|
|
102
|
-
clientId: null,
|
|
103
|
-
refreshTokenCallback: () => null,
|
|
104
|
-
fetchOptions: null,
|
|
105
|
-
}).call(path, method, body, {});
|
|
106
|
-
expect(global.fetch).toBeCalledWith(url, {
|
|
107
|
-
method: 'get',
|
|
108
|
-
body: null,
|
|
109
|
-
signal: expect.any(Object),
|
|
110
|
-
headers: {},
|
|
111
|
-
agent: null,
|
|
112
|
-
});
|
|
113
|
-
}));
|
|
114
|
-
});
|
|
115
|
-
describe('With a refresh token', () => {
|
|
116
|
-
it('should retry the call with a new token', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
117
|
-
let calls = 0;
|
|
118
|
-
Object.defineProperty(global, 'fetch', {
|
|
119
|
-
value: jest.fn(() => {
|
|
120
|
-
calls++;
|
|
121
|
-
return Promise.resolve({
|
|
122
|
-
headers: {
|
|
123
|
-
get: () => 'application/json',
|
|
124
|
-
},
|
|
125
|
-
status: calls === 1 ? 401 : 200,
|
|
126
|
-
json: () => Promise.resolve({}),
|
|
127
|
-
});
|
|
128
|
-
}),
|
|
129
|
-
});
|
|
130
|
-
const requester = new api_requester_1.default({
|
|
131
|
-
server,
|
|
132
|
-
agent: null,
|
|
133
|
-
clientId: null,
|
|
134
|
-
refreshTokenCallback: () => null,
|
|
135
|
-
fetchOptions: null,
|
|
136
|
-
});
|
|
137
|
-
requester.token = token;
|
|
138
|
-
requester.refreshTokenCallback = () => {
|
|
139
|
-
requester.token = newToken;
|
|
140
|
-
return new Promise(resolve => resolve(null));
|
|
141
|
-
};
|
|
142
|
-
const updatedHeaders = {
|
|
143
|
-
Accept: 'application/json',
|
|
144
|
-
'Content-Type': 'application/json',
|
|
145
|
-
'X-Auth-Token': newToken,
|
|
146
|
-
};
|
|
147
|
-
yield requester.call(path, method, body, null);
|
|
148
|
-
expect(global.fetch).toHaveBeenNthCalledWith(1, url, {
|
|
149
|
-
method: 'get',
|
|
150
|
-
body: null,
|
|
151
|
-
signal: expect.any(Object),
|
|
152
|
-
headers,
|
|
153
|
-
agent: null,
|
|
154
|
-
});
|
|
155
|
-
expect(global.fetch).toHaveBeenNthCalledWith(2, url, {
|
|
156
|
-
method: 'get',
|
|
157
|
-
body: null,
|
|
158
|
-
signal: expect.any(Object),
|
|
159
|
-
headers: updatedHeaders,
|
|
160
|
-
agent: null,
|
|
161
|
-
});
|
|
162
|
-
}));
|
|
163
|
-
});
|
|
164
|
-
describe('base64Encode', () => {
|
|
165
|
-
it('should encode a string using base64', () => {
|
|
166
|
-
const input = 'Hello World!';
|
|
167
|
-
const expectedOutput = 'SGVsbG8gV29ybGQh';
|
|
168
|
-
expect(api_requester_1.default.base64Encode(input)).toBe(expectedOutput);
|
|
169
|
-
});
|
|
170
|
-
it('should handle special characters', () => {
|
|
171
|
-
const input = 'éà$@€';
|
|
172
|
-
const expectedOutput = 'w6nDoCRA4oKs';
|
|
173
|
-
expect(api_requester_1.default.base64Encode(input)).toBe(expectedOutput);
|
|
174
|
-
});
|
|
175
|
-
it('should handle empty string', () => {
|
|
176
|
-
const input = '';
|
|
177
|
-
const expectedOutput = '';
|
|
178
|
-
expect(api_requester_1.default.base64Encode(input)).toBe(expectedOutput);
|
|
179
|
-
});
|
|
180
|
-
});
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const array_1 = require("../array");
|
|
4
|
-
describe('Finding last index of an array of object', () => {
|
|
5
|
-
const array = [{
|
|
6
|
-
a: 1,
|
|
7
|
-
b: 3,
|
|
8
|
-
}, {
|
|
9
|
-
a: 1,
|
|
10
|
-
b: 2,
|
|
11
|
-
}, {
|
|
12
|
-
a: 1,
|
|
13
|
-
b: 3,
|
|
14
|
-
}];
|
|
15
|
-
it('should compare non semver versions', () => {
|
|
16
|
-
expect((0, array_1.lastIndexOf)(array, elem => elem.a === 1 && elem.b === 3)).toBe(2);
|
|
17
|
-
expect((0, array_1.lastIndexOf)(array, elem => elem.a === 1)).toBe(2);
|
|
18
|
-
expect((0, array_1.lastIndexOf)(array, elem => elem.a === 4)).toBe(-1);
|
|
19
|
-
});
|
|
20
|
-
});
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const compare_version_1 = __importDefault(require("../compare-version"));
|
|
7
|
-
describe('Comparing versions', () => {
|
|
8
|
-
it('should compare non semver versions', () => {
|
|
9
|
-
expect((0, compare_version_1.default)('1.0', '1.0')).toBe(0);
|
|
10
|
-
expect((0, compare_version_1.default)('0.10', '0.9')).toBeGreaterThan(0);
|
|
11
|
-
expect((0, compare_version_1.default)('0.10', '0.11')).toBeLessThan(0);
|
|
12
|
-
expect((0, compare_version_1.default)('0.10', '0.1')).toBeGreaterThan(0);
|
|
13
|
-
expect((0, compare_version_1.default)('19.10', '19.1')).toBeGreaterThan(0);
|
|
14
|
-
});
|
|
15
|
-
});
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const object_1 = require("../object");
|
|
4
|
-
describe('object utils', () => {
|
|
5
|
-
describe('convertKeysFromCamelToUnderscore', () => {
|
|
6
|
-
it('should throw an error when input is not an object', () => {
|
|
7
|
-
const msg = 'Input is not an object';
|
|
8
|
-
// @ts-expect-error
|
|
9
|
-
expect(() => (0, object_1.convertKeysFromCamelToUnderscore)(true)).toThrow(msg);
|
|
10
|
-
// @ts-expect-error
|
|
11
|
-
expect(() => (0, object_1.convertKeysFromCamelToUnderscore)(null)).toThrow(msg);
|
|
12
|
-
// @ts-expect-error
|
|
13
|
-
expect(() => (0, object_1.convertKeysFromCamelToUnderscore)(undefined)).toThrow(msg);
|
|
14
|
-
expect(() => (0, object_1.convertKeysFromCamelToUnderscore)([])).toThrow(msg);
|
|
15
|
-
// @ts-expect-error
|
|
16
|
-
expect(() => (0, object_1.convertKeysFromCamelToUnderscore)('some-string')).toThrow(msg);
|
|
17
|
-
});
|
|
18
|
-
it('should convert camel-cased keys to underscore', () => {
|
|
19
|
-
let value = Math.random();
|
|
20
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
21
|
-
LoremIpsum: value,
|
|
22
|
-
})).toEqual({
|
|
23
|
-
lorem_ipsum: value,
|
|
24
|
-
});
|
|
25
|
-
value = Math.random();
|
|
26
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
27
|
-
loremIpsum: value,
|
|
28
|
-
})).toEqual({
|
|
29
|
-
lorem_ipsum: value,
|
|
30
|
-
});
|
|
31
|
-
value = Math.random();
|
|
32
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
33
|
-
'lorem-ipsum': value,
|
|
34
|
-
})).toEqual({
|
|
35
|
-
'lorem-ipsum': value,
|
|
36
|
-
});
|
|
37
|
-
value = Math.random();
|
|
38
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
39
|
-
L123: value,
|
|
40
|
-
})).toEqual({
|
|
41
|
-
l123: value,
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
it('should handle multi-leveled object', () => {
|
|
45
|
-
const value = Math.random();
|
|
46
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
47
|
-
LoremIpsum: {
|
|
48
|
-
DoloreSit: {
|
|
49
|
-
Amet: value,
|
|
50
|
-
},
|
|
51
|
-
regular: 'reg',
|
|
52
|
-
},
|
|
53
|
-
})).toEqual({
|
|
54
|
-
lorem_ipsum: {
|
|
55
|
-
dolore_sit: {
|
|
56
|
-
amet: value,
|
|
57
|
-
},
|
|
58
|
-
regular: 'reg',
|
|
59
|
-
},
|
|
60
|
-
});
|
|
61
|
-
expect((0, object_1.convertKeysFromCamelToUnderscore)({
|
|
62
|
-
LoremIpsum: {
|
|
63
|
-
DoloreSit: {
|
|
64
|
-
Amet: [value],
|
|
65
|
-
},
|
|
66
|
-
regular: ['something'],
|
|
67
|
-
},
|
|
68
|
-
})).toEqual({
|
|
69
|
-
lorem_ipsum: {
|
|
70
|
-
dolore_sit: {
|
|
71
|
-
amet: [value],
|
|
72
|
-
},
|
|
73
|
-
regular: ['something'],
|
|
74
|
-
},
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
});
|
|
78
|
-
});
|