"use strict"; (function () { const el = document.getElementById("kiosk-welcome-root"); if (!el) return; const companyId = el.dataset.companyId; if (!companyId) return; const connection = new signalR.HubConnectionBuilder() .withUrl(`/hubs/kiosk?companyId=${companyId}`) .withAutomaticReconnect([2000, 5000, 10000, 30000]) .configureLogging(signalR.LogLevel.Warning) .build(); connection.on("StartIntake", function (sessionToken) { window.location.href = `/Kiosk/Intake/${sessionToken}/Contact`; }); async function startConnection() { try { await connection.start(); } catch (err) { console.warn("Kiosk SignalR connect failed, retrying in 10s...", err); setTimeout(startConnection, 10000); } } startConnection(); // Show connection status indicator connection.onreconnecting(() => { const dot = document.getElementById("kiosk-conn-dot"); if (dot) dot.style.background = "#f59e0b"; }); connection.onreconnected(() => { const dot = document.getElementById("kiosk-conn-dot"); if (dot) dot.style.background = "#16a34a"; }); connection.onclose(() => { const dot = document.getElementById("kiosk-conn-dot"); if (dot) dot.style.background = "#ef4444"; // Keep retrying setTimeout(startConnection, 10000); }); })();