@techsee/techsee-media-service 18.6.0 → 19.0.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 (141) hide show
  1. package/lib/LocalStreamManager.d.ts +1 -0
  2. package/lib/LocalStreamManager.d.ts.map +1 -1
  3. package/lib/LocalStreamManager.js +320 -441
  4. package/lib/LocalStreamManager.js.map +1 -1
  5. package/lib/MediaConstants.d.ts +1 -0
  6. package/lib/MediaConstants.d.ts.map +1 -1
  7. package/lib/MediaConstants.js +53 -95
  8. package/lib/MediaConstants.js.map +1 -1
  9. package/lib/MediaContracts.d.ts +1 -0
  10. package/lib/MediaContracts.d.ts.map +1 -1
  11. package/lib/MediaContracts.js +2 -5
  12. package/lib/MediaContracts.js.map +1 -1
  13. package/lib/MediaPublisher.d.ts +1 -0
  14. package/lib/MediaPublisher.d.ts.map +1 -1
  15. package/lib/MediaPublisher.js +36 -49
  16. package/lib/MediaPublisher.js.map +1 -1
  17. package/lib/MediaServiceBase.d.ts +1 -0
  18. package/lib/MediaServiceBase.d.ts.map +1 -1
  19. package/lib/MediaServiceBase.js +687 -937
  20. package/lib/MediaServiceBase.js.map +1 -1
  21. package/lib/MediaSession/MediaServer.d.ts +1 -0
  22. package/lib/MediaSession/MediaServer.d.ts.map +1 -1
  23. package/lib/MediaSession/MediaServer.js +372 -517
  24. package/lib/MediaSession/MediaServer.js.map +1 -1
  25. package/lib/MediaSession/MediaSessionBase.d.ts +1 -0
  26. package/lib/MediaSession/MediaSessionBase.d.ts.map +1 -1
  27. package/lib/MediaSession/MediaSessionBase.js +88 -127
  28. package/lib/MediaSession/MediaSessionBase.js.map +1 -1
  29. package/lib/MediaSession/SessionOpentok.d.ts +1 -0
  30. package/lib/MediaSession/SessionOpentok.d.ts.map +1 -1
  31. package/lib/MediaSession/SessionOpentok.js +357 -503
  32. package/lib/MediaSession/SessionOpentok.js.map +1 -1
  33. package/lib/MediaSession/SessionTurn.d.ts +1 -0
  34. package/lib/MediaSession/SessionTurn.d.ts.map +1 -1
  35. package/lib/MediaSession/SessionTurn.js +431 -613
  36. package/lib/MediaSession/SessionTurn.js.map +1 -1
  37. package/lib/MediaSession/TurnConstants.d.ts +1 -0
  38. package/lib/MediaSession/TurnConstants.d.ts.map +1 -1
  39. package/lib/MediaSession/TurnConstants.js +17 -32
  40. package/lib/MediaSession/TurnConstants.js.map +1 -1
  41. package/lib/MediaSubscriber.d.ts +1 -0
  42. package/lib/MediaSubscriber.d.ts.map +1 -1
  43. package/lib/MediaSubscriber.js +189 -245
  44. package/lib/MediaSubscriber.js.map +1 -1
  45. package/lib/MediaUtils/Compatibility.d.ts +1 -0
  46. package/lib/MediaUtils/Compatibility.d.ts.map +1 -1
  47. package/lib/MediaUtils/Compatibility.js +129 -283
  48. package/lib/MediaUtils/Compatibility.js.map +1 -1
  49. package/lib/MediaUtils/MediaDomUtils.d.ts +1 -0
  50. package/lib/MediaUtils/MediaDomUtils.d.ts.map +1 -1
  51. package/lib/MediaUtils/MediaDomUtils.js +184 -252
  52. package/lib/MediaUtils/MediaDomUtils.js.map +1 -1
  53. package/lib/MediaUtils/MediaTracer.d.ts +1 -0
  54. package/lib/MediaUtils/MediaTracer.d.ts.map +1 -1
  55. package/lib/MediaUtils/MediaTracer.js +3 -10
  56. package/lib/MediaUtils/MediaTracer.js.map +1 -1
  57. package/lib/MediaUtils/index.d.ts +1 -0
  58. package/lib/MediaUtils/index.d.ts.map +1 -1
  59. package/lib/MediaUtils/index.js +3 -13
  60. package/lib/MediaUtils/index.js.map +1 -1
  61. package/lib/MultiParty/DetectWebRtcService.d.ts +1 -0
  62. package/lib/MultiParty/DetectWebRtcService.d.ts.map +1 -1
  63. package/lib/MultiParty/DetectWebRtcService.js +92 -241
  64. package/lib/MultiParty/DetectWebRtcService.js.map +1 -1
  65. package/lib/MultiParty/MediaCapabilitiesService.d.ts +1 -0
  66. package/lib/MultiParty/MediaCapabilitiesService.d.ts.map +1 -1
  67. package/lib/MultiParty/MediaCapabilitiesService.js +143 -312
  68. package/lib/MultiParty/MediaCapabilitiesService.js.map +1 -1
  69. package/lib/MultiParty/MediaCapabilitiesUtils.d.ts +1 -0
  70. package/lib/MultiParty/MediaCapabilitiesUtils.d.ts.map +1 -1
  71. package/lib/MultiParty/MediaCapabilitiesUtils.js +95 -277
  72. package/lib/MultiParty/MediaCapabilitiesUtils.js.map +1 -1
  73. package/lib/MultiParty/MediaTracer.d.ts +1 -0
  74. package/lib/MultiParty/MediaTracer.d.ts.map +1 -1
  75. package/lib/MultiParty/MediaTracer.js +3 -10
  76. package/lib/MultiParty/MediaTracer.js.map +1 -1
  77. package/lib/MultiParty/MultiPartyService.d.ts +1 -0
  78. package/lib/MultiParty/MultiPartyService.d.ts.map +1 -1
  79. package/lib/MultiParty/MultiPartyService.js +24 -47
  80. package/lib/MultiParty/MultiPartyService.js.map +1 -1
  81. package/lib/MultiParty/MultiPartyServiceFactory.d.ts +2 -1
  82. package/lib/MultiParty/MultiPartyServiceFactory.d.ts.map +1 -1
  83. package/lib/MultiParty/MultiPartyServiceFactory.js +7 -15
  84. package/lib/MultiParty/MultiPartyServiceFactory.js.map +1 -1
  85. package/lib/MultiParty/MultipartyServiceEventTypes.d.ts +1 -0
  86. package/lib/MultiParty/MultipartyServiceEventTypes.d.ts.map +1 -1
  87. package/lib/MultiParty/MultipartyServiceEventTypes.js +11 -15
  88. package/lib/MultiParty/MultipartyServiceEventTypes.js.map +1 -1
  89. package/lib/MultiParty/index.d.ts +1 -0
  90. package/lib/MultiParty/index.d.ts.map +1 -1
  91. package/lib/MultiParty/index.js +15 -35
  92. package/lib/MultiParty/index.js.map +1 -1
  93. package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts +2 -1
  94. package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts.map +1 -1
  95. package/lib/MultiParty/opentok/OpentokMultiPartyService.js +457 -839
  96. package/lib/MultiParty/opentok/OpentokMultiPartyService.js.map +1 -1
  97. package/lib/MultiParty/opentok/OpentokPublisher.d.ts +1 -0
  98. package/lib/MultiParty/opentok/OpentokPublisher.d.ts.map +1 -1
  99. package/lib/MultiParty/opentok/OpentokPublisher.js +107 -269
  100. package/lib/MultiParty/opentok/OpentokPublisher.js.map +1 -1
  101. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts +1 -0
  102. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts.map +1 -1
  103. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js +34 -54
  104. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js.map +1 -1
  105. package/lib/MultiParty/opentok/OpentokScreenPublisher.d.ts +1 -0
  106. package/lib/MultiParty/opentok/OpentokScreenPublisher.d.ts.map +1 -1
  107. package/lib/MultiParty/opentok/OpentokScreenPublisher.js +40 -77
  108. package/lib/MultiParty/opentok/OpentokScreenPublisher.js.map +1 -1
  109. package/lib/MultiParty/opentok/OpentokSubscriber.d.ts +1 -0
  110. package/lib/MultiParty/opentok/OpentokSubscriber.d.ts.map +1 -1
  111. package/lib/MultiParty/opentok/OpentokSubscriber.js +20 -28
  112. package/lib/MultiParty/opentok/OpentokSubscriber.js.map +1 -1
  113. package/lib/MultiParty/opentok/OpentokVideoPublisher.d.ts +1 -0
  114. package/lib/MultiParty/opentok/OpentokVideoPublisher.d.ts.map +1 -1
  115. package/lib/MultiParty/opentok/OpentokVideoPublisher.js +150 -355
  116. package/lib/MultiParty/opentok/OpentokVideoPublisher.js.map +1 -1
  117. package/lib/MultiParty/opentok/trace.d.ts +1 -0
  118. package/lib/MultiParty/opentok/trace.d.ts.map +1 -1
  119. package/lib/MultiParty/opentok/trace.js +11 -24
  120. package/lib/MultiParty/opentok/trace.js.map +1 -1
  121. package/lib/MultiParty/types.d.ts +1 -0
  122. package/lib/MultiParty/types.d.ts.map +1 -1
  123. package/lib/MultiParty/types.js +2 -5
  124. package/lib/MultiParty/types.js.map +1 -1
  125. package/lib/MultiParty/utils.d.ts +1 -0
  126. package/lib/MultiParty/utils.d.ts.map +1 -1
  127. package/lib/MultiParty/utils.js +5 -15
  128. package/lib/MultiParty/utils.js.map +1 -1
  129. package/lib/TechseeMediaStream.d.ts +1 -0
  130. package/lib/TechseeMediaStream.d.ts.map +1 -1
  131. package/lib/TechseeMediaStream.js +53 -61
  132. package/lib/TechseeMediaStream.js.map +1 -1
  133. package/lib/qos/raw-qos.d.ts +29 -0
  134. package/lib/qos/raw-qos.d.ts.map +1 -0
  135. package/lib/qos/raw-qos.js +247 -382
  136. package/lib/qos/raw-qos.js.map +1 -1
  137. package/lib/webrtc-ie-shim.d.ts +4 -0
  138. package/lib/webrtc-ie-shim.d.ts.map +1 -0
  139. package/lib/webrtc-ie-shim.js +1999 -3454
  140. package/lib/webrtc-ie-shim.js.map +1 -1
  141. package/package.json +42 -45
@@ -1,376 +1,171 @@
1
1
  "use strict";
2
-
3
- var __extends = void 0 && (void 0).__extends || function () {
4
- var _extendStatics = function extendStatics(d, b) {
5
- _extendStatics = Object.setPrototypeOf || {
6
- __proto__: []
7
- } instanceof Array && function (d, b) {
8
- d.__proto__ = b;
9
- } || function (d, b) {
10
- for (var p in b) {
11
- if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
12
- }
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
13
8
  };
14
-
15
- return _extendStatics(d, b);
16
- };
17
-
18
- return function (d, b) {
19
- _extendStatics(d, b);
20
-
21
- function __() {
22
- this.constructor = d;
23
- }
24
-
25
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
26
- };
27
- }();
28
-
29
- var __assign = void 0 && (void 0).__assign || function () {
30
- __assign = Object.assign || function (t) {
31
- for (var s, i = 1, n = arguments.length; i < n; i++) {
32
- s = arguments[i];
33
-
34
- for (var p in s) {
35
- if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
36
- }
37
- }
38
-
39
- return t;
40
- };
41
-
42
- return __assign.apply(this, arguments);
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
43
27
  };
44
-
45
- var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
46
- function adopt(value) {
47
- return value instanceof P ? value : new P(function (resolve) {
48
- resolve(value);
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
49
35
  });
50
- }
51
-
52
- return new (P || (P = Promise))(function (resolve, reject) {
53
- function fulfilled(value) {
54
- try {
55
- step(generator.next(value));
56
- } catch (e) {
57
- reject(e);
58
- }
59
- }
60
-
61
- function rejected(value) {
62
- try {
63
- step(generator["throw"](value));
64
- } catch (e) {
65
- reject(e);
66
- }
67
- }
68
-
69
- function step(result) {
70
- result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
71
- }
72
-
73
- step((generator = generator.apply(thisArg, _arguments || [])).next());
74
- });
75
36
  };
76
-
77
- var __generator = void 0 && (void 0).__generator || function (thisArg, body) {
78
- var _ = {
79
- label: 0,
80
- sent: function sent() {
81
- if (t[0] & 1) throw t[1];
82
- return t[1];
83
- },
84
- trys: [],
85
- ops: []
86
- },
87
- f,
88
- y,
89
- t,
90
- g;
91
- return g = {
92
- next: verb(0),
93
- "throw": verb(1),
94
- "return": verb(2)
95
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
96
- return this;
97
- }), g;
98
-
99
- function verb(n) {
100
- return function (v) {
101
- return step([n, v]);
102
- };
103
- }
104
-
105
- function step(op) {
106
- if (f) throw new TypeError("Generator is already executing.");
107
-
108
- while (_) {
109
- try {
110
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
111
- if (y = 0, t) op = [op[0] & 2, t.value];
112
-
113
- switch (op[0]) {
114
- case 0:
115
- case 1:
116
- t = op;
117
- break;
118
-
119
- case 4:
120
- _.label++;
121
- return {
122
- value: op[1],
123
- done: false
124
- };
125
-
126
- case 5:
127
- _.label++;
128
- y = op[1];
129
- op = [0];
130
- continue;
131
-
132
- case 7:
133
- op = _.ops.pop();
134
-
135
- _.trys.pop();
136
-
137
- continue;
138
-
139
- default:
140
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
141
- _ = 0;
142
- continue;
143
- }
144
-
145
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
146
- _.label = op[1];
147
- break;
148
- }
149
-
150
- if (op[0] === 6 && _.label < t[1]) {
151
- _.label = t[1];
152
- t = op;
153
- break;
37
+ var __generator = (this && this.__generator) || function (thisArg, body) {
38
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
+ function verb(n) { return function (v) { return step([n, v]); }; }
41
+ function step(op) {
42
+ if (f) throw new TypeError("Generator is already executing.");
43
+ while (_) try {
44
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
+ if (y = 0, t) op = [op[0] & 2, t.value];
46
+ switch (op[0]) {
47
+ case 0: case 1: t = op; break;
48
+ case 4: _.label++; return { value: op[1], done: false };
49
+ case 5: _.label++; y = op[1]; op = [0]; continue;
50
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
+ default:
52
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
+ if (t[2]) _.ops.pop();
57
+ _.trys.pop(); continue;
154
58
  }
155
-
156
- if (t && _.label < t[2]) {
157
- _.label = t[2];
158
-
159
- _.ops.push(op);
160
-
161
- break;
162
- }
163
-
164
- if (t[2]) _.ops.pop();
165
-
166
- _.trys.pop();
167
-
168
- continue;
169
- }
170
-
171
- op = body.call(thisArg, _);
172
- } catch (e) {
173
- op = [6, e];
174
- y = 0;
175
- } finally {
176
- f = t = 0;
177
- }
59
+ op = body.call(thisArg, _);
60
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
178
62
  }
179
-
180
- if (op[0] & 5) throw op[1];
181
- return {
182
- value: op[0] ? op[1] : void 0,
183
- done: true
184
- };
185
- }
186
63
  };
187
-
188
- Object.defineProperty(exports, "__esModule", {
189
- value: true
190
- });
64
+ Object.defineProperty(exports, "__esModule", { value: true });
191
65
  exports.OpentokVideoPublisher = void 0;
192
-
193
66
  var utils_1 = require("../utils");
194
-
195
67
  var trace_1 = require("./trace");
196
-
197
68
  var OpentokPublisherEventMapper_1 = require("./OpentokPublisherEventMapper");
198
-
199
69
  var MediaConstants_1 = require("../../MediaConstants");
200
-
201
70
  var account_constants_1 = require("@techsee/techsee-common/lib/constants/account.constants");
202
-
203
71
  var OpentokPublisher_1 = require("./OpentokPublisher");
204
-
205
- var Compatibility_1 = require("../../MediaUtils/Compatibility"); // The preferred camera position to use for the video source
206
-
207
-
72
+ var Compatibility_1 = require("../../MediaUtils/Compatibility");
208
73
  var OpentokFacingMode;
209
-
210
74
  (function (OpentokFacingMode) {
211
- OpentokFacingMode["USER"] = "user";
212
- OpentokFacingMode["ENVIRONMENT"] = "environment";
75
+ OpentokFacingMode["USER"] = "user";
76
+ OpentokFacingMode["ENVIRONMENT"] = "environment";
213
77
  })(OpentokFacingMode || (OpentokFacingMode = {}));
214
-
215
78
  var OPENTOK_MIRRORED_CSS_CLASS = 'OT_mirrored';
216
-
217
- var OpentokVideoPublisher =
218
- /** @class */
219
- function (_super) {
220
- __extends(OpentokVideoPublisher, _super);
221
-
222
- function OpentokVideoPublisher(videoSettings, options, mediaCapabilitiesService) {
223
- var _this = _super.call(this, options, mediaCapabilitiesService) || this;
224
-
225
- _this.publishAudio = function (enabled) {
226
- return _this.currentPublisher.publishAudio(enabled);
227
- };
228
-
229
- _this.switchCamera = function () {
230
- return __awaiter(_this, void 0, void 0, function () {
231
- var newSelectedCamera, newVideoSourceId, err_1;
232
-
233
- var _a, _b, _c;
234
-
235
- return __generator(this, function (_d) {
236
- switch (_d.label) {
237
- case 0:
238
- if (!this.mediaCapabilitiesService.supportSwitchCamera) {
239
- throw new Error('Not Support switch camera');
240
- }
241
-
242
- _d.label = 1;
243
-
244
- case 1:
245
- _d.trys.push([1, 8,, 9]);
246
-
247
- newSelectedCamera = this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.BACK ? MediaConstants_1.MultiPartyCameraTypes.FRONT : MediaConstants_1.MultiPartyCameraTypes.BACK;
248
- newVideoSourceId = this.getVideoSourceId(newSelectedCamera);
249
- if (!this.currentPublisher.getVideoFilter()) return [3
250
- /*break*/
251
- , 4];
252
- return [4
253
- /*yield*/
254
- , this.currentPublisher.clearVideoFilter()];
255
-
256
- case 2:
257
- _d.sent();
258
-
259
- return [4
260
- /*yield*/
261
- , Compatibility_1.waitAfterClearingFilter()];
262
-
263
- case 3:
264
- _d.sent();
265
-
266
- _d.label = 4;
267
-
268
- case 4:
269
- return [4
270
- /*yield*/
271
- , this.currentPublisher.setVideoSource(newVideoSourceId)];
272
-
273
- case 5:
274
- _d.sent();
275
-
276
- if (utils_1.shouldMirrorCamera(!this.isMobile, newSelectedCamera)) {
277
- (_a = this.currentPublisher.element) === null || _a === void 0 ? void 0 : _a.classList.add(OPENTOK_MIRRORED_CSS_CLASS);
278
- } else {
279
- (_b = this.currentPublisher.element) === null || _b === void 0 ? void 0 : _b.classList.remove(OPENTOK_MIRRORED_CSS_CLASS);
280
- }
281
-
282
- this.selectedCamera = newSelectedCamera;
283
- this.setVideoFilterPublisherSetting();
284
- if (!(this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && ((_c = this.videoFilterPublisherSetting) === null || _c === void 0 ? void 0 : _c.videoFilter))) return [3
285
- /*break*/
286
- , 7];
287
- return [4
288
- /*yield*/
289
- , this.currentPublisher.applyVideoFilter(this.videoFilterPublisherSetting.videoFilter)];
290
-
291
- case 6:
292
- _d.sent();
293
-
294
- _d.label = 7;
295
-
296
- case 7:
297
- this.emit('cameraSourceChanged', OpentokPublisherEventMapper_1.createCameraSourceChangedEvent(this.currentPublisher.stream, this.selectedCamera, this.isMobile));
298
- return [3
299
- /*break*/
300
- , 9];
301
-
302
- case 8:
303
- err_1 = _d.sent();
304
- trace_1.traceError(JSON.stringify(err_1));
305
- throw err_1;
306
-
307
- case 9:
308
- return [2
309
- /*return*/
310
- ];
311
- }
79
+ var OpentokVideoPublisher = (function (_super) {
80
+ __extends(OpentokVideoPublisher, _super);
81
+ function OpentokVideoPublisher(videoSettings, options, mediaCapabilitiesService) {
82
+ var _this = _super.call(this, options, mediaCapabilitiesService) || this;
83
+ _this.publishAudio = function (enabled) { return _this.currentPublisher.publishAudio(enabled); };
84
+ _this.switchCamera = function () { return __awaiter(_this, void 0, void 0, function () {
85
+ var newSelectedCamera, newVideoSourceId, err_1;
86
+ var _a, _b, _c;
87
+ return __generator(this, function (_d) {
88
+ switch (_d.label) {
89
+ case 0:
90
+ if (!this.mediaCapabilitiesService.supportSwitchCamera) {
91
+ throw new Error('Not Support switch camera');
92
+ }
93
+ _d.label = 1;
94
+ case 1:
95
+ _d.trys.push([1, 8, , 9]);
96
+ newSelectedCamera = this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.BACK
97
+ ? MediaConstants_1.MultiPartyCameraTypes.FRONT
98
+ : MediaConstants_1.MultiPartyCameraTypes.BACK;
99
+ newVideoSourceId = this.getVideoSourceId(newSelectedCamera);
100
+ if (!this.currentPublisher.getVideoFilter()) return [3, 4];
101
+ return [4, this.currentPublisher.clearVideoFilter()];
102
+ case 2:
103
+ _d.sent();
104
+ return [4, (0, Compatibility_1.waitAfterClearingFilter)()];
105
+ case 3:
106
+ _d.sent();
107
+ _d.label = 4;
108
+ case 4: return [4, this.currentPublisher.setVideoSource(newVideoSourceId)];
109
+ case 5:
110
+ _d.sent();
111
+ if ((0, utils_1.shouldMirrorCamera)(!this.isMobile, newSelectedCamera)) {
112
+ (_a = this.currentPublisher.element) === null || _a === void 0 ? void 0 : _a.classList.add(OPENTOK_MIRRORED_CSS_CLASS);
113
+ }
114
+ else {
115
+ (_b = this.currentPublisher.element) === null || _b === void 0 ? void 0 : _b.classList.remove(OPENTOK_MIRRORED_CSS_CLASS);
116
+ }
117
+ this.selectedCamera = newSelectedCamera;
118
+ this.setVideoFilterPublisherSetting();
119
+ if (!(this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && ((_c = this.videoFilterPublisherSetting) === null || _c === void 0 ? void 0 : _c.videoFilter))) return [3, 7];
120
+ return [4, this.currentPublisher.applyVideoFilter(this.videoFilterPublisherSetting.videoFilter)];
121
+ case 6:
122
+ _d.sent();
123
+ _d.label = 7;
124
+ case 7:
125
+ this.emit('cameraSourceChanged', (0, OpentokPublisherEventMapper_1.createCameraSourceChangedEvent)(this.currentPublisher.stream, this.selectedCamera, this.isMobile));
126
+ return [3, 9];
127
+ case 8:
128
+ err_1 = _d.sent();
129
+ (0, trace_1.traceError)(JSON.stringify(err_1));
130
+ throw err_1;
131
+ case 9: return [2];
132
+ }
133
+ });
134
+ }); };
135
+ _this.getVideoSourceId = function (selectedCamera) {
136
+ (0, trace_1.traceInfo)('getVideoSourceId: ', selectedCamera);
137
+ return selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT
138
+ ? _this.mediaCapabilitiesService.frontCameraDeviceId
139
+ : _this.mediaCapabilitiesService.backCameraDeviceId;
140
+ };
141
+ _this.setVideoFilterPublisherSetting = function () {
142
+ _this.videoFilterPublisherSetting =
143
+ _this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && _this.videoFilter === account_constants_1.VideoFilterType.BLUR
144
+ ? { videoFilter: { type: account_constants_1.VideoFilterType.BLUR } }
145
+ : {};
146
+ };
147
+ _this.publishVideo = function (enabled) { return _this.currentPublisher.publishVideo(enabled); };
148
+ var selectedCamera = videoSettings.selectedCamera, cameraEnabled = videoSettings.cameraEnabled, startWithAudioMuted = videoSettings.startWithAudioMuted, videoFilter = videoSettings.videoFilter;
149
+ _this.selectedCamera = selectedCamera;
150
+ _this.videoFilter = videoFilter;
151
+ var participantId = options.participantId, backgroundImageURI = options.backgroundImageURI;
152
+ var videoSource = (!_this.isMobile && _this.getVideoSourceId(selectedCamera)) || undefined;
153
+ var facingMode = (_this.isMobile &&
154
+ !videoSource &&
155
+ (selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT
156
+ ? OpentokFacingMode.USER
157
+ : OpentokFacingMode.ENVIRONMENT)) ||
158
+ undefined;
159
+ _this.setVideoFilterPublisherSetting();
160
+ _this.currentPublisher = OT.initPublisher(participantId, __assign(__assign(__assign({}, _this.publisherProperties), { style: __assign(__assign({}, _this.publisherProperties.style), { archiveStatusDisplayMode: 'off', audioLevelDisplayMode: 'off', backgroundImageURI: backgroundImageURI }), publishAudio: !startWithAudioMuted, publishVideo: cameraEnabled, videoSource: videoSource, facingMode: facingMode, mirror: (0, utils_1.shouldMirrorCamera)(_this.isMobile, selectedCamera) }), _this.videoFilterPublisherSetting), trace_1.traceError);
161
+ _this.initializeEventHandlers();
162
+ _this.currentPublisher.on('accessDenied', function () {
163
+ (0, trace_1.traceInfo)('Publisher denied media permissions');
164
+ _this.emit('mediaDeviceAccessDenied', (0, OpentokPublisherEventMapper_1.createMediaAccessDeniedEvent)(true));
312
165
  });
313
- });
314
- };
315
-
316
- _this.getVideoSourceId = function (selectedCamera) {
317
- trace_1.traceInfo('getVideoSourceId: ', selectedCamera);
318
- return selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT ? _this.mediaCapabilitiesService.frontCameraDeviceId : _this.mediaCapabilitiesService.backCameraDeviceId;
319
- };
320
-
321
- _this.setVideoFilterPublisherSetting = function () {
322
- _this.videoFilterPublisherSetting = _this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && _this.videoFilter === account_constants_1.VideoFilterType.BLUR ? {
323
- videoFilter: {
324
- type: account_constants_1.VideoFilterType.BLUR
325
- }
326
- } : {};
327
- };
328
-
329
- _this.publishVideo = function (enabled) {
330
- return _this.currentPublisher.publishVideo(enabled);
331
- };
332
-
333
- var selectedCamera = videoSettings.selectedCamera,
334
- cameraEnabled = videoSettings.cameraEnabled,
335
- startWithAudioMuted = videoSettings.startWithAudioMuted,
336
- videoFilter = videoSettings.videoFilter;
337
- _this.selectedCamera = selectedCamera;
338
- _this.videoFilter = videoFilter;
339
- var participantId = options.participantId,
340
- backgroundImageURI = options.backgroundImageURI;
341
- var videoSource = !_this.isMobile && _this.getVideoSourceId(selectedCamera) || undefined;
342
- var facingMode = _this.isMobile && !videoSource && (selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT ? OpentokFacingMode.USER : OpentokFacingMode.ENVIRONMENT) || undefined;
343
-
344
- _this.setVideoFilterPublisherSetting();
345
-
346
- _this.currentPublisher = OT.initPublisher(participantId, __assign(__assign(__assign({}, _this.publisherProperties), {
347
- style: __assign(__assign({}, _this.publisherProperties.style), {
348
- archiveStatusDisplayMode: 'off',
349
- audioLevelDisplayMode: 'off',
350
- backgroundImageURI: backgroundImageURI
351
- }),
352
- publishAudio: !startWithAudioMuted,
353
- publishVideo: cameraEnabled,
354
- videoSource: videoSource,
355
- facingMode: facingMode,
356
- mirror: utils_1.shouldMirrorCamera(_this.isMobile, selectedCamera)
357
- }), _this.videoFilterPublisherSetting), trace_1.traceError);
358
-
359
- _this.initializeEventHandlers();
360
-
361
- _this.currentPublisher.on('accessDenied', function () {
362
- trace_1.traceInfo('Publisher denied media permissions');
363
-
364
- _this.emit('mediaDeviceAccessDenied', OpentokPublisherEventMapper_1.createMediaAccessDeniedEvent(true));
365
- });
366
-
367
- return _this;
368
- }
369
-
370
- return OpentokVideoPublisher;
371
- }(OpentokPublisher_1.OpentokPublisher);
372
-
166
+ return _this;
167
+ }
168
+ return OpentokVideoPublisher;
169
+ }(OpentokPublisher_1.OpentokPublisher));
373
170
  exports.OpentokVideoPublisher = OpentokVideoPublisher;
374
- //# sourceMappingURL=OpentokVideoPublisher.js.map
375
-
376
- //# sourceMappingURL=OpentokVideoPublisher.js.map
171
+ //# sourceMappingURL=OpentokVideoPublisher.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["MultiParty/opentok/OpentokVideoPublisher.js","../src/MultiParty/opentok/OpentokVideoPublisher.ts"],"names":["__extends","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","__generator","body","_","label","sent","trys","ops","f","y","g","verb","Symbol","iterator","v","op","TypeError","pop","push","defineProperty","exports","OpentokVideoPublisher","utils_1","require","trace_1","OpentokPublisherEventMapper_1","MediaConstants_1","account_constants_1","OpentokPublisher_1","Compatibility_1","OpentokFacingMode","OPENTOK_MIRRORED_CSS_CLASS","_super","videoSettings","options","mediaCapabilitiesService","_this","publishAudio","enabled","currentPublisher","switchCamera","newSelectedCamera","newVideoSourceId","err_1","_a","_b","_c","_d","supportSwitchCamera","Error","selectedCamera","MultiPartyCameraTypes","BACK","FRONT","getVideoSourceId","getVideoFilter","clearVideoFilter","waitAfterClearingFilter","setVideoSource","shouldMirrorCamera","isMobile","element","classList","add","remove","setVideoFilterPublisherSetting","videoFilterPublisherSetting","videoFilter","applyVideoFilter","emit","createCameraSourceChangedEvent","stream","traceError","JSON","stringify","traceInfo","frontCameraDeviceId","backCameraDeviceId","VideoFilterType","BLUR","type","publishVideo","cameraEnabled","startWithAudioMuted","participantId","backgroundImageURI","videoSource","undefined","facingMode","USER","ENVIRONMENT","OT","initPublisher","publisherProperties","style","archiveStatusDisplayMode","audioLevelDisplayMode","mirror","initializeEventHandlers","on","createMediaAccessDeniedEvent","OpentokPublisher"],"mappings":"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","file":"OpentokVideoPublisher.js","sourcesContent":["\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.OpentokVideoPublisher = void 0;\nvar utils_1 = require(\"../utils\");\nvar trace_1 = require(\"./trace\");\nvar OpentokPublisherEventMapper_1 = require(\"./OpentokPublisherEventMapper\");\nvar MediaConstants_1 = require(\"../../MediaConstants\");\nvar account_constants_1 = require(\"@techsee/techsee-common/lib/constants/account.constants\");\nvar OpentokPublisher_1 = require(\"./OpentokPublisher\");\nvar Compatibility_1 = require(\"../../MediaUtils/Compatibility\");\n// The preferred camera position to use for the video source\nvar OpentokFacingMode;\n(function (OpentokFacingMode) {\n OpentokFacingMode[\"USER\"] = \"user\";\n OpentokFacingMode[\"ENVIRONMENT\"] = \"environment\";\n})(OpentokFacingMode || (OpentokFacingMode = {}));\nvar OPENTOK_MIRRORED_CSS_CLASS = 'OT_mirrored';\nvar OpentokVideoPublisher = /** @class */ (function (_super) {\n __extends(OpentokVideoPublisher, _super);\n function OpentokVideoPublisher(videoSettings, options, mediaCapabilitiesService) {\n var _this = _super.call(this, options, mediaCapabilitiesService) || this;\n _this.publishAudio = function (enabled) { return _this.currentPublisher.publishAudio(enabled); };\n _this.switchCamera = function () { return __awaiter(_this, void 0, void 0, function () {\n var newSelectedCamera, newVideoSourceId, err_1;\n var _a, _b, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n if (!this.mediaCapabilitiesService.supportSwitchCamera) {\n throw new Error('Not Support switch camera');\n }\n _d.label = 1;\n case 1:\n _d.trys.push([1, 8, , 9]);\n newSelectedCamera = this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.BACK\n ? MediaConstants_1.MultiPartyCameraTypes.FRONT\n : MediaConstants_1.MultiPartyCameraTypes.BACK;\n newVideoSourceId = this.getVideoSourceId(newSelectedCamera);\n if (!this.currentPublisher.getVideoFilter()) return [3 /*break*/, 4];\n return [4 /*yield*/, this.currentPublisher.clearVideoFilter()];\n case 2:\n _d.sent();\n return [4 /*yield*/, Compatibility_1.waitAfterClearingFilter()];\n case 3:\n _d.sent();\n _d.label = 4;\n case 4: return [4 /*yield*/, this.currentPublisher.setVideoSource(newVideoSourceId)];\n case 5:\n _d.sent();\n if (utils_1.shouldMirrorCamera(!this.isMobile, newSelectedCamera)) {\n (_a = this.currentPublisher.element) === null || _a === void 0 ? void 0 : _a.classList.add(OPENTOK_MIRRORED_CSS_CLASS);\n }\n else {\n (_b = this.currentPublisher.element) === null || _b === void 0 ? void 0 : _b.classList.remove(OPENTOK_MIRRORED_CSS_CLASS);\n }\n this.selectedCamera = newSelectedCamera;\n this.setVideoFilterPublisherSetting();\n if (!(this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && ((_c = this.videoFilterPublisherSetting) === null || _c === void 0 ? void 0 : _c.videoFilter))) return [3 /*break*/, 7];\n return [4 /*yield*/, this.currentPublisher.applyVideoFilter(this.videoFilterPublisherSetting.videoFilter)];\n case 6:\n _d.sent();\n _d.label = 7;\n case 7:\n this.emit('cameraSourceChanged', OpentokPublisherEventMapper_1.createCameraSourceChangedEvent(this.currentPublisher.stream, this.selectedCamera, this.isMobile));\n return [3 /*break*/, 9];\n case 8:\n err_1 = _d.sent();\n trace_1.traceError(JSON.stringify(err_1));\n throw err_1;\n case 9: return [2 /*return*/];\n }\n });\n }); };\n _this.getVideoSourceId = function (selectedCamera) {\n trace_1.traceInfo('getVideoSourceId: ', selectedCamera);\n return selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT\n ? _this.mediaCapabilitiesService.frontCameraDeviceId\n : _this.mediaCapabilitiesService.backCameraDeviceId;\n };\n _this.setVideoFilterPublisherSetting = function () {\n _this.videoFilterPublisherSetting =\n _this.selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT && _this.videoFilter === account_constants_1.VideoFilterType.BLUR\n ? { videoFilter: { type: account_constants_1.VideoFilterType.BLUR } }\n : {};\n };\n _this.publishVideo = function (enabled) { return _this.currentPublisher.publishVideo(enabled); };\n var selectedCamera = videoSettings.selectedCamera, cameraEnabled = videoSettings.cameraEnabled, startWithAudioMuted = videoSettings.startWithAudioMuted, videoFilter = videoSettings.videoFilter;\n _this.selectedCamera = selectedCamera;\n _this.videoFilter = videoFilter;\n var participantId = options.participantId, backgroundImageURI = options.backgroundImageURI;\n var videoSource = (!_this.isMobile && _this.getVideoSourceId(selectedCamera)) || undefined;\n var facingMode = (_this.isMobile &&\n !videoSource &&\n (selectedCamera === MediaConstants_1.MultiPartyCameraTypes.FRONT\n ? OpentokFacingMode.USER\n : OpentokFacingMode.ENVIRONMENT)) ||\n undefined;\n _this.setVideoFilterPublisherSetting();\n _this.currentPublisher = OT.initPublisher(participantId, __assign(__assign(__assign({}, _this.publisherProperties), { style: __assign(__assign({}, _this.publisherProperties.style), { archiveStatusDisplayMode: 'off', audioLevelDisplayMode: 'off', backgroundImageURI: backgroundImageURI }), publishAudio: !startWithAudioMuted, publishVideo: cameraEnabled, videoSource: videoSource,\n facingMode: facingMode, mirror: utils_1.shouldMirrorCamera(_this.isMobile, selectedCamera) }), _this.videoFilterPublisherSetting), trace_1.traceError);\n _this.initializeEventHandlers();\n _this.currentPublisher.on('accessDenied', function () {\n trace_1.traceInfo('Publisher denied media permissions');\n _this.emit('mediaDeviceAccessDenied', OpentokPublisherEventMapper_1.createMediaAccessDeniedEvent(true));\n });\n return _this;\n }\n return OpentokVideoPublisher;\n}(OpentokPublisher_1.OpentokPublisher));\nexports.OpentokVideoPublisher = OpentokVideoPublisher;\n","import {VideoSettings} from '../types';\nimport {shouldMirrorCamera} from '../utils';\nimport {traceError, traceInfo} from './trace';\nimport {createCameraSourceChangedEvent, createMediaAccessDeniedEvent} from './OpentokPublisherEventMapper';\nimport {MultiPartyCameraTypes} from '../../MediaConstants';\nimport {VideoFilterType} from '@techsee/techsee-common/lib/constants/account.constants';\nimport {IMediaCapablities, IOpentokPublisher, OpentokPublisher, OpentokPublisherOptions} from './OpentokPublisher';\nimport {waitAfterClearingFilter} from '../../MediaUtils/Compatibility';\n// The preferred camera position to use for the video source\nenum OpentokFacingMode {\n USER = 'user',\n ENVIRONMENT = 'environment'\n}\n\nconst OPENTOK_MIRRORED_CSS_CLASS = 'OT_mirrored';\n\nexport interface IOpentokVideoPublisher extends IOpentokPublisher {\n publishAudio: (enabled: boolean) => void;\n switchCamera: () => Promise<void>;\n}\nexport class OpentokVideoPublisher extends OpentokPublisher implements IOpentokVideoPublisher {\n protected currentPublisher: OT.Publisher;\n private videoFilter?: VideoFilterType;\n private videoFilterPublisherSetting?: {videoFilter?: {type: VideoFilterType}};\n\n constructor(\n videoSettings: VideoSettings,\n options: OpentokPublisherOptions,\n mediaCapabilitiesService: IMediaCapablities\n ) {\n super(options, mediaCapabilitiesService);\n\n const {selectedCamera, cameraEnabled, startWithAudioMuted, videoFilter} = videoSettings;\n\n this.selectedCamera = selectedCamera;\n this.videoFilter = videoFilter;\n\n const {participantId, backgroundImageURI} = options;\n const videoSource = (!this.isMobile && this.getVideoSourceId(selectedCamera)) || undefined;\n const facingMode =\n (this.isMobile &&\n !videoSource &&\n (selectedCamera === MultiPartyCameraTypes.FRONT\n ? OpentokFacingMode.USER\n : OpentokFacingMode.ENVIRONMENT)) ||\n undefined;\n\n this.setVideoFilterPublisherSetting();\n this.currentPublisher = OT.initPublisher(\n participantId,\n {\n ...this.publisherProperties,\n style: {\n ...this.publisherProperties.style,\n archiveStatusDisplayMode: 'off',\n audioLevelDisplayMode: 'off',\n backgroundImageURI\n },\n publishAudio: !startWithAudioMuted,\n publishVideo: cameraEnabled,\n videoSource,\n facingMode,\n mirror: shouldMirrorCamera(this.isMobile, selectedCamera),\n ...this.videoFilterPublisherSetting\n },\n traceError\n );\n\n this.initializeEventHandlers();\n this.currentPublisher.on('accessDenied', () => {\n traceInfo('Publisher denied media permissions');\n\n this.emit('mediaDeviceAccessDenied', createMediaAccessDeniedEvent(true));\n });\n }\n\n public publishAudio = (enabled: boolean): void => this.currentPublisher.publishAudio(enabled);\n\n public switchCamera = async (): Promise<void> => {\n if (!this.mediaCapabilitiesService.supportSwitchCamera) {\n throw new Error('Not Support switch camera');\n }\n\n try {\n const newSelectedCamera =\n this.selectedCamera === MultiPartyCameraTypes.BACK\n ? MultiPartyCameraTypes.FRONT\n : MultiPartyCameraTypes.BACK;\n const newVideoSourceId = this.getVideoSourceId(newSelectedCamera);\n\n if (this.currentPublisher.getVideoFilter()) {\n await this.currentPublisher.clearVideoFilter();\n await waitAfterClearingFilter();\n }\n await this.currentPublisher.setVideoSource(newVideoSourceId);\n\n if (shouldMirrorCamera(!this.isMobile, newSelectedCamera)) {\n this.currentPublisher.element?.classList.add(OPENTOK_MIRRORED_CSS_CLASS);\n } else {\n this.currentPublisher.element?.classList.remove(OPENTOK_MIRRORED_CSS_CLASS);\n }\n\n this.selectedCamera = newSelectedCamera;\n this.setVideoFilterPublisherSetting();\n\n if (this.selectedCamera === MultiPartyCameraTypes.FRONT && this.videoFilterPublisherSetting?.videoFilter) {\n await this.currentPublisher.applyVideoFilter(this.videoFilterPublisherSetting.videoFilter);\n }\n this.emit(\n 'cameraSourceChanged',\n createCameraSourceChangedEvent(this.currentPublisher.stream, this.selectedCamera, this.isMobile)\n );\n } catch (err) {\n traceError(JSON.stringify(err));\n throw err;\n }\n };\n\n private getVideoSourceId = (selectedCamera: MultiPartyCameraTypes): string => {\n traceInfo('getVideoSourceId: ', selectedCamera);\n\n return selectedCamera === MultiPartyCameraTypes.FRONT\n ? this.mediaCapabilitiesService.frontCameraDeviceId\n : this.mediaCapabilitiesService.backCameraDeviceId;\n };\n\n private setVideoFilterPublisherSetting = (): void => {\n this.videoFilterPublisherSetting =\n this.selectedCamera === MultiPartyCameraTypes.FRONT && this.videoFilter === VideoFilterType.BLUR\n ? {videoFilter: {type: VideoFilterType.BLUR}}\n : {};\n };\n\n public publishVideo = (enabled: boolean): void => this.currentPublisher.publishVideo(enabled);\n}\n"]}
1
+ {"version":3,"file":"OpentokVideoPublisher.js","sourceRoot":"","sources":["../../../src/MultiParty/opentok/OpentokVideoPublisher.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export declare const traceError: (error?: any) => void;
2
2
  export declare const traceInfo: (...params: any) => void;
3
+ //# sourceMappingURL=trace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MultiParty/opentok/trace.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,WAAY,GAAG,KAAG,IAExC,CAAC;AAEF,eAAO,MAAM,SAAS,cAAe,GAAG,KAAG,IAE1C,CAAC","file":"trace.d.ts","sourcesContent":["import {getMediaTracer} from '../MediaTracer';\n\nconst trace = getMediaTracer('OpentokMultipartyService');\n\nexport const traceError = (error?: any): void => {\n trace.error(JSON.stringify(error));\n};\n\nexport const traceInfo = (...params: any): void => {\n trace.info(params);\n};\n"]}
1
+ {"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/MultiParty/opentok/trace.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,WAAY,GAAG,KAAG,IAExC,CAAC;AAEF,eAAO,MAAM,SAAS,cAAe,GAAG,KAAG,IAE1C,CAAC"}