@sbhjt-gr/react-native-webrtc 124.0.0
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.
- package/.clang-format +11 -0
- package/.claude/settings.local.json +9 -0
- package/.eslintignore +6 -0
- package/.nvmrc +1 -0
- package/ISSUE_TEMPLATE.md +40 -0
- package/LICENSE +22 -0
- package/README.md +103 -0
- package/android/build.gradle +37 -0
- package/android/consumer-rules.pro +3 -0
- package/android/src/main/AndroidManifest.xml +11 -0
- package/android/src/main/java/com/oney/WebRTCModule/AbstractVideoCaptureController.java +113 -0
- package/android/src/main/java/com/oney/WebRTCModule/CameraCaptureController.java +338 -0
- package/android/src/main/java/com/oney/WebRTCModule/CameraEventsHandler.java +49 -0
- package/android/src/main/java/com/oney/WebRTCModule/DataChannelWrapper.java +99 -0
- package/android/src/main/java/com/oney/WebRTCModule/DataPacketCryptorManager.java +63 -0
- package/android/src/main/java/com/oney/WebRTCModule/DisplayUtils.java +16 -0
- package/android/src/main/java/com/oney/WebRTCModule/EglUtils.java +66 -0
- package/android/src/main/java/com/oney/WebRTCModule/GetUserMediaImpl.java +539 -0
- package/android/src/main/java/com/oney/WebRTCModule/LibraryLoader.java +21 -0
- package/android/src/main/java/com/oney/WebRTCModule/MediaProjectionNotification.java +70 -0
- package/android/src/main/java/com/oney/WebRTCModule/MediaProjectionService.java +82 -0
- package/android/src/main/java/com/oney/WebRTCModule/PeerConnectionObserver.java +588 -0
- package/android/src/main/java/com/oney/WebRTCModule/RTCCryptoManager.java +493 -0
- package/android/src/main/java/com/oney/WebRTCModule/RTCVideoViewManager.java +98 -0
- package/android/src/main/java/com/oney/WebRTCModule/ReactBridgeUtil.java +36 -0
- package/android/src/main/java/com/oney/WebRTCModule/ScreenCaptureController.java +94 -0
- package/android/src/main/java/com/oney/WebRTCModule/SerializeUtils.java +342 -0
- package/android/src/main/java/com/oney/WebRTCModule/StringUtils.java +101 -0
- package/android/src/main/java/com/oney/WebRTCModule/ThreadUtils.java +41 -0
- package/android/src/main/java/com/oney/WebRTCModule/TrackCapturerEventsEmitter.java +34 -0
- package/android/src/main/java/com/oney/WebRTCModule/VideoTrackAdapter.java +137 -0
- package/android/src/main/java/com/oney/WebRTCModule/WebRTCModule.java +1643 -0
- package/android/src/main/java/com/oney/WebRTCModule/WebRTCModuleOptions.java +33 -0
- package/android/src/main/java/com/oney/WebRTCModule/WebRTCModulePackage.java +21 -0
- package/android/src/main/java/com/oney/WebRTCModule/WebRTCView.java +583 -0
- package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraClient.java +464 -0
- package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraConfig.java +17 -0
- package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraListener.java +7 -0
- package/android/src/main/java/com/oney/WebRTCModule/videoEffects/ProcessorProvider.java +38 -0
- package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoEffectProcessor.java +59 -0
- package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoFrameProcessor.java +19 -0
- package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoFrameProcessorFactoryInterface.java +12 -0
- package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/H264AndSoftwareVideoDecoderFactory.java +73 -0
- package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/H264AndSoftwareVideoEncoderFactory.java +73 -0
- package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/SoftwareVideoDecoderFactoryProxy.java +36 -0
- package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/SoftwareVideoEncoderFactoryProxy.java +36 -0
- package/android/src/main/java/org/webrtc/Camera1Helper.java +54 -0
- package/android/src/main/java/org/webrtc/Camera2Helper.java +52 -0
- package/android/src/main/res/values/strings.xml +5 -0
- package/android/src/main/res/values/styles.xml +8 -0
- package/apple/.placeholder +0 -0
- package/ios/RCTWebRTC/CaptureController.h +18 -0
- package/ios/RCTWebRTC/CaptureController.m +29 -0
- package/ios/RCTWebRTC/CapturerEventsDelegate.h +12 -0
- package/ios/RCTWebRTC/DataChannelWrapper.h +27 -0
- package/ios/RCTWebRTC/DataChannelWrapper.m +42 -0
- package/ios/RCTWebRTC/I420Converter.h +22 -0
- package/ios/RCTWebRTC/I420Converter.m +164 -0
- package/ios/RCTWebRTC/PIPController.h +24 -0
- package/ios/RCTWebRTC/PIPController.m +234 -0
- package/ios/RCTWebRTC/PalabraAudioSink.h +13 -0
- package/ios/RCTWebRTC/PalabraAudioSink.m +18 -0
- package/ios/RCTWebRTC/PalabraClient.h +36 -0
- package/ios/RCTWebRTC/PalabraClient.m +584 -0
- package/ios/RCTWebRTC/RCTConvert+WebRTC.h +16 -0
- package/ios/RCTWebRTC/RCTConvert+WebRTC.m +206 -0
- package/ios/RCTWebRTC/RTCMediaStreamTrack+React.h +10 -0
- package/ios/RCTWebRTC/RTCMediaStreamTrack+React.m +16 -0
- package/ios/RCTWebRTC/RTCVideoViewManager.h +29 -0
- package/ios/RCTWebRTC/RTCVideoViewManager.m +411 -0
- package/ios/RCTWebRTC/SampleBufferVideoCallView.h +12 -0
- package/ios/RCTWebRTC/SampleBufferVideoCallView.m +178 -0
- package/ios/RCTWebRTC/ScreenCaptureController.h +20 -0
- package/ios/RCTWebRTC/ScreenCaptureController.m +83 -0
- package/ios/RCTWebRTC/ScreenCapturePickerViewManager.h +7 -0
- package/ios/RCTWebRTC/ScreenCapturePickerViewManager.m +60 -0
- package/ios/RCTWebRTC/ScreenCapturer.h +19 -0
- package/ios/RCTWebRTC/ScreenCapturer.m +264 -0
- package/ios/RCTWebRTC/SerializeUtils.h +28 -0
- package/ios/RCTWebRTC/SerializeUtils.m +314 -0
- package/ios/RCTWebRTC/SocketConnection.h +13 -0
- package/ios/RCTWebRTC/SocketConnection.m +137 -0
- package/ios/RCTWebRTC/TrackCapturerEventsEmitter.h +14 -0
- package/ios/RCTWebRTC/TrackCapturerEventsEmitter.m +37 -0
- package/ios/RCTWebRTC/VideoCaptureController.h +21 -0
- package/ios/RCTWebRTC/VideoCaptureController.m +328 -0
- package/ios/RCTWebRTC/WebRTCModule+Palabra.h +4 -0
- package/ios/RCTWebRTC/WebRTCModule+Palabra.m +83 -0
- package/ios/RCTWebRTC/WebRTCModule+Permissions.m +75 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCAudioSession.m +20 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCDataChannel.h +14 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCDataChannel.m +165 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCFrameCryptor.m +611 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCMediaStream.h +14 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCMediaStream.m +533 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCPeerConnection.h +24 -0
- package/ios/RCTWebRTC/WebRTCModule+RTCPeerConnection.m +1004 -0
- package/ios/RCTWebRTC/WebRTCModule+Transceivers.m +267 -0
- package/ios/RCTWebRTC/WebRTCModule+VideoTrackAdapter.h +12 -0
- package/ios/RCTWebRTC/WebRTCModule+VideoTrackAdapter.m +166 -0
- package/ios/RCTWebRTC/WebRTCModule.h +51 -0
- package/ios/RCTWebRTC/WebRTCModule.m +151 -0
- package/ios/RCTWebRTC/WebRTCModuleOptions.h +24 -0
- package/ios/RCTWebRTC/WebRTCModuleOptions.m +31 -0
- package/ios/RCTWebRTC/videoEffects/ProcessorProvider.h +9 -0
- package/ios/RCTWebRTC/videoEffects/ProcessorProvider.m +23 -0
- package/ios/RCTWebRTC/videoEffects/VideoEffectProcessor.h +13 -0
- package/ios/RCTWebRTC/videoEffects/VideoEffectProcessor.m +23 -0
- package/ios/RCTWebRTC/videoEffects/VideoFrameProcessor.h +8 -0
- package/ios/RCTWebRTC.xcodeproj/project.pbxproj +404 -0
- package/ios/RCTWebRTC.xcworkspace/contents.xcworkspacedata +10 -0
- package/lib/commonjs/Constraints.js +2 -0
- package/lib/commonjs/Constraints.js.map +1 -0
- package/lib/commonjs/EventEmitter.js +51 -0
- package/lib/commonjs/EventEmitter.js.map +1 -0
- package/lib/commonjs/Logger.js +47 -0
- package/lib/commonjs/Logger.js.map +1 -0
- package/lib/commonjs/MediaDevices.js +54 -0
- package/lib/commonjs/MediaDevices.js.map +1 -0
- package/lib/commonjs/MediaStream.js +137 -0
- package/lib/commonjs/MediaStream.js.map +1 -0
- package/lib/commonjs/MediaStreamError.js +19 -0
- package/lib/commonjs/MediaStreamError.js.map +1 -0
- package/lib/commonjs/MediaStreamErrorEvent.js +17 -0
- package/lib/commonjs/MediaStreamErrorEvent.js.map +1 -0
- package/lib/commonjs/MediaStreamTrack.js +203 -0
- package/lib/commonjs/MediaStreamTrack.js.map +1 -0
- package/lib/commonjs/MediaStreamTrackEvent.js +26 -0
- package/lib/commonjs/MediaStreamTrackEvent.js.map +1 -0
- package/lib/commonjs/MessageEvent.js +27 -0
- package/lib/commonjs/MessageEvent.js.map +1 -0
- package/lib/commonjs/Permissions.js +116 -0
- package/lib/commonjs/Permissions.js.map +1 -0
- package/lib/commonjs/RTCAudioSession.js +33 -0
- package/lib/commonjs/RTCAudioSession.js.map +1 -0
- package/lib/commonjs/RTCDataChannel.js +165 -0
- package/lib/commonjs/RTCDataChannel.js.map +1 -0
- package/lib/commonjs/RTCDataChannelEvent.js +26 -0
- package/lib/commonjs/RTCDataChannelEvent.js.map +1 -0
- package/lib/commonjs/RTCDataPacketCryptor.js +76 -0
- package/lib/commonjs/RTCDataPacketCryptor.js.map +1 -0
- package/lib/commonjs/RTCDataPacketCryptorFactory.js +27 -0
- package/lib/commonjs/RTCDataPacketCryptorFactory.js.map +1 -0
- package/lib/commonjs/RTCErrorEvent.js +23 -0
- package/lib/commonjs/RTCErrorEvent.js.map +1 -0
- package/lib/commonjs/RTCFrameCryptor.js +138 -0
- package/lib/commonjs/RTCFrameCryptor.js.map +1 -0
- package/lib/commonjs/RTCFrameCryptorFactory.js +81 -0
- package/lib/commonjs/RTCFrameCryptorFactory.js.map +1 -0
- package/lib/commonjs/RTCIceCandidate.js +34 -0
- package/lib/commonjs/RTCIceCandidate.js.map +1 -0
- package/lib/commonjs/RTCIceCandidateEvent.js +28 -0
- package/lib/commonjs/RTCIceCandidateEvent.js.map +1 -0
- package/lib/commonjs/RTCKeyProvider.js +111 -0
- package/lib/commonjs/RTCKeyProvider.js.map +1 -0
- package/lib/commonjs/RTCPIPView.js +38 -0
- package/lib/commonjs/RTCPIPView.js.map +1 -0
- package/lib/commonjs/RTCPIPView.web.js +23 -0
- package/lib/commonjs/RTCPIPView.web.js.map +1 -0
- package/lib/commonjs/RTCPeerConnection.js +694 -0
- package/lib/commonjs/RTCPeerConnection.js.map +1 -0
- package/lib/commonjs/RTCRtcpParameters.js +24 -0
- package/lib/commonjs/RTCRtcpParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpCapabilities.js +22 -0
- package/lib/commonjs/RTCRtpCapabilities.js.map +1 -0
- package/lib/commonjs/RTCRtpCodecCapability.js +19 -0
- package/lib/commonjs/RTCRtpCodecCapability.js.map +1 -0
- package/lib/commonjs/RTCRtpCodecParameters.js +38 -0
- package/lib/commonjs/RTCRtpCodecParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpEncodingParameters.js +78 -0
- package/lib/commonjs/RTCRtpEncodingParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpHeaderExtension.js +27 -0
- package/lib/commonjs/RTCRtpHeaderExtension.js.map +1 -0
- package/lib/commonjs/RTCRtpParameters.js +35 -0
- package/lib/commonjs/RTCRtpParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpReceiveParameters.js +15 -0
- package/lib/commonjs/RTCRtpReceiveParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpReceiver.js +53 -0
- package/lib/commonjs/RTCRtpReceiver.js.map +1 -0
- package/lib/commonjs/RTCRtpSendParameters.js +49 -0
- package/lib/commonjs/RTCRtpSendParameters.js.map +1 -0
- package/lib/commonjs/RTCRtpSender.js +67 -0
- package/lib/commonjs/RTCRtpSender.js.map +1 -0
- package/lib/commonjs/RTCRtpTransceiver.js +81 -0
- package/lib/commonjs/RTCRtpTransceiver.js.map +1 -0
- package/lib/commonjs/RTCSessionDescription.js +33 -0
- package/lib/commonjs/RTCSessionDescription.js.map +1 -0
- package/lib/commonjs/RTCTrackEvent.js +38 -0
- package/lib/commonjs/RTCTrackEvent.js.map +1 -0
- package/lib/commonjs/RTCUtil.js +186 -0
- package/lib/commonjs/RTCUtil.js.map +1 -0
- package/lib/commonjs/RTCView.js +16 -0
- package/lib/commonjs/RTCView.js.map +1 -0
- package/lib/commonjs/RTCView.web.js +62 -0
- package/lib/commonjs/RTCView.web.js.map +1 -0
- package/lib/commonjs/ScreenCapturePickerView.js +10 -0
- package/lib/commonjs/ScreenCapturePickerView.js.map +1 -0
- package/lib/commonjs/ScreenCapturePickerView.web.js +10 -0
- package/lib/commonjs/ScreenCapturePickerView.web.js.map +1 -0
- package/lib/commonjs/getDisplayMedia.js +33 -0
- package/lib/commonjs/getDisplayMedia.js.map +1 -0
- package/lib/commonjs/getUserMedia.js +101 -0
- package/lib/commonjs/getUserMedia.js.map +1 -0
- package/lib/commonjs/index.js +224 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/index.web.js +175 -0
- package/lib/commonjs/index.web.js.map +1 -0
- package/lib/commonjs/webStream.js +35 -0
- package/lib/commonjs/webStream.js.map +1 -0
- package/lib/module/Constraints.js +2 -0
- package/lib/module/Constraints.js.map +1 -0
- package/lib/module/EventEmitter.js +41 -0
- package/lib/module/EventEmitter.js.map +1 -0
- package/lib/module/Logger.js +39 -0
- package/lib/module/Logger.js.map +1 -0
- package/lib/module/MediaDevices.js +46 -0
- package/lib/module/MediaDevices.js.map +1 -0
- package/lib/module/MediaStream.js +129 -0
- package/lib/module/MediaStream.js.map +1 -0
- package/lib/module/MediaStreamError.js +12 -0
- package/lib/module/MediaStreamError.js.map +1 -0
- package/lib/module/MediaStreamErrorEvent.js +10 -0
- package/lib/module/MediaStreamErrorEvent.js.map +1 -0
- package/lib/module/MediaStreamTrack.js +195 -0
- package/lib/module/MediaStreamTrack.js.map +1 -0
- package/lib/module/MediaStreamTrackEvent.js +19 -0
- package/lib/module/MediaStreamTrackEvent.js.map +1 -0
- package/lib/module/MessageEvent.js +20 -0
- package/lib/module/MessageEvent.js.map +1 -0
- package/lib/module/Permissions.js +109 -0
- package/lib/module/Permissions.js.map +1 -0
- package/lib/module/RTCAudioSession.js +26 -0
- package/lib/module/RTCAudioSession.js.map +1 -0
- package/lib/module/RTCDataChannel.js +155 -0
- package/lib/module/RTCDataChannel.js.map +1 -0
- package/lib/module/RTCDataChannelEvent.js +19 -0
- package/lib/module/RTCDataChannelEvent.js.map +1 -0
- package/lib/module/RTCDataPacketCryptor.js +66 -0
- package/lib/module/RTCDataPacketCryptor.js.map +1 -0
- package/lib/module/RTCDataPacketCryptorFactory.js +19 -0
- package/lib/module/RTCDataPacketCryptorFactory.js.map +1 -0
- package/lib/module/RTCErrorEvent.js +16 -0
- package/lib/module/RTCErrorEvent.js.map +1 -0
- package/lib/module/RTCFrameCryptor.js +128 -0
- package/lib/module/RTCFrameCryptor.js.map +1 -0
- package/lib/module/RTCFrameCryptorFactory.js +70 -0
- package/lib/module/RTCFrameCryptorFactory.js.map +1 -0
- package/lib/module/RTCIceCandidate.js +27 -0
- package/lib/module/RTCIceCandidate.js.map +1 -0
- package/lib/module/RTCIceCandidateEvent.js +21 -0
- package/lib/module/RTCIceCandidateEvent.js.map +1 -0
- package/lib/module/RTCKeyProvider.js +101 -0
- package/lib/module/RTCKeyProvider.js.map +1 -0
- package/lib/module/RTCPIPView.js +26 -0
- package/lib/module/RTCPIPView.js.map +1 -0
- package/lib/module/RTCPIPView.web.js +11 -0
- package/lib/module/RTCPIPView.web.js.map +1 -0
- package/lib/module/RTCPeerConnection.js +684 -0
- package/lib/module/RTCPeerConnection.js.map +1 -0
- package/lib/module/RTCRtcpParameters.js +17 -0
- package/lib/module/RTCRtcpParameters.js.map +1 -0
- package/lib/module/RTCRtpCapabilities.js +15 -0
- package/lib/module/RTCRtpCapabilities.js.map +1 -0
- package/lib/module/RTCRtpCodecCapability.js +12 -0
- package/lib/module/RTCRtpCodecCapability.js.map +1 -0
- package/lib/module/RTCRtpCodecParameters.js +31 -0
- package/lib/module/RTCRtpCodecParameters.js.map +1 -0
- package/lib/module/RTCRtpEncodingParameters.js +71 -0
- package/lib/module/RTCRtpEncodingParameters.js.map +1 -0
- package/lib/module/RTCRtpHeaderExtension.js +20 -0
- package/lib/module/RTCRtpHeaderExtension.js.map +1 -0
- package/lib/module/RTCRtpParameters.js +27 -0
- package/lib/module/RTCRtpParameters.js.map +1 -0
- package/lib/module/RTCRtpReceiveParameters.js +7 -0
- package/lib/module/RTCRtpReceiveParameters.js.map +1 -0
- package/lib/module/RTCRtpReceiver.js +45 -0
- package/lib/module/RTCRtpReceiver.js.map +1 -0
- package/lib/module/RTCRtpSendParameters.js +41 -0
- package/lib/module/RTCRtpSendParameters.js.map +1 -0
- package/lib/module/RTCRtpSender.js +59 -0
- package/lib/module/RTCRtpSender.js.map +1 -0
- package/lib/module/RTCRtpTransceiver.js +74 -0
- package/lib/module/RTCRtpTransceiver.js.map +1 -0
- package/lib/module/RTCSessionDescription.js +26 -0
- package/lib/module/RTCSessionDescription.js.map +1 -0
- package/lib/module/RTCTrackEvent.js +31 -0
- package/lib/module/RTCTrackEvent.js.map +1 -0
- package/lib/module/RTCUtil.js +176 -0
- package/lib/module/RTCUtil.js.map +1 -0
- package/lib/module/RTCView.js +11 -0
- package/lib/module/RTCView.js.map +1 -0
- package/lib/module/RTCView.web.js +54 -0
- package/lib/module/RTCView.web.js.map +1 -0
- package/lib/module/ScreenCapturePickerView.js +3 -0
- package/lib/module/ScreenCapturePickerView.js.map +1 -0
- package/lib/module/ScreenCapturePickerView.web.js +4 -0
- package/lib/module/ScreenCapturePickerView.web.js.map +1 -0
- package/lib/module/getDisplayMedia.js +26 -0
- package/lib/module/getDisplayMedia.js.map +1 -0
- package/lib/module/getUserMedia.js +92 -0
- package/lib/module/getUserMedia.js.map +1 -0
- package/lib/module/index.js +60 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/index.web.js +114 -0
- package/lib/module/index.web.js.map +1 -0
- package/lib/module/webStream.js +27 -0
- package/lib/module/webStream.js.map +1 -0
- package/lib/typescript/Constraints.d.ts +19 -0
- package/lib/typescript/EventEmitter.d.ts +6 -0
- package/lib/typescript/Logger.d.ts +13 -0
- package/lib/typescript/MediaDevices.d.ts +30 -0
- package/lib/typescript/MediaStream.d.ts +48 -0
- package/lib/typescript/MediaStreamError.d.ts +6 -0
- package/lib/typescript/MediaStreamErrorEvent.d.ts +6 -0
- package/lib/typescript/MediaStreamTrack.d.ts +101 -0
- package/lib/typescript/MediaStreamTrackEvent.d.ts +19 -0
- package/lib/typescript/MessageEvent.d.ts +20 -0
- package/lib/typescript/Permissions.d.ts +55 -0
- package/lib/typescript/RTCAudioSession.d.ts +10 -0
- package/lib/typescript/RTCDataChannel.d.ts +43 -0
- package/lib/typescript/RTCDataChannelEvent.d.ts +19 -0
- package/lib/typescript/RTCDataPacketCryptor.d.ts +12 -0
- package/lib/typescript/RTCDataPacketCryptorFactory.d.ts +6 -0
- package/lib/typescript/RTCErrorEvent.d.ts +12 -0
- package/lib/typescript/RTCFrameCryptor.d.ts +47 -0
- package/lib/typescript/RTCFrameCryptorFactory.d.ts +21 -0
- package/lib/typescript/RTCIceCandidate.d.ts +17 -0
- package/lib/typescript/RTCIceCandidateEvent.d.ts +20 -0
- package/lib/typescript/RTCKeyProvider.d.ts +21 -0
- package/lib/typescript/RTCPIPView.d.ts +15 -0
- package/lib/typescript/RTCPIPView.web.d.ts +13 -0
- package/lib/typescript/RTCPeerConnection.d.ts +117 -0
- package/lib/typescript/RTCRtcpParameters.d.ts +10 -0
- package/lib/typescript/RTCRtpCapabilities.d.ts +9 -0
- package/lib/typescript/RTCRtpCodecCapability.d.ts +7 -0
- package/lib/typescript/RTCRtpCodecParameters.d.ts +16 -0
- package/lib/typescript/RTCRtpEncodingParameters.d.ts +23 -0
- package/lib/typescript/RTCRtpHeaderExtension.d.ts +12 -0
- package/lib/typescript/RTCRtpParameters.d.ts +19 -0
- package/lib/typescript/RTCRtpReceiveParameters.d.ts +4 -0
- package/lib/typescript/RTCRtpReceiver.d.ts +21 -0
- package/lib/typescript/RTCRtpSendParameters.d.ts +20 -0
- package/lib/typescript/RTCRtpSender.d.ts +22 -0
- package/lib/typescript/RTCRtpTransceiver.d.ts +31 -0
- package/lib/typescript/RTCSessionDescription.d.ts +12 -0
- package/lib/typescript/RTCTrackEvent.d.ts +29 -0
- package/lib/typescript/RTCUtil.d.ts +37 -0
- package/lib/typescript/RTCView.d.ts +117 -0
- package/lib/typescript/RTCView.web.d.ts +25 -0
- package/lib/typescript/ScreenCapturePickerView.d.ts +2 -0
- package/lib/typescript/ScreenCapturePickerView.web.d.ts +1 -0
- package/lib/typescript/getDisplayMedia.d.ts +2 -0
- package/lib/typescript/getUserMedia.d.ts +7 -0
- package/lib/typescript/index.d.ts +22 -0
- package/lib/typescript/index.web.d.ts +101 -0
- package/lib/typescript/webStream.d.ts +3 -0
- package/livekit-react-native-webrtc.podspec +29 -0
- package/macos/RCTWebRTC.xcodeproj/project.pbxproj +324 -0
- package/macos/RCTWebRTC.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/macos/RCTWebRTC.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/metro.config.js +7 -0
- package/metro.config.macos.js +14 -0
- package/package.json +66 -0
- package/react-native.config.js +11 -0
- package/src/.eslintrc.cjs +67 -0
- package/src/Constraints.ts +21 -0
- package/src/EventEmitter.ts +65 -0
- package/src/Logger.ts +49 -0
- package/src/MediaDevices.ts +53 -0
- package/src/MediaStream.ts +161 -0
- package/src/MediaStreamError.ts +12 -0
- package/src/MediaStreamErrorEvent.ts +11 -0
- package/src/MediaStreamTrack.ts +284 -0
- package/src/MediaStreamTrackEvent.ts +25 -0
- package/src/MessageEvent.ts +26 -0
- package/src/Permissions.ts +133 -0
- package/src/RTCAudioSession.ts +25 -0
- package/src/RTCDataChannel.ts +190 -0
- package/src/RTCDataChannelEvent.ts +28 -0
- package/src/RTCDataPacketCryptor.ts +90 -0
- package/src/RTCDataPacketCryptorFactory.ts +25 -0
- package/src/RTCErrorEvent.ts +21 -0
- package/src/RTCFrameCryptor.ts +163 -0
- package/src/RTCFrameCryptorFactory.ts +102 -0
- package/src/RTCIceCandidate.ts +29 -0
- package/src/RTCIceCandidateEvent.ts +26 -0
- package/src/RTCKeyProvider.ts +117 -0
- package/src/RTCPIPView.tsx +47 -0
- package/src/RTCPIPView.web.tsx +18 -0
- package/src/RTCPeerConnection.ts +832 -0
- package/src/RTCRtcpParameters.ts +23 -0
- package/src/RTCRtpCapabilities.ts +16 -0
- package/src/RTCRtpCodecCapability.ts +13 -0
- package/src/RTCRtpCodecParameters.ts +44 -0
- package/src/RTCRtpEncodingParameters.ts +90 -0
- package/src/RTCRtpHeaderExtension.ts +27 -0
- package/src/RTCRtpParameters.ts +37 -0
- package/src/RTCRtpReceiveParameters.ts +7 -0
- package/src/RTCRtpReceiver.ts +60 -0
- package/src/RTCRtpSendParameters.ts +63 -0
- package/src/RTCRtpSender.ts +78 -0
- package/src/RTCRtpTransceiver.ts +107 -0
- package/src/RTCSessionDescription.ts +30 -0
- package/src/RTCTrackEvent.ts +42 -0
- package/src/RTCUtil.ts +211 -0
- package/src/RTCView.ts +122 -0
- package/src/RTCView.web.tsx +82 -0
- package/src/ScreenCapturePickerView.ts +4 -0
- package/src/ScreenCapturePickerView.web.tsx +3 -0
- package/src/getDisplayMedia.ts +30 -0
- package/src/getUserMedia.ts +111 -0
- package/src/index.ts +107 -0
- package/src/index.web.ts +191 -0
- package/src/webStream.ts +33 -0
- package/tools/format.sh +6 -0
- package/tools/release.sh +45 -0
- package/tsconfig.json +17 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = getDisplayMedia;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _MediaStream = _interopRequireDefault(require("./MediaStream"));
|
|
9
|
+
var _MediaStreamError = _interopRequireDefault(require("./MediaStreamError"));
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
const {
|
|
12
|
+
WebRTCModule
|
|
13
|
+
} = _reactNative.NativeModules;
|
|
14
|
+
function getDisplayMedia() {
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
WebRTCModule.getDisplayMedia().then(data => {
|
|
17
|
+
const {
|
|
18
|
+
streamId,
|
|
19
|
+
track
|
|
20
|
+
} = data;
|
|
21
|
+
const info = {
|
|
22
|
+
streamId: streamId,
|
|
23
|
+
streamReactTag: streamId,
|
|
24
|
+
tracks: [track]
|
|
25
|
+
};
|
|
26
|
+
const stream = new _MediaStream.default(info);
|
|
27
|
+
resolve(stream);
|
|
28
|
+
}, error => {
|
|
29
|
+
reject(new _MediaStreamError.default(error));
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=getDisplayMedia.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_MediaStream","_interopRequireDefault","_MediaStreamError","obj","__esModule","default","WebRTCModule","NativeModules","getDisplayMedia","Promise","resolve","reject","then","data","streamId","track","info","streamReactTag","tracks","stream","MediaStream","error","MediaStreamError"],"sources":["getDisplayMedia.ts"],"sourcesContent":["\r\nimport { NativeModules } from 'react-native';\r\n\r\nimport MediaStream from './MediaStream';\r\nimport MediaStreamError from './MediaStreamError';\r\n\r\nconst { WebRTCModule } = NativeModules;\r\n\r\nexport default function getDisplayMedia(): Promise<MediaStream> {\r\n return new Promise((resolve, reject) => {\r\n WebRTCModule.getDisplayMedia().then(\r\n data => {\r\n const { streamId, track } = data;\r\n\r\n const info = {\r\n streamId: streamId,\r\n streamReactTag: streamId,\r\n tracks: [ track ]\r\n };\r\n\r\n const stream = new MediaStream(info);\r\n\r\n resolve(stream);\r\n },\r\n error => {\r\n reject(new MediaStreamError(error));\r\n }\r\n );\r\n });\r\n}\r\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAkD,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAElD,MAAM;EAAEG;AAAa,CAAC,GAAGC,0BAAa;AAEvB,SAASC,eAAeA,CAAA,EAAyB;EAC5D,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACpCL,YAAY,CAACE,eAAe,CAAC,CAAC,CAACI,IAAI,CAC/BC,IAAI,IAAI;MACJ,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,GAAGF,IAAI;MAEhC,MAAMG,IAAI,GAAG;QACTF,QAAQ,EAAEA,QAAQ;QAClBG,cAAc,EAAEH,QAAQ;QACxBI,MAAM,EAAE,CAAEH,KAAK;MACnB,CAAC;MAED,MAAMI,MAAM,GAAG,IAAIC,oBAAW,CAACJ,IAAI,CAAC;MAEpCN,OAAO,CAACS,MAAM,CAAC;IACnB,CAAC,EACDE,KAAK,IAAI;MACLV,MAAM,CAAC,IAAIW,yBAAgB,CAACD,KAAK,CAAC,CAAC;IACvC,CACJ,CAAC;EACL,CAAC,CAAC;AACN"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = getUserMedia;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _MediaStream = _interopRequireDefault(require("./MediaStream"));
|
|
9
|
+
var _MediaStreamError = _interopRequireDefault(require("./MediaStreamError"));
|
|
10
|
+
var _Permissions = _interopRequireDefault(require("./Permissions"));
|
|
11
|
+
var RTCUtil = _interopRequireWildcard(require("./RTCUtil"));
|
|
12
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
|
+
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; }
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
const {
|
|
16
|
+
WebRTCModule
|
|
17
|
+
} = _reactNative.NativeModules;
|
|
18
|
+
function getUserMedia() {
|
|
19
|
+
let constraints = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
20
|
+
// According to
|
|
21
|
+
// https://www.w3.org/TR/mediacapture-streams/#dom-mediadevices-getusermedia,
|
|
22
|
+
// the constraints argument is a dictionary of type MediaStreamConstraints.
|
|
23
|
+
if (typeof constraints !== 'object') {
|
|
24
|
+
return Promise.reject(new TypeError('constraints is not a dictionary'));
|
|
25
|
+
}
|
|
26
|
+
if ((typeof constraints.audio === 'undefined' || !constraints.audio) && (typeof constraints.video === 'undefined' || !constraints.video)) {
|
|
27
|
+
return Promise.reject(new TypeError('audio and/or video is required'));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Normalize constraints.
|
|
31
|
+
constraints = RTCUtil.normalizeConstraints(constraints);
|
|
32
|
+
|
|
33
|
+
// Request required permissions
|
|
34
|
+
const reqPermissions = [];
|
|
35
|
+
if (constraints.audio) {
|
|
36
|
+
reqPermissions.push(_Permissions.default.request({
|
|
37
|
+
name: 'microphone'
|
|
38
|
+
}));
|
|
39
|
+
} else {
|
|
40
|
+
reqPermissions.push(Promise.resolve(false));
|
|
41
|
+
}
|
|
42
|
+
if (constraints.video) {
|
|
43
|
+
reqPermissions.push(_Permissions.default.request({
|
|
44
|
+
name: 'camera'
|
|
45
|
+
}));
|
|
46
|
+
} else {
|
|
47
|
+
reqPermissions.push(Promise.resolve(false));
|
|
48
|
+
}
|
|
49
|
+
return new Promise((resolve, reject) => {
|
|
50
|
+
Promise.all(reqPermissions).then(results => {
|
|
51
|
+
const [audioPerm, videoPerm] = results;
|
|
52
|
+
|
|
53
|
+
// Check permission results and remove unneeded permissions.
|
|
54
|
+
|
|
55
|
+
if (!audioPerm && !videoPerm) {
|
|
56
|
+
// https://www.w3.org/TR/mediacapture-streams/#dom-mediadevices-getusermedia
|
|
57
|
+
// step 4
|
|
58
|
+
const error = {
|
|
59
|
+
message: 'Permission denied.',
|
|
60
|
+
name: 'SecurityError'
|
|
61
|
+
};
|
|
62
|
+
reject(new _MediaStreamError.default(error));
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
audioPerm || delete constraints.audio;
|
|
66
|
+
videoPerm || delete constraints.video;
|
|
67
|
+
const success = (id, tracks) => {
|
|
68
|
+
// Store initial constraints.
|
|
69
|
+
for (const trackInfo of tracks) {
|
|
70
|
+
const c = constraints[trackInfo.kind];
|
|
71
|
+
if (typeof c === 'object') {
|
|
72
|
+
trackInfo.constraints = RTCUtil.deepClone(c);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
const info = {
|
|
76
|
+
streamId: id,
|
|
77
|
+
streamReactTag: id,
|
|
78
|
+
tracks
|
|
79
|
+
};
|
|
80
|
+
resolve(new _MediaStream.default(info));
|
|
81
|
+
};
|
|
82
|
+
const failure = (type, message) => {
|
|
83
|
+
let error;
|
|
84
|
+
switch (type) {
|
|
85
|
+
case 'TypeError':
|
|
86
|
+
error = new TypeError(message);
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
if (!error) {
|
|
90
|
+
error = new _MediaStreamError.default({
|
|
91
|
+
message,
|
|
92
|
+
name: type
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
reject(error);
|
|
96
|
+
};
|
|
97
|
+
WebRTCModule.getUserMedia(constraints, success, failure);
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=getUserMedia.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_MediaStream","_interopRequireDefault","_MediaStreamError","_Permissions","RTCUtil","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","WebRTCModule","NativeModules","getUserMedia","constraints","arguments","length","undefined","Promise","reject","TypeError","audio","video","normalizeConstraints","reqPermissions","push","permissions","request","name","resolve","all","then","results","audioPerm","videoPerm","error","message","MediaStreamError","success","id","tracks","trackInfo","c","kind","deepClone","info","streamId","streamReactTag","MediaStream","failure","type"],"sources":["getUserMedia.ts"],"sourcesContent":["\r\nimport { NativeModules } from 'react-native';\r\n\r\n\r\nimport { MediaTrackConstraints } from './Constraints';\r\nimport MediaStream from './MediaStream';\r\nimport MediaStreamError from './MediaStreamError';\r\nimport permissions from './Permissions';\r\nimport * as RTCUtil from './RTCUtil';\r\n\r\nconst { WebRTCModule } = NativeModules;\r\n\r\nexport interface Constraints {\r\n audio?: boolean | MediaTrackConstraints;\r\n video?: boolean | MediaTrackConstraints;\r\n}\r\n\r\nexport default function getUserMedia(constraints: Constraints = {}): Promise<MediaStream> {\r\n // According to\r\n // https://www.w3.org/TR/mediacapture-streams/#dom-mediadevices-getusermedia,\r\n // the constraints argument is a dictionary of type MediaStreamConstraints.\r\n if (typeof constraints !== 'object') {\r\n return Promise.reject(new TypeError('constraints is not a dictionary'));\r\n }\r\n\r\n if (\r\n (typeof constraints.audio === 'undefined' || !constraints.audio) &&\r\n (typeof constraints.video === 'undefined' || !constraints.video)\r\n ) {\r\n return Promise.reject(new TypeError('audio and/or video is required'));\r\n }\r\n\r\n // Normalize constraints.\r\n constraints = RTCUtil.normalizeConstraints(constraints);\r\n\r\n // Request required permissions\r\n const reqPermissions: Promise<boolean>[] = [];\r\n\r\n if (constraints.audio) {\r\n reqPermissions.push(permissions.request({ name: 'microphone' }));\r\n } else {\r\n reqPermissions.push(Promise.resolve(false));\r\n }\r\n\r\n if (constraints.video) {\r\n reqPermissions.push(permissions.request({ name: 'camera' }));\r\n } else {\r\n reqPermissions.push(Promise.resolve(false));\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n Promise.all(reqPermissions).then(results => {\r\n const [ audioPerm, videoPerm ] = results;\r\n\r\n // Check permission results and remove unneeded permissions.\r\n\r\n if (!audioPerm && !videoPerm) {\r\n // https://www.w3.org/TR/mediacapture-streams/#dom-mediadevices-getusermedia\r\n // step 4\r\n const error = {\r\n message: 'Permission denied.',\r\n name: 'SecurityError'\r\n };\r\n\r\n reject(new MediaStreamError(error));\r\n\r\n return;\r\n }\r\n\r\n audioPerm || delete constraints.audio;\r\n videoPerm || delete constraints.video;\r\n\r\n const success = (id, tracks) => {\r\n // Store initial constraints.\r\n for (const trackInfo of tracks) {\r\n const c = constraints[trackInfo.kind];\r\n\r\n if (typeof c === 'object') {\r\n trackInfo.constraints = RTCUtil.deepClone(c);\r\n }\r\n }\r\n\r\n const info = {\r\n streamId: id,\r\n streamReactTag: id,\r\n tracks\r\n };\r\n\r\n resolve(new MediaStream(info));\r\n };\r\n\r\n const failure = (type, message) => {\r\n let error;\r\n\r\n switch (type) {\r\n case 'TypeError':\r\n error = new TypeError(message);\r\n break;\r\n }\r\n\r\n if (!error) {\r\n error = new MediaStreamError({ message, name: type });\r\n }\r\n\r\n reject(error);\r\n };\r\n\r\n WebRTCModule.getUserMedia(constraints, success, failure);\r\n });\r\n });\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "MediaStream", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _MediaStream.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "MediaStreamTrack", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _MediaStreamTrack.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "RTCAudioSession", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _RTCAudioSession.default;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "RTCDataPacketCryptor", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _RTCDataPacketCryptor.default;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "RTCDataPacketCryptorFactory", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _RTCDataPacketCryptorFactory.default;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "RTCEncryptedPacket", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _RTCDataPacketCryptor.RTCEncryptedPacket;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "RTCErrorEvent", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _RTCErrorEvent.default;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "RTCFrameCryptor", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _RTCFrameCryptor.default;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "RTCFrameCryptorAlgorithm", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _RTCFrameCryptorFactory.RTCFrameCryptorAlgorithm;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, "RTCFrameCryptorFactory", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _RTCFrameCryptorFactory.default;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
Object.defineProperty(exports, "RTCFrameCryptorState", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function () {
|
|
69
|
+
return _RTCFrameCryptor.RTCFrameCryptorState;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
Object.defineProperty(exports, "RTCIceCandidate", {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function () {
|
|
75
|
+
return _RTCIceCandidate.default;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(exports, "RTCKeyProvider", {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: function () {
|
|
81
|
+
return _RTCKeyProvider.default;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(exports, "RTCKeyProviderOptions", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
get: function () {
|
|
87
|
+
return _RTCFrameCryptorFactory.RTCKeyProviderOptions;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(exports, "RTCPIPView", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return _RTCPIPView.default;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
Object.defineProperty(exports, "RTCPeerConnection", {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
get: function () {
|
|
99
|
+
return _RTCPeerConnection.default;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
Object.defineProperty(exports, "RTCRtpReceiver", {
|
|
103
|
+
enumerable: true,
|
|
104
|
+
get: function () {
|
|
105
|
+
return _RTCRtpReceiver.default;
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
Object.defineProperty(exports, "RTCRtpSender", {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function () {
|
|
111
|
+
return _RTCRtpSender.default;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, "RTCRtpTransceiver", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _RTCRtpTransceiver.default;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
Object.defineProperty(exports, "RTCSessionDescription", {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function () {
|
|
123
|
+
return _RTCSessionDescription.default;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, "RTCView", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _RTCView.default;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
Object.defineProperty(exports, "ScreenCapturePickerView", {
|
|
133
|
+
enumerable: true,
|
|
134
|
+
get: function () {
|
|
135
|
+
return _ScreenCapturePickerView.default;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
Object.defineProperty(exports, "mediaDevices", {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: function () {
|
|
141
|
+
return _MediaDevices.default;
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
Object.defineProperty(exports, "permissions", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _Permissions.default;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
exports.registerGlobals = registerGlobals;
|
|
151
|
+
Object.defineProperty(exports, "startIOSPIP", {
|
|
152
|
+
enumerable: true,
|
|
153
|
+
get: function () {
|
|
154
|
+
return _RTCPIPView.startIOSPIP;
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
Object.defineProperty(exports, "stopIOSPIP", {
|
|
158
|
+
enumerable: true,
|
|
159
|
+
get: function () {
|
|
160
|
+
return _RTCPIPView.stopIOSPIP;
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
var _reactNative = require("react-native");
|
|
164
|
+
var _EventEmitter = require("./EventEmitter");
|
|
165
|
+
var _Logger = _interopRequireDefault(require("./Logger"));
|
|
166
|
+
var _MediaDevices = _interopRequireDefault(require("./MediaDevices"));
|
|
167
|
+
var _MediaStream = _interopRequireDefault(require("./MediaStream"));
|
|
168
|
+
var _MediaStreamTrack = _interopRequireDefault(require("./MediaStreamTrack"));
|
|
169
|
+
var _MediaStreamTrackEvent = _interopRequireDefault(require("./MediaStreamTrackEvent"));
|
|
170
|
+
var _Permissions = _interopRequireDefault(require("./Permissions"));
|
|
171
|
+
var _RTCAudioSession = _interopRequireDefault(require("./RTCAudioSession"));
|
|
172
|
+
var _RTCDataPacketCryptor = _interopRequireWildcard(require("./RTCDataPacketCryptor"));
|
|
173
|
+
var _RTCDataPacketCryptorFactory = _interopRequireDefault(require("./RTCDataPacketCryptorFactory"));
|
|
174
|
+
var _RTCErrorEvent = _interopRequireDefault(require("./RTCErrorEvent"));
|
|
175
|
+
var _RTCFrameCryptor = _interopRequireWildcard(require("./RTCFrameCryptor"));
|
|
176
|
+
var _RTCFrameCryptorFactory = _interopRequireWildcard(require("./RTCFrameCryptorFactory"));
|
|
177
|
+
var _RTCIceCandidate = _interopRequireDefault(require("./RTCIceCandidate"));
|
|
178
|
+
var _RTCKeyProvider = _interopRequireDefault(require("./RTCKeyProvider"));
|
|
179
|
+
var _RTCPIPView = _interopRequireWildcard(require("./RTCPIPView"));
|
|
180
|
+
var _RTCPeerConnection = _interopRequireDefault(require("./RTCPeerConnection"));
|
|
181
|
+
var _RTCRtpReceiver = _interopRequireDefault(require("./RTCRtpReceiver"));
|
|
182
|
+
var _RTCRtpSender = _interopRequireDefault(require("./RTCRtpSender"));
|
|
183
|
+
var _RTCRtpTransceiver = _interopRequireDefault(require("./RTCRtpTransceiver"));
|
|
184
|
+
var _RTCSessionDescription = _interopRequireDefault(require("./RTCSessionDescription"));
|
|
185
|
+
var _RTCView = _interopRequireDefault(require("./RTCView"));
|
|
186
|
+
var _ScreenCapturePickerView = _interopRequireDefault(require("./ScreenCapturePickerView"));
|
|
187
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
188
|
+
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; }
|
|
189
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
190
|
+
const {
|
|
191
|
+
WebRTCModule
|
|
192
|
+
} = _reactNative.NativeModules;
|
|
193
|
+
if (WebRTCModule === null) {
|
|
194
|
+
throw new Error(`WebRTC native module not found.\n${_reactNative.Platform.OS === 'ios' ? 'Try executing the "pod install" command inside your projects ios folder.' : 'Try executing the "npm install" command inside your projects folder.'}`);
|
|
195
|
+
}
|
|
196
|
+
_Logger.default.enable(`${_Logger.default.ROOT_PREFIX}:*`);
|
|
197
|
+
|
|
198
|
+
// Add listeners for the native events early, since they are added asynchronously.
|
|
199
|
+
(0, _EventEmitter.setupNativeEvents)();
|
|
200
|
+
function registerGlobals() {
|
|
201
|
+
// Should not happen. React Native has a global navigator object.
|
|
202
|
+
if (typeof global.navigator !== 'object') {
|
|
203
|
+
throw new Error('navigator is not an object');
|
|
204
|
+
}
|
|
205
|
+
if (!global.navigator.mediaDevices) {
|
|
206
|
+
global.navigator.mediaDevices = {};
|
|
207
|
+
}
|
|
208
|
+
global.navigator.mediaDevices.getUserMedia = _MediaDevices.default.getUserMedia.bind(_MediaDevices.default);
|
|
209
|
+
global.navigator.mediaDevices.getDisplayMedia = _MediaDevices.default.getDisplayMedia.bind(_MediaDevices.default);
|
|
210
|
+
global.navigator.mediaDevices.enumerateDevices = _MediaDevices.default.enumerateDevices.bind(_MediaDevices.default);
|
|
211
|
+
global.RTCIceCandidate = _RTCIceCandidate.default;
|
|
212
|
+
global.RTCPeerConnection = _RTCPeerConnection.default;
|
|
213
|
+
global.RTCRtpReceiver = _RTCRtpReceiver.default;
|
|
214
|
+
global.RTCRtpSender = _RTCRtpReceiver.default;
|
|
215
|
+
global.RTCSessionDescription = _RTCSessionDescription.default;
|
|
216
|
+
global.MediaStream = _MediaStream.default;
|
|
217
|
+
global.MediaStreamTrack = _MediaStreamTrack.default;
|
|
218
|
+
global.MediaStreamTrackEvent = _MediaStreamTrackEvent.default;
|
|
219
|
+
global.RTCRtpTransceiver = _RTCRtpTransceiver.default;
|
|
220
|
+
global.RTCRtpReceiver = _RTCRtpReceiver.default;
|
|
221
|
+
global.RTCRtpSender = _RTCRtpSender.default;
|
|
222
|
+
global.RTCErrorEvent = _RTCErrorEvent.default;
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_EventEmitter","_Logger","_interopRequireDefault","_MediaDevices","_MediaStream","_MediaStreamTrack","_MediaStreamTrackEvent","_Permissions","_RTCAudioSession","_RTCDataPacketCryptor","_interopRequireWildcard","_RTCDataPacketCryptorFactory","_RTCErrorEvent","_RTCFrameCryptor","_RTCFrameCryptorFactory","_RTCIceCandidate","_RTCKeyProvider","_RTCPIPView","_RTCPeerConnection","_RTCRtpReceiver","_RTCRtpSender","_RTCRtpTransceiver","_RTCSessionDescription","_RTCView","_ScreenCapturePickerView","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","WebRTCModule","NativeModules","Error","Platform","OS","Logger","enable","ROOT_PREFIX","setupNativeEvents","registerGlobals","global","navigator","mediaDevices","getUserMedia","bind","getDisplayMedia","enumerateDevices","RTCIceCandidate","RTCPeerConnection","RTCRtpReceiver","RTCRtpSender","RTCSessionDescription","MediaStream","MediaStreamTrack","MediaStreamTrackEvent","RTCRtpTransceiver","RTCErrorEvent"],"sources":["index.ts"],"sourcesContent":["import { NativeModules, Platform } from 'react-native';\r\nconst { WebRTCModule } = NativeModules;\r\n\r\nif (WebRTCModule === null) {\r\n throw new Error(`WebRTC native module not found.\\n${Platform.OS === 'ios' ?\r\n 'Try executing the \"pod install\" command inside your projects ios folder.' :\r\n 'Try executing the \"npm install\" command inside your projects folder.'\r\n }`);\r\n}\r\n\r\nimport { setupNativeEvents } from './EventEmitter';\r\nimport Logger from './Logger';\r\nimport mediaDevices from './MediaDevices';\r\nimport MediaStream from './MediaStream';\r\nimport MediaStreamTrack, {\r\n type MediaTrackSettings,\r\n type PalabraConfig,\r\n type PalabraTranscription,\r\n} from './MediaStreamTrack';\r\nimport MediaStreamTrackEvent from './MediaStreamTrackEvent';\r\nimport permissions from './Permissions';\r\nimport RTCAudioSession from './RTCAudioSession';\r\nimport RTCDataPacketCryptor, { RTCEncryptedPacket } from './RTCDataPacketCryptor';\r\nimport RTCDataPacketCryptorFactory from './RTCDataPacketCryptorFactory';\r\nimport RTCErrorEvent from './RTCErrorEvent';\r\nimport RTCFrameCryptor, { RTCFrameCryptorState } from './RTCFrameCryptor';\r\nimport RTCFrameCryptorFactory, { RTCFrameCryptorAlgorithm, RTCKeyProviderOptions } from './RTCFrameCryptorFactory';\r\nimport RTCIceCandidate from './RTCIceCandidate';\r\nimport RTCKeyProvider from './RTCKeyProvider';\r\nimport RTCPIPView, { startIOSPIP, stopIOSPIP } from './RTCPIPView';\r\nimport RTCPeerConnection from './RTCPeerConnection';\r\nimport RTCRtpReceiver from './RTCRtpReceiver';\r\nimport RTCRtpSender from './RTCRtpSender';\r\nimport RTCRtpTransceiver from './RTCRtpTransceiver';\r\nimport RTCSessionDescription from './RTCSessionDescription';\r\nimport RTCView, { type RTCVideoViewProps, type RTCIOSPIPOptions } from './RTCView';\r\nimport ScreenCapturePickerView from './ScreenCapturePickerView';\r\n\r\nLogger.enable(`${Logger.ROOT_PREFIX}:*`);\r\n\r\n// Add listeners for the native events early, since they are added asynchronously.\r\nsetupNativeEvents();\r\n\r\nexport {\r\n RTCIceCandidate,\r\n RTCPeerConnection,\r\n RTCSessionDescription,\r\n RTCView,\r\n RTCPIPView,\r\n ScreenCapturePickerView,\r\n RTCRtpTransceiver,\r\n RTCRtpReceiver,\r\n RTCRtpSender,\r\n RTCErrorEvent,\r\n RTCAudioSession,\r\n RTCDataPacketCryptor,\r\n RTCDataPacketCryptorFactory,\r\n RTCEncryptedPacket,\r\n RTCFrameCryptor,\r\n RTCFrameCryptorAlgorithm,\r\n RTCFrameCryptorState,\r\n RTCFrameCryptorFactory,\r\n RTCKeyProvider,\r\n RTCKeyProviderOptions,\r\n MediaStream,\r\n MediaStreamTrack,\r\n type MediaTrackSettings,\r\n type PalabraConfig,\r\n type PalabraTranscription,\r\n type RTCVideoViewProps,\r\n type RTCIOSPIPOptions,\r\n mediaDevices,\r\n permissions,\r\n registerGlobals,\r\n startIOSPIP,\r\n stopIOSPIP,\r\n};\r\n\r\ndeclare const global: any;\r\n\r\nfunction registerGlobals(): void {\r\n // Should not happen. React Native has a global navigator object.\r\n if (typeof global.navigator !== 'object') {\r\n throw new Error('navigator is not an object');\r\n }\r\n\r\n if (!global.navigator.mediaDevices) {\r\n global.navigator.mediaDevices = {};\r\n }\r\n\r\n global.navigator.mediaDevices.getUserMedia = mediaDevices.getUserMedia.bind(mediaDevices);\r\n global.navigator.mediaDevices.getDisplayMedia = mediaDevices.getDisplayMedia.bind(mediaDevices);\r\n global.navigator.mediaDevices.enumerateDevices = mediaDevices.enumerateDevices.bind(mediaDevices);\r\n\r\n global.RTCIceCandidate = RTCIceCandidate;\r\n global.RTCPeerConnection = RTCPeerConnection;\r\n global.RTCRtpReceiver = RTCRtpReceiver;\r\n global.RTCRtpSender = RTCRtpReceiver;\r\n global.RTCSessionDescription = RTCSessionDescription;\r\n global.MediaStream = MediaStream;\r\n global.MediaStreamTrack = MediaStreamTrack;\r\n global.MediaStreamTrackEvent = MediaStreamTrackEvent;\r\n global.RTCRtpTransceiver = RTCRtpTransceiver;\r\n global.RTCRtpReceiver = RTCRtpReceiver;\r\n global.RTCRtpSender = RTCRtpSender;\r\n global.RTCErrorEvent = RTCErrorEvent;\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.RTCKeyProvider = exports.RTCIceCandidate = exports.RTCFrameCryptorState = exports.RTCFrameCryptorFactory = exports.RTCFrameCryptorAlgorithm = exports.RTCFrameCryptor = exports.RTCErrorEvent = exports.RTCDataPacketCryptorFactory = exports.RTCDataPacketCryptor = exports.RTCAudioSession = exports.MediaStreamTrackEvent = exports.MediaStreamTrack = exports.MediaStream = void 0;
|
|
7
|
+
Object.defineProperty(exports, "RTCPIPView", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () {
|
|
10
|
+
return _RTCPIPView.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
exports.RTCSessionDescription = exports.RTCRtpTransceiver = exports.RTCRtpSender = exports.RTCRtpReceiver = exports.RTCPeerConnection = void 0;
|
|
14
|
+
Object.defineProperty(exports, "RTCView", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () {
|
|
17
|
+
return _RTCView.default;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(exports, "ScreenCapturePickerView", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function () {
|
|
23
|
+
return _ScreenCapturePickerView.default;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
exports.permissions = exports.mediaDevices = void 0;
|
|
27
|
+
exports.registerGlobals = registerGlobals;
|
|
28
|
+
Object.defineProperty(exports, "startIOSPIP", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () {
|
|
31
|
+
return _RTCPIPView.startIOSPIP;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "stopIOSPIP", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function () {
|
|
37
|
+
return _RTCPIPView.stopIOSPIP;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
var _RTCPIPView = _interopRequireWildcard(require("./RTCPIPView.web"));
|
|
41
|
+
var _RTCView = _interopRequireDefault(require("./RTCView.web"));
|
|
42
|
+
var _ScreenCapturePickerView = _interopRequireDefault(require("./ScreenCapturePickerView.web"));
|
|
43
|
+
var _webStream = require("./webStream");
|
|
44
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
45
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
46
|
+
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; }
|
|
47
|
+
let RTCFrameCryptorAlgorithm;
|
|
48
|
+
exports.RTCFrameCryptorAlgorithm = RTCFrameCryptorAlgorithm;
|
|
49
|
+
(function (RTCFrameCryptorAlgorithm) {
|
|
50
|
+
RTCFrameCryptorAlgorithm["kAesGcm"] = "kAesGcm";
|
|
51
|
+
})(RTCFrameCryptorAlgorithm || (exports.RTCFrameCryptorAlgorithm = RTCFrameCryptorAlgorithm = {}));
|
|
52
|
+
let RTCFrameCryptorState;
|
|
53
|
+
exports.RTCFrameCryptorState = RTCFrameCryptorState;
|
|
54
|
+
(function (RTCFrameCryptorState) {
|
|
55
|
+
RTCFrameCryptorState["kNew"] = "kNew";
|
|
56
|
+
RTCFrameCryptorState["kOk"] = "kOk";
|
|
57
|
+
})(RTCFrameCryptorState || (exports.RTCFrameCryptorState = RTCFrameCryptorState = {}));
|
|
58
|
+
class UnsupportedFeature {
|
|
59
|
+
unsupported() {
|
|
60
|
+
throw new Error('This WebRTC native feature is not available on web.');
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
class RTCDataPacketCryptor extends UnsupportedFeature {}
|
|
64
|
+
exports.RTCDataPacketCryptor = RTCDataPacketCryptor;
|
|
65
|
+
class RTCDataPacketCryptorFactory extends UnsupportedFeature {
|
|
66
|
+
static async createDataPacketCryptor() {
|
|
67
|
+
throw new Error('Data packet cryptor is not available on web.');
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.RTCDataPacketCryptorFactory = RTCDataPacketCryptorFactory;
|
|
71
|
+
class RTCErrorEvent extends Event {}
|
|
72
|
+
exports.RTCErrorEvent = RTCErrorEvent;
|
|
73
|
+
class RTCFrameCryptor extends UnsupportedFeature {}
|
|
74
|
+
exports.RTCFrameCryptor = RTCFrameCryptor;
|
|
75
|
+
class RTCFrameCryptorFactory extends UnsupportedFeature {
|
|
76
|
+
static createDefaultKeyProvider() {
|
|
77
|
+
return new RTCKeyProvider();
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.RTCFrameCryptorFactory = RTCFrameCryptorFactory;
|
|
81
|
+
class RTCKeyProvider extends UnsupportedFeature {
|
|
82
|
+
setSharedKey() {
|
|
83
|
+
this.unsupported();
|
|
84
|
+
}
|
|
85
|
+
setKey() {
|
|
86
|
+
this.unsupported();
|
|
87
|
+
}
|
|
88
|
+
ratchetKey() {
|
|
89
|
+
this.unsupported();
|
|
90
|
+
}
|
|
91
|
+
ratchetSharedKey() {
|
|
92
|
+
this.unsupported();
|
|
93
|
+
}
|
|
94
|
+
setSifTrailer() {
|
|
95
|
+
this.unsupported();
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
99
|
+
dispose() {}
|
|
100
|
+
}
|
|
101
|
+
exports.RTCKeyProvider = RTCKeyProvider;
|
|
102
|
+
class RTCAudioSession {
|
|
103
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
104
|
+
static async setConfiguration() {}
|
|
105
|
+
}
|
|
106
|
+
exports.RTCAudioSession = RTCAudioSession;
|
|
107
|
+
const mediaDevices = typeof navigator !== 'undefined' && navigator.mediaDevices ? navigator.mediaDevices : {
|
|
108
|
+
enumerateDevices: async () => [],
|
|
109
|
+
getDisplayMedia: async () => {
|
|
110
|
+
throw new Error('Display capture is not available.');
|
|
111
|
+
},
|
|
112
|
+
getUserMedia: async () => {
|
|
113
|
+
throw new Error('User media is not available.');
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
exports.mediaDevices = mediaDevices;
|
|
117
|
+
const permissions = {
|
|
118
|
+
async check() {
|
|
119
|
+
return true;
|
|
120
|
+
},
|
|
121
|
+
async request() {
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
exports.permissions = permissions;
|
|
126
|
+
const RTCIceCandidateRef = typeof globalThis.RTCIceCandidate === 'function' ? globalThis.RTCIceCandidate : class {};
|
|
127
|
+
const RTCPeerConnectionRef = typeof globalThis.RTCPeerConnection === 'function' ? globalThis.RTCPeerConnection : class {};
|
|
128
|
+
const RTCSessionDescriptionRef = typeof globalThis.RTCSessionDescription === 'function' ? globalThis.RTCSessionDescription : class {};
|
|
129
|
+
const RTCRtpReceiverRef = typeof globalThis.RTCRtpReceiver === 'function' ? globalThis.RTCRtpReceiver : class {};
|
|
130
|
+
const RTCRtpSenderRef = typeof globalThis.RTCRtpSender === 'function' ? globalThis.RTCRtpSender : class {};
|
|
131
|
+
const RTCRtpTransceiverRef = typeof globalThis.RTCRtpTransceiver === 'function' ? globalThis.RTCRtpTransceiver : class {};
|
|
132
|
+
const MediaStreamRef = typeof globalThis.MediaStream === 'function' ? globalThis.MediaStream : class {};
|
|
133
|
+
const MediaStreamTrackRef = typeof globalThis.MediaStreamTrack === 'function' ? globalThis.MediaStreamTrack : class {};
|
|
134
|
+
const MediaStreamTrackEventRef = typeof globalThis.MediaStreamTrackEvent === 'function' ? globalThis.MediaStreamTrackEvent : class extends Event {};
|
|
135
|
+
const RTCIceCandidate = RTCIceCandidateRef;
|
|
136
|
+
exports.RTCIceCandidate = RTCIceCandidate;
|
|
137
|
+
const RTCPeerConnection = RTCPeerConnectionRef;
|
|
138
|
+
exports.RTCPeerConnection = RTCPeerConnection;
|
|
139
|
+
const RTCSessionDescription = RTCSessionDescriptionRef;
|
|
140
|
+
exports.RTCSessionDescription = RTCSessionDescription;
|
|
141
|
+
const RTCRtpReceiver = RTCRtpReceiverRef;
|
|
142
|
+
exports.RTCRtpReceiver = RTCRtpReceiver;
|
|
143
|
+
const RTCRtpSender = RTCRtpSenderRef;
|
|
144
|
+
exports.RTCRtpSender = RTCRtpSender;
|
|
145
|
+
const RTCRtpTransceiver = RTCRtpTransceiverRef;
|
|
146
|
+
exports.RTCRtpTransceiver = RTCRtpTransceiver;
|
|
147
|
+
const MediaStream = MediaStreamRef;
|
|
148
|
+
exports.MediaStream = MediaStream;
|
|
149
|
+
const MediaStreamTrack = MediaStreamTrackRef;
|
|
150
|
+
exports.MediaStreamTrack = MediaStreamTrack;
|
|
151
|
+
const MediaStreamTrackEvent = MediaStreamTrackEventRef;
|
|
152
|
+
exports.MediaStreamTrackEvent = MediaStreamTrackEvent;
|
|
153
|
+
function registerGlobals() {
|
|
154
|
+
var _globalThis$navigator;
|
|
155
|
+
(0, _webStream.patchMediaStream)();
|
|
156
|
+
const nav = (_globalThis$navigator = globalThis.navigator) !== null && _globalThis$navigator !== void 0 ? _globalThis$navigator : {};
|
|
157
|
+
if (typeof globalThis.navigator === 'undefined') {
|
|
158
|
+
globalThis.navigator = nav;
|
|
159
|
+
}
|
|
160
|
+
if (!nav.mediaDevices) {
|
|
161
|
+
nav.mediaDevices = mediaDevices;
|
|
162
|
+
}
|
|
163
|
+
const globalRef = globalThis;
|
|
164
|
+
globalRef.RTCIceCandidate = RTCIceCandidate;
|
|
165
|
+
globalRef.RTCPeerConnection = RTCPeerConnection;
|
|
166
|
+
globalRef.RTCSessionDescription = RTCSessionDescription;
|
|
167
|
+
globalRef.MediaStream = MediaStream;
|
|
168
|
+
globalRef.MediaStreamTrack = MediaStreamTrack;
|
|
169
|
+
globalRef.MediaStreamTrackEvent = MediaStreamTrackEvent;
|
|
170
|
+
globalRef.RTCRtpTransceiver = RTCRtpTransceiver;
|
|
171
|
+
globalRef.RTCRtpReceiver = RTCRtpReceiver;
|
|
172
|
+
globalRef.RTCRtpSender = RTCRtpSender;
|
|
173
|
+
globalRef.RTCErrorEvent = RTCErrorEvent;
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_RTCPIPView","_interopRequireWildcard","require","_RTCView","_interopRequireDefault","_ScreenCapturePickerView","_webStream","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RTCFrameCryptorAlgorithm","exports","RTCFrameCryptorState","UnsupportedFeature","unsupported","Error","RTCDataPacketCryptor","RTCDataPacketCryptorFactory","createDataPacketCryptor","RTCErrorEvent","Event","RTCFrameCryptor","RTCFrameCryptorFactory","createDefaultKeyProvider","RTCKeyProvider","setSharedKey","setKey","ratchetKey","ratchetSharedKey","setSifTrailer","dispose","RTCAudioSession","setConfiguration","mediaDevices","navigator","enumerateDevices","getDisplayMedia","getUserMedia","permissions","check","request","RTCIceCandidateRef","globalThis","RTCIceCandidate","RTCPeerConnectionRef","RTCPeerConnection","RTCSessionDescriptionRef","RTCSessionDescription","RTCRtpReceiverRef","RTCRtpReceiver","RTCRtpSenderRef","RTCRtpSender","RTCRtpTransceiverRef","RTCRtpTransceiver","MediaStreamRef","MediaStream","MediaStreamTrackRef","MediaStreamTrack","MediaStreamTrackEventRef","MediaStreamTrackEvent","registerGlobals","_globalThis$navigator","patchMediaStream","nav","globalRef"],"sources":["index.web.ts"],"sourcesContent":["import RTCPIPView, { startIOSPIP, stopIOSPIP } from './RTCPIPView.web';\r\nimport RTCView, { type RTCIOSPIPOptions, type RTCVideoViewProps } from './RTCView.web';\r\nimport ScreenCapturePickerView from './ScreenCapturePickerView.web';\r\nimport { patchMediaStream } from './webStream';\r\n\r\nexport type MediaTrackSettings = Record<string, unknown>;\r\nexport type PalabraConfig = Record<string, never>;\r\nexport type PalabraTranscription = {\r\n text: string;\r\n lang: string;\r\n isFinal: boolean;\r\n};\r\nexport type RTCEncryptedPacket = {\r\n payload: Uint8Array;\r\n iv: Uint8Array;\r\n keyIndex: number;\r\n};\r\n\r\nexport enum RTCFrameCryptorAlgorithm {\r\n kAesGcm = 'kAesGcm',\r\n}\r\n\r\nexport enum RTCFrameCryptorState {\r\n kNew = 'kNew',\r\n kOk = 'kOk',\r\n}\r\n\r\nexport type RTCKeyProviderOptions = Record<string, unknown>;\r\n\r\nclass UnsupportedFeature {\r\n protected unsupported(): never {\r\n throw new Error('This WebRTC native feature is not available on web.');\r\n }\r\n}\r\n\r\nclass RTCDataPacketCryptor extends UnsupportedFeature {}\r\n\r\nclass RTCDataPacketCryptorFactory extends UnsupportedFeature {\r\n static async createDataPacketCryptor() {\r\n throw new Error('Data packet cryptor is not available on web.');\r\n }\r\n}\r\n\r\nclass RTCErrorEvent extends Event {}\r\n\r\nclass RTCFrameCryptor extends UnsupportedFeature {}\r\n\r\nclass RTCFrameCryptorFactory extends UnsupportedFeature {\r\n static createDefaultKeyProvider() {\r\n return new RTCKeyProvider();\r\n }\r\n}\r\n\r\nclass RTCKeyProvider extends UnsupportedFeature {\r\n setSharedKey() {\r\n this.unsupported();\r\n }\r\n\r\n setKey() {\r\n this.unsupported();\r\n }\r\n\r\n ratchetKey() {\r\n this.unsupported();\r\n }\r\n\r\n ratchetSharedKey() {\r\n this.unsupported();\r\n }\r\n\r\n setSifTrailer() {\r\n this.unsupported();\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-empty-function\r\n dispose() {}\r\n}\r\n\r\nclass RTCAudioSession {\r\n // eslint-disable-next-line @typescript-eslint/no-empty-function\r\n static async setConfiguration() {}\r\n}\r\n\r\nconst mediaDevices = typeof navigator !== 'undefined' && navigator.mediaDevices\r\n ? navigator.mediaDevices\r\n : {\r\n enumerateDevices: async () => [],\r\n getDisplayMedia: async () => {\r\n throw new Error('Display capture is not available.');\r\n },\r\n getUserMedia: async () => {\r\n throw new Error('User media is not available.');\r\n },\r\n };\r\n\r\nconst permissions = {\r\n async check() {\r\n return true;\r\n },\r\n async request() {\r\n return true;\r\n },\r\n};\r\n\r\nconst RTCIceCandidateRef =\r\n typeof globalThis.RTCIceCandidate === 'function' ? globalThis.RTCIceCandidate : class {};\r\nconst RTCPeerConnectionRef =\r\n typeof globalThis.RTCPeerConnection === 'function' ? globalThis.RTCPeerConnection : class {};\r\nconst RTCSessionDescriptionRef =\r\n typeof globalThis.RTCSessionDescription === 'function'\r\n ? globalThis.RTCSessionDescription\r\n : class {};\r\nconst RTCRtpReceiverRef =\r\n typeof globalThis.RTCRtpReceiver === 'function' ? globalThis.RTCRtpReceiver : class {};\r\nconst RTCRtpSenderRef =\r\n typeof globalThis.RTCRtpSender === 'function' ? globalThis.RTCRtpSender : class {};\r\nconst RTCRtpTransceiverRef =\r\n typeof globalThis.RTCRtpTransceiver === 'function'\r\n ? globalThis.RTCRtpTransceiver\r\n : class {};\r\nconst MediaStreamRef =\r\n typeof globalThis.MediaStream === 'function' ? globalThis.MediaStream : class {};\r\nconst MediaStreamTrackRef =\r\n typeof globalThis.MediaStreamTrack === 'function'\r\n ? globalThis.MediaStreamTrack\r\n : class {};\r\nconst MediaStreamTrackEventRef =\r\n typeof globalThis.MediaStreamTrackEvent === 'function'\r\n ? globalThis.MediaStreamTrackEvent\r\n : class extends Event {};\r\n\r\nexport const RTCIceCandidate = RTCIceCandidateRef as typeof globalThis.RTCIceCandidate;\r\nexport const RTCPeerConnection = RTCPeerConnectionRef as typeof globalThis.RTCPeerConnection;\r\nexport const RTCSessionDescription =\r\n RTCSessionDescriptionRef as typeof globalThis.RTCSessionDescription;\r\nexport const RTCRtpReceiver = RTCRtpReceiverRef as typeof globalThis.RTCRtpReceiver;\r\nexport const RTCRtpSender = RTCRtpSenderRef as typeof globalThis.RTCRtpSender;\r\nexport const RTCRtpTransceiver =\r\n RTCRtpTransceiverRef as typeof globalThis.RTCRtpTransceiver;\r\nexport const MediaStream = MediaStreamRef as typeof globalThis.MediaStream;\r\nexport const MediaStreamTrack = MediaStreamTrackRef as typeof globalThis.MediaStreamTrack;\r\nexport const MediaStreamTrackEvent =\r\n MediaStreamTrackEventRef as typeof globalThis.MediaStreamTrackEvent;\r\n\r\nexport function registerGlobals(): void {\r\n patchMediaStream();\r\n\r\n const nav = (globalThis.navigator ?? {}) as unknown as Record<string, unknown> & {\r\n mediaDevices?: typeof mediaDevices;\r\n };\r\n\r\n if (typeof globalThis.navigator === 'undefined') {\r\n (globalThis as typeof globalThis & { navigator: typeof nav }).navigator = nav as any;\r\n }\r\n\r\n if (!nav.mediaDevices) {\r\n nav.mediaDevices = mediaDevices;\r\n }\r\n\r\n const globalRef = globalThis as typeof globalThis & Record<string, unknown>;\r\n\r\n globalRef.RTCIceCandidate = RTCIceCandidate;\r\n globalRef.RTCPeerConnection = RTCPeerConnection;\r\n globalRef.RTCSessionDescription = RTCSessionDescription;\r\n globalRef.MediaStream = MediaStream;\r\n globalRef.MediaStreamTrack = MediaStreamTrack;\r\n globalRef.MediaStreamTrackEvent = MediaStreamTrackEvent;\r\n globalRef.RTCRtpTransceiver = RTCRtpTransceiver;\r\n globalRef.RTCRtpReceiver = RTCRtpReceiver;\r\n globalRef.RTCRtpSender = RTCRtpSender;\r\n globalRef.RTCErrorEvent = RTCErrorEvent;\r\n}\r\n\r\nexport {\r\n mediaDevices,\r\n permissions,\r\n RTCView,\r\n RTCPIPView,\r\n ScreenCapturePickerView,\r\n RTCAudioSession,\r\n RTCDataPacketCryptor,\r\n RTCDataPacketCryptorFactory,\r\n RTCErrorEvent,\r\n RTCFrameCryptor,\r\n RTCFrameCryptorFactory,\r\n RTCKeyProvider,\r\n startIOSPIP,\r\n stopIOSPIP,\r\n type RTCVideoViewProps,\r\n type RTCIOSPIPOptions,\r\n};\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getStream = getStream;
|
|
7
|
+
exports.patchMediaStream = patchMediaStream;
|
|
8
|
+
exports.rememberStream = rememberStream;
|
|
9
|
+
const streams = new Map();
|
|
10
|
+
function rememberStream(stream) {
|
|
11
|
+
if (!stream) {
|
|
12
|
+
return '';
|
|
13
|
+
}
|
|
14
|
+
streams.set(stream.id, stream);
|
|
15
|
+
return stream.id;
|
|
16
|
+
}
|
|
17
|
+
function getStream(streamURL) {
|
|
18
|
+
var _streams$get;
|
|
19
|
+
if (!streamURL) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
return (_streams$get = streams.get(streamURL)) !== null && _streams$get !== void 0 ? _streams$get : null;
|
|
23
|
+
}
|
|
24
|
+
function patchMediaStream() {
|
|
25
|
+
if (typeof MediaStream === 'undefined') {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const proto = MediaStream.prototype;
|
|
29
|
+
if (typeof proto.toURL !== 'function') {
|
|
30
|
+
proto.toURL = function toURL() {
|
|
31
|
+
return rememberStream(this);
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=webStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["streams","Map","rememberStream","stream","set","id","getStream","streamURL","_streams$get","get","patchMediaStream","MediaStream","proto","prototype","toURL"],"sources":["webStream.ts"],"sourcesContent":["const streams = new Map<string, MediaStream>();\r\n\r\nexport function rememberStream(stream: MediaStream | null | undefined): string {\r\n if (!stream) {\r\n return '';\r\n }\r\n\r\n streams.set(stream.id, stream);\n\r\n return stream.id;\r\n}\r\n\r\nexport function getStream(streamURL?: string): MediaStream | null {\r\n if (!streamURL) {\r\n return null;\r\n }\r\n\r\n return streams.get(streamURL) ?? null;\r\n}\r\n\r\nexport function patchMediaStream() {\r\n if (typeof MediaStream === 'undefined') {\r\n return;\r\n }\r\n\r\n const proto = MediaStream.prototype as MediaStream & { toURL?: () => string };\n\r\n if (typeof proto.toURL !== 'function') {\r\n proto.toURL = function toURL() {\r\n return rememberStream(this);\r\n };\r\n }\r\n}\r\n"],"mappings":";;;;;;;;AAAA,MAAMA,OAAO,GAAG,IAAIC,GAAG,CAAsB,CAAC;AAEvC,SAASC,cAAcA,CAACC,MAAsC,EAAU;EAC3E,IAAI,CAACA,MAAM,EAAE;IACT,OAAO,EAAE;EACb;EAEAH,OAAO,CAACI,GAAG,CAACD,MAAM,CAACE,EAAE,EAAEF,MAAM,CAAC;EAE9B,OAAOA,MAAM,CAACE,EAAE;AACpB;AAEO,SAASC,SAASA,CAACC,SAAkB,EAAsB;EAAA,IAAAC,YAAA;EAC9D,IAAI,CAACD,SAAS,EAAE;IACZ,OAAO,IAAI;EACf;EAEA,QAAAC,YAAA,GAAOR,OAAO,CAACS,GAAG,CAACF,SAAS,CAAC,cAAAC,YAAA,cAAAA,YAAA,GAAI,IAAI;AACzC;AAEO,SAASE,gBAAgBA,CAAA,EAAG;EAC/B,IAAI,OAAOC,WAAW,KAAK,WAAW,EAAE;IACpC;EACJ;EAEA,MAAMC,KAAK,GAAGD,WAAW,CAACE,SAAmD;EAE7E,IAAI,OAAOD,KAAK,CAACE,KAAK,KAAK,UAAU,EAAE;IACnCF,KAAK,CAACE,KAAK,GAAG,SAASA,KAAKA,CAAA,EAAG;MAC3B,OAAOZ,cAAc,CAAC,IAAI,CAAC;IAC/B,CAAC;EACL;AACJ"}
|