vani-meeting-client 1.4.5 → 1.4.7

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.
@@ -267,6 +267,9 @@ var CommunicationHandler = /** @class */ (function () {
267
267
  Utility.deleteArrayObject(track, this.allTracks);
268
268
  Utility.deleteArrayObject(track, this.selfTracks);
269
269
  this.emitMessageToSource(VaniEvent.OnTrackEnded, track);
270
+ if (track.track) {
271
+ track.track.stop();
272
+ }
270
273
  };
271
274
  CommunicationHandler.prototype.resumeProducerOrConsumerForTrack = function (track) {
272
275
  var _a;
@@ -192,11 +192,17 @@ var UserMediaHandler = /** @class */ (function (_super) {
192
192
  });
193
193
  };
194
194
  UserMediaHandler.prototype.startLocalStream = function (isVideoRequired, isAudioRequired, shouldAddTrackImmediately, userMediaPayload) {
195
+ var _a;
195
196
  return __awaiter(this, void 0, void 0, function () {
196
197
  var audioInDevices, cameraDevices;
197
- return __generator(this, function (_a) {
198
- switch (_a.label) {
198
+ return __generator(this, function (_b) {
199
+ switch (_b.label) {
199
200
  case 0:
201
+ if (isVideoRequired === false && isAudioRequired === false) {
202
+ this.isVideoAudioFetchInProgress = false;
203
+ (_a = this.communicationHandler) === null || _a === void 0 ? void 0 : _a.emitMessageToSource(VaniEvent.OnPermissionApproved, {});
204
+ return [2 /*return*/];
205
+ }
200
206
  if (!userMediaPayload && this.userMediaPayload) {
201
207
  userMediaPayload = this.userMediaPayload;
202
208
  }
@@ -208,14 +214,14 @@ var UserMediaHandler = /** @class */ (function (_super) {
208
214
  if (!isVideoRequired) return [3 /*break*/, 2];
209
215
  return [4 /*yield*/, this.getDevice(GetDevicesType.VideoIn)];
210
216
  case 1:
211
- cameraDevices = _a.sent();
212
- _a.label = 2;
217
+ cameraDevices = _b.sent();
218
+ _b.label = 2;
213
219
  case 2:
214
220
  if (!isAudioRequired) return [3 /*break*/, 4];
215
221
  return [4 /*yield*/, this.getDevice(GetDevicesType.AudioIn)];
216
222
  case 3:
217
- audioInDevices = _a.sent();
218
- _a.label = 4;
223
+ audioInDevices = _b.sent();
224
+ _b.label = 4;
219
225
  case 4:
220
226
  isAudioRequired = (isAudioRequired && audioInDevices.length > 0);
221
227
  isVideoRequired = (isVideoRequired && cameraDevices.length > 0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vani-meeting-client",
3
- "version": "1.4.5",
3
+ "version": "1.4.7",
4
4
  "description": "Vani Meeting Clinet SDK",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",