diff --git a/Auto-Image.js b/Auto-Image.js
index d316d69..d05e62a 100644
--- a/Auto-Image.js
+++ b/Auto-Image.js
@@ -4685,18 +4685,18 @@
if (isVisible) {
statsContainer.style.display = "none"
statsBtn.innerHTML = ''
- statsBtn.title = "Show Stats"
+ statsBtn.title = Utils.t('showStats')
} else {
statsContainer.style.display = "block"
statsBtn.innerHTML = ''
- statsBtn.title = "Hide Stats"
+ statsBtn.title = Utils.t('hideStats')
}
})
closeStatsBtn.addEventListener("click", () => {
statsContainer.style.display = "none"
statsBtn.innerHTML = ''
- statsBtn.title = "Show Stats"
+ statsBtn.title = Utils.t('showStats')
})
if (refreshChargesBtn) {
@@ -4718,7 +4718,7 @@
if (statsContainer && statsBtn) {
statsContainer.style.display = "block";
statsBtn.innerHTML = '';
- statsBtn.title = "Hide Stats";
+ statsBtn.title = Utils.t('hideStats');
}
const settingsBtn = container.querySelector("#settingsBtn")
@@ -4978,10 +4978,10 @@
if (isCompact) {
compactBtn.innerHTML = ''
- compactBtn.title = "Expand Mode"
+ compactBtn.title = Utils.t('expandMode')
} else {
compactBtn.innerHTML = ''
- compactBtn.title = "Compact Mode"
+ compactBtn.title = Utils.t('compactMode')
}
})
}
@@ -4993,12 +4993,12 @@
container.classList.add("wplace-minimized")
content.classList.add("wplace-hidden")
minimizeBtn.innerHTML = ''
- minimizeBtn.title = "Restore"
+ minimizeBtn.title = Utils.t('restore')
} else {
container.classList.remove("wplace-minimized")
content.classList.remove("wplace-hidden")
minimizeBtn.innerHTML = ''
- minimizeBtn.title = "Minimize"
+ minimizeBtn.title = Utils.t('minimize')
}
saveBotSettings()
})
@@ -5018,14 +5018,14 @@
content.classList.add("wplace-hidden")
if (minimizeBtn) {
minimizeBtn.innerHTML = ''
- minimizeBtn.title = "Restore"
+ minimizeBtn.title = Utils.t('restore')
}
} else {
container.classList.remove("wplace-minimized")
content.classList.remove("wplace-hidden")
if (minimizeBtn) {
minimizeBtn.innerHTML = ''
- minimizeBtn.title = "Minimize"
+ minimizeBtn.title = Utils.t('minimize')
}
}
diff --git a/lang/en.json b/lang/en.json
index 6fcf499..30a114d 100644
--- a/lang/en.json
+++ b/lang/en.json
@@ -130,5 +130,9 @@
"turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
"uploadImageFirstColors": "Please upload an image first to capture available colors",
"availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Expand Mode",
+ "minimize": "Minimize",
+ "restore": "Restore",
+ "hideStats": "Hide Stats"
}
\ No newline at end of file
diff --git a/lang/fr.json b/lang/fr.json
index 2e0eeaa..07aa1eb 100644
--- a/lang/fr.json
+++ b/lang/fr.json
@@ -131,5 +131,9 @@
"turnstileInstructions": "Cloudflare Turnstile — veuillez compléter la vérification si affichée",
"uploadImageFirstColors": "Veuillez d'abord télécharger une image pour capturer les couleurs disponibles",
"availableColors": "Couleurs Disponibles ({count})",
- "colorTooltip": "ID : {id}\nRVB : {rgb}"
+ "colorTooltip": "ID : {id}\nRVB : {rgb}",
+ "expandMode": "Mode Étendu",
+ "minimize": "Réduire",
+ "restore": "Restaurer",
+ "hideStats": "Masquer les Stats"
}
diff --git a/lang/id.json b/lang/id.json
index ca1d503..ae2529b 100644
--- a/lang/id.json
+++ b/lang/id.json
@@ -72,65 +72,69 @@
"automation": "Automasi",
"noChargesThreshold": "⌛ Menunggu muatan mencapai {threshold}. Saat ini: {current}. Berikutnya dalam {time}..."
,
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
- "testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
- "test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "tokenCapturedSuccess": "Token berhasil ditangkap! Anda bisa memulai bot sekarang.",
+ "notificationsNotSupported": "Notifikasi tidak didukung di browser ini.",
+ "chargesReadyNotification": "WPlace — Muatan Siap",
+ "chargesReadyMessage": "Muatan siap: {current} / {max}. Batas: {threshold}.",
+ "testNotificationTitle": "WPlace — Tes",
+ "testNotificationMessage": "Ini adalah notifikasi tes.",
+ "showStats": "Tampilkan Statistik",
+ "compactMode": "Mode Kompak",
+ "refreshCharges": "Segarkan Muatan",
+ "closeStats": "Tutup Statistik",
+ "zoomOut": "Perkecil",
+ "zoomIn": "Perbesar",
+ "fitToView": "Sesuaikan tampilan",
+ "actualSize": "Ukuran sebenarnya (100%)",
+ "panMode": "Geser (seret untuk memindahkan tampilan)",
+ "clearIgnoredPixels": "Bersihkan semua piksel yang diabaikan",
+ "invertMask": "Balik masker",
+ "waitingSetupComplete": "🔄 Menunggu pengaturan awal selesai...",
+ "waitingTokenGenerator": "🔄 Menunggu generator token diinisialisasi...",
+ "uploadImageFirst": "Unggah gambar terlebih dahulu untuk menangkap warna yang tersedia",
+ "pleaseWaitInitialSetup": "🔄 Harap tunggu pengaturan awal selesai sebelum memuat progres.",
+ "pleaseWaitFileSetup": "🔄 Harap tunggu pengaturan awal selesai sebelum memuat dari file.",
+ "errorSavingProgress": "❌ Kesalahan menyimpan progres",
+ "errorLoadingProgress": "❌ Kesalahan memuat progres",
+ "fileOperationsAvailable": "📂 Operasi file (Muat/Unggah) sekarang tersedia!",
+ "tokenGeneratorReady": "🔑 Generator token siap!",
+ "paintingStats": "Statistik Melukis",
+ "enablePaintingSpeedLimit": "Aktifkan batas kecepatan melukis (kontrol ukuran batch)",
+ "enableNotifications": "Aktifkan notifikasi",
+ "notifyOnChargesThreshold": "Beri tahu saat muatan mencapai batas",
+ "onlyWhenNotFocused": "Hanya saat tab tidak difokuskan",
+ "repeatEvery": "Ulangi setiap",
+ "minutesPl": "menit",
+ "grantPermission": "Berikan Izin",
+ "test": "Tes",
+ "showAllColorsIncluding": "Tampilkan Semua Warna (termasuk yang tidak tersedia)",
+ "chromaWeight": "Bobot Kroma",
+ "downloadPreview": "Unduh Pratinjau",
+ "apply": "Terapkan",
+ "cancel": "Batal",
+ "fit": "Sesuaikan",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "Bersihkan",
+ "invert": "Balik",
+ "reprocessingOverlay": "Memproses ulang overlay...",
+ "overlayUpdated": "Overlay diperbarui!",
+ "notificationsEnabled": "Notifikasi diaktifkan.",
+ "notificationsPermissionDenied": "Izin notifikasi ditolak.",
+ "overlayEnabled": "Overlay diaktifkan.",
+ "overlayDisabled": "Overlay dinonaktifkan.",
+ "tokenSourceSet": "Sumber token diatur ke: {source}",
+ "batchModeSet": "Mode batch diatur ke: {mode}",
+ "randomRange": "Rentang Acak",
+ "normalFixedSize": "Ukuran Tetap Normal",
+ "advancedColorSettingsReset": "Pengaturan warna lanjutan direset.",
+ "shiftRowAltColumn": "Shift = Baris • Alt = Kolom",
+ "hideTurnstileBtn": "Sembunyikan",
+ "turnstileInstructions": "Cloudflare Turnstile — harap selesaikan pemeriksaan jika ditampilkan",
+ "uploadImageFirstColors": "Harap unggah gambar terlebih dahulu untuk menangkap warna yang tersedia",
+ "availableColors": "Warna Tersedia ({count})",
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Mode Perluas",
+ "minimize": "Minimalkan",
+ "restore": "Pulihkan",
+ "hideStats": "Sembunyikan Statistik"
}
diff --git a/lang/ja.json b/lang/ja.json
index 622f1a5..cba6cd3 100644
--- a/lang/ja.json
+++ b/lang/ja.json
@@ -133,5 +133,9 @@
"turnstileInstructions": "Cloudflare Turnstile — 表示された場合は確認を完了してください",
"uploadImageFirstColors": "利用可能な色を取得するために最初に画像をアップロードしてください",
"availableColors": "利用可能な色 ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "展開モード",
+ "minimize": "最小化",
+ "restore": "復元",
+ "hideStats": "統計を非表示"
}
diff --git a/lang/ko.json b/lang/ko.json
index 28db43d..565870a 100644
--- a/lang/ko.json
+++ b/lang/ko.json
@@ -73,65 +73,69 @@
"captchaFailed": "❌ 토큰 생성 실패. 폴백 시도...",
"automation": "자동화",
"noChargesThreshold": "⌛ 횟수가 {threshold} 에 도달할 때까지 대기 중. 현재 {current}. 다음 {time} 후...",
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
- "testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
- "test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "tokenCapturedSuccess": "토큰 생성 성공! 이제 봇을 시작할 수 있습니다.",
+ "notificationsNotSupported": "이 브라우저는 알림을 지원하지 않습니다.",
+ "chargesReadyNotification": "WPlace — 횟수 준비 완료",
+ "chargesReadyMessage": "횟수 준비 완료: {current} / {max}. 임계값: {threshold}.",
+ "testNotificationTitle": "WPlace — 테스트",
+ "testNotificationMessage": "이것은 테스트 알림입니다.",
+ "showStats": "통계 보기",
+ "compactMode": "컴팩트 모드",
+ "refreshCharges": "횟수 새로고침",
+ "closeStats": "통계 닫기",
+ "zoomOut": "축소",
+ "zoomIn": "확대",
+ "fitToView": "화면에 맞춤",
+ "actualSize": "실제 크기 (100%)",
+ "panMode": "이동 (끌어서 보기 이동)",
+ "clearIgnoredPixels": "무시된 모든 픽셀 지우기",
+ "invertMask": "마스크 반전",
+ "waitingSetupComplete": "🔄 초기 설정 완료 대기 중...",
+ "waitingTokenGenerator": "🔄 토큰 생성기 초기화 대기 중...",
+ "uploadImageFirst": "사용 가능한 색상을 얻기 위해 먼저 이미지를 업로드하세요",
+ "pleaseWaitInitialSetup": "🔄 진행도를 로드하기 전에 초기 설정 완료를 기다리세요.",
+ "pleaseWaitFileSetup": "🔄 파일에서 로드하기 전에 초기 설정 완료를 기다리세요.",
+ "errorSavingProgress": "❌ 진행 저장 오류",
+ "errorLoadingProgress": "❌ 진행 로드 오류",
+ "fileOperationsAvailable": "📂 파일 작업(로드/업로드)이 이제 사용 가능합니다!",
+ "tokenGeneratorReady": "🔑 토큰 생성기 준비 완료!",
+ "paintingStats": "그리기 통계",
+ "enablePaintingSpeedLimit": "그리기 속도 제한 활성화 (배치 크기 제어)",
+ "enableNotifications": "알림 활성화",
+ "notifyOnChargesThreshold": "횟수가 임계값에 도달하면 알림",
+ "onlyWhenNotFocused": "탭이 포커스되지 않았을 때만",
+ "repeatEvery": "반복 간격",
+ "minutesPl": "분",
+ "grantPermission": "권한 부여",
+ "test": "테스트",
+ "showAllColorsIncluding": "모든 색상 보기 (사용 불가 포함)",
+ "chromaWeight": "색도 가중치",
+ "downloadPreview": "미리보기 다운로드",
+ "apply": "적용",
+ "cancel": "취소",
+ "fit": "맞춤",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "지우기",
+ "invert": "반전",
+ "reprocessingOverlay": "오버레이 재처리 중...",
+ "overlayUpdated": "오버레이 업데이트 완료!",
+ "notificationsEnabled": "알림이 활성화되었습니다.",
+ "notificationsPermissionDenied": "알림 권한이 거부되었습니다.",
+ "overlayEnabled": "오버레이가 활성화되었습니다.",
+ "overlayDisabled": "오버레이가 비활성화되었습니다.",
+ "tokenSourceSet": "토큰 소스 설정: {source}",
+ "batchModeSet": "배치 모드 설정: {mode}",
+ "randomRange": "랜덤 범위",
+ "normalFixedSize": "일반 고정 크기",
+ "advancedColorSettingsReset": "고급 색상 설정이 초기화되었습니다.",
+ "shiftRowAltColumn": "Shift = 행 • Alt = 열",
+ "hideTurnstileBtn": "숨기기",
+ "turnstileInstructions": "Cloudflare Turnstile — 표시되면 검사를 완료하세요",
+ "uploadImageFirstColors": "사용 가능한 색상을 얻기 위해 먼저 이미지를 업로드하세요",
+ "availableColors": "사용 가능한 색상 ({count})",
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "확장 모드",
+ "minimize": "최소화",
+ "restore": "복원",
+ "hideStats": "통계 숨김"
}
diff --git a/lang/pt.json b/lang/pt.json
index b575858..afa6bf5 100644
--- a/lang/pt.json
+++ b/lang/pt.json
@@ -130,5 +130,9 @@
"turnstileInstructions": "Cloudflare Turnstile — complete a verificação se mostrada",
"uploadImageFirstColors": "Faça upload de uma imagem primeiro para capturar cores disponíveis",
"availableColors": "Cores Disponíveis ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Modo Expandir",
+ "minimize": "Minimizar",
+ "restore": "Restaurar",
+ "hideStats": "Ocultar Estatísticas"
}
\ No newline at end of file
diff --git a/lang/ru.json b/lang/ru.json
index 8176e5a..61b6cb7 100644
--- a/lang/ru.json
+++ b/lang/ru.json
@@ -130,5 +130,9 @@
"turnstileInstructions": "Cloudflare Turnstile — пожалуйста, завершите проверку, если она показана",
"uploadImageFirstColors": "Пожалуйста, сначала загрузите изображение для захвата доступных цветов",
"availableColors": "Доступные цвета ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Режим расширения",
+ "minimize": "Свернуть",
+ "restore": "Восстановить",
+ "hideStats": "Скрыть статистику"
}
\ No newline at end of file
diff --git a/lang/tr.json b/lang/tr.json
index f56b467..e52b665 100644
--- a/lang/tr.json
+++ b/lang/tr.json
@@ -30,9 +30,9 @@
"estimatedTime": "Tahmini süre",
"initMessage": "Başlamak için 'Resim Yükle'ye tıklayın",
"waitingInit": "Başlatma bekleniyor...",
- "initializingToken": "🔧 Initializing Turnstile token generator...",
- "tokenReady": "✅ Token generator ready - you can now start painting!",
- "tokenRetryLater": "⚠️ Token generator will retry when needed",
+ "initializingToken": "🔧 Turnstile token üreticisi başlatılıyor...",
+ "tokenReady": "✅ Token üreteci hazır - artık boyamaya başlayabilirsiniz!",
+ "tokenRetryLater": "⚠️ Token üreteci gerektiğinde yeniden deneyecek",
"resizeSuccess": "✅ Resim {width}x{height} boyutuna yeniden boyutlandırıldı",
"paintingPaused": "⏸️ Boyama duraklatıldı, Konum X: {x}, Y: {y}",
"captchaNeeded": "❗ CAPTCHA gerekli. Devam etmek için bir pikseli manuel olarak boyayın.",
@@ -71,65 +71,69 @@
"captchaFailed": "❌ Oto-CAPTCHA başarısız oldu. Bir pikseli manuel boyayın.",
"automation": "Otomasyon",
"noChargesThreshold": "⌛ Hakların {threshold} seviyesine ulaşması bekleniyor. Şu anda {current}. Sonraki {time} içinde...",
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
+ "tokenCapturedSuccess": "Token başarıyla yakalandı! Şimdi botu başlatabilirsiniz.",
+ "notificationsNotSupported": "Bu tarayıcıda bildirimler desteklenmiyor.",
+ "chargesReadyNotification": "WPlace — Haklar Hazır",
+ "chargesReadyMessage": "Haklar hazır: {current} / {max}. Eşik: {threshold}.",
"testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
+ "testNotificationMessage": "Bu bir test bildirimidir.",
+ "showStats": "İstatistikleri Göster",
+ "compactMode": "Kompakt Mod",
+ "refreshCharges": "Hakları Yenile",
+ "closeStats": "İstatistikleri Kapat",
+ "zoomOut": "Uzaklaştır",
+ "zoomIn": "Yakınlaştır",
+ "fitToView": "Görünüme sığdır",
+ "actualSize": "Gerçek boyut (100%)",
+ "panMode": "Kaydır (görünümü hareket ettirmek için sürükle)",
+ "clearIgnoredPixels": "Görmezden gelinen tüm pikselleri temizle",
+ "invertMask": "Maskeyi ters çevir",
+ "waitingSetupComplete": "🔄 İlk kurulumun tamamlanması bekleniyor...",
+ "waitingTokenGenerator": "🔄 Token üretecinin başlatılması bekleniyor...",
+ "uploadImageFirst": "Uygun renkleri yakalamak için önce bir resim yükleyin",
+ "pleaseWaitInitialSetup": "🔄 İlerlemeyi yüklemeden önce lütfen ilk kurulumun tamamlanmasını bekleyin.",
+ "pleaseWaitFileSetup": "🔄 Dosyadan yüklemeden önce lütfen ilk kurulumun tamamlanmasını bekleyin.",
+ "errorSavingProgress": "❌ İlerlemeyi kaydetme hatası",
+ "errorLoadingProgress": "❌ İlerlemeyi yükleme hatası",
+ "fileOperationsAvailable": "📂 Dosya işlemleri (Yükle/Karşıya Yükle) artık mevcut!",
+ "tokenGeneratorReady": "🔑 Token üreteci hazır!",
+ "paintingStats": "Boyama İstatistikleri",
+ "enablePaintingSpeedLimit": "Boyama hız limitini etkinleştir (batch boyut kontrolü)",
+ "enableNotifications": "Bildirimleri etkinleştir",
+ "notifyOnChargesThreshold": "Haklar eşiğe ulaştığında bildir",
+ "onlyWhenNotFocused": "Sadece sekme odaklanmadığında",
+ "repeatEvery": "Her tekrarla",
+ "minutesPl": "dakika",
+ "grantPermission": "İzin Ver",
"test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "showAllColorsIncluding": "Tüm Renkleri Göster (kullanılamayanlar dahil)",
+ "chromaWeight": "Renk Doygunluğu Ağırlığı",
+ "downloadPreview": "Önizlemeyi İndir",
+ "apply": "Uygula",
+ "cancel": "İptal",
+ "fit": "Sığdır",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "Temizle",
+ "invert": "Ters çevir",
+ "reprocessingOverlay": "Katman yeniden işleniyor...",
+ "overlayUpdated": "Katman güncellendi!",
+ "notificationsEnabled": "Bildirimler etkinleştirildi.",
+ "notificationsPermissionDenied": "Bildirim izni reddedildi.",
+ "overlayEnabled": "Katman etkinleştirildi.",
+ "overlayDisabled": "Katman devre dışı bırakıldı.",
+ "tokenSourceSet": "Token kaynağı şuna ayarlandı: {source}",
+ "batchModeSet": "Batch modu şuna ayarlandı: {mode}",
+ "randomRange": "Rastgele Aralık",
+ "normalFixedSize": "Normal Sabit Boyut",
+ "advancedColorSettingsReset": "Gelişmiş renk ayarları sıfırlandı.",
+ "shiftRowAltColumn": "Shift = Satır • Alt = Sütun",
+ "hideTurnstileBtn": "Gizle",
+ "turnstileInstructions": "Cloudflare Turnstile — gösterilirse lütfen kontrolü tamamlayın",
+ "uploadImageFirstColors": "Uygun renkleri yakalamak için lütfen önce bir resim yükleyin",
+ "availableColors": "Uygun Renkler ({count})",
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Genişletme Modu",
+ "minimize": "Küçült",
+ "restore": "Geri Yükle",
+ "hideStats": "İstatistikleri Gizle"
}
diff --git a/lang/uk.json b/lang/uk.json
index 1f02fca..d823d45 100644
--- a/lang/uk.json
+++ b/lang/uk.json
@@ -71,65 +71,69 @@
"captchaFailed": "❌ Не вдалося згенерувати токен Turnstile. Використовую запасний метод...",
"automation": "Автоматизація",
"noChargesThreshold": "⌛ Очікування, доки заряди досягнуть {threshold}. Зараз {current}. Наступне через {time}...",
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
- "testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
- "test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "tokenCapturedSuccess": "Токен успішно захоплено! Можеш запускати бота.",
+ "notificationsNotSupported": "Уведомления не підтримуються в цьому браузері.",
+ "chargesReadyNotification": "WPlace — Заряди готові",
+ "chargesReadyMessage": "Заряди готові: {current} / {max}. Поріг: {threshold}.",
+ "testNotificationTitle": "WPlace — Тест",
+ "testNotificationMessage": "Це тестове уведомлення.",
+ "showStats": "Показати статистику",
+ "compactMode": "Компактний режим",
+ "refreshCharges": "Оновити заряди",
+ "closeStats": "Закрити статистику",
+ "zoomOut": "Зменшити",
+ "zoomIn": "Збільшити",
+ "fitToView": "Підігнати під вікно",
+ "actualSize": "Реальний розмір (100%)",
+ "panMode": "Переміщення (перетягні для руху)",
+ "clearIgnoredPixels": "Очистити всі ігноровані пікселі",
+ "invertMask": "Інвертувати маску",
+ "waitingSetupComplete": "🔄 Очікування завершення початкового налаштування...",
+ "waitingTokenGenerator": "🔄 Очікування ініціалізації генератора токенів...",
+ "uploadImageFirst": "Спершу завантаж зображення для захоплення доступних кольорів",
+ "pleaseWaitInitialSetup": "🔄 Будь ласка, почекай завершення початкового налаштування перед завантаженням прогресу.",
+ "pleaseWaitFileSetup": "🔄 Будь ласка, почекай завершення початкового налаштування перед завантаженням з файлу.",
+ "errorSavingProgress": "❌ Помилка збереження прогресу",
+ "errorLoadingProgress": "❌ Помилка завантаження прогресу",
+ "fileOperationsAvailable": "📂 Файлові операції (Завантаження/Вивантаження) тепер доступні!",
+ "tokenGeneratorReady": "🔑 Генератор токенів готовий!",
+ "paintingStats": "Статистика малювання",
+ "enablePaintingSpeedLimit": "Увімкнути обмеження швидкості малювання (контроль розміру пакета)",
+ "enableNotifications": "Увімкнути уведомлення",
+ "notifyOnChargesThreshold": "Сповісчати при досягненні порогу зарядів",
+ "onlyWhenNotFocused": "Лише коли вкладка не в фокусі",
+ "repeatEvery": "Повторювати кожні",
+ "minutesPl": "хвилин",
+ "grantPermission": "Надати дозвіл",
+ "test": "Тест",
+ "showAllColorsIncluding": "Показати всі кольори (включаючи недоступні)",
+ "chromaWeight": "Вага насиченості",
+ "downloadPreview": "Завантажити попередній перегляд",
+ "apply": "Застосувати",
+ "cancel": "Скасувати",
+ "fit": "Підігнати",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "Очистити",
+ "invert": "Інвертувати",
+ "reprocessingOverlay": "Переобробка оверлея...",
+ "overlayUpdated": "Оверлей оновлено!",
+ "notificationsEnabled": "Уведомлення увімкнено.",
+ "notificationsPermissionDenied": "Дозвіл на уведомлення відхилено.",
+ "overlayEnabled": "Оверлей увімкнено.",
+ "overlayDisabled": "Оверлей вімкнено.",
+ "tokenSourceSet": "Джерело токенів встановлено: {source}",
+ "batchModeSet": "Пакетний режим встановлено: {mode}",
+ "randomRange": "Випадковий діапазон",
+ "normalFixedSize": "Звичайний фіксований розмір",
+ "advancedColorSettingsReset": "Просунуті налаштування кольорів скинуто.",
+ "shiftRowAltColumn": "Shift = Рядок • Alt = Стовпець",
+ "hideTurnstileBtn": "Сховати",
+ "turnstileInstructions": "Cloudflare Turnstile — будь ласка, заверши перевірку, якщо вона показана",
+ "uploadImageFirstColors": "Будь ласка, спершу завантаж зображення для захоплення доступних кольорів",
+ "availableColors": "Доступні кольори ({count})",
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Режим розширення",
+ "minimize": "Мінімізувати",
+ "restore": "Відновити",
+ "hideStats": "Приховати статистику"
}
diff --git a/lang/vi.json b/lang/vi.json
index 3846965..e14de97 100644
--- a/lang/vi.json
+++ b/lang/vi.json
@@ -75,7 +75,7 @@
"notificationsNotSupported": "Thông báo không được hỗ trợ trong trình duyệt này.",
"chargesReadyNotification": "WPlace — Điện tích sẵn sàng",
"chargesReadyMessage": "Điện tích sẵn sàng: {current} / {max}. Ngưỡng: {threshold}.",
- "testNotificationTitle": "WPlace — Thử nghiệm"
+ "testNotificationTitle": "WPlace — Thử nghiệm",
"testNotificationMessage": "Đây là thông báo thử nghiệm.",
"showStats": "Hiển thị thống kê",
"compactMode": "Chế độ gọn",
@@ -103,15 +103,15 @@
"notifyOnChargesThreshold": "Thông báo khi điện tích đạt ngưỡng",
"onlyWhenNotFocused": "Chỉ khi tab không được chọn",
"repeatEvery": "Lặp lại mỗi",
- "minutesPl": "phút"
+ "minutesPl": "phút",
"grantPermission": "Cấp quyền",
- "test": "Thử nghiệm"
+ "test": "Thử nghiệm",
"showAllColorsIncluding": "Hiển thị tất cả màu (bao gồm không có sẵn)",
"chromaWeight": "Trọng số độ bão hòa",
"downloadPreview": "Tải xuống xem trước",
"apply": "Áp dụng",
"cancel": "Hủy",
- "fit": "Vừa khung"
+ "fit": "Vừa khung",
"hundred": "100%",
"clear": "Xóa",
"invert": "Đảo ngược",
@@ -131,5 +131,9 @@
"turnstileInstructions": "Cloudflare Turnstile — vui lòng hoàn thành kiểm tra nếu được hiển thị",
"uploadImageFirstColors": "Vui lòng tải lên hình ảnh trước để bắt màu có sẵn",
"availableColors": "Màu có sẵn ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "colorTooltip": "ID: {id}\nRGB: {rgb}",
+ "expandMode": "Chế độ mở rộng",
+ "minimize": "Thu nhỏ",
+ "restore": "Khôi phục",
+ "hideStats": "Ẩn thống kê"
}
diff --git a/lang/zh-CN.json b/lang/zh-CN.json
index 89b207e..d5cb784 100644
--- a/lang/zh-CN.json
+++ b/lang/zh-CN.json
@@ -73,65 +73,69 @@
"captchaFailed": "❌ 令牌生成失败。尝试回退方法...",
"automation": "自动化",
"noChargesThreshold": "⌛ 等待次数达到 {threshold}。当前 {current}。下次在 {time}...",
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
- "testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
- "test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "tokenCapturedSuccess": "令牌捕获成功!现在可以启动机器人。",
+ "notificationsNotSupported": "此浏览器不支持通知。",
+ "chargesReadyNotification": "WPlace — 次数就绪",
+ "chargesReadyMessage": "次数就绪:{current} / {max}。阈值:{threshold}。",
+ "testNotificationTitle": "WPlace — 测试",
+ "testNotificationMessage": "这是一个测试通知。",
+ "showStats": "显示统计",
+ "compactMode": "紧凑模式",
+ "refreshCharges": "刷新次数",
+ "closeStats": "关闭统计",
+ "zoomOut": "缩小",
+ "zoomIn": "放大",
+ "fitToView": "适合窗口",
+ "actualSize": "实际大小 (100%)",
+ "panMode": "平移(拖动移动视图)",
+ "clearIgnoredPixels": "清除所有忽略的像素",
+ "invertMask": "反转蒙版",
+ "waitingSetupComplete": "🔄 等待初始设置完成...",
+ "waitingTokenGenerator": "🔄 等待令牌生成器初始化...",
+ "uploadImageFirst": "请先上传图像以获取可用颜色",
+ "pleaseWaitInitialSetup": "🔄 请等待初始设置完成后再加载进度。",
+ "pleaseWaitFileSetup": "🔄 请等待初始设置完成后再从文件加载。",
+ "errorSavingProgress": "❌ 保存进度时出错",
+ "errorLoadingProgress": "❌ 加载进度时出错",
+ "fileOperationsAvailable": "📂 文件操作(加载/上传)现已可用!",
+ "tokenGeneratorReady": "🔑 令牌生成器准备就绪!",
+ "paintingStats": "绘制统计",
+ "enablePaintingSpeedLimit": "启用绘制速度限制(批次大小控制)",
+ "enableNotifications": "启用通知",
+ "notifyOnChargesThreshold": "次数达到阈值时通知",
+ "onlyWhenNotFocused": "仅在标签页未聚焦时",
+ "repeatEvery": "重复间隔",
+ "minutesPl": "分钟",
+ "grantPermission": "授予权限",
+ "test": "测试",
+ "showAllColorsIncluding": "显示所有颜色(包括不可用)",
+ "chromaWeight": "色度权重",
+ "downloadPreview": "下载预览",
+ "apply": "应用",
+ "cancel": "取消",
+ "fit": "适合",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "清除",
+ "invert": "反转",
+ "reprocessingOverlay": "重新处理覆盖层...",
+ "overlayUpdated": "覆盖层已更新!",
+ "notificationsEnabled": "已启用通知。",
+ "notificationsPermissionDenied": "通知权限被拒绝。",
+ "overlayEnabled": "已启用覆盖层。",
+ "overlayDisabled": "已禁用覆盖层。",
+ "tokenSourceSet": "令牌源设置为:{source}",
+ "batchModeSet": "批次模式设置为:{mode}",
+ "randomRange": "随机范围",
+ "normalFixedSize": "正常固定大小",
+ "advancedColorSettingsReset": "已重置高级颜色设置。",
+ "shiftRowAltColumn": "Shift = 行 • Alt = 列",
+ "hideTurnstileBtn": "隐藏",
+ "turnstileInstructions": "Cloudflare Turnstile — 如有显示请完成验证",
+ "uploadImageFirstColors": "请先上传图像以获取可用颜色",
+ "availableColors": "可用颜色 ({count})",
+ "colorTooltip": "ID:{id}\nRGB:{rgb}",
+ "expandMode": "展开模式",
+ "minimize": "最小化",
+ "restore": "恢复",
+ "hideStats": "隐藏统计"
}
diff --git a/lang/zh-TW.json b/lang/zh-TW.json
index 89d9574..4173338 100644
--- a/lang/zh-TW.json
+++ b/lang/zh-TW.json
@@ -73,65 +73,69 @@
"captchaFailed": "❌ 令牌產生失敗。嘗試回退方法...",
"automation": "自動化",
"noChargesThreshold": "⌛ 等待次數達到 {threshold}。目前 {current}。下次在 {time}...",
- "tokenCapturedSuccess": "Token captured successfully! You can start the bot now.",
- "notificationsNotSupported": "Notifications are not supported in this browser.",
- "chargesReadyNotification": "WPlace — Charges Ready",
- "chargesReadyMessage": "Charges ready: {current} / {max}. Threshold: {threshold}.",
- "testNotificationTitle": "WPlace — Test",
- "testNotificationMessage": "This is a test notification.",
- "showStats": "Show Stats",
- "compactMode": "Compact Mode",
- "refreshCharges": "Refresh Charges",
- "closeStats": "Close Stats",
- "zoomOut": "Zoom Out",
- "zoomIn": "Zoom In",
- "fitToView": "Fit to view",
- "actualSize": "Actual size (100%)",
- "panMode": "Pan (drag to move view)",
- "clearIgnoredPixels": "Clear all ignored pixels",
- "invertMask": "Invert mask",
- "waitingSetupComplete": "🔄 Waiting for initial setup to complete...",
- "waitingTokenGenerator": "🔄 Waiting for token generator to initialize...",
- "uploadImageFirst": "Upload an image first to capture available colors",
- "pleaseWaitInitialSetup": "🔄 Please wait for the initial setup to complete before loading progress.",
- "pleaseWaitFileSetup": "🔄 Please wait for the initial setup to complete before loading from file.",
- "errorSavingProgress": "❌ Error saving progress",
- "errorLoadingProgress": "❌ Error loading progress",
- "fileOperationsAvailable": "📂 File operations (Load/Upload) are now available!",
- "tokenGeneratorReady": "🔑 Token generator ready!",
- "paintingStats": "Painting Stats",
- "enablePaintingSpeedLimit": "Enable painting speed limit (batch size control)",
- "enableNotifications": "Enable notifications",
- "notifyOnChargesThreshold": "Notify when charges reach threshold",
- "onlyWhenNotFocused": "Only when tab is not focused",
- "repeatEvery": "Repeat every",
- "minutesPl": "minute(s)",
- "grantPermission": "Grant Permission",
- "test": "Test",
- "showAllColorsIncluding": "Show All Colors (including unavailable)",
- "chromaWeight": "Chroma Weight",
- "downloadPreview": "Download Preview",
- "apply": "Apply",
- "cancel": "Cancel",
- "fit": "Fit",
+ "tokenCapturedSuccess": "令牌捕獲成功!現在可以啟動機器人。",
+ "notificationsNotSupported": "此瀏覽器不支持通知。",
+ "chargesReadyNotification": "WPlace — 次數就緒",
+ "chargesReadyMessage": "次數就緒:{current} / {max}。閾值:{threshold}。",
+ "testNotificationTitle": "WPlace — 測試",
+ "testNotificationMessage": "這是一個測試通知。",
+ "showStats": "顯示統計",
+ "compactMode": "緊凑模式",
+ "refreshCharges": "刷新次數",
+ "closeStats": "關閉統計",
+ "zoomOut": "縮小",
+ "zoomIn": "放大",
+ "fitToView": "適合視窗",
+ "actualSize": "實際大小 (100%)",
+ "panMode": "平移(拖拉移動視圖)",
+ "clearIgnoredPixels": "清除所有忽略的像素",
+ "invertMask": "反轉遮罩",
+ "waitingSetupComplete": "🔄 等待初始設定完成...",
+ "waitingTokenGenerator": "🔄 等待令牌產生器初始化...",
+ "uploadImageFirst": "請先上傳圖像以獲取可用顏色",
+ "pleaseWaitInitialSetup": "🔄 請等待初始設定完成後再載入進度。",
+ "pleaseWaitFileSetup": "🔄 請等待初始設定完成後再從檔案載入。",
+ "errorSavingProgress": "❌ 儲存進度時出錯",
+ "errorLoadingProgress": "❌ 載入進度時出錯",
+ "fileOperationsAvailable": "📂 檔案操作(載入/上傳)現已可用!",
+ "tokenGeneratorReady": "🔑 令牌產生器準備就緒!",
+ "paintingStats": "繪制統計",
+ "enablePaintingSpeedLimit": "啟用繪制速度限制(批次大小控制)",
+ "enableNotifications": "啟用通知",
+ "notifyOnChargesThreshold": "次數達到闾值時通知",
+ "onlyWhenNotFocused": "僅在標籤頁未聚焦時",
+ "repeatEvery": "重複間隔",
+ "minutesPl": "分鐘",
+ "grantPermission": "授予權限",
+ "test": "測試",
+ "showAllColorsIncluding": "顯示所有顏色(包括不可用)",
+ "chromaWeight": "色度權重",
+ "downloadPreview": "下載預覽",
+ "apply": "套用",
+ "cancel": "取消",
+ "fit": "適合",
"hundred": "100%",
- "clear": "Clear",
- "invert": "Invert",
- "reprocessingOverlay": "Re-processing overlay...",
- "overlayUpdated": "Overlay updated!",
- "notificationsEnabled": "Notifications enabled.",
- "notificationsPermissionDenied": "Notifications permission denied.",
- "overlayEnabled": "Overlay enabled.",
- "overlayDisabled": "Overlay disabled.",
- "tokenSourceSet": "Token source set to: {source}",
- "batchModeSet": "Batch mode set to: {mode}",
- "randomRange": "Random Range",
- "normalFixedSize": "Normal Fixed Size",
- "advancedColorSettingsReset": "Advanced color settings reset.",
- "shiftRowAltColumn": "Shift = Row • Alt = Column",
- "hideTurnstileBtn": "Hide",
- "turnstileInstructions": "Cloudflare Turnstile — please complete the check if shown",
- "uploadImageFirstColors": "Please upload an image first to capture available colors",
- "availableColors": "Available Colors ({count})",
- "colorTooltip": "ID: {id}\nRGB: {rgb}"
+ "clear": "清除",
+ "invert": "反轉",
+ "reprocessingOverlay": "重新處理覆蓋層...",
+ "overlayUpdated": "覆蓋層已更新!",
+ "notificationsEnabled": "已啟用通知。",
+ "notificationsPermissionDenied": "通知權限被拒絕。",
+ "overlayEnabled": "已啟用覆蓋層。",
+ "overlayDisabled": "已禁用覆蓋層。",
+ "tokenSourceSet": "令牌來源設定為:{source}",
+ "batchModeSet": "批次模式設定為:{mode}",
+ "randomRange": "隨機範圍",
+ "normalFixedSize": "正常固定大小",
+ "advancedColorSettingsReset": "已重置進階顏色設定。",
+ "shiftRowAltColumn": "Shift = 列 • Alt = 行",
+ "hideTurnstileBtn": "隱藏",
+ "turnstileInstructions": "Cloudflare Turnstile — 如有顯示請完成驗證",
+ "uploadImageFirstColors": "請先上傳圖像以獲取可用顏色",
+ "availableColors": "可用顏色 ({count})",
+ "colorTooltip": "ID:{id}\nRGB:{rgb}",
+ "expandMode": "展開模式",
+ "minimize": "最小化",
+ "restore": "恢復",
+ "hideStats": "隱藏統計"
}