import { useEffect, useState } from "react"; import { View, Text, TextInput, Pressable } from "react-native"; import { loadHostUrl, saveHostUrl } from "../../src/transport/host-config.js"; import { bootstrapTransport, onStatus, type ConnStatus } from "../../src/bootstrap/transport-bootstrap.js"; import { tokens } from "../../src/theme/tokens.js"; const STATUS_COLOR: Record = { connecting: tokens.color.warning, connected: tokens.color.success, disconnected: tokens.color.textDim, error: tokens.color.error, }; export default function SettingsScreen() { const [url, setUrl] = useState(""); const [status, setStatus] = useState("connecting"); useEffect(() => { loadHostUrl().then(setUrl); return onStatus(setStatus); }, []); const apply = async () => { await saveHostUrl(url); await bootstrapTransport(url); }; return ( {status} {"Host WebSocket URL — simulator: ws://localhost:6767 · device: ws://:6767 or a wss:// relay"} Connect ); }