diff --git a/app/pages/classroom.vue b/app/pages/classroom.vue index 7863576..da06aaf 100644 --- a/app/pages/classroom.vue +++ b/app/pages/classroom.vue @@ -1324,6 +1324,17 @@ /> +
+
+ Local Bridge + Speech requests use a Bridge running on this device when detected, otherwise the cloud service. +
+ + + {{ localBridgeConnected ? 'Connected' : 'Not detected' }} + +
+
Test TTS
@@ -2851,7 +2862,8 @@ const promptReplayCount = ref(0) const replaySpeedHintSeen = ref(false) const api = useApi() -const {localUrl} = useLocalSpeechBridge() +const {localUrl, localBase} = useLocalSpeechBridge() +const localBridgeConnected = computed(() => Boolean(localBase.value)) const isClient = typeof window !== 'undefined' const auth = useAuthStore() @@ -7203,6 +7215,30 @@ onMounted(() => { max-width: 70%; } +.bridge-status { + display: flex; + align-items: center; + gap: 6px; + font-size: 0.85rem; + color: var(--t3); + white-space: nowrap; +} + +.bridge-dot { + width: 7px; + height: 7px; + border-radius: 50%; + background: var(--t3); +} + +.bridge-status.connected { + color: var(--accent); +} + +.bridge-status.connected .bridge-dot { + background: var(--accent); +} + .speech-server-dialog { display: grid; gap: 16px;