Skip to content

Commit 8a794d5

Browse files
Merge pull request #2043 from sharan-deep21/fix-elevenlabs-voices-order
Fix ElevenLabs voices ordering in Voices list
2 parents 69e59e2 + 5790460 commit 8a794d5

File tree

1 file changed

+10
-11
lines changed
  • src/providers/SpeechProvider

1 file changed

+10
-11
lines changed

src/providers/SpeechProvider/tts.js

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@ const tts = {
200200
return new Promise((resolve, reject) => {
201201
platformVoices = this._getPlatformVoices() || [];
202202
const allVoices = platformVoices
203-
.concat(cloudVoices)
204-
.concat(elevenLabsVoices);
203+
.concat(elevenLabsVoices)
204+
.concat(cloudVoices);
205205

206206
if (platformVoices.length) {
207207
resolve(allVoices);
@@ -211,21 +211,20 @@ const tts = {
211211
if ('onvoiceschanged' in synth) {
212212
synth.addEventListener('voiceschanged', function voiceslst() {
213213
const voices = synth.getVoices();
214-
if (!voices.length) {
214+
synth.removeEventListener('voiceschanged', voiceslst);
215+
216+
if (!voices || voices.length === 0) {
217+
resolve(elevenLabsVoices.concat(cloudVoices));
215218
return null;
216-
} else {
217-
synth.removeEventListener('voiceschanged', voiceslst);
218-
// On Cordova, voice results are under `._list`
219-
platformVoices = voices._list || voices;
220-
resolve(
221-
platformVoices.concat(cloudVoices).concat(elevenLabsVoices)
222-
);
223219
}
220+
221+
platformVoices = voices._list || voices;
222+
resolve(platformVoices.concat(elevenLabsVoices).concat(cloudVoices));
224223
});
225224
} else if (isCordova()) {
226225
// Samsung devices on Cordova
227226
platformVoices = this._getPlatformVoices();
228-
resolve(platformVoices.concat(cloudVoices).concat(elevenLabsVoices));
227+
resolve(platformVoices.concat(elevenLabsVoices).concat(cloudVoices));
229228
}
230229
});
231230
},

0 commit comments

Comments
 (0)