EmulatorJS/data/webrtc-adapter.js

3 lines
57 KiB
JavaScript
Raw Normal View History

//Webrtc adapter module from https://github.com/webrtcHacks/adapter
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).adapter=e()}}(function(){return(function(){function e(t,r,n){function i(a,s){if(!r[a]){if(!t[a]){var c="function"==typeof require&&require;if(!s&&c)return c(a,!0);if(o)return o(a,!0);var p=Error("Cannot find module '"+a+"'");throw p.code="MODULE_NOT_FOUND",p}var d=r[a]={exports:{}};t[a][0].call(d.exports,function(e){return i(t[a][1][e]||e)},d,d.exports,e,t,r,n)}return r[a].exports}for(var o="function"==typeof require&&require,a=0;a<n.length;a++)i(n[a]);return i}return e})()({1:[function(e,t,r){"use strict";var n=(0,e("./adapter_factory.js").adapterFactory)({window:"undefined"==typeof window?void 0:window});t.exports=n},{"./adapter_factory.js":2}],2:[function(e,t,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.adapterFactory=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.window,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0},n=i.log,o=i.detectBrowser(t),s={browserDetails:o,commonShim:f,extractVersion:i.extractVersion,disableLog:i.disableLog,disableWarnings:i.disableWarnings,sdp:l};switch(o.browser){case"chrome":if(!a||!a.shimPeerConnection||!r.shimChrome){n("Chrome shim is not included in this adapter release.");break}if(null===o.version){n("Chrome shim can not determine version, not shimming.");break}n("adapter.js shimming chrome."),s.browserShim=a,f.shimAddIceCandidateNullOrEmpty(t,o),f.shimParameterlessSetLocalDescription(t,o),a.shimGetUserMedia(t,o),a.shimMediaStream(t,o),a.shimPeerConnection(t,o),a.shimOnTrack(t,o),a.shimAddTrackRemoveTrack(t,o),a.shimGetSendersWithDtmf(t,o),a.shimGetStats(t,o),a.shimSenderReceiverGetStats(t,o),a.fixNegotiationNeeded(t,o),f.shimRTCIceCandidate(t,o),f.shimConnectionState(t,o),f.shimMaxMessageSize(t,o),f.shimSendThrowTypeError(t,o),f.removeExtmapAllowMixed(t,o);break;case"firefox":if(!c||!c.shimPeerConnection||!r.shimFirefox){n("Firefox shim is not included in this adapter release.");break}n("adapter.js shimming firefox."),s.browserShim=c,f.shimAddIceCandidateNullOrEmpty(t,o),f.shimParameterlessSetLocalDescription(t,o),c.shimGetUserMedia(t,o),c.shimPeerConnection(t,o),c.shimOnTrack(t,o),c.shimRemoveStream(t,o),c.shimSenderGetStats(t,o),c.shimReceiverGetStats(t,o),c.shimRTCDataChannel(t,o),c.shimAddTransceiver(t,o),c.shimGetParameters(t,o),c.shimCreateOffer(t,o),c.shimCreateAnswer(t,o),f.shimRTCIceCandidate(t,o),f.shimConnectionState(t,o),f.shimMaxMessageSize(t,o),f.shimSendThrowTypeError(t,o);break;case"safari":if(!d||!r.shimSafari){n("Safari shim is not included in this adapter release.");break}n("adapter.js shimming safari."),s.browserShim=d,f.shimAddIceCandidateNullOrEmpty(t,o),f.shimParameterlessSetLocalDescription(t,o),d.shimRTCIceServerUrls(t,o),d.shimCreateOfferLegacy(t,o),d.shimCallbacksAPI(t,o),d.shimLocalStreamsAPI(t,o),d.shimRemoteStreamsAPI(t,o),d.shimTrackEventTransceiver(t,o),d.shimGetUserMedia(t,o),d.shimAudioContext(t,o),f.shimRTCIceCandidate(t,o),f.shimMaxMessageSize(t,o),f.shimSendThrowTypeError(t,o),f.removeExtmapAllowMixed(t,o);break;default:n("Unsupported browser!")}return s};var n=e("./utils"),i=h(n),o=e("./chrome/chrome_shim"),a=h(o),s=e("./firefox/firefox_shim"),c=h(s),p=e("./safari/safari_shim"),d=h(p),u=e("./common_shim"),f=h(u),m=e("sdp"),l=h(m);function h(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}},{"./chrome/chrome_shim":3,"./common_shim":6,"./firefox/firefox_shim":7,"./safari/safari_shim":10,"./utils":11,sdp:12}],3:[function(e,t,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=r.shimGetUserMedia=void 0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor==