12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import {
- MediaStream,
- MediaStreamTrack,
- RTCSessionDescription,
- RTCIceCandidate,
- mediaDevices,
- permissions
- } from 'react-native-webrtc';
-
- import RTCPeerConnection from './RTCPeerConnection';
-
- (global => {
- if (typeof global.MediaStream === 'undefined') {
- global.MediaStream = MediaStream;
- }
- if (typeof global.MediaStreamTrack === 'undefined') {
- global.MediaStreamTrack = MediaStreamTrack;
- }
- if (typeof global.RTCIceCandidate === 'undefined') {
- global.RTCIceCandidate = RTCIceCandidate;
- }
- if (typeof global.RTCPeerConnection === 'undefined') {
- global.RTCPeerConnection = RTCPeerConnection;
- }
- if (typeof global.RTCPeerConnection === 'undefined') {
- global.webkitRTCPeerConnection = RTCPeerConnection;
- }
- if (typeof global.RTCSessionDescription === 'undefined') {
- global.RTCSessionDescription = RTCSessionDescription;
- }
-
- const navigator = global.navigator;
-
- if (navigator) {
- if (typeof navigator.mediaDevices === 'undefined') {
- navigator.mediaDevices = mediaDevices;
- }
- if (typeof navigator.permissions === 'undefined') {
- navigator.permissions = permissions;
- }
- }
-
- })(global || window || this); // eslint-disable-line no-invalid-this
|