kingkont 0.7.17 → 0.7.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.html +16 -2
- package/package.json +1 -1
package/index.html
CHANGED
|
@@ -6881,6 +6881,7 @@ function populateVoicesSelect(voices) {
|
|
|
6881
6881
|
for (const v of voices) {
|
|
6882
6882
|
const opt = document.createElement('option');
|
|
6883
6883
|
opt.value = v.id;
|
|
6884
|
+
opt.dataset.voiceName = v.name; // нужно для KingKont elevenlabs/v3 (он ждёт name, не id)
|
|
6884
6885
|
const lbl = v.labels || {};
|
|
6885
6886
|
const tags = [lbl.gender, lbl.language || lbl.accent, lbl.age].filter(Boolean).join(' / ');
|
|
6886
6887
|
opt.textContent = tags ? `${v.name} — ${tags}` : v.name;
|
|
@@ -7246,11 +7247,24 @@ async function runTTSJob(node, text, boardHandle, bKey, voiceId) {
|
|
|
7246
7247
|
// ttsModel может быть сохранён в node.generated.ttsModel (при regenerate)
|
|
7247
7248
|
// или в текущем глобальном state.ttsModel (новая генерация).
|
|
7248
7249
|
const ttsModel = node.generated?.ttsModel || state.ttsModel || 'qwen/qwen3-tts';
|
|
7249
|
-
|
|
7250
|
+
// ElevenLabs v3 в KingKont/Chatium ждёт voice как ИМЯ ('Rachel', 'Lara
|
|
7251
|
+
// Croft'), не voice_id. Резолвим имя через select option (data-voice-name).
|
|
7252
|
+
let voiceName = node.generated?.voiceName || null;
|
|
7253
|
+
if (!voiceName && voiceId) {
|
|
7254
|
+
const opt = document.querySelector(`#genVoice option[value="${voiceId}"]`);
|
|
7255
|
+
voiceName = opt?.dataset.voiceName || null;
|
|
7256
|
+
}
|
|
7257
|
+
const ttsBody = { text, voiceId, ttsModel };
|
|
7258
|
+
if (ttsModel === 'elevenlabs/v3' && voiceName) {
|
|
7259
|
+
ttsBody.voice = voiceName; // отправляем ИМЯ
|
|
7260
|
+
} else if (voiceId) {
|
|
7261
|
+
ttsBody.voice = voiceId;
|
|
7262
|
+
}
|
|
7263
|
+
logJob(node.id, `→ POST /api/tts → ${provider} (model=${ttsModel} voice=${ttsBody.voice || '—'})`);
|
|
7250
7264
|
const r = await fetch('/api/tts', {
|
|
7251
7265
|
method: 'POST',
|
|
7252
7266
|
headers: { 'Content-Type': 'application/json' },
|
|
7253
|
-
body: JSON.stringify(
|
|
7267
|
+
body: JSON.stringify(ttsBody),
|
|
7254
7268
|
});
|
|
7255
7269
|
logJob(node.id, `← via ${r.headers.get('x-provider') || '?'} HTTP ${r.status}`);
|
|
7256
7270
|
if (!r.ok) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kingkont",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.19",
|
|
4
4
|
"description": "KingKont \u00b7 Chatium \u2014 \u043d\u043e\u0434-\u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0441\u0446\u0435\u043d \u0441 AI-\u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0435\u0439 (\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438/\u0432\u0438\u0434\u0435\u043e/\u0433\u043e\u043b\u043e\u0441/SFX/\u043c\u0443\u0437\u044b\u043a\u0430/\u0442\u0435\u043a\u0441\u0442)",
|
|
5
5
|
"main": "main.js",
|
|
6
6
|
"bin": {
|