@techsee/techsee-media-service 18.6.0 → 18.6.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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MultiParty/MediaCapabilitiesService.ts"],"names":[],"mappings":"AAYA,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAClD,OAAO,CAAC,MAAM,CAAC,WAAW,CAAoC;IAE9D,OAAO,CAAC,iBAAiB,CAAyC;IAElE,OAAO,CAAC,WAAW,CAGjB;IAEF,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,OAAO;WAEa,WAAW,IAAI,OAAO,CAAC,wBAAwB,CAAC;YAatD,IAAI;IAUX,SAAS,IAAI,OAAO;IAIpB,aAAa,IAAI,OAAO;IAQxB,SAAS,IAAI,OAAO;IAId,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAchE,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;CACJ","file":"MediaCapabilitiesService.d.ts","sourcesContent":["import {TsEnvironmentDetect} from '@techsee/techsee-common/lib/helpers/ts-environment-detect';\nimport {getMediaTracer} from './MediaTracer';\nimport {defaultWebRtcResult, DetectWebRtcService} from './DetectWebRtcService';\nimport {ClientWebRtcInfo} from './types';\n\nconst trace = getMediaTracer('MediaCapabilitiesService');\n\ntype DevicesList = {\n video: MediaDeviceInfo[];\n audio: MediaDeviceInfo[];\n};\n\nexport class MediaCapabilitiesService {\n // eslint-disable-next-line no-use-before-define\n private static instance: MediaCapabilitiesService;\n private static initPromise: Promise<void> = Promise.resolve();\n\n private webRtcSupportInfo: ClientWebRtcInfo = defaultWebRtcResult;\n\n private devicesList: DevicesList = {\n video: [],\n audio: []\n };\n\n private environmentService = new TsEnvironmentDetect();\n\n private constructor() {}\n\n public static async getInstance(): Promise<MediaCapabilitiesService> {\n await this.initPromise;\n\n if (!this.instance) {\n this.instance = new MediaCapabilitiesService();\n this.initPromise = this.instance.init();\n\n await this.initPromise;\n }\n\n return this.instance;\n }\n\n private async init(): Promise<void> {\n const detectWebRtcService = await DetectWebRtcService.get();\n\n this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();\n\n await this.updateDevicesList();\n\n trace.info('initialize media capabilities helper successfully');\n }\n\n public hasCamera(): boolean {\n return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;\n }\n\n public hasMicrophone(): boolean {\n const userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;\n\n return this.environmentService.isIOS()\n ? userMediaSupported\n : this.devicesList.audio.length > 0 && userMediaSupported;\n }\n\n public hasWebRTC(): boolean {\n return this.webRtcSupportInfo.isWebRTCSupported;\n }\n\n public async updateDevicesList(reverse?: boolean): Promise<void> {\n const localDevicesList = this.webRtcSupportInfo.isWebRTCSupported\n ? (await navigator?.mediaDevices?.enumerateDevices()) || []\n : [];\n\n this.devicesList = {\n video: localDevicesList.filter((device) => device.kind.toLowerCase() === 'videoinput'),\n audio: localDevicesList.filter((device) => device.kind.toLowerCase() === 'audioinput')\n };\n if (reverse) {\n this.devicesList.video.reverse();\n }\n }\n\n public get supportSwitchCamera(): boolean {\n return this.devicesList.video.length > 1;\n }\n\n public get backCameraDeviceId(): string {\n return this.devicesList.video[this.devicesList.video.length - 1]?.deviceId || '';\n }\n\n public get frontCameraDeviceId(): string {\n return this.devicesList.video[0]?.deviceId || '';\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/MultiParty/MediaCapabilitiesService.ts"],"names":[],"mappings":"AAYA,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAClD,OAAO,CAAC,MAAM,CAAC,WAAW,CAAoC;IAE9D,OAAO,CAAC,iBAAiB,CAAyC;IAElE,OAAO,CAAC,WAAW,CAGjB;IAEF,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,OAAO;WAEa,WAAW,IAAI,OAAO,CAAC,wBAAwB,CAAC;YAatD,IAAI;IAUX,SAAS,IAAI,OAAO;IAIpB,aAAa,IAAI,OAAO;IAQxB,SAAS,IAAI,OAAO;IAId,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAchE,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;CACJ","file":"MediaCapabilitiesService.d.ts","sourcesContent":["import {TsEnvironmentDetect} from '@techsee/techsee-common/lib/helpers/ts-environment-detect';\nimport {getMediaTracer} from './MediaTracer';\nimport {defaultWebRtcResult, DetectWebRtcService} from './DetectWebRtcService';\nimport {ClientWebRtcInfo} from './types';\n\nconst trace = getMediaTracer('MediaCapabilitiesService');\n\ntype DevicesList = {\n video: MediaDeviceInfo[];\n audio: MediaDeviceInfo[];\n};\n\nexport class MediaCapabilitiesService {\n // eslint-disable-next-line no-use-before-define\n private static instance: MediaCapabilitiesService;\n private static initPromise: Promise<void> = Promise.resolve();\n\n private webRtcSupportInfo: ClientWebRtcInfo = defaultWebRtcResult;\n\n private devicesList: DevicesList = {\n video: [],\n audio: []\n };\n\n private environmentService = new TsEnvironmentDetect();\n\n private constructor() {}\n\n public static async getInstance(): Promise<MediaCapabilitiesService> {\n await this.initPromise;\n\n if (!this.instance) {\n this.instance = new MediaCapabilitiesService();\n this.initPromise = this.instance.init();\n\n await this.initPromise;\n }\n\n return this.instance;\n }\n\n private async init(): Promise<void> {\n const detectWebRtcService = await DetectWebRtcService.get();\n\n this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();\n\n await this.updateDevicesList();\n\n trace.info('initialize media capabilities helper successfully');\n }\n\n public hasCamera(): boolean {\n return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;\n }\n\n public hasMicrophone(): boolean {\n const userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;\n\n return this.environmentService.isIOS()\n ? userMediaSupported\n : this.devicesList.audio.length > 0 && userMediaSupported;\n }\n\n public hasWebRTC(): boolean {\n return this.webRtcSupportInfo.isWebRTCSupported;\n }\n\n public async updateDevicesList(reverse?: boolean): Promise<void> {\n const localDevicesList = this.webRtcSupportInfo.isWebRTCSupported\n ? (await navigator?.mediaDevices?.enumerateDevices()) || []\n : [];\n\n this.devicesList = {\n video: localDevicesList.filter((device) => device.kind.toLowerCase() === 'videoinput'),\n audio: localDevicesList.filter((device) => device.kind.toLowerCase() === 'audioinput')\n };\n if (reverse) {\n this.devicesList.video.reverse();\n }\n }\n\n public get supportSwitchCamera(): boolean {\n return this.devicesList.video.length > 1 && !this.environmentService.isDesktop();\n }\n\n public get backCameraDeviceId(): string {\n return this.devicesList.video[this.devicesList.video.length - 1]?.deviceId || '';\n }\n\n public get frontCameraDeviceId(): string {\n return this.devicesList.video[0]?.deviceId || '';\n }\n}\n"]}
@@ -296,7 +296,7 @@ function () {
296
296
 
297
297
  Object.defineProperty(MediaCapabilitiesService.prototype, "supportSwitchCamera", {
298
298
  get: function get() {
299
- return this.devicesList.video.length > 1;
299
+ return this.devicesList.video.length > 1 && !this.environmentService.isDesktop();
300
300
  },
301
301
  enumerable: false,
302
302
  configurable: true
@@ -1 +1 @@
1
- {"version":3,"sources":["MultiParty/MediaCapabilitiesService.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","_","label","sent","t","trys","ops","f","y","g","verb","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","Object","defineProperty","exports","MediaCapabilitiesService","ts_environment_detect_1","require","MediaTracer_1","DetectWebRtcService_1","trace","getMediaTracer","webRtcSupportInfo","defaultWebRtcResult","devicesList","video","audio","environmentService","TsEnvironmentDetect","getInstance","_a","initPromise","instance","init","prototype","detectWebRtcService","DetectWebRtcService","get","getWebRtcInfo","updateDevicesList","info","hasCamera","isGetUserMediaSupported","hasMicrophone","userMediaSupported","isIOS","hasWebRTC","isWebRTCSupported","reverse","localDevicesList","_b","_c","navigator","mediaDevices","enumerateDevices","filter","device","kind","toLowerCase","enumerable","configurable","deviceId"],"mappings":"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","file":"MediaCapabilitiesService.js","sourcesContent":["\"use strict\";\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.MediaCapabilitiesService = void 0;\nvar ts_environment_detect_1 = require(\"@techsee/techsee-common/lib/helpers/ts-environment-detect\");\nvar MediaTracer_1 = require(\"./MediaTracer\");\nvar DetectWebRtcService_1 = require(\"./DetectWebRtcService\");\nvar trace = MediaTracer_1.getMediaTracer('MediaCapabilitiesService');\nvar MediaCapabilitiesService = /** @class */ (function () {\n function MediaCapabilitiesService() {\n this.webRtcSupportInfo = DetectWebRtcService_1.defaultWebRtcResult;\n this.devicesList = {\n video: [],\n audio: []\n };\n this.environmentService = new ts_environment_detect_1.TsEnvironmentDetect();\n }\n MediaCapabilitiesService.getInstance = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.initPromise];\n case 1:\n _a.sent();\n if (!!this.instance) return [3 /*break*/, 3];\n this.instance = new MediaCapabilitiesService();\n this.initPromise = this.instance.init();\n return [4 /*yield*/, this.initPromise];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3: return [2 /*return*/, this.instance];\n }\n });\n });\n };\n MediaCapabilitiesService.prototype.init = function () {\n return __awaiter(this, void 0, void 0, function () {\n var detectWebRtcService;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, DetectWebRtcService_1.DetectWebRtcService.get()];\n case 1:\n detectWebRtcService = _a.sent();\n this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();\n return [4 /*yield*/, this.updateDevicesList()];\n case 2:\n _a.sent();\n trace.info('initialize media capabilities helper successfully');\n return [2 /*return*/];\n }\n });\n });\n };\n MediaCapabilitiesService.prototype.hasCamera = function () {\n return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;\n };\n MediaCapabilitiesService.prototype.hasMicrophone = function () {\n var userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;\n return this.environmentService.isIOS()\n ? userMediaSupported\n : this.devicesList.audio.length > 0 && userMediaSupported;\n };\n MediaCapabilitiesService.prototype.hasWebRTC = function () {\n return this.webRtcSupportInfo.isWebRTCSupported;\n };\n MediaCapabilitiesService.prototype.updateDevicesList = function (reverse) {\n var _a;\n return __awaiter(this, void 0, void 0, function () {\n var localDevicesList, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (!this.webRtcSupportInfo.isWebRTCSupported) return [3 /*break*/, 2];\n return [4 /*yield*/, ((_a = navigator === null || navigator === void 0 ? void 0 : navigator.mediaDevices) === null || _a === void 0 ? void 0 : _a.enumerateDevices())];\n case 1:\n _b = (_c.sent()) || [];\n return [3 /*break*/, 3];\n case 2:\n _b = [];\n _c.label = 3;\n case 3:\n localDevicesList = _b;\n this.devicesList = {\n video: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'videoinput'; }),\n audio: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'audioinput'; })\n };\n if (reverse) {\n this.devicesList.video.reverse();\n }\n return [2 /*return*/];\n }\n });\n });\n };\n Object.defineProperty(MediaCapabilitiesService.prototype, \"supportSwitchCamera\", {\n get: function () {\n return this.devicesList.video.length > 1;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"backCameraDeviceId\", {\n get: function () {\n var _a;\n return ((_a = this.devicesList.video[this.devicesList.video.length - 1]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"frontCameraDeviceId\", {\n get: function () {\n var _a;\n return ((_a = this.devicesList.video[0]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';\n },\n enumerable: false,\n configurable: true\n });\n MediaCapabilitiesService.initPromise = Promise.resolve();\n return MediaCapabilitiesService;\n}());\nexports.MediaCapabilitiesService = MediaCapabilitiesService;\n\n//# sourceMappingURL=MediaCapabilitiesService.js.map\n"]}
1
+ {"version":3,"sources":["MultiParty/MediaCapabilitiesService.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","_","label","sent","t","trys","ops","f","y","g","verb","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","Object","defineProperty","exports","MediaCapabilitiesService","ts_environment_detect_1","require","MediaTracer_1","DetectWebRtcService_1","trace","getMediaTracer","webRtcSupportInfo","defaultWebRtcResult","devicesList","video","audio","environmentService","TsEnvironmentDetect","getInstance","_a","initPromise","instance","init","prototype","detectWebRtcService","DetectWebRtcService","get","getWebRtcInfo","updateDevicesList","info","hasCamera","isGetUserMediaSupported","hasMicrophone","userMediaSupported","isIOS","hasWebRTC","isWebRTCSupported","reverse","localDevicesList","_b","_c","navigator","mediaDevices","enumerateDevices","filter","device","kind","toLowerCase","isDesktop","enumerable","configurable","deviceId"],"mappings":"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","file":"MediaCapabilitiesService.js","sourcesContent":["\"use strict\";\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.MediaCapabilitiesService = void 0;\nvar ts_environment_detect_1 = require(\"@techsee/techsee-common/lib/helpers/ts-environment-detect\");\nvar MediaTracer_1 = require(\"./MediaTracer\");\nvar DetectWebRtcService_1 = require(\"./DetectWebRtcService\");\nvar trace = MediaTracer_1.getMediaTracer('MediaCapabilitiesService');\nvar MediaCapabilitiesService = /** @class */ (function () {\n function MediaCapabilitiesService() {\n this.webRtcSupportInfo = DetectWebRtcService_1.defaultWebRtcResult;\n this.devicesList = {\n video: [],\n audio: []\n };\n this.environmentService = new ts_environment_detect_1.TsEnvironmentDetect();\n }\n MediaCapabilitiesService.getInstance = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.initPromise];\n case 1:\n _a.sent();\n if (!!this.instance) return [3 /*break*/, 3];\n this.instance = new MediaCapabilitiesService();\n this.initPromise = this.instance.init();\n return [4 /*yield*/, this.initPromise];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3: return [2 /*return*/, this.instance];\n }\n });\n });\n };\n MediaCapabilitiesService.prototype.init = function () {\n return __awaiter(this, void 0, void 0, function () {\n var detectWebRtcService;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, DetectWebRtcService_1.DetectWebRtcService.get()];\n case 1:\n detectWebRtcService = _a.sent();\n this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();\n return [4 /*yield*/, this.updateDevicesList()];\n case 2:\n _a.sent();\n trace.info('initialize media capabilities helper successfully');\n return [2 /*return*/];\n }\n });\n });\n };\n MediaCapabilitiesService.prototype.hasCamera = function () {\n return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;\n };\n MediaCapabilitiesService.prototype.hasMicrophone = function () {\n var userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;\n return this.environmentService.isIOS()\n ? userMediaSupported\n : this.devicesList.audio.length > 0 && userMediaSupported;\n };\n MediaCapabilitiesService.prototype.hasWebRTC = function () {\n return this.webRtcSupportInfo.isWebRTCSupported;\n };\n MediaCapabilitiesService.prototype.updateDevicesList = function (reverse) {\n var _a;\n return __awaiter(this, void 0, void 0, function () {\n var localDevicesList, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (!this.webRtcSupportInfo.isWebRTCSupported) return [3 /*break*/, 2];\n return [4 /*yield*/, ((_a = navigator === null || navigator === void 0 ? void 0 : navigator.mediaDevices) === null || _a === void 0 ? void 0 : _a.enumerateDevices())];\n case 1:\n _b = (_c.sent()) || [];\n return [3 /*break*/, 3];\n case 2:\n _b = [];\n _c.label = 3;\n case 3:\n localDevicesList = _b;\n this.devicesList = {\n video: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'videoinput'; }),\n audio: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'audioinput'; })\n };\n if (reverse) {\n this.devicesList.video.reverse();\n }\n return [2 /*return*/];\n }\n });\n });\n };\n Object.defineProperty(MediaCapabilitiesService.prototype, \"supportSwitchCamera\", {\n get: function () {\n return this.devicesList.video.length > 1 && !this.environmentService.isDesktop();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"backCameraDeviceId\", {\n get: function () {\n var _a;\n return ((_a = this.devicesList.video[this.devicesList.video.length - 1]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"frontCameraDeviceId\", {\n get: function () {\n var _a;\n return ((_a = this.devicesList.video[0]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';\n },\n enumerable: false,\n configurable: true\n });\n MediaCapabilitiesService.initPromise = Promise.resolve();\n return MediaCapabilitiesService;\n}());\nexports.MediaCapabilitiesService = MediaCapabilitiesService;\n\n//# sourceMappingURL=MediaCapabilitiesService.js.map\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@techsee/techsee-media-service",
3
- "version": "18.6.0",
3
+ "version": "18.6.1",
4
4
  "description": "Techsee Media Service",
5
5
  "author": "TechSee",
6
6
  "main": "lib/index.js",