fix: track Laya language batches and normalize labels (#22)

Report post-projection Laya language detection as a busy analysis phase and normalize Laya language labels before caching and display.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
blomios
2026-10-05 23:42:11 +02:00
parent 45b56d872f
commit a6759b116d
9 changed files with 282 additions and 21 deletions

View File

@ -10,9 +10,19 @@
return Math.max(0, Math.min(100, Math.round(number <= 1 ? number * 100 : number)));
}
function normalizeLanguageCode(value) {
const normalized = String(value || '').trim().toLowerCase();
const aliases = {
fr: 'fr', french: 'fr', français: 'fr', francais: 'fr',
en: 'en', english: 'en', anglais: 'en',
es: 'es', spanish: 'es', español: 'es', espanol: 'es'
};
return aliases[normalized] || 'unknown';
}
function layaDetection(result) {
const rawCode = result?.language?.code || result?.language || 'unknown';
const code = ['fr', 'en', 'es'].includes(rawCode) ? rawCode : 'unknown';
const rawCode = result?.language?.code || result?.language?.label || result?.language || 'unknown';
const code = normalizeLanguageCode(rawCode);
const confidence = normalizeConfidence(result?.language?.confidence ?? result?.confidence);
return {
language: {
@ -79,5 +89,5 @@
};
}
return { applyLanguageMode, buildLayaDescriptor, layaDetection, mergeHybrid, normalizeConfidence };
return { applyLanguageMode, buildLayaDescriptor, layaDetection, mergeHybrid, normalizeConfidence, normalizeLanguageCode };
});