diff --git a/src/languages/ar.js b/src/languages/ar.js index bd85899..93d2327 100644 --- a/src/languages/ar.js +++ b/src/languages/ar.js @@ -106,5 +106,6 @@ export const ar = { processingContent: "معالجة المحتوى...", readingPageClickToPause: "قراءة الصفحة... انقر للإيقاف", pausedClickToResume: "متوقف. انقر للمتابعة", + downloadPageAudio: "تنزيل ملف MP3 الخاص بتحويل النص إلى كلام لهذه الصفحة.", aiModalNotAvailable: "نافذة الذكاء الاصطناعي غير متاحة في هذا السياق", }; \ No newline at end of file diff --git a/src/languages/bn.js b/src/languages/bn.js index 2e28793..cb9f1cf 100644 --- a/src/languages/bn.js +++ b/src/languages/bn.js @@ -106,5 +106,6 @@ export const bn = { processingContent: "প্রক্রিয়াকরণ সামগ্রী...", readingPageClickToPause: "পাতা পড়া হচ্ছে... বিরতির জন্য ক্লিক করুন", pausedClickToResume: "বিরতি। পুনরায় শুরুর জন্য ক্লিক করুন", + downloadPageAudio: "এই পৃষ্ঠার জন্য টেক্সট-টু-স্পিচ .mp3 ফাইলটি ডাউনলোড করুন।", aiModalNotAvailable: "AI মডেল এই প্রসঙ্গে উপলব্ধ নয়", }; \ No newline at end of file diff --git a/src/languages/de.js b/src/languages/de.js index a495312..5e65c58 100644 --- a/src/languages/de.js +++ b/src/languages/de.js @@ -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", }; \ No newline at end of file diff --git a/src/languages/en.js b/src/languages/en.js index 9c6243b..fca6db2 100644 --- a/src/languages/en.js +++ b/src/languages/en.js @@ -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", diff --git a/src/languages/es.js b/src/languages/es.js index 24da91e..434c350 100644 --- a/src/languages/es.js +++ b/src/languages/es.js @@ -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", diff --git a/src/languages/fr.js b/src/languages/fr.js index 1f67d99..fe98f27 100644 --- a/src/languages/fr.js +++ b/src/languages/fr.js @@ -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", diff --git a/src/languages/hi.js b/src/languages/hi.js index 20d5346..94aa0c4 100644 --- a/src/languages/hi.js +++ b/src/languages/hi.js @@ -105,5 +105,6 @@ export const hi = { processingContent: "सामग्री प्रक्रिया...", readingPageClickToPause: "पेज पढ़ा जा रहा है... रोकने के लिए क्लिक करें", pausedClickToResume: "रुका हुआ। जारी रखने के लिए क्लिक करें", + downloadPageAudio: "इस पेज के लिए टेक्स्ट-टू-स्पीच .mp3 फ़ाइल डाउनलोड करें।", aiModalNotAvailable: "AI मॉडल इस संदर्भ में उपलब्ध नहीं है", }; \ No newline at end of file diff --git a/src/languages/id.js b/src/languages/id.js index ec23441..0665146 100644 --- a/src/languages/id.js +++ b/src/languages/id.js @@ -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", }; \ No newline at end of file diff --git a/src/languages/ja.js b/src/languages/ja.js index 316ab64..d779400 100644 --- a/src/languages/ja.js +++ b/src/languages/ja.js @@ -106,5 +106,6 @@ export const ja = { processingContent: "コンテンツ処理中...", readingPageClickToPause: "ページ読み上げ中... 一時停止するにはクリック", pausedClickToResume: "一時停止中。再開するにはクリック", + downloadPageAudio: "このページのテキスト読み上げ.mp3ファイルをダウンロードします。", aiModalNotAvailable: "AIモーダルはこのコンテキストでは利用できません", }; \ No newline at end of file diff --git a/src/languages/ko.js b/src/languages/ko.js index e6c52ec..721d5c8 100644 --- a/src/languages/ko.js +++ b/src/languages/ko.js @@ -106,5 +106,6 @@ export const ko = { processingContent: "콘텐츠 처리 중...", readingPageClickToPause: "페이지 읽기 중... 일시정지하려면 클릭", pausedClickToResume: "일시정지됨. 재개하려면 클릭", + downloadPageAudio: "이 페이지의 텍스트 음성 변환 .mp3 파일을 다운로드하십시오.", aiModalNotAvailable: "AI 모달이 이 컨텍스트에서 사용할 수 없습니다", }; \ No newline at end of file diff --git a/src/languages/mr.js b/src/languages/mr.js index 3074d62..525de38 100644 --- a/src/languages/mr.js +++ b/src/languages/mr.js @@ -106,5 +106,6 @@ export const mr = { processingContent: "सामग्री प्रक्रिया करत आहे...", readingPageClickToPause: "पान वाचत आहे... थांबविण्यासाठी क्लिक करा", pausedClickToResume: "थांबवले आहे. पुन्हा सुरू करण्यासाठी क्लिक करा", + downloadPageAudio: "या पृष्ठासाठी टेक्स्ट-टू-स्पीच .mp3 फाइल डाउनलोड करा.", aiModalNotAvailable: "AI मॉडल या संदर्भात उपलब्ध नाही", }; \ No newline at end of file diff --git a/src/languages/pt.js b/src/languages/pt.js index fd5687d..dabf785 100644 --- a/src/languages/pt.js +++ b/src/languages/pt.js @@ -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", }; \ No newline at end of file diff --git a/src/languages/ru.js b/src/languages/ru.js index 3fabb88..0a6013b 100644 --- a/src/languages/ru.js +++ b/src/languages/ru.js @@ -106,5 +106,6 @@ export const ru = { processingContent: "Обработка контента...", readingPageClickToPause: "Чтение страницы... Нажмите для паузы", pausedClickToResume: "На паузе. Нажмите для продолжения", + downloadPageAudio: "Загрузите mp3-файл с преобразованием текста в речь для этой страницы.", aiModalNotAvailable: "Модальное окно ИИ недоступно в этом контексте", }; \ No newline at end of file diff --git a/src/languages/sw.js b/src/languages/sw.js index 49f116f..a5c98f2 100644 --- a/src/languages/sw.js +++ b/src/languages/sw.js @@ -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", }; \ No newline at end of file diff --git a/src/languages/te.js b/src/languages/te.js index d3b337c..e917685 100644 --- a/src/languages/te.js +++ b/src/languages/te.js @@ -106,5 +106,6 @@ export const te = { processingContent: "కంటెంట్ ప్రాసెస్ చేస్తోంది...", readingPageClickToPause: "పేజీ చదువుతోంది... నిలిపివేయడానికి క్లిక్ చేయండి", pausedClickToResume: "నిలిపివేయబడింది. కొనసాగించడానికి క్లిక్ చేయండి", + downloadPageAudio: "ఈ పేజీ కోసం టెక్స్ట్-టు-స్పీచ్ .mp3 ఫైల్‌ను డౌన్‌లోడ్ చేయండి.", aiModalNotAvailable: "AI మోడల్ ఈ సందర్భంలో అందుబాటులో లేదు", }; \ No newline at end of file diff --git a/src/languages/tr.js b/src/languages/tr.js index 47aad7a..d6121a3 100644 --- a/src/languages/tr.js +++ b/src/languages/tr.js @@ -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", }; \ No newline at end of file diff --git a/src/languages/ur.js b/src/languages/ur.js index 324165f..76498d2 100644 --- a/src/languages/ur.js +++ b/src/languages/ur.js @@ -106,5 +106,6 @@ export const ur = { processingContent: "مواد کی پروسیسنگ...", readingPageClickToPause: "صفحہ پڑھا جا رہا ہے... رکنے کے لیے کلک کریں", pausedClickToResume: "رک گیا۔ جاری رکھنے کے لیے کلک کریں", + downloadPageAudio: "اس صفحے کے لیے ٹیکسٹ ٹو اسپیچ .mp3 فائل ڈاؤن لوڈ کریں۔", aiModalNotAvailable: "AI ماڈل اس سیاق میں دستیاب نہیں ہے", }; \ No newline at end of file diff --git a/src/languages/zh-tw.js b/src/languages/zh-tw.js index ce95e3d..7358735 100644 --- a/src/languages/zh-tw.js +++ b/src/languages/zh-tw.js @@ -104,5 +104,6 @@ export const zhTw = { processingContent: "處理內容中...", readingPageClickToPause: "正在朗讀頁面... 點擊暫停", pausedClickToResume: "已暫停。點擊繼續", + downloadPageAudio: "下載此頁面的文字轉語音 .mp3 檔案。", aiModalNotAvailable: "AI對話框在此上下文中不可用", }; \ No newline at end of file diff --git a/src/languages/zh.js b/src/languages/zh.js index e6a40da..72388a2 100644 --- a/src/languages/zh.js +++ b/src/languages/zh.js @@ -104,5 +104,6 @@ export const zh = { processingContent: "处理内容中...", readingPageClickToPause: "正在朗读页面... 点击暂停", pausedClickToResume: "已暂停。点击继续", + downloadPageAudio: "下载此页面的文本转语音 .mp3 文件。", aiModalNotAvailable: "AI模态框在此上下文中不可用", }; \ No newline at end of file diff --git a/src/uncloseai-embed-modal.js b/src/uncloseai-embed-modal.js index c51eeed..2f5c38f 100644 --- a/src/uncloseai-embed-modal.js +++ b/src/uncloseai-embed-modal.js @@ -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) {