Jelajahi Sumber

fix: loop until voice list available

Timothy J. Baek 1 tahun lalu
induk
melakukan
3b7f7c6e32
1 mengubah file dengan 11 tambahan dan 1 penghapusan
  1. 11 1
      src/lib/components/chat/SettingsModal.svelte

+ 11 - 1
src/lib/components/chat/SettingsModal.svelte

@@ -618,7 +618,17 @@
 		gravatarEmail = settings.gravatarEmail ?? '';
 
 		speakVoice = settings.speakVoice ?? '';
-		await voices.set(await speechSynthesis.getVoices());
+		// await voices.set(await speechSynthesis.getVoices());
+
+		const getVoicesLoop = setInterval(async () => {
+			const _voices = await speechSynthesis.getVoices();
+			await voices.set(_voices);
+
+			// do your loop
+			if (_voices.length > 0) {
+				clearInterval(getVoicesLoop);
+			}
+		}, 100);
 
 		saveChatHistory = settings.saveChatHistory ?? true;