webrtc-adapter
Advanced tools
Comparing version 8.2.3 to 9.0.0
@@ -20,3 +20,2 @@ /* | ||
}); | ||
var _default = adapter; | ||
exports["default"] = _default; | ||
var _default = exports["default"] = adapter; |
"use strict"; | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
Object.defineProperty(exports, "__esModule", { | ||
@@ -14,4 +14,4 @@ value: true | ||
var sdp = _interopRequireWildcard(require("sdp")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
/* | ||
@@ -73,3 +73,2 @@ * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | ||
chromeShim.shimGetSendersWithDtmf(window, browserDetails); | ||
chromeShim.shimGetStats(window, browserDetails); | ||
chromeShim.shimSenderReceiverGetStats(window, browserDetails); | ||
@@ -76,0 +75,0 @@ chromeShim.fixNegotiationNeeded(window, browserDetails); |
@@ -17,10 +17,3 @@ /* | ||
exports.shimAddTrackRemoveTrackWithNative = shimAddTrackRemoveTrackWithNative; | ||
Object.defineProperty(exports, "shimGetDisplayMedia", { | ||
enumerable: true, | ||
get: function get() { | ||
return _getdisplaymedia.shimGetDisplayMedia; | ||
} | ||
}); | ||
exports.shimGetSendersWithDtmf = shimGetSendersWithDtmf; | ||
exports.shimGetStats = shimGetStats; | ||
Object.defineProperty(exports, "shimGetUserMedia", { | ||
@@ -38,9 +31,8 @@ enumerable: true, | ||
var _getusermedia = require("./getusermedia"); | ||
var _getdisplaymedia = require("./getdisplaymedia"); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } | ||
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } | ||
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
function shimMediaStream(window) { | ||
@@ -158,3 +150,2 @@ window.MediaStream = window.MediaStream || window.webkitMediaStream; | ||
}; | ||
var origAddTrack = window.RTCPeerConnection.prototype.addTrack; | ||
@@ -226,66 +217,2 @@ window.RTCPeerConnection.prototype.addTrack = function addTrack(track, stream) { | ||
} | ||
function shimGetStats(window) { | ||
if (!window.RTCPeerConnection) { | ||
return; | ||
} | ||
var origGetStats = window.RTCPeerConnection.prototype.getStats; | ||
window.RTCPeerConnection.prototype.getStats = function getStats() { | ||
var _this5 = this; | ||
var _arguments = Array.prototype.slice.call(arguments), | ||
selector = _arguments[0], | ||
onSucc = _arguments[1], | ||
onErr = _arguments[2]; | ||
// If selector is a function then we are in the old style stats so just | ||
// pass back the original getStats format to avoid breaking old users. | ||
if (arguments.length > 0 && typeof selector === 'function') { | ||
return origGetStats.apply(this, arguments); | ||
} | ||
// When spec-style getStats is supported, return those when called with | ||
// either no arguments or the selector argument is null. | ||
if (origGetStats.length === 0 && (arguments.length === 0 || typeof selector !== 'function')) { | ||
return origGetStats.apply(this, []); | ||
} | ||
var fixChromeStats_ = function fixChromeStats_(response) { | ||
var standardReport = {}; | ||
var reports = response.result(); | ||
reports.forEach(function (report) { | ||
var standardStats = { | ||
id: report.id, | ||
timestamp: report.timestamp, | ||
type: { | ||
localcandidate: 'local-candidate', | ||
remotecandidate: 'remote-candidate' | ||
}[report.type] || report.type | ||
}; | ||
report.names().forEach(function (name) { | ||
standardStats[name] = report.stat(name); | ||
}); | ||
standardReport[standardStats.id] = standardStats; | ||
}); | ||
return standardReport; | ||
}; | ||
// shim getStats with maplike support | ||
var makeMapStats = function makeMapStats(stats) { | ||
return new Map(Object.keys(stats).map(function (key) { | ||
return [key, stats[key]]; | ||
})); | ||
}; | ||
if (arguments.length >= 2) { | ||
var successCallbackWrapper_ = function successCallbackWrapper_(response) { | ||
onSucc(makeMapStats(fixChromeStats_(response))); | ||
}; | ||
return origGetStats.apply(this, [successCallbackWrapper_, selector]); | ||
} | ||
// promise-support | ||
return new Promise(function (resolve, reject) { | ||
origGetStats.apply(_this5, [function (response) { | ||
resolve(makeMapStats(fixChromeStats_(response))); | ||
}, reject]); | ||
}).then(onSucc, onErr); | ||
}; | ||
} | ||
function shimSenderReceiverGetStats(window) { | ||
@@ -301,6 +228,6 @@ if (!(_typeof(window) === 'object' && window.RTCPeerConnection && window.RTCRtpSender && window.RTCRtpReceiver)) { | ||
window.RTCPeerConnection.prototype.getSenders = function getSenders() { | ||
var _this6 = this; | ||
var _this5 = this; | ||
var senders = origGetSenders.apply(this, []); | ||
senders.forEach(function (sender) { | ||
return sender._pc = _this6; | ||
return sender._pc = _this5; | ||
}); | ||
@@ -337,6 +264,6 @@ return senders; | ||
window.RTCPeerConnection.prototype.getReceivers = function getReceivers() { | ||
var _this7 = this; | ||
var _this6 = this; | ||
var receivers = origGetReceivers.apply(this, []); | ||
receivers.forEach(function (receiver) { | ||
return receiver._pc = _this7; | ||
return receiver._pc = _this6; | ||
}); | ||
@@ -405,6 +332,6 @@ return receivers; | ||
window.RTCPeerConnection.prototype.getLocalStreams = function getLocalStreams() { | ||
var _this8 = this; | ||
var _this7 = this; | ||
this._shimmedLocalStreams = this._shimmedLocalStreams || {}; | ||
return Object.keys(this._shimmedLocalStreams).map(function (streamId) { | ||
return _this8._shimmedLocalStreams[streamId][0]; | ||
return _this7._shimmedLocalStreams[streamId][0]; | ||
}); | ||
@@ -428,6 +355,6 @@ }; | ||
window.RTCPeerConnection.prototype.addStream = function addStream(stream) { | ||
var _this9 = this; | ||
var _this8 = this; | ||
this._shimmedLocalStreams = this._shimmedLocalStreams || {}; | ||
stream.getTracks().forEach(function (track) { | ||
var alreadyExists = _this9.getSenders().find(function (s) { | ||
var alreadyExists = _this8.getSenders().find(function (s) { | ||
return s.track === track; | ||
@@ -454,12 +381,12 @@ }); | ||
window.RTCPeerConnection.prototype.removeTrack = function removeTrack(sender) { | ||
var _this10 = this; | ||
var _this9 = this; | ||
this._shimmedLocalStreams = this._shimmedLocalStreams || {}; | ||
if (sender) { | ||
Object.keys(this._shimmedLocalStreams).forEach(function (streamId) { | ||
var idx = _this10._shimmedLocalStreams[streamId].indexOf(sender); | ||
var idx = _this9._shimmedLocalStreams[streamId].indexOf(sender); | ||
if (idx !== -1) { | ||
_this10._shimmedLocalStreams[streamId].splice(idx, 1); | ||
_this9._shimmedLocalStreams[streamId].splice(idx, 1); | ||
} | ||
if (_this10._shimmedLocalStreams[streamId].length === 1) { | ||
delete _this10._shimmedLocalStreams[streamId]; | ||
if (_this9._shimmedLocalStreams[streamId].length === 1) { | ||
delete _this9._shimmedLocalStreams[streamId]; | ||
} | ||
@@ -484,7 +411,7 @@ }); | ||
window.RTCPeerConnection.prototype.getLocalStreams = function getLocalStreams() { | ||
var _this11 = this; | ||
var _this10 = this; | ||
var nativeStreams = origGetLocalStreams.apply(this); | ||
this._reverseStreams = this._reverseStreams || {}; | ||
return nativeStreams.map(function (stream) { | ||
return _this11._reverseStreams[stream.id]; | ||
return _this10._reverseStreams[stream.id]; | ||
}); | ||
@@ -494,7 +421,7 @@ }; | ||
window.RTCPeerConnection.prototype.addStream = function addStream(stream) { | ||
var _this12 = this; | ||
var _this11 = this; | ||
this._streams = this._streams || {}; | ||
this._reverseStreams = this._reverseStreams || {}; | ||
stream.getTracks().forEach(function (track) { | ||
var alreadyExists = _this12.getSenders().find(function (s) { | ||
var alreadyExists = _this11.getSenders().find(function (s) { | ||
return s.track === track; | ||
@@ -525,3 +452,3 @@ }); | ||
window.RTCPeerConnection.prototype.addTrack = function addTrack(track, stream) { | ||
var _this13 = this; | ||
var _this12 = this; | ||
if (this.signalingState === 'closed') { | ||
@@ -556,3 +483,3 @@ throw new DOMException('The RTCPeerConnection\'s signalingState is \'closed\'.', 'InvalidStateError'); | ||
Promise.resolve().then(function () { | ||
_this13.dispatchEvent(new Event('negotiationneeded')); | ||
_this12.dispatchEvent(new Event('negotiationneeded')); | ||
}); | ||
@@ -599,3 +526,3 @@ } else { | ||
var methodObj = _defineProperty({}, method, function () { | ||
var _this14 = this; | ||
var _this13 = this; | ||
var args = arguments; | ||
@@ -605,3 +532,3 @@ var isLegacyCall = arguments.length && typeof arguments[0] === 'function'; | ||
return nativeMethod.apply(this, [function (description) { | ||
var desc = replaceInternalStreamId(_this14, description); | ||
var desc = replaceInternalStreamId(_this13, description); | ||
args[0].apply(null, [desc]); | ||
@@ -615,3 +542,3 @@ }, function (err) { | ||
return nativeMethod.apply(this, arguments).then(function (description) { | ||
return replaceInternalStreamId(_this14, description); | ||
return replaceInternalStreamId(_this13, description); | ||
}); | ||
@@ -643,3 +570,3 @@ }); | ||
window.RTCPeerConnection.prototype.removeTrack = function removeTrack(sender) { | ||
var _this15 = this; | ||
var _this14 = this; | ||
if (this.signalingState === 'closed') { | ||
@@ -662,7 +589,7 @@ throw new DOMException('The RTCPeerConnection\'s signalingState is \'closed\'.', 'InvalidStateError'); | ||
Object.keys(this._streams).forEach(function (streamid) { | ||
var hasTrack = _this15._streams[streamid].getTracks().find(function (track) { | ||
var hasTrack = _this14._streams[streamid].getTracks().find(function (track) { | ||
return sender.track === track; | ||
}); | ||
if (hasTrack) { | ||
stream = _this15._streams[streamid]; | ||
stream = _this14._streams[streamid]; | ||
} | ||
@@ -669,0 +596,0 @@ }); |
@@ -16,5 +16,5 @@ /* | ||
var utils = _interopRequireWildcard(require("../utils.js")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
var logging = utils.log; | ||
@@ -124,3 +124,2 @@ function shimGetUserMedia(window, browserDetails) { | ||
} | ||
if (dev) { | ||
@@ -127,0 +126,0 @@ constraints.video.deviceId = face.exact ? { |
@@ -24,6 +24,6 @@ /* | ||
var utils = _interopRequireWildcard(require("./utils")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
function shimRTCIceCandidate(window) { | ||
@@ -30,0 +30,0 @@ // foundation is arbitrarily chosen as an indicator for full support for |
@@ -39,4 +39,4 @@ /* | ||
var _getdisplaymedia = require("./getdisplaymedia"); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } | ||
@@ -49,5 +49,5 @@ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } | ||
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } | ||
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } | ||
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
function shimOnTrack(window) { | ||
@@ -68,3 +68,2 @@ if (_typeof(window) === 'object' && window.RTCTrackEvent && 'receiver' in window.RTCTrackEvent.prototype && !('transceiver' in window.RTCTrackEvent.prototype)) { | ||
} | ||
if (!window.RTCPeerConnection && window.mozRTCPeerConnection) { | ||
@@ -71,0 +70,0 @@ // very basic support for old versions. |
@@ -16,5 +16,5 @@ /* | ||
var utils = _interopRequireWildcard(require("../utils")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
function shimGetUserMedia(window, browserDetails) { | ||
@@ -21,0 +21,0 @@ var navigator = window && window.navigator; |
@@ -23,5 +23,5 @@ /* | ||
var utils = _interopRequireWildcard(require("../utils")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } | ||
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
function shimLocalStreamsAPI(window) { | ||
@@ -28,0 +28,0 @@ if (_typeof(window) !== 'object' || !window.RTCPeerConnection) { |
@@ -25,5 +25,5 @@ /* | ||
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } | ||
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } | ||
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } | ||
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } | ||
var logDisabled_ = true; | ||
@@ -169,2 +169,15 @@ var deprecationWarnings_ = true; | ||
var navigator = window.navigator; | ||
// Prefer navigator.userAgentData. | ||
if (navigator.userAgentData && navigator.userAgentData.brands) { | ||
var chromium = navigator.userAgentData.brands.find(function (brand) { | ||
return brand.brand === 'Chromium'; | ||
}); | ||
if (chromium) { | ||
return { | ||
browser: 'chrome', | ||
version: chromium.version | ||
}; | ||
} | ||
} | ||
if (navigator.mozGetUserMedia) { | ||
@@ -171,0 +184,0 @@ // Firefox. |
@@ -53,7 +53,2 @@ 'use strict'; | ||
}, | ||
shell: { | ||
downloadBrowser : { | ||
command: 'BROWSER=${BROWSER-chrome} BVER=${BVER-stable} ./node_modules/travis-multirunner/setup.sh' | ||
}, | ||
}, | ||
}); | ||
@@ -65,3 +60,2 @@ | ||
grunt.loadNpmTasks('grunt-contrib-copy'); | ||
grunt.loadNpmTasks('grunt-shell'); | ||
@@ -68,0 +62,0 @@ grunt.registerTask('default', ['eslint', 'build']); |
@@ -20,3 +20,2 @@ declare module "webrtc-adapter" { | ||
shimGetSendersWithDtmf(window: Window): void; | ||
shimGetStats(window: Window): void; | ||
shimSenderReceiverGetStats(window: Window): void; | ||
@@ -23,0 +22,0 @@ shimAddTrackRemoveTrackWithNative(window: Window): void; |
{ | ||
"name": "webrtc-adapter", | ||
"version": "8.2.3", | ||
"version": "9.0.0", | ||
"description": "A shim to insulate apps from WebRTC spec changes and browser prefix differences", | ||
@@ -23,5 +23,5 @@ "license": "BSD-3-Clause", | ||
"prepublishonly": "npm test", | ||
"test": "grunt && mocha test/unit && grunt downloadBrowser && karma start test/karma.conf.js", | ||
"lint-and-unit-tests": "grunt && mocha test/unit", | ||
"e2e-tests": "grunt && grunt downloadBrowser && karma start test/karma.conf.js" | ||
"test": "grunt && jest test/unit && karma start test/karma.conf.js", | ||
"lint-and-unit-tests": "grunt && jest test/unit", | ||
"e2e-tests": "grunt && karma start test/karma.conf.js" | ||
}, | ||
@@ -38,5 +38,7 @@ "dependencies": { | ||
"@babel/preset-env": "^7.20.2", | ||
"@puppeteer/browsers": "^1.4.1", | ||
"babel-preset-env": "^1.7.0", | ||
"brfs": "^1.5.0", | ||
"chai": "^3.5.0", | ||
"eslint-plugin-jest": "^27.4.0", | ||
"grunt": "^1.1.0", | ||
@@ -49,3 +51,3 @@ "grunt-babel": "^8.0.0", | ||
"grunt-eslint": "^24.0.0", | ||
"grunt-shell": "^2.1.0", | ||
"jest": "^29.7.0", | ||
"karma": "^6.4.1", | ||
@@ -60,7 +62,4 @@ "karma-browserify": "^8.1.0", | ||
"karma-stability-reporter": "^3.0.1", | ||
"mocha": "^10.1.0", | ||
"sinon": "^2.2.0", | ||
"sinon-chai": "^2.14.0", | ||
"travis-multirunner": "^5.0.1" | ||
"mocha": "^10.2.0" | ||
} | ||
} |
@@ -63,3 +63,2 @@ /* | ||
chromeShim.shimGetSendersWithDtmf(window, browserDetails); | ||
chromeShim.shimGetStats(window, browserDetails); | ||
chromeShim.shimSenderReceiverGetStats(window, browserDetails); | ||
@@ -66,0 +65,0 @@ chromeShim.fixNegotiationNeeded(window, browserDetails); |
@@ -13,3 +13,2 @@ /* | ||
export {shimGetUserMedia} from './getusermedia'; | ||
export {shimGetDisplayMedia} from './getdisplaymedia'; | ||
@@ -192,69 +191,2 @@ export function shimMediaStream(window) { | ||
export function shimGetStats(window) { | ||
if (!window.RTCPeerConnection) { | ||
return; | ||
} | ||
const origGetStats = window.RTCPeerConnection.prototype.getStats; | ||
window.RTCPeerConnection.prototype.getStats = function getStats() { | ||
const [selector, onSucc, onErr] = arguments; | ||
// If selector is a function then we are in the old style stats so just | ||
// pass back the original getStats format to avoid breaking old users. | ||
if (arguments.length > 0 && typeof selector === 'function') { | ||
return origGetStats.apply(this, arguments); | ||
} | ||
// When spec-style getStats is supported, return those when called with | ||
// either no arguments or the selector argument is null. | ||
if (origGetStats.length === 0 && (arguments.length === 0 || | ||
typeof selector !== 'function')) { | ||
return origGetStats.apply(this, []); | ||
} | ||
const fixChromeStats_ = function(response) { | ||
const standardReport = {}; | ||
const reports = response.result(); | ||
reports.forEach(report => { | ||
const standardStats = { | ||
id: report.id, | ||
timestamp: report.timestamp, | ||
type: { | ||
localcandidate: 'local-candidate', | ||
remotecandidate: 'remote-candidate' | ||
}[report.type] || report.type | ||
}; | ||
report.names().forEach(name => { | ||
standardStats[name] = report.stat(name); | ||
}); | ||
standardReport[standardStats.id] = standardStats; | ||
}); | ||
return standardReport; | ||
}; | ||
// shim getStats with maplike support | ||
const makeMapStats = function(stats) { | ||
return new Map(Object.keys(stats).map(key => [key, stats[key]])); | ||
}; | ||
if (arguments.length >= 2) { | ||
const successCallbackWrapper_ = function(response) { | ||
onSucc(makeMapStats(fixChromeStats_(response))); | ||
}; | ||
return origGetStats.apply(this, [successCallbackWrapper_, | ||
selector]); | ||
} | ||
// promise-support | ||
return new Promise((resolve, reject) => { | ||
origGetStats.apply(this, [ | ||
function(response) { | ||
resolve(makeMapStats(fixChromeStats_(response))); | ||
}, reject]); | ||
}).then(onSucc, onErr); | ||
}; | ||
} | ||
export function shimSenderReceiverGetStats(window) { | ||
@@ -261,0 +193,0 @@ if (!(typeof window === 'object' && window.RTCPeerConnection && |
@@ -164,2 +164,12 @@ /* | ||
// Prefer navigator.userAgentData. | ||
if (navigator.userAgentData && navigator.userAgentData.brands) { | ||
const chromium = navigator.userAgentData.brands.find((brand) => { | ||
return brand.brand === 'Chromium'; | ||
}); | ||
if (chromium) { | ||
return {browser: 'chrome', version: chromium.version}; | ||
} | ||
} | ||
if (navigator.mozGetUserMedia) { // Firefox. | ||
@@ -166,0 +176,0 @@ result.browser = 'firefox'; |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
25
535739
36
11509