···11export { Countdown } from "./countdown";
22-export { Player } from "./player/player";
32export { default as Provider } from "./provider/provider";
43export { Settings } from "./settings/settings";
···11-export {
22- RTCPeerConnection,
33- RTCSessionDescription,
44- MediaStream as WebRTCMediaStream,
55- mediaDevices,
66-} from "react-native-webrtc";
-33
js/app/components/player/webrtc-primitives.tsx
···11-// Browser compatibility checks for WebRTC
22-const checkWebRTCSupport = () => {
33- if (typeof window === "undefined") {
44- throw new Error("WebRTC is not available in non-browser environments");
55- }
66-77- if (!window.RTCPeerConnection) {
88- throw new Error(
99- "RTCPeerConnection is not supported in this browser. Please use a modern browser that supports WebRTC.",
1010- );
1111- }
1212-1313- if (!window.RTCSessionDescription) {
1414- throw new Error(
1515- "RTCSessionDescription is not supported in this browser. Please use a modern browser that supports WebRTC.",
1616- );
1717- }
1818-};
1919-2020-// Check support immediately
2121-try {
2222- checkWebRTCSupport();
2323-} catch (error) {
2424- console.error("WebRTC Compatibility Error:", error.message);
2525-}
2626-2727-export const RTCPeerConnection = window.RTCPeerConnection;
2828-export const RTCSessionDescription = window.RTCSessionDescription;
2929-export const WebRTCMediaStream = window.MediaStream;
3030-export const mediaDevices = navigator.mediaDevices;
3131-3232-// Export the compatibility checker for use in other components
3333-export { checkWebRTCSupport };