import { invoke, event } from "./node_modules/@tauri-apps/api/index.js"; import { setup_listeners } from "./async_listeners.js"; import { rtc_init } from "./rtc.js"; function call_camera_connect() { invoke("connect_to_camera", {}) .then(() => { let cam_button = document.getElementById("camera_connect_button"); cam_button.innerText = "Connecting to Camera"; cam_button.classList.remove("text-semibold"); cam_button.classList.remove("text-white"); cam_button.classList.add("text-neutral-400") }) .catch((e) => console.error(e)); } function supports_webrtc() { var isWebRTCSupported = false; ['RTCPeerConnection', 'webkitRTCPeerConnection', 'mozRTCPeerConnection', 'RTCIceGatherer'].forEach(function(item) { if (isWebRTCSupported) { return; } if (item in window) { isWebRTCSupported = true; } }); return isWebRTCSupported; } async function init() { console.log("Setting up"); document.getElementById("camera_connect_button").addEventListener("click", call_camera_connect); await setup_listeners(); let webrtc_support = supports_webrtc(); invoke("supports_webrtc", { has_support: webrtc_support }); if (webrtc_support) { await rtc_init(); } } export { init };