modified: src/languages/ar.js

modified:   src/languages/bn.js
	modified:   src/languages/de.js
	modified:   src/languages/en.js
	modified:   src/languages/es.js
	modified:   src/languages/fr.js
	modified:   src/languages/hi.js
	modified:   src/languages/id.js
	modified:   src/languages/ja.js
	modified:   src/languages/ko.js
	modified:   src/languages/mr.js
	modified:   src/languages/pt.js
	modified:   src/languages/ru.js
	modified:   src/languages/sw.js
	modified:   src/languages/te.js
	modified:   src/languages/tr.js
	modified:   src/languages/ur.js
	modified:   src/languages/zh-tw.js
	modified:   src/languages/zh.js
	modified:   src/uncloseai-embed-modal.js
This commit is contained in:
Russell Ballestrini 2025-07-10 20:57:59 -04:00
parent 86ce18f181
commit c3d336806f
20 changed files with 21 additions and 1 deletions

View file

@ -106,5 +106,6 @@ export const ar = {
processingContent: "معالجة المحتوى...",
readingPageClickToPause: "قراءة الصفحة... انقر للإيقاف",
pausedClickToResume: "متوقف. انقر للمتابعة",
downloadPageAudio: "تنزيل ملف MP3 الخاص بتحويل النص إلى كلام لهذه الصفحة.",
aiModalNotAvailable: "نافذة الذكاء الاصطناعي غير متاحة في هذا السياق",
};

View file

@ -106,5 +106,6 @@ export const bn = {
processingContent: "প্রক্রিয়াকরণ সামগ্রী...",
readingPageClickToPause: "পাতা পড়া হচ্ছে... বিরতির জন্য ক্লিক করুন",
pausedClickToResume: "বিরতি। পুনরায় শুরুর জন্য ক্লিক করুন",
downloadPageAudio: "এই পৃষ্ঠার জন্য টেক্সট-টু-স্পিচ .mp3 ফাইলটি ডাউনলোড করুন।",
aiModalNotAvailable: "AI মডেল এই প্রসঙ্গে উপলব্ধ নয়",
};

View file

@ -106,5 +106,6 @@ export const de = {
processingContent: "Inhalt wird verarbeitet...",
readingPageClickToPause: "Seite wird vorgelesen... Klicken zum Pausieren",
pausedClickToResume: "Pausiert. Klicken zum Fortsetzen",
downloadPageAudio: "Laden Sie die Text-to-Speech-MP3-Datei für diese Seite herunter.",
aiModalNotAvailable: "KI-Modal ist in diesem Kontext nicht verfügbar",
};

View file

@ -73,6 +73,7 @@ export const en = {
processingContent: "Processing content...",
readingPageClickToPause: "Reading page... Click to pause",
pausedClickToResume: "Paused. Click to resume",
downloadPageAudio: "Download the text to speech .mp3 file for this page.",
// Translation modal tabs
translatePageTab: "📄 Translate Page",

View file

@ -74,6 +74,7 @@ export const es = {
processingContent: "Procesando contenido...",
readingPageClickToPause: "Leyendo página... Haz clic para pausar",
pausedClickToResume: "Pausado. Haz clic para reanudar",
downloadPageAudio: "Descargue el archivo .mp3 de texto a voz para esta página.",
// Translation modal tabs
translatePageTab: "📄 Traducir Página",

View file

@ -74,6 +74,7 @@ export const fr = {
processingContent: "Traitement du contenu...",
readingPageClickToPause: "Lecture de la page... Cliquez pour mettre en pause",
pausedClickToResume: "En pause. Cliquez pour reprendre",
downloadPageAudio: "Téléchargez le fichier .mp3 de synthèse vocale pour cette page.",
// Translation modal tabs
translatePageTab: "📄 Traduire la Page",

View file

@ -105,5 +105,6 @@ export const hi = {
processingContent: "सामग्री प्रक्रिया...",
readingPageClickToPause: "पेज पढ़ा जा रहा है... रोकने के लिए क्लिक करें",
pausedClickToResume: "रुका हुआ। जारी रखने के लिए क्लिक करें",
downloadPageAudio: "इस पेज के लिए टेक्स्ट-टू-स्पीच .mp3 फ़ाइल डाउनलोड करें।",
aiModalNotAvailable: "AI मॉडल इस संदर्भ में उपलब्ध नहीं है",
};

View file

@ -106,5 +106,6 @@ export const id = {
processingContent: "Memproses konten...",
readingPageClickToPause: "Membaca halaman... Klik untuk jeda",
pausedClickToResume: "Dijeda. Klik untuk melanjutkan",
downloadPageAudio: "Unduh file .mp3 text-to-speech untuk halaman ini.",
aiModalNotAvailable: "Modal AI tidak tersedia dalam konteks ini",
};

View file

@ -106,5 +106,6 @@ export const ja = {
processingContent: "コンテンツ処理中...",
readingPageClickToPause: "ページ読み上げ中... 一時停止するにはクリック",
pausedClickToResume: "一時停止中。再開するにはクリック",
downloadPageAudio: "このページのテキスト読み上げ.mp3ファイルをダウンロードします。",
aiModalNotAvailable: "AIモーダルはこのコンテキストでは利用できません",
};

View file

@ -106,5 +106,6 @@ export const ko = {
processingContent: "콘텐츠 처리 중...",
readingPageClickToPause: "페이지 읽기 중... 일시정지하려면 클릭",
pausedClickToResume: "일시정지됨. 재개하려면 클릭",
downloadPageAudio: "이 페이지의 텍스트 음성 변환 .mp3 파일을 다운로드하십시오.",
aiModalNotAvailable: "AI 모달이 이 컨텍스트에서 사용할 수 없습니다",
};

View file

@ -106,5 +106,6 @@ export const mr = {
processingContent: "सामग्री प्रक्रिया करत आहे...",
readingPageClickToPause: "पान वाचत आहे... थांबविण्यासाठी क्लिक करा",
pausedClickToResume: "थांबवले आहे. पुन्हा सुरू करण्यासाठी क्लिक करा",
downloadPageAudio: "या पृष्ठासाठी टेक्स्ट-टू-स्पीच .mp3 फाइल डाउनलोड करा.",
aiModalNotAvailable: "AI मॉडल या संदर्भात उपलब्ध नाही",
};

View file

@ -106,5 +106,6 @@ export const pt = {
processingContent: "Processando conteúdo...",
readingPageClickToPause: "Lendo página... Clique para pausar",
pausedClickToResume: "Pausado. Clique para continuar",
downloadPageAudio: "Faça o download do arquivo .mp3 de conversão de texto em fala para esta página.",
aiModalNotAvailable: "Modal de IA não disponível neste contexto",
};

View file

@ -106,5 +106,6 @@ export const ru = {
processingContent: "Обработка контента...",
readingPageClickToPause: "Чтение страницы... Нажмите для паузы",
pausedClickToResume: "На паузе. Нажмите для продолжения",
downloadPageAudio: "Загрузите mp3-файл с преобразованием текста в речь для этой страницы.",
aiModalNotAvailable: "Модальное окно ИИ недоступно в этом контексте",
};

View file

@ -106,5 +106,6 @@ export const sw = {
processingContent: "Kuchakata maudhui...",
readingPageClickToPause: "Kusoma ukurasa... Bonyeza kwa kutua",
pausedClickToResume: "Kusitishwa. Bonyeza kuendelea",
downloadPageAudio: "Pakua faili ya .mp3 ya maandishi-hadi-hotuba ya ukurasa huu.",
aiModalNotAvailable: "Modal ya AI haipatikani katika muktadha huu",
};

View file

@ -106,5 +106,6 @@ export const te = {
processingContent: "కంటెంట్ ప్రాసెస్ చేస్తోంది...",
readingPageClickToPause: "పేజీ చదువుతోంది... నిలిపివేయడానికి క్లిక్ చేయండి",
pausedClickToResume: "నిలిపివేయబడింది. కొనసాగించడానికి క్లిక్ చేయండి",
downloadPageAudio: "ఈ పేజీ కోసం టెక్స్ట్-టు-స్పీచ్ .mp3 ఫైల్‌ను డౌన్‌లోడ్ చేయండి.",
aiModalNotAvailable: "AI మోడల్ ఈ సందర్భంలో అందుబాటులో లేదు",
};

View file

@ -106,5 +106,6 @@ export const tr = {
processingContent: "İçerik işleniyor...",
readingPageClickToPause: "Sayfa okunuyor... Duraklatmak için tıklayın",
pausedClickToResume: "Duraklatıldı. Devam etmek için tıklayın",
downloadPageAudio: "Bu sayfa için metin okuma .mp3 dosyasını indirin.",
aiModalNotAvailable: "AI modalı bu bağlamda mevcut değil",
};

View file

@ -106,5 +106,6 @@ export const ur = {
processingContent: "مواد کی پروسیسنگ...",
readingPageClickToPause: "صفحہ پڑھا جا رہا ہے... رکنے کے لیے کلک کریں",
pausedClickToResume: "رک گیا۔ جاری رکھنے کے لیے کلک کریں",
downloadPageAudio: "اس صفحے کے لیے ٹیکسٹ ٹو اسپیچ .mp3 فائل ڈاؤن لوڈ کریں۔",
aiModalNotAvailable: "AI ماڈل اس سیاق میں دستیاب نہیں ہے",
};

View file

@ -104,5 +104,6 @@ export const zhTw = {
processingContent: "處理內容中...",
readingPageClickToPause: "正在朗讀頁面... 點擊暫停",
pausedClickToResume: "已暫停。點擊繼續",
downloadPageAudio: "下載此頁面的文字轉語音 .mp3 檔案。",
aiModalNotAvailable: "AI對話框在此上下文中不可用",
};

View file

@ -104,5 +104,6 @@ export const zh = {
processingContent: "处理内容中...",
readingPageClickToPause: "正在朗读页面... 点击暂停",
pausedClickToResume: "已暂停。点击继续",
downloadPageAudio: "下载此页面的文本转语音 .mp3 文件。",
aiModalNotAvailable: "AI模态框在此上下文中不可用",
};

View file

@ -600,6 +600,7 @@ async function openUncloseaiEmbeddedModalNew() {
// Start new reading
button.title = getUIText("processingContent");
button.textContent = "⏳";
button.disabled = true;
isReadingPage = true;
@ -641,7 +642,7 @@ async function openUncloseaiEmbeddedModalNew() {
// Add download button
const downloadBtn = document.createElement("button");
downloadBtn.textContent = "💾";
downloadBtn.title = "Download audio";
downloadBtn.title = getUIText("downloadPageAudio");
downloadBtn.className = "uncloseai-btn-primary";
downloadBtn.onclick = () => {
if (readPageAudio) {