+
+ {/* ORB — agora com comportamento inteligente */}
+
+
+
+ {isRecording && (
+
+ {voiceDetected ? "Ouvindo…" : "Aguardando voz…"}
+
+ )}
+
+
+ {/* 🟣 Botão de gravação */}
+
+
+ {/* STATUS */}
+ {status &&
{status}
}
+ {error &&
{error}
}
+
+ {/* PLAYER MANUAL DA RESPOSTA */}
+ {replyAudioUrl && (
+
+
Última resposta da IA:
+
+
+ )}
+
+ );
+};
+
+export default AIVoiceFlow;
diff --git a/susconecta/types/lamejs.d.ts b/susconecta/types/lamejs.d.ts
new file mode 100644
index 0000000..f1cfb4f
--- /dev/null
+++ b/susconecta/types/lamejs.d.ts
@@ -0,0 +1,14 @@
+// Minimal type declarations for lamejs used in demo-voice-orb
+// Extend if more APIs are required.
+
+declare module 'lamejs' {
+ class Mp3Encoder {
+ constructor(channels: number, sampleRate: number, kbps: number);
+ encodeBuffer(buffer: Int16Array): Uint8Array;
+ flush(): Uint8Array;
+ }
+ export { Mp3Encoder };
+ // Default export pattern support
+ const _default: { Mp3Encoder: typeof Mp3Encoder };
+ export default _default;
+}