diff --git a/packages/common-i18n/src/locales/tr/auth.json b/packages/common-i18n/src/locales/tr/auth.json index b0e1a027da..7c470bc49b 100644 --- a/packages/common-i18n/src/locales/tr/auth.json +++ b/packages/common-i18n/src/locales/tr/auth.json @@ -1,23 +1,35 @@ { "page": { - "title": "Giriş" + "signin": "Login", + "signup": "Sign up" }, - "button": { - "signin": "Giriş yap", - "signup": "Kayıt ol" + "title": { + "signin": "Sign in to your account", + "signup": "Create a new account" }, - "label": { - "email": "E-posta", - "password": "Şifre" + "content": { + "title": "Where data flows, teams grow", + "description": "A database designed for every team, from simple tables to enterprise solutions" }, "legal": { "tip": "Devam etmek, Teable'ın Hizmet Sözleşmesi ve Gizlilik Politikası ile uyumlu olduğunuzu kabul ediyorsunuz, ve güncellemelere sahip düzenli e-postalar alacaksınız.", "termsUrl": "https://teable.ai/terms-of-service", "privacyUrl": "https://teable.ai/privacy" }, + "button": { + "signin": "Giriş yap", + "signup": "Kayıt ol", + "resend": "Resend" + }, + "label": { + "email": "E-posta", + "password": "Şifre", + "verificationCode": "Verification code" + }, "placeholder": { "password": "Şifrenizi girin...", - "email": "E-posta adresinizi girin..." + "email": "E-posta adresinizi girin...", + "verificationCode": "Enter your verification code..." }, "signError": { "exist": "E-posta zaten kayıtlı", @@ -28,6 +40,21 @@ "turnstileExpired": "Doğrulama süresi doldu. Lütfen tekrar deneyin", "turnstileTimeout": "Doğrulama zaman aşımına uğradı. Lütfen tekrar deneyin" }, + "signupError": { + "verificationCodeRequired": "Verification code is required", + "verificationCodeInvalid": "Verification code is invalid", + "passwordLength": "Minimum 8 chars", + "passwordInvalid": "Password must contain at least one letter and one number", + "sendMailRateLimit": "Please wait {{seconds}} seconds before requesting a new code" + }, + "socialAuth": { + "title": "Or continue with", + "sso": { + "title": "Sign in with Single sign on", + "description": "Enter your email to sign in with Single sign on", + "error": "SSO is not set up for your email domain." + } + }, "resetPassword": { "header": "Şifrenizi Belirleyin", "description": "Yeni bir şifre girin", @@ -48,6 +75,7 @@ "description": "Lütfen aşağıya e-posta adresinizi girin, size şifrenizi sıfırlamak için bir bağlantı göndereceğiz.", "errorRequiredEmail": "E-posta gerekli", "errorInvalidEmail": "Geçersiz e-posta", + "sendMailRateLimit": "Please wait {{seconds}} seconds before sending a new email", "buttonText": "Sıfırlama E-postası Gönder", "success": { "title": "🎉 Şifre sıfırlama e-postası gönderildi", diff --git a/packages/common-i18n/src/locales/tr/common.json b/packages/common-i18n/src/locales/tr/common.json index 8251e99ae6..b77eceb52b 100644 --- a/packages/common-i18n/src/locales/tr/common.json +++ b/packages/common-i18n/src/locales/tr/common.json @@ -6,6 +6,7 @@ "doNotSave": "Kaydetme", "submit": "Gönder", "confirm": "Onayla", + "continue": "Devam Et", "close": "Kapat", "edit": "Düzenle", "fill": "Doldur", @@ -16,8 +17,10 @@ "zoomIn": "Yakınlaştır", "zoomOut": "Uzaklaştır", "back": "Geri", + "download": "Download", "remove": "Kaldır", "removeConfig": "Yapılandırmayı sil", + "retry": "Retry", "saveSucceed": "Başarıyla Kaydedildi!", "submitSucceed": "Başarıyla Gönderildi!", "editSucceed": "Başarıyla Düzenlendi!", @@ -30,6 +33,8 @@ "yesDelete": "Evet, sil", "rename": "Yeniden Adlandır", "duplicate": "Çoğalt", + "export": "Dışa Aktar", + "import": "İçe Aktar", "change": "Değiştir", "upgrade": "Yükselt", "upgradeToLevel": "{{level}}'e yükselt", @@ -40,32 +45,32 @@ "permanentDelete": "Kalıcı Olarak Sil", "globalSearch": "Genel Arama", "fieldSearch": "Alan Ara", + "tableIndex": "Dizin", "showAllRow": "Tüm satırları göster", "hideNotMatchRow": "Eşleşmeyen satırları gizle", "more": "Daha Fazla", "expand": "Genişlet", - "tableIndex": "Dizin", + "view": "Görüntüle", + "preview": "Önizleme", + "viewAndEdit": "Görüntüle ve düzenle", + "deleteTip": "\"{{name}}\" öğesini silmek istediğinizden emin misiniz?", "move": "Taşı", "turnOn": "Aç", "exit": "Çıkış", "next": "Sonraki", "previous": "Önceki", "select": "Seç", - "view": "Görüntüle", - "preview": "Önizleme", - "viewAndEdit": "Görüntüle ve düzenle", - "deleteTip": "\"{{name}}\" öğesini silmek istediğinizden emin misiniz?", "refresh": "Yenile", "login": "Giriş Yap", "useTemplate": "Şablon Kullan", "copyToMySpace": "Copy to my space", "saveToMySpace": "Save to my space", "supportSaveCopy": "Support saving a copy", + "copyLink": "Copy link", "backToSpace": "Alana Dön", "switchBase": "Veritabanı Değiştir", - "continue": "Devam Et", - "export": "Dışa Aktar", - "import": "İçe Aktar", + "collapse": "Collapse", + "viewDetails": "View details", "getMore": "Daha fazla al", "copySuccess": "Kopyalama başarılı" }, @@ -93,13 +98,6 @@ "loadMore": "Daha Fazla Yükle", "allTemplatesLoaded": "Tüm şablonlar yüklendi", "createTemplate": "Şablon Oluştur", - "useTemplateDialog": { - "title": "Alan Seçin", - "description": "Şablon için bir alan seçin", - "noSpaceDescription": "You don't have any spaces yet. Create one to continue.", - "newSpacePlaceholder": "Space name", - "createSpace": "Create" - }, "promptBox": { "placeholder": "Teable ile iş uygulamanızı oluşturun", "start": "Başlat", @@ -112,6 +110,13 @@ "guide6": "Gönderiler ve yayın tarihleri ile bir içerik planlayıcısı oluşturun", "guide7": "Özgeçmişleri yapıştırın → Teable'dan adayları düzenlemesini ve ön elemeyi yapmasını isteyin" } + }, + "useTemplateDialog": { + "title": "Alan Seçin", + "description": "Şablon için bir alan seçin", + "noSpaceDescription": "You don't have any spaces yet. Create one to continue.", + "newSpacePlaceholder": "Space name", + "createSpace": "Create" } }, "share": { @@ -228,8 +233,7 @@ "changePasswordError": { "disMatch": "Yeni şifreleriniz eşleşmiyor.", "equal": "Yeni şifreniz mevcut şifrenizden farklı olmalıdır.", - "invalid": "Mevcut şifreniz geçersiz.", - "invalidNew": "Yeni şifreniz geçersiz, minimum 8 karakter olmalıdır." + "invalid": "Mevcut şifreniz geçersiz." }, "changePasswordSuccess": { "title": "🎉 Şifre başarıyla değiştirildi.", @@ -243,26 +247,11 @@ "confirm": "Şifrenizi onaylayın" }, "addPasswordError": { - "disMatch": "Şifreleriniz eşleşmiyor.", - "invalid": "Şifreniz geçersiz, minimum 8 karakter olmalıdır." + "disMatch": "Şifreleriniz eşleşmiyor." }, "addPasswordSuccess": { "title": "🎉 Şifre başarıyla eklendi." }, - "deleteAccount": { - "title": "Hesabı Sil", - "desc": "Bu işlem geri alınamaz. Hesabınız ve tüm ilişkili veriler kalıcı olarak silinecektir.", - "error": { - "title": "Hesap silinemedi", - "desc": "Önce aşağıdaki bağımlılıkları çözmeniz gerekiyor:", - "spacesError": "Hesabınızı silmeden önce, Alanlarınızdan çıkmanız (veya silip çöp kutusuna taşımanız) gerekiyor." - }, - "confirm": { - "title": "Onaylamak için DELETE yazın", - "placeholder": "DELETE" - }, - "loading": "Siliniyor..." - }, "changeEmail": { "title": "E-posta adresini değiştir", "desc": "Lütfen şifrenizi doğrulayın ve yeni e-posta adresinizi onaylayın", @@ -282,6 +271,20 @@ "desc": "2 saniye içinde giriş sayfasına yönlendirileceksiniz.", "sendSuccess": "Doğrulama kodu başarıyla gönderildi." } + }, + "deleteAccount": { + "title": "Hesabı Sil", + "desc": "Bu işlem geri alınamaz. Hesabınız ve tüm ilişkili veriler kalıcı olarak silinecektir.", + "error": { + "title": "Hesap silinemedi", + "desc": "Önce aşağıdaki bağımlılıkları çözmeniz gerekiyor:", + "spacesError": "Hesabınızı silmeden önce, Alanlarınızdan çıkmanız (veya silip çöp kutusuna taşımanız) gerekiyor." + }, + "confirm": { + "title": "Onaylamak için DELETE yazın", + "placeholder": "DELETE" + }, + "loading": "Siliniyor..." } }, "notify": { @@ -301,7 +304,8 @@ "interactionMode": "Etkileşim Modu", "mouseMode": "İmleç Modu", "touchMode": "Dokunmatik Mod", - "systemMode": "Sistemi Takip Et" + "systemMode": "Sistemi Takip Et", + "buySelfHostedLicense": "Kendi sunucunuz için lisans satın alın" }, "nav": { "settings": "Ayarlar", @@ -310,14 +314,44 @@ }, "integration": { "title": "Entegrasyonlar", - "description": "{{count}} uygulamaya hesabınıza erişim izni verdiniz.", - "lastUsed": "Son kullanım: {{date}}", - "revoke": "İptal et", - "owner": "Sahibi: {{user}}", - "revokeTitle": "Yetkilendirmeyi iptal etmek istediğinizden emin misiniz?", - "revokeDesc": "{{name}} artık Teable API'sine erişemeyecek. Bu işlem geri alınamaz.", - "scopeTitle": "İzinler", - "scopeDesc": "Bu uygulama aşağıdaki kapsamlara erişebilecek:" + "thirdPartyIntegrations": { + "title": "Üçüncü taraf entegrasyonları", + "description": "Hesabınıza {{count}} uygulamaya erişim izni verdiniz.", + "lastUsed": "Son kullanım: {{date}}", + "revoke": "İptal et", + "owner": "Sahibi: {{user}}", + "revokeTitle": "Yetkilendirmeyi iptal etmek istediğinizden emin misiniz?", + "revokeDesc": "{{name}} artık Teable API erişimine sahip olmayacak. Bu işlem geri alınamaz.", + "scopeTitle": "İzinler", + "scopeDesc": "Bu uygulama aşağıdaki kapsamlara erişebilecek:" + }, + "userIntegration": { + "title": "Bağlı hesaplar", + "description": "Teable'ın kaynaklarınıza erişip eşitleyebilmesi için harici hesapları bağlayın.", + "emptyDescription": "Bağlı hesap yok", + "actions": { + "reconnect": "Yeniden bağlan" + }, + "slack": { + "user": "Slack kullanıcısı", + "workspace": "Slack çalışma alanı" + }, + "email": { + "user": "Kullanıcı", + "email": "E-posta" + }, + "deleteTitle": "Bağlı hesabı kaldır", + "deleteDesc": "{{name}} hesabını kaldırmak istediğinizden emin misiniz?", + "create": "Yeni hesap bağla", + "manage": "Bağlı hesapları yönet", + "searchPlaceholder": "Bağlı hesaplarda ara", + "defaultName": "{{name}} Entegrasyonu", + "callback": { + "error": "Yetkilendirme başarısız", + "title": "Yetkilendirme başarılı", + "desc": "Bu pencereyi şimdi kapatabilirsiniz." + } + } } }, "noun": { @@ -383,9 +417,9 @@ "createViewTooltipTitle": "Görünüm oluştur", "createViewTooltipContent": "Şu anda kullanıcılar Izgara, Galeri, Kanban ve Form görünümleri oluşturabilir, Takvim görünümleri gelecek sürümlerde planlanmaktadır.

Bu çeşitlilik, kullanıcılara çeşitli veri yönetimi görevleri için kapsamlı bir araç seti sunar.", "viewFilteringTooltipTitle": "Kayıtları filtreleme", - "viewFilteringTooltipContent": "Görünümlerin temel özelliklerinden biri, belirlediğiniz koşullara göre kayıtları görünümden filtreleyebilmektir.

Bir kayıt bir koşula göre filtrelendiğinde silinmez—sadece tablonuza bakmak için kullandığınız belirli görünümden gizlenir.", + "viewFilteringTooltipContent": "Görünümlerin temel özelliklerinden biri, belirlediğiniz koşullara göre kayıtları görünümden filtreleyebilmektir.

Bir kayıt bir koşula göre filtrelendiğinde silinmez,sadece tablonuza bakmak için kullandığınız belirli görünümden gizlenir.", "viewSortingTooltipTitle": "Kayıtları sıralama", - "viewSortingTooltipContent": "Bir görünümdeyken, kayıtlarınızı belirli alanlardaki değerlere göre belirli bir sırada görünecek şekilde sıralayabilirsiniz.

Kayıtlarınızı bir görünümde sıralamak diğer görünümlerdeki kayıtların sırasını etkilemez—sadece tablonuza bakmak için kullandığınız mevcut görünüme uygulanır.", + "viewSortingTooltipContent": "Bir görünümdeyken, kayıtlarınızı belirli alanlardaki değerlere göre belirli bir sırada görünecek şekilde sıralayabilirsiniz.

Kayıtlarınızı bir görünümde sıralamak diğer görünümlerdeki kayıtların sırasını etkilemez,sadece tablonuza bakmak için kullandığınız mevcut görünüme uygulanır.", "viewGroupingTooltipTitle": "Kayıtları gruplama", "viewGroupingTooltipContent": "Kayıtları gruplamak, oluşturuculara belirli bir görünümde sunulan veri kümesini kategorize etmeye yardımcı olacak bir veya daha fazla koşul kümesi oluşturma imkanı sağlar.", "apiButtonTooltipTitle": "API", @@ -398,6 +432,8 @@ "title": "{{spaceName}} alanı paylaşımı", "desc_one": "Bu alanda {{count}} işbirlikçi var. Bir alan işbirlikçisi eklemek, onlara bu alandaki tüm veritabanlarına erişim izni verecektir.", "desc_other": "Bu alanda {{count}} işbirlikçi var. Bir alan işbirlikçisi eklemek, onlara bu alandaki tüm veritabanlarına erişim izni verecektir.", + "desc_billable_one": "Bu alanda {{count}} ortak çalışan ve {{billableCount}} faturalandırılabilir kullanıcı var. Alan ortağı eklemek, bu alandaki tüm tabanlara erişim sağlar.", + "desc_billable_other": "Bu alanda {{count}} ortak çalışan ve {{billableCount}} faturalandırılabilir kullanıcı var. Alan ortağı eklemek, bu alandaki tüm tabanlara erişim sağlar.", "tabEmail": "E-posta ile davet et", "emailPlaceholder": "E-posta adreslerini girin ve Enter tuşu ile ayırın", "tabLink": "Bağlantı ile davet et", @@ -405,20 +441,43 @@ "emailSend": "Davet gönder", "linkSend": "Bağlantı oluştur", "spaceTitle": "Alan işbirlikçileri", + "spaceTitleWithCount": "Alan ortak çalışanları ({{count}})", + "baseTitle": "Taban ortak çalışanları", + "allCollaboratorsTitle": "Tüm ortak çalışanlar (Alan ve Taban)", + "baseOnly": "Yalnızca taban", "collaboratorSearchPlaceholder": "İsim veya e-posta ile alan işbirlikçisi bul", "collaboratorJoin": "{{joinTime}} tarihinde katıldı", "collaboratorRemove": "İşbirlikçiyi kaldır", "linkTitle": "Davet bağlantıları", "linkCreatedTime": "{{createdTime}} tarihinde oluşturuldu", "linkCopySuccess": "Bağlantı kopyalandı", - "linkRemove": "Bağlantıyı kaldır" + "linkRemove": "Bağlantıyı kaldır", + "noInviteLinks": "Davet bağlantısı yok", + "linkDescription": "Davet bağlantısı oluşturun ve izinleri atayın", + "haveAccess": "Erişimi var" }, "base": { "title": "{{baseName}} paylaş", "desc_one": "Bu veritabanı {{count}} işbirlikçi ile paylaşılıyor.", "desc_other": "Bu veritabanı {{count}} işbirlikçi ile paylaşılıyor.", "baseTitle": "Veritabanı işbirlikçileri", - "collaboratorSearchPlaceholder": "İsim veya e-posta ile veritabanı işbirlikçisi bul" + "collaboratorSearchPlaceholder": "İsim veya e-posta ile veritabanı işbirlikçisi bul", + "baseTitleWithCount": "Taban ortak çalışanları ({{count}})" + }, + "addOrgCollaborator": { + "title": "Organizasyon ortağı ekle", + "placeholder": "Organizasyon üyesi veya departman seçin" + }, + "sendInvitationSuccess": "Davet gönderildi", + "table": { + "collaborator": "Ortak çalışan", + "accessPermission": "Erişim izni", + "joinAt": "Katılım tarihi" + }, + "authority": { + "title": "Yetki matrisi etkin", + "description": "Ortak çalışanların etkin erişim izni, kendilerine atanan rollere göre belirlenir. Atanmamış kullanıcılar varsayılan rolü kullanır.", + "viewDetail": "Ayrıntıları gör" } }, "help": { @@ -436,6 +495,10 @@ "unavailableInPlanTips": "Mevcut abonelik planı bu özelliği desteklemiyor", "unavailableConnectionTips": "Veritabanı bağlantısı özelliği gelecekte kaldırılacak ve yalnızca Kurumsal Plan ve kendi sunucu sürümleri için kullanılabilir olacak.", "levelTips": "Bu alan şu anda {{level}} planında", + "enterpriseFeature": "Enterprise feature", + "automationRequiresUpgrade": "Upgrade to Enterprise Edition (EE) to enable automation", + "authorityMatrixRequiresUpgrade": "Upgrade to Enterprise Edition (EE) to enable authority matrix", + "viewPricing": "View pricing", "billable": "Faturalandırılabilir", "billableByAuthorityMatrix": "Yetki matrisi tarafından oluşturulan faturalandırma", "licenseExpiredGracePeriod": "Kendi sunucunuzda barındırma lisansınızın süresi doldu ve {{expiredTime}} tarihinde ücretsiz plana düşürülecek. Premium özelliklere erişimi korumak için lütfen lisansınızı hemen güncelleyin.", @@ -443,6 +506,7 @@ "title": "Alan abonelik planını yükselt", "description": "Yalnızca sahibi olduğunuz çalışma alanlarını yükseltebilirsiniz" }, + "contactAdminToUpgrade": "Please contact the space owner to upgrade the subscription plan.", "status": { "active": "Aktif", "canceled": "İptal Edildi", @@ -457,6 +521,7 @@ }, "admin": { "setting": { + "instanceTitle": "Instance settings", "description": "Mevcut örneğinizin ayarlarını değiştirin", "allowSignUp": "Yeni hesap oluşturmaya izin ver", "allowSignUpDescription": "Bu seçeneği devre dışı bırakmak yeni kullanıcı kayıtlarını yasaklar ve kayıt düğmesi artık giriş sayfasında görünmez.", @@ -473,16 +538,16 @@ "brandingSettings": { "title": "Marka ayarları", "description": "Yalnızca Kurumsal Sürümde kullanılabilir", + "brandName": "Brand name", "logo": "Logo", - "logoDescription": "Logo, Teable'daki marka kimliğinizdir.", "logoUpload": "Logo yükle", "logoUploadDescription": "Logo resmi yükleyin, PNG, JPEG formatlarını destekler, önerilen boyut 100x100px. Maksimum yükleme boyutu 500KB." }, "ai": { "name": "İsim", "nameDescription": "İsim özelleştirilebilir, farklı model sağlayıcılarını ayırt etmek için kullanılır", - "enable": "AI'ı etkinleştir", - "enableDescription": "Mevcut örnek için AI özelliklerini etkinleştirin, tüm kullanıcılar AI özelliklerini kullanabilecek", + "customModel": "Custom model", + "customModelDescription": "Özel modeller AI alanlarında, AI otomasyonunda ve AI sohbet arayüzünde kullanılabilir. Görsel oluşturma modellerinin test edilmesi gerekir.", "updateLLMProvider": "Model sağlayıcısını güncelle", "addProvider": "Model sağlayıcı ekle", "addProviderDescription": "Listeye yeni bir model sağlayıcı ekle", @@ -496,7 +561,8 @@ "baseUrlRequired": "Temel URL gereklidir", "fetchModelListError": "Model listesi alınamadı", "provider": "Model sağlayıcı", - "providerDescription": "Kullanılacak model sağlayıcı", + "aiAbilitySettings": "AI ability settings", + "aiAbilitySettingsDescription": "Configure the AI abilities", "modelPreferences": "Model tercihleri", "modelPreferencesDescription": "Model sağlayıcının model tercihleri", "embeddingModel": "Gömme modeli", @@ -529,6 +595,7 @@ "confirm": "Modeli Test Et", "cancel": "İptal", "missingCapabilitiesWarning": "Bu model resim veya PDF işlemeyi desteklemiyor, bu bazı özelliklerin kullanılamaz olmasına neden olabilir.", + "modelNotSuitable": "This model may not be suitable for advanced AI features:", "enableAITitle": "AI'ı Etkinleştir", "enableAIDescription": "Model testi tamamlandı. AI şu anda etkin değil. Bu model kabiliyetlerini kullanmak için AI'ı etkinleştirmek istiyor musunuz?", "enableAI": "AI'ı Etkinleştir", @@ -538,14 +605,27 @@ "image": "Resim", "pdf": "PDF", "webSearch": "Web Araması", + "toolCall": "Tool Call", + "reasoning": "Reasoning", + "imageGeneration": "Image Generation", "disabledWebSearch": "Web Araması Devre Dışı", - "lgModelAbility": "Büyük model kabiliyeti" + "lgModelAbility": "Büyük model kabiliyeti", + "missingVision": "Does not support image or PDF processing", + "missingToolCall": "Does not support tool/function calling", + "notTested": "Model capabilities not tested yet. Please test the model in provider settings first", + "supportedFormats": "Supported formats" + }, + "imageModelAbility": { + "generation": "Text to Image", + "imageToImage": "Image to Image" }, "configUpdated": "AI yapılandırması güncellendi", "noModelFound": "Model bulunamadı", "searchModel": "Model ara...", "selectModel": "Model seç...", "defaultModel": "{{name}} (Varsayılan)", + "moreModels": "More Models", + "noModelsAvailable": "No models available", "input": "Giriş {{ratio}}", "output": "Çıkış {{ratio}}", "inputOrOutputTip": "Oran, hesaplama gücü ile Token arasındaki dönüşüm ilişkisini temsil eder, örneğin \"1:1000\" 1 hesaplama gücü ≈ 1000 Token anlamına gelir.

Not: Her kullanımda en az 1 hesaplama gücü kesilir, gerçek tüketim 1 hesaplama gücünden az olsa bile", @@ -559,15 +639,215 @@ "testConnection": "Test", "testing": "Test ediliyor...", "testSuccess": "Test başarılı", + "testCompleteWithCount": "Test tamamlandı: {{success}}/{{total}} model başarılı", + "allTestsFailed": "All model tests failed", "testFailed": "Test başarısız", + "batchTest": "Test Model Capabilities", + "test": "Test", + "testProvider": "Test", + "testProviderTooltip": "Bu sağlayıcı altındaki {{count}} modelin tümünü test et", + "batchTesting": "Testing all models...", + "batchTestComplete": "Batch test completed", + "batchTestResults": "Batch Test Results", + "batchTestResultsSummary": "Tested {{tested}} of {{total}} models: {{success}} passed, {{failed}} failed", + "batchTestNoModels": "No models configured to test", + "modelStatus": "Model Status", + "imageSupport": "Image Support", + "basicGeneration": "Basic Generation", + "supported": "Supported", + "notSupported": "Not Supported", + "partialSupport": "Partial Support", + "urlSupport": "URL", + "base64Support": "Base64", + "closeResults": "Close", + "retryFailed": "Retry Failed", + "stopTest": "Stop", + "pending": "Pending", + "configuredModels": "Configured Models", "fillRequiredFields": "Lütfen tüm gerekli alanları doldurun", "modelsRequired": "Lütfen en az bir model doldurun", "noValidModel": "Geçerli model bulunamadı", "addCustomModel": "Özel model ekle", - "isOpenRouter": "OpenRouter" - }, - "webSearch": { - "description": "Web arama özelliğini etkinleştirmek için Firecrawl API anahtarını yapılandırın, API anahtarını almak için Firecrawl ayarlarına erişin" + "isOpenRouter": "OpenRouter", + "modelRates": "Model Rates", + "model": "Model", + "inputRate": "Input", + "outputRate": "Output", + "inputRateTip": "Credits per 1M input tokens", + "outputRateTip": "Credits per 1M output tokens", + "rateExplanationTitle": "Ücretlendirme nasıl çalışır (1 USD = 100 kredi)", + "rateExplanationFormula": "Kredi = Token x Ücret / 1.000.000", + "rateExplanationExample": "Örnek: 10.000 token, ücret 300 = 10000 x 300 / 1M = 3 kredi", + "ratesDescription": "1M token başına ücretler (OpenRouter'dan otomatik doldurmak için 'Fiyatlandırmayı Getir'e tıklayın)", + "advancedRates": "Advanced rates (cache, reasoning, image)", + "advancedRatesDescription": "Leave blank for auto-calculation. Cache read ≈ 10% of input, cache write ≈ 125% of input, reasoning = output rate.", + "cacheRead": "Cache↓", + "cacheWrite": "Cache↑", + "reasoning": "Reason", + "perImage": "Image", + "cacheReadRateTip": "Rate for cached input tokens (usually 10-50% of input rate, or 0 for free)", + "cacheWriteRateTip": "Rate for cache write tokens (usually same as input or 25% more)", + "reasoningRateTip": "o1 gibi muhakeme token'ları için ücret (genellikle çıktı ücreti ile aynı)", + "imageRateTip": "Credits per generated image", + "imageModel": "Image Model", + "imageGeneration": "Image Generation", + "imageToImage": "Image-to-Image", + "clickToToggleImageModel": "💡 Click to mark as image generation model", + "markAsImageModel": "Mark as image generation model", + "imageGenerationModel": "Image Generation Model", + "markedAsImageModel": "Görsel oluşturma modeli olarak işaretlendi. Metinden görsele ve görselden görsele yetenekleri test edilecek.", + "markedAsTextModel": "Metin modeli olarak işaretlendi. Görsel girişi (vizyon) yeteneği test edilecek.", + "fetchPricing": "Fetch Pricing", + "fetchPricingTip": "Fetch model pricing from OpenRouter API and auto-fill rates", + "fetchPricingError": "Failed to fetch pricing", + "pricingPreview": "Pricing Preview", + "pricingPreviewDesc": "Found pricing for {{matched}} of {{total}} models", + "openRouterId": "OpenRouter ID", + "notFound": "Not found", + "applyPricing": "Apply ({{count}})", + "pricingApplied": "Pricing applied", + "pricingAppliedCount": "Updated pricing for {{count}} models", + "hint": { + "title": "Suggestions", + "missingV1Suffix": "Temel URL'de \"/v1\" son eki eksik olabilir. Çoğu OpenAI uyumlu API, \"/v1\" ile biten URL gerektirir (ör. https://api.openai.com/v1)", + "removeTrailingSlash": "Temel URL'nin sonundaki eğik çizgiyi kaldırmayı deneyin", + "checkApiKey": "Lütfen API anahtarınızın doğru olduğunu ve süresinin dolmadığını kontrol edin", + "azureDeployment": "Azure için, Temel URL'de doğru kaynak adını ve dağıtımı yapılandırdığınızdan emin olun", + "checkQuotaOrPermission": "API anahtarınızın izinleri yetersiz olabilir veya kota tükenmiş olabilir. Lütfen hesap durumunuzu kontrol edin", + "checkModelName": "Model adı yanlış olabilir. Lütfen model adının sağlayıcınızın desteklediği ile eşleştiğini kontrol edin", + "checkConnection": "Sunucuya bağlanılamıyor. Lütfen Temel URL'nin doğru olduğunu ve sunucunun erişilebilir olduğunu kontrol edin", + "ollamaRunning": "Ollama'nın yerel olarak çalıştığından emin olun. 'ollama serve' komutuyla başlatabilirsiniz", + "sslCertificate": "SSL sertifikası sorunu var. Kendinden imzalı sertifika kullanıyorsanız ek yapılandırma gerekebilir", + "checkConfiguration": "Lütfen yapılandırmanızı kontrol edin. Temel URL, API anahtarı ve model adının doğru olduğundan emin olun" + }, + "recommended": "Recommended", + "gatewayModels": "AI Gateway Models", + "gatewayModelsDescription": "En iyi AI SDK desteği için Vercel AI Gateway üzerinden önerilen modelleri yapılandırın", + "gatewayDescription": "En iyi uyumluluk ve güvenilirlik için AI Gateway kullanın. API anahtarını aşağıdaki Uygulama bölümünde yapılandırın.", + "providerDescription": "Kullanılacak model sağlayıcı", + "noGatewayModels": "No gateway models configured. Add models to get started.", + "addModel": "Add Model", + "addGatewayModel": "Add Gateway Model", + "popularModels": "Popular Models", + "modelId": "Model ID", + "modelIdHint": "AI Gateway tarafından kullanılan model tanımlayıcısı (ör. anthropic/claude-sonnet-4)", + "searchModelPlaceholder": "Type to search models...", + "noMatchingModels": "No matching models found", + "useCustomId": "Özel ID kullan: {{id}}", + "typeToSearch": "Type keywords to search available models", + "modelNotFound": "Bu model ID'si mevcut listede bulunamadı, lütfen yazımı doğrulayın", + "testModel": "Test Model", + "testModelSuccess": "Model testi başarılı! API doğru yanıt verdi", + "testModelImageSuccess": "Görsel modelinin API'de mevcut olduğu doğrulandı", + "testModelNotFound": "Model API listesinde bulunamadı", + "displayLabel": "Display Label", + "isImageModel": "This is an image generation model", + "capabilities": "Capabilities", + "setAsDefault": "Set as default chat model", + "quickAdd": "Quick add popular models:", + "guide": { + "configStatus": "Configuration Status", + "ready": "Ready", + "needsAttention": "Needs Attention", + "incomplete": "Incomplete", + "aiEnabled": "AI Enabled", + "aiEnabledDesc": "Custom models are enabled for this instance", + "aiDisabledDesc": "Enable to use custom AI models", + "gatewayKey": "Gateway API Key", + "gatewayKeyConfigured": "AI Gateway key is configured", + "gatewayKeyMissing": "Configure AI Gateway API key for recommended setup", + "gatewayKeyRequired": "Please configure AI Gateway API key first in the App section below", + "gatewayModels": "Gateway Models", + "gatewayModelsConfigured": "{{count}} models enabled", + "gatewayModelsEmpty": "Add gateway models for user selection", + "providers": "Custom Providers", + "providersConfigured": "{{count}} providers configured", + "providersEmpty": "No custom providers configured", + "chatModel": "Default Chat Model", + "chatModelGateway": "Using gateway model", + "chatModelProvider": "Using custom provider model", + "chatModelMissing": "Select a default chat model" + }, + "enableCard": { + "title": "AI Services", + "ready": "Configured and ready to use", + "needsConfig": "Enabled, but needs configuration below", + "disabled": "AI features are currently disabled", + "missingConfig": "Missing configuration:", + "allConfigured": "All configurations complete" + }, + "wizard": { + "setupProgress": "Setup Progress", + "checklist": "Checklist", + "allComplete": "Tüm gerekli ayarlar tamamlandı! AI kullanıma hazır.", + "nextStep": "Sonraki: {{step}}", + "configureAI": "AI'ı etkinleştirmek için aşağıdaki adımları tamamlayın", + "optional": "Optional", + "gatewayHelp": "AI Gateway: Yüzlerce model için tek API anahtarı; ilk kullanımda Vercel'e kredi kartı eklenmesi gerekir;", + "gatewayByok": "desteklenir (kendi sağlayıcı anahtarlarınızı getirin)", + "getApiKey": "Get API Key", + "keyInvalid": "Geçersiz API anahtarı, lütfen kontrol edip tekrar deneyin", + "gatewayErrorUnauthorized": "Geçersiz API anahtarı. Lütfen doğru kopyalandığını kontrol edin", + "gatewayErrorNeedCreditCard": "AI Gateway kullanımı için kredi kartı gerekli. Lütfen Vercel kontrol panelinden ekleyin", + "gatewayErrorInsufficientQuota": "Yetersiz hesap bakiyesi. Lütfen bakiye yükleyip tekrar deneyin", + "gatewayErrorForbidden": "Erişim engellendi. Lütfen Vercel kontrol panelinden hesap durumunuzu kontrol edin", + "gatewayErrorNetwork": "Ağ hatası. Lütfen bağlantınızı veya proxy ayarlarınızı kontrol edin", + "pleaseTest": "Lütfen API anahtarını doğrulamak için Test'e tıklayın", + "test": "Test", + "testing": "Testing...", + "attachmentTest": { + "title": "Ek Dosya Aktarım Modu", + "urlMode": "URL Modu", + "base64Mode": "Base64 Modu", + "accessible": "Kullanılabilir", + "inaccessible": "Kullanılamaz", + "urlNotAccessibleWarning": "AI servisi ek dosya URL'lerine erişemiyor. Bu, iç ağ dağıtımlarında yaygındır. Base64 modu otomatik olarak etkinleştirildi.", + "useBase64Mode": "Base64 Modunu Kullan", + "base64ModeDescription": "Göndermeden önce ek dosyaları Base64'e dönüştür (Teable genel ağdan erişilemiyorsa)", + "originChanged": "PUBLIC_ORIGIN değişti", + "originChangedDesc": "Son testten bu yana sunucu adresi değişti. Ek dosya erişilebilirliğini doğrulamak için lütfen tekrar test edin." + }, + "saveAndContinue": "Save & Continue", + "completeStep1First": "Lütfen önce Adım 1'i tamamlayın: LLM API'yi yapılandırın", + "completeStep2First": "Lütfen önce Adım 2'yi tamamlayın: En az bir model ekleyin", + "addCustom": "Custom...", + "enabledModels": "Enabled Models", + "chatDefault": "Chat Default", + "noModelsAvailable": "Kullanılabilir model yok, lütfen önce Adım 2'de model ekleyin", + "quickSetup": "Quick Setup", + "useRecommended": "Use Recommended", + "useRecommendedDesc": "{{model}} modelini tek tıkla tüm sohbet senaryoları için varsayılan olarak ayarlayın", + "chatModels": "Chat Model", + "chatModelTip": "Bu model kenar çubuğu AI sohbeti için kullanılır, yönetici tarafından belirlenir ve kullanıcılar tarafından değiştirilemez", + "selectChatModel": "Sohbet modeli seçin...", + "lgDesc": "Karmaşık görevler, derin analiz", + "mdDesc": "Günlük konuşmalar, genel görevler", + "smDesc": "Basit sorgular, hızlı yanıtlar", + "readyToUse": "AI yapılandırıldı ve kullanıma hazır!", + "customProviderHelp": "Kendi AI sağlayıcılarınızı ekleyin (OpenAI, Anthropic, Azure vb.), API anahtarlarını ve modelleri yapılandırın.", + "testModelCapabilities": "Test Model Capabilities", + "customModelsAutoImported": "Sağlayıcı modelleriniz otomatik olarak model havuzuna aktarıldı.", + "modelsCount": "{{count}} model kullanılabilir", + "customModelsHint": "Model yapılandırmalarını düzenlemek için Adım 1'e dönüp sağlayıcı ayarlarını değiştirin.", + "gatewayOption": { + "title": "AI Gateway (Recommended)", + "desc": "Vercel AI Gateway üzerinden en iyi uyumluluk ve güvenilirlikle yüzlerce modele erişin" + }, + "customOption": { + "title": "Custom Provider", + "desc": "Kendi barındırdığınız/özel modellere bağlanın, birden fazla sağlayıcı destekler" + }, + "step": { + "llmApi": "LLM API'yi Yapılandır", + "llmApiDesc": "AI Gateway seçin veya özel sağlayıcıları yapılandırın", + "modelPool": "Önerilen Modelleri Yapılandır", + "modelPoolDesc": "AI alanları ve otomasyonda kullanıcıların seçmesi için önerilen modeller", + "chatModel": "Sohbet Modelini Ayarla", + "chatModelDesc": "Kenar çubuğu AI sohbeti için model (önerilen modellerden seçin)", + "providers": "Sağlayıcıları Yapılandır", + "providersDesc": "AI sağlayıcılarını ekleyin ve yönetin" + } + } }, "app": { "domain": "Alan Adı", @@ -575,7 +855,16 @@ "customDomain": "Özel Alan Adı (İsteğe Bağlı)", "customDomainDescription": "Uygulama dağıtımı için özel alan adınızı ayarlayın, özel alan adı almak için Vercel alan adına erişin", "vercelToken": "Vercel API Token", - "vercelTokenDescription": "API token almak için Vercel ayarlarına erişin" + "vercelTokenDescription": "API token almak için Vercel ayarlarına erişin", + "apiProxy": "API Proxy (Optional)", + "apiProxyDescription": "v0 ve Vercel API'leri için ters proxy URL'lerini yapılandırın (ör. Cloudflare Workers). Varsayılan uç noktaları kullanmak için boş bırakın.", + "v0BaseUrl": "v0 API Temel URL", + "vercelBaseUrl": "Vercel API Temel URL", + "aiGateway": "Vercel AI Gateway", + "aiGatewayDescription": "Tek bir uç nokta üzerinden yüzlerce modele erişmek için Vercel AI Gateway'i yapılandırın. API anahtarını almak için AI Gateway ayarlarına erişin", + "aiGatewayApiKey": "AI Gateway API Key", + "aiGatewayKeyConfigured": "API key configured", + "aiGatewayBaseUrl": "Custom Gateway URL" } }, "action": { @@ -590,6 +879,16 @@ "configuration": { "title": "Yapılandırma bekleyen öğeler", "description": "Tam işlevsellik için bu yapılandırmaları tamamlayın", + "progressTitle": "Setup progress", + "allComplete": "All configurations completed", + "incomplete": "Some configurations are incomplete", + "optional": "Optional", + "completed": "Completed", + "group": { + "system": "Basics", + "ai": "AI Services", + "appBuilder": "Uygulama Oluşturucu" + }, "copyInstance": "ID'yi kopyala", "list": { "publicOrigin": { @@ -610,15 +909,38 @@ "description": "AI LLM API'sını henüz yapılandırmadınız, AI Sohbet/AI otomasyon kullanılamayacak, ayarlara git", "errorTips": "AI LLM API'sını henüz yapılandırmadınız, AI Sohbet/AI otomasyon kullanılamayacak" }, + "aiEnable": { + "title": "AI Services (Chat / AI Field)", + "description": "Enable to use AI Chat, AI Fields, and automations, go to setting" + }, + "aiLlmApi": { + "title": "AI: Configure LLM API", + "description": "Choose AI Gateway or configure custom providers, go to setting" + }, + "aiModelPool": { + "title": "AI: Configure available models", + "description": "Enable at least one model for AI Fields and automations, go to setting" + }, + "aiChatModel": { + "title": "AI: Set chat model", + "description": "Select a default model for the sidebar AI Chat, go to setting" + }, "app": { "title": "Uygulama Üretimi", "description": "v0 API'sını henüz yapılandırmadınız, Uygulama Üretimi özelliği kullanılamayacak, ayarlara git", "errorTips": "v0 API'sını henüz yapılandırmadınız, Uygulama Üretimi özelliği kullanılamayacak" }, - "webSearch": { - "title": "Web Araması", - "description": "Web arama API'sını henüz yapılandırmadınız, web arama özelliği kullanılamayacak, ayarlara git", - "errorTips": "Web arama API'sını henüz yapılandırmadınız, web arama özelliği kullanılamayacak" + "appBuilderV0": { + "title": "App Builder: Enable v0", + "description": "Configure the v0 API key to enable App Builder, go to setting" + }, + "appBuilderDomain": { + "title": "App Builder: Custom domain", + "description": "If you want to publish apps under your custom domain, configure domain + Vercel token, go to setting" + }, + "appBuilderApiProxy": { + "title": "Uygulama Oluşturucu: API proxy", + "description": "If you need a proxy for v0/Vercel APIs, configure the proxy URLs, go to setting" }, "email": { "title": "E-posta", @@ -626,6 +948,19 @@ "errorTips": "E-posta yapılandırılmamış, self-servis şifre kurtarma, e-posta doğrulama/bildirim işlevi kullanılamayacak" } } + }, + "canary": { + "title": "Canary Release", + "enable": "Enable canary", + "enableDescription": "When enabled, selected spaces will have canary features activated", + "spaces": "Canary spaces", + "spacesDescription": "{{count}} spaces configured", + "configure": "Configure", + "spaceIds": "Space IDs", + "spaceIdsDescription": "Enter space IDs, one per line or separated by commas/spaces", + "spaceIdsPlaceholder": "spcXXXXXXXXXXX\nspcYYYYYYYYYYY", + "preview": "Preview ({{count}} IDs)", + "noSpaceIds": "No space IDs entered" } }, "notification": { @@ -688,6 +1023,7 @@ "turnOnTip": "Mevcut otomasyonu açmak istediğinizden emin misiniz?" }, "email": { + "title": "Email", "send": "Gönder", "config": "E-posta Yapılandırması", "customConfig": "Özel E-posta Sunucusu", @@ -849,7 +1185,7 @@ "message": "Alanınız {{usedRuns}}/{{totalLimit}} otomasyon çalıştırmasının %90'ını kullandı. Kesinti yaşamamak için yakında yükseltin." }, "gracePeriod": { - "title": "Alan {{spaceName}} otomasyon çalıştırmaları aşıldı – ek süre aktif", + "title": "Alan {{spaceName}} otomasyon çalıştırmaları aşıldı - ek süre aktif", "message": "Otomasyon çalıştırma kotanız aşıldı. Otomasyonlar {{remainingHours}} saat sonra çalışmayı durduracak ve kapatılacak. Lütfen planınızı yükseltin." } } @@ -868,8 +1204,26 @@ "failed": { "title": "AI görevi {{tableName}} tablosunda başarısız oldu", "message": "{{tableName}} tablosundaki {{fieldName}} alanı için AI görevi (Kayıt ID: {{recordId}}) başarısız oldu.\n\n{{errorMsg}}\n\nAyrıntıları görmek için aşağıdaki düğmeye tıklayın." + }, + "cancelled": { + "title": "AI görevi iptal edildi", + "rateLimit": "\"{{tableName}}\" tablosu için AI görevi hız sınırlaması (429) nedeniyle iptal edildi. Lütfen daha sonra tekrar deneyin.", + "creditExhausted": "\"{{tableName}}\" tablosu için AI görevi krediler tükendiğinden iptal edildi. Lütfen aboneliğinizi yükseltin veya kredilerin yenilenmesini bekleyin.", + "authFailed": "\"{{tableName}}\" tablosu için AI görevi kimlik doğrulama hatası nedeniyle iptal edildi. Lütfen API anahtarı yapılandırmanızı kontrol edin.", + "serviceUnavailable": "\"{{tableName}}\" tablosu için AI görevi, AI servisi geçici olarak kullanılamadığından iptal edildi. Lütfen daha sonra tekrar deneyin.", + "unknown": "\"{{tableName}}\" tablosu için AI görevi iptal edildi. Hata: {{errorMessage}}" } } + }, + "rewardRejected": { + "title": "Ödül Talebi Reddedildi", + "message": "{{spaceName}} ödül talebiniz şu nedenlerle reddedildi: {{errorMessages}}. Lütfen gözden geçirip tekrar gönderin.", + "buttonText": "Alanı Görüntüle" + }, + "rewardApproved": { + "title": "Ödül Talebi Onaylandı", + "message": "Tebrikler! {{spaceName}} ödül talebiniz onaylandı. {{amount}} kredi eklendi, {{expiredDays}} gün geçerli.", + "buttonText": "Alanı Görüntüle" } } } @@ -878,7 +1232,7 @@ "title": "Bekleme Listesi", "email": "E-posta", "joinTitle": "İhtiyaçlarımızı hızla karşılıyoruz", - "joinDesc": "Bekleme listesine katılın — hazır olduğumuzda size haber vereceğiz", + "joinDesc": "Bekleme listesine katılın , hazır olduğumuzda size haber vereceğiz", "emailPlaceholder": "E-posta adresinizi girin", "youAreOnTheList": "Bekleme listesine katıldınız!", "thanksForJoining": "Bekleme listesine katıldığınız için teşekkür ederiz. Hazır olduğumuzda size haber vereceğiz.", @@ -896,17 +1250,20 @@ "times": "Kullanım", "generate": "Oluştur", "code": "Davet kodu", - "inviteSuccess": "Davet başarılı", - "app": { - "previewAppError": "Uygulama hatası", - "sendErrorToAI": "Hata AI'ye gönder" - } + "inviteSuccess": "Davet başarılı" }, + "noPermissionToCreateBase": "No permission to create base in any space", "base": { "deleteTip": "\"{{name}}\" veritabanını silmek istediğinizden emin misiniz?", "createResource": "Kaynak oluştur", "noPermissionToCreateResource": "Kaynak oluşturma izniniz yok" }, + "app": { + "title": "App builder", + "description": "Configure the v0 API Key to enable App builder capabilities. Access v0 setting to obtain your API Key", + "previewAppError": "App running error", + "sendErrorToAI": "Send error to AI" + }, "credit": { "title": "Kredi", "leftAmount": "Kalan kredi", @@ -1007,37 +1364,13 @@ } } }, - "clickToCopyTooltip": "Panoya kopyalamak için tıklayın", - "copiedTooltip": "Kopyalandı!", - "hiddenFieldCount_one": "{{count}} gizli alan", - "hiddenFieldCount_other": "{{count}} gizli alan", - "invalidFieldMapping": "Geçersiz alan eşlemesi", - "sourceFieldNotFoundMapping": "Kaynak alan bulunamadı", - "targetFieldNotFoundMapping": "Hedef alan bulunamadı", - "fieldTypeNotSupportedMapping": "Alan türü desteklenmiyor", - "fieldSettingsNotMatchMapping": "Alan ayarları eşleşmiyor", - "fieldSettingsLookupNotMatch": "Arama alan ayarları eşleşmiyor", - "fieldSettingsLinkTableNotMatch": "Bağlantı tablosu eşleşmiyor", - "fieldSettingsLinkViewNotMatch": "Bağlantı görünümü eşleşmiyor", - "fieldTypeDifferentMapping": "Alan türleri farklı", - "fieldMappingSourceTip": "Kaynak alanları hedef alanlarla eşleyin", - "fieldMappingTargetTip": "Alanları hedefle eşleştirme", - "reset": "Sıfırla", - "checkAll": "Tümünü seç", - "uncheckAll": "Seçimi kaldır", - "duplicateOptionsMapping": "Yinelenen seçenekler", - "lookupFieldInvalidMapping": "Arama alanı geçersiz", - "noMatchedOptions": "Eşleşen seçenek yok", - "needManualSelectionMapping": "Manuel seçim gerekli", - "targetFieldIsComputed": "Hedef alan hesaplanmış", - "targetFieldIsComputedTips": "Hedef alan hesaplanmış ve değiştirilemez", - "emptyOption": "(boş)", - "showEmptyTip": "Boş seçenekleri göster", - "hideEmptyTip": "Boş seçenekleri gizle", - "hideText": "Metni Gizle", - "showText": "Metni Göster", - "sourceTable": "Kaynak Tablo", - "sourceView": "Kaynak Görünüm", + "chat": { + "serverError": "Server error occurred", + "serverErrorHint": "Please start a new conversation and try again.", + "sandboxBusy": "Agent is busy in another conversation. Please wait.", + "sandboxCapacityFull": "Too many conversations running at the same time. Please wait for one to finish.", + "sandboxTransient": "Cuppy is getting ready. Please try again in a moment." + }, "system": { "notFound": { "title": "Sayfa bulunamadı", diff --git a/packages/common-i18n/src/locales/tr/dashboard.json b/packages/common-i18n/src/locales/tr/dashboard.json index bbec16e05c..32206a2afc 100644 --- a/packages/common-i18n/src/locales/tr/dashboard.json +++ b/packages/common-i18n/src/locales/tr/dashboard.json @@ -11,7 +11,6 @@ "placeholder": "Gösterge paneli adını girin" }, "findDashboard": "Gösterge paneli ara...", - "expand": "Genişlet", "deprecation": { "title": "Gösterge paneli düğümü özelliği sonlandırılacak", "description": "Size daha akıllı ve verimli bir deneyim sunmak için gösterge paneli düğümü özelliğinin desteğini sonlandıracağız. AI ile oluşturulan uygulamada AI aracılığıyla kolayca yeni gösterge panelleri oluşturabilirsiniz." diff --git a/packages/common-i18n/src/locales/tr/developer.json b/packages/common-i18n/src/locales/tr/developer.json index 74ec1f6ff9..10bf6be72b 100644 --- a/packages/common-i18n/src/locales/tr/developer.json +++ b/packages/common-i18n/src/locales/tr/developer.json @@ -16,5 +16,19 @@ "replaceToken": "Token değiştir", "createNewToken": "Yeni token oluştur", "showPagination": "Sayfalandırma parametreleri JSON modunda görüntülenir", - "addSort": "Sıralama ekle" + "addSort": "Sıralama ekle", + "tabs": { + "apiBuilder": "API Oluşturucu", + "aiContext": "AI Context" + }, + "aiContext": { + "title": "AI-Friendly Table Context", + "description": "Copy this context to your AI assistant (ChatGPT, Claude, etc.) to help it understand how to interact with your table data.", + "selectTableFirst": "Please select a table to generate AI context", + "fullContext": "Full Context", + "compactContext": "Compact", + "copyToClipboard": "Copy to Clipboard", + "copied": "Copied!", + "compactDescription": "A shorter version suitable for quick context sharing with token limits in mind." + } } diff --git a/packages/common-i18n/src/locales/tr/oauth.json b/packages/common-i18n/src/locales/tr/oauth.json index de83277524..601e3149bf 100644 --- a/packages/common-i18n/src/locales/tr/oauth.json +++ b/packages/common-i18n/src/locales/tr/oauth.json @@ -2,7 +2,8 @@ "add": "Yeni OAuth Uygulamaları", "title": { "add": "Yeni OAuth Uygulamaları", - "edit": "OAuth Uygulamalarını Düzenle" + "edit": "OAuth Uygulamalarını Düzenle", + "description": "Teable Apps can act on their own behalf, directly performing operations through the API, without impersonating a user. See our Help documentation for more information." }, "form": { "name": { @@ -59,5 +60,13 @@ "scopes": "Bu uygulama aşağıdaki izinlere erişebilecek:", "redirectDescription": "Yetkilendirme şuraya yönlendirecek", "authorize": "Yetkilendir" + }, + "help": { + "link": "https://help.teable.ai/en/api-doc/oauth", + "title": "Learn more" + }, + "deleteConfirm": { + "title": "Delete OAuth App", + "description": "Are you sure you want to delete the {{name}} OAuth App? This action cannot be undone." } } diff --git a/packages/common-i18n/src/locales/tr/plugin.json b/packages/common-i18n/src/locales/tr/plugin.json index 6252c34628..90c02b712e 100644 --- a/packages/common-i18n/src/locales/tr/plugin.json +++ b/packages/common-i18n/src/locales/tr/plugin.json @@ -47,10 +47,26 @@ "url": { "label": "URL", "description": "Eklentinin URL'si" + }, + "autoCreateMember": { + "label": "Auto create member", + "description": "Auto create member for the plugin" + }, + "config": { + "label": "Config", + "description": "Config of the plugin" } }, "markdown": { "write": "Yaz", "preview": "Önizleme" + }, + "status": { + "reviewing": "Reviewing", + "published": "Published", + "developing": "Developing" + }, + "button": { + "submitApproved": "Submit approved" } } diff --git a/packages/common-i18n/src/locales/tr/sdk.json b/packages/common-i18n/src/locales/tr/sdk.json index 3db012ccab..66b9342801 100644 --- a/packages/common-i18n/src/locales/tr/sdk.json +++ b/packages/common-i18n/src/locales/tr/sdk.json @@ -37,6 +37,11 @@ "notification": { "title": "Bildirim" }, + "aiError": { + "title": "AI Generation Failed", + "retry": "Retry", + "dismiss": "Dismiss" + }, "preview": { "previewFileLimit": "Önizleme dosya boyutu sınırı: {{size}}MB, lütfen görüntülemek için indirin.", "loadFileError": "Dosya yüklenemedi" @@ -59,11 +64,22 @@ "uploadBaseTextPrefix": "Click to upload ", "uploadBaseText": "or paste or drag and drop here", "uploadDragDefault": "Yapıştırın veya buraya sürükleyip bırakın", - "upload": "yükle" + "upload": "yükle", + "downloadAll": "Download all", + "downloading": "Downloading...", + "downloadSuccess": "Download completed", + "downloadFailed": "Download failed", + "downloadCancelled": "Download cancelled", + "requireHttps": "Bulk download requires HTTPS. Please access via HTTPS or localhost" }, "date": { "placeholder": "Bir tarih seçin", - "today": "Bugün" + "today": "Bugün", + "rangePlaceholder": "Pick a date range", + "rangeSelected": "Selected", + "invalidTimeRange": "End time must be after start time", + "from": "From", + "to": "To" }, "formula": { "title": "Formül Düzenleyici", @@ -217,6 +233,7 @@ "daysFromNow": "gün sonra", "exactDate": "tam tarih", "exactFormatDate": "tam tarih (biçimlendirildi)", + "dateRange": "custom range", "currentWeek": "current week", "currentMonth": "current month", "currentYear": "current year", @@ -985,13 +1002,13 @@ "alreadyActiveAndNotDraft": "Otomasyon zaten aktif ve taslak değil", "noActiveSnapshot": "Otomasyonun aktif anlık görüntüsü yok", "triggerNodeAlreadyExists": "Bu otomasyonun zaten bir tetikleyici düğümü var", + "unSupportLogicType": "Desteklenmeyen mantık türü", "generateLogicError": "Mantık düğümü oluşturma hatası", "logicNotFound": "Otomasyon mantık düğümü bulunamadı", - "actionNotFound": "Otomasyon eylem düğümü bulunamadı", - "unSupportDuplicateWorkflowNodeType": "Bu otomasyon düğüm türünün çoğaltılması desteklenmiyor", - "unSupportLogicType": "Desteklenmeyen mantık türü", "groupEndNotFound": "Mantık için GroupEnd bulunamadı", "insertNodeError": "Düğüm ekleme hatası", + "actionNotFound": "Otomasyon eylem düğümü bulunamadı", + "unSupportDuplicateWorkflowNodeType": "Bu otomasyon düğüm türünün çoğaltılması desteklenmiyor", "controlNodeNotBeTested": "Kontrol düğümü test edilmemeli", "invalidNodeType": "Geçersiz düğüm türü", "unsupportedCategory": "Desteklenmeyen kategori", @@ -1120,7 +1137,8 @@ "notAllowedToExecuteSqlWithKeyword": "{{keyword}} anahtar kelimesiyle SQL çalıştırılmasına izin verilmiyor", "whiteListCheckError": "Tablo erişimi kontrol edilirken bir hata oluştu: {{message}}", "databaseConnectionFailed": "Veritabanı bağlantısı başarısız oldu: {{message}}", - "executeQuerySqlFailed": "Sorgu SQL'i çalıştırılamadı: {{message}}" + "executeQuerySqlFailed": "Sorgu SQL'i çalıştırılamadı: {{message}}", + "readOnlyCheckFailed": "Read only check failed: {{message}}" }, "permission": { "createRecordWithDeniedFields": "Alanları({{fields}}) olan kayıtlar oluşturma izniniz yok", @@ -1141,7 +1159,8 @@ "deniedByEnabledAuthorityMatrix": "Etkin yetki matrisi tarafından reddedildi", "invalidRequestPath": "İstek yolu geçerli değil", "notAllowedOperation": "Bu işlemi gerçekleştirme izniniz yok", - "notAllowedDepartment": "Bu departmana erişiminiz yok" + "notAllowedDepartment": "Bu departmana erişiminiz yok", + "templateHeaderInvalid": "Template header is invalid" }, "authorityMatrix": { "defaultRoleNotFound": "Varsayılan rol bulunamadı", @@ -1190,6 +1209,7 @@ "lookupFieldIdInvalid": "Arama alanı {{lookupFieldId}} geçersiz", "formulaExpressionParseError": "Formül ifadesi ayrıştırma hatası", "formulaReferenceNotFound": "Formül referans alanı {{fieldIds}} bulunamadı", + "formulaReferenceNotFieldId": "Formula references {{fieldIds}} not found. Formulas must use field IDs (fldXXXXXXXXXXXXXXXX format), not field names.", "rollupExpressionParseError": "Toplama ifadesi ayrıştırma hatası", "choiceNameAlreadyExists": "Seçenek adı {{name}} zaten mevcut", "symmetricFieldIdRequired": "Simetrik alan kimliği gereklidir", @@ -1198,12 +1218,12 @@ "lookupFieldTypeNotEqual": "Mevcut alan türü {{fieldType}} arama alanı türü {{lookupFieldType}} ile eşit değil", "recordNotFound": "Kayıt {{recordId}} {{tableId}} içinde bulunamadı", "linkCellRecordIdAlreadyExists": "Aynı hücrede yinelenen recordId ayarlanamaz: {{recordId}}", + "linkConsistencyError": "Tutarlılık hatası, recordId {{recordId}} mevcut değil", "oneOneLinkCellValueCannotBeArray": "Bire-bir bağlantı alanı değerleri dizi olamaz", "manyOneLinkCellValueCannotBeArray": "Çoka-bir bağlantı alanı değerleri dizi olamaz", - "foreignKeyDuplicate": "Yabancı anahtar yineleniyor", - "linkConsistencyError": "Tutarlılık hatası, recordId {{recordId}} mevcut değil", "oneManyLinkCellValueShouldBeArray": "Bire-çok bağlantı alanı değerleri dizi olmalıdır", "manyManyLinkCellValueShouldBeArray": "Çoka-çok bağlantı alanı değerleri dizi olmalıdır", + "foreignKeyDuplicate": "Yabancı anahtar yineleniyor", "onlyLinkFieldCanBeFiltered": "Yalnızca bağlantı alanları filtreleme için kullanılabilir", "notLinkedToCurrentTable": "Alan mevcut tabloya bağlı değil", "notAttachment": "Alan bir ek alanı değil", @@ -1224,10 +1244,13 @@ }, "view": { "notFound": "Görünüm bulunamadı", + "cannotDeleteLastView": "Cannot delete the last view in a table. A table must have at least one view.", "defaultViewNotFound": "Varsayılan görünüm bulunamadı", "propertyParseError": "Görünüm özelliği ayrıştırılamadı", "primaryFieldCannotBeHidden": "Birincil alan gizlenemez", "filterUnsupportedFieldType": "Filtre desteklenmeyen alan türü", + "filterInvalidOperator": "Filter has invalid operator for this field type", + "filterInvalidOperatorMode": "Filter has invalid operator and mode combination", "sortUnsupportedFieldType": "Sıralama desteklenmeyen alan türü", "groupUnsupportedFieldType": "Gruplama desteklenmeyen alan türü", "anchorNotFound": "Bağlantı görünümü bulunamadı", @@ -1260,6 +1283,7 @@ "configurationNotSet": "AI yapılandırması ayarlanmamış", "unsupportedProvider": "Desteklenmeyen AI sağlayıcısı {{type}}", "providerConfigurationNotSet": "AI sağlayıcı yapılandırması ayarlanmamış", + "gatewayApiKeyNotSet": "AI Gateway API key is not configured", "testLLMFailed": "LLM bağlantı testi başarısız oldu", "audioNotSupported": "Bu model {{model}} ses girişini desteklemiyor", "imageNotSupported": "Bu model {{model}} görüntü girişini desteklemiyor", @@ -1269,7 +1293,8 @@ "embeddingModelNotSet": "Gömme modeli ayarlanmamış", "validateActionFailed": "Alan AI eyleminin doğrulanması başarısız oldu", "generateFailed": "AI üretimi başarısız oldu", - "unsupportedActionType": "Desteklenmeyen AI eylem türü" + "unsupportedActionType": "Desteklenmeyen AI eylem türü", + "geminiImageNotSupportedViaGateway": "Gemini image generation is not supported through AI Gateway. Please configure a direct Google provider instead." }, "role": { "notFound": "Rol bulunamadı" @@ -1333,12 +1358,21 @@ "expired": "Lisansın süresi doldu", "userLimitExceeded": "Mevcut örnekteki kullanıcı sayısı lisansın koltuk sınırını aşıyor. Lütfen bazı kullanıcıları devre dışı bırakın veya lisansı yükseltin" }, + "domainVerification": { + "notFound": "Domain doğrulama kodu bulunamadı", + "invalidCode": "Geçersiz doğrulama kodu", + "resendCooldown": "Yeni bir kod istemeden önce lütfen 1 dakika bekleyin", + "alreadyVerified": "Domain already verified" + }, "organization": { "notFound": "Organizasyon bulunamadı", - "emailNotSpaceUser": "E-posta alan kullanıcısı değil", "authenticationNotFound": "Kimlik doğrulama bulunamadı", "spaceShouldExist": "Organizasyon alanı mevcut olmalı", - "emailsNotInOrgDomain": "Bu e-postalar {{emails}} organizasyon etki alanında değil" + "emailsNotInOrgDomain": "Bu e-postalar {{emails}} organizasyon etki alanında değil", + "emailNotSpaceUser": "E-posta alan kullanıcısı değil" + }, + "mail": { + "failedToSendEmail": "E-posta gönderimi başarısız" }, "user": { "disallowSignUp": "Mevcut örnek, yönetici tarafından kayıt olmaya izin vermiyor", @@ -1383,14 +1417,6 @@ "takeCountTooLarge": "İstenen şablon sayısı maksimum sınırı aşıyor", "categoryLimitReached": "Şablon kategori sınırına ulaşıldı (maksimum {{maxCount}})" }, - "domainVerification": { - "notFound": "Domain doğrulama kodu bulunamadı", - "invalidCode": "Geçersiz doğrulama kodu", - "resendCooldown": "Yeni bir kod istemeden önce lütfen 1 dakika bekleyin" - }, - "mail": { - "failedToSendEmail": "E-posta gönderimi başarısız" - }, "department": { "parentNotFound": "Üst departman bulunamadı", "notFound": "Departman bulunamadı", @@ -1408,7 +1434,11 @@ "apiKeyNotSet": "Uygulama oluşturucu API anahtarı ayarlanmamış", "cannotDeployAppBeforeInitialization": "Başlatmadan önce uygulama dağıtılamaz", "noProjectOrVersionFound": "Proje veya sürüm bulunamadı", - "noDeploymentUrlAvailable": "Dağıtım URL'si mevcut değil" + "noDeploymentUrlAvailable": "Dağıtım URL'si mevcut değil", + "noFilesInZip": "No files found in ZIP", + "zipFileTooLarge": "ZIP file size exceeds 5MB limit", + "invalidZip": "Invalid ZIP file", + "domainAlreadyInUse": "This domain is already bound to another app" }, "reward": { "notFound": "Ödül bulunamadı", @@ -1430,8 +1460,7 @@ "fetchLinkedInPostFailed": "LinkedIn gönderisi alınamadı: {{error}}", "linkedInPostNotFound": "LinkedIn gönderisi bulunamadı: {{postId}}", "linkedInAuthorNotFound": "LinkedIn yazarı bulunamadı: {{postId}}", - "fetchLinkedInUserFailed": "LinkedIn kullanıcısı alınamadı: {{error}}", - "domainAlreadyInUse": "Bu alan adı zaten başka bir uygulamaya bağlı" + "fetchLinkedInUserFailed": "LinkedIn kullanıcısı alınamadı: {{error}}" } } } diff --git a/packages/common-i18n/src/locales/tr/share.json b/packages/common-i18n/src/locales/tr/share.json index fd84d564de..8adde4ea5d 100644 --- a/packages/common-i18n/src/locales/tr/share.json +++ b/packages/common-i18n/src/locales/tr/share.json @@ -5,6 +5,10 @@ "password": "Şifre", "passwordTooShort": "Şifre en az 3 karakter olmalıdır" }, + "form": { + "requireLoginTip": "This form requires you to log in before submitting", + "login": "Log in" + }, "toolbar": { "filterLinkSelectPlaceholder": "Seç..." }, diff --git a/packages/common-i18n/src/locales/tr/space.json b/packages/common-i18n/src/locales/tr/space.json index dad9c88c71..7e622ced5d 100644 --- a/packages/common-i18n/src/locales/tr/space.json +++ b/packages/common-i18n/src/locales/tr/space.json @@ -24,7 +24,8 @@ "fromScratch": "Sıfırdan", "fromTemplate": "Şablondan", "moveBaseToAnotherSpace": "{{baseName}}'i başka bir alana taşı", - "chooseSpace": "Alan seç" + "chooseSpace": "Alan seç", + "duplicateBaseSucceedAndJump": "Success, click to jump" }, "spaceSetting": { "title": "Alan ayarları", @@ -33,8 +34,11 @@ "generalDescription": "Mevcut alanınızın ayarlarını buradan değiştirin", "collaboratorDescription": "Alanınızın işbirlikçilerini yönetin ve erişim izinlerini ayarlayın", "spaceName": "Alan Adı", - "spaceId": "Alan Kimliği" + "spaceId": "Alan Kimliği", + "importBase": "Import" }, + "collaborators": "Collaborators", + "more": "More", "pin": { "add": "Sabitlemelere ekle", "remove": "Sabitlemeleri kaldır", @@ -90,7 +94,6 @@ "importWayTip": "Yüklemek için dosyayı bu alana tıklayın veya sürükleyip bırakın", "baseImportTips": "Yüklemek için .tea dosyasını bu alana tıklayın veya sürükleyip bırakın", "confirm": "Onayla ve devam et", - "phase": { "parsingStructure": "Parsing structure", "creatingBase": "Creating base: {{detail}}", @@ -137,7 +140,10 @@ "lastOpened": "Son açılan", "enter": "Giriş", "noTables": "Tablo yok", - "empty": "Henüz üs yok" + "empty": "Henüz üs yok", + "recent": "Recent", + "manual": "Manual order", + "noBasesFound": "No bases found" }, "publishBase": { "title": "Üssü toplulukta yayınla", @@ -191,10 +197,10 @@ "publish": "Yayınla", "published": "Yayınlandı", "publishing": "Yayınlanıyor...", + "notPublished": "Yayınlanmadı", "publishFailed": "Yayınlama başarısız", "publishFailedTip1": "Kaynak uygulamanın başarıyla yayınlanıp yayınlanamayacağını kontrol edin", "publishFailedTip2": "Bu şablonu yeniden yayınlamayı deneyin", - "notPublished": "Yayınlanmadı", "ignoreAndContinue": "Yoksay ve Devam Et", "goToFix": "Düzeltmeye Git", "redeploy": "Yeniden Dağıt", diff --git a/packages/common-i18n/src/locales/tr/table.json b/packages/common-i18n/src/locales/tr/table.json index 944b9ae22b..73497e9c63 100644 --- a/packages/common-i18n/src/locales/tr/table.json +++ b/packages/common-i18n/src/locales/tr/table.json @@ -19,9 +19,14 @@ "passwordTips": "Paylaşılan görünümlere erişim için şifre kısıtlamaları", "embed": "Yerleştir", "embedPreview": "Yerleştirme önizlemesi", + "copyCode": "Kodu kopyala", "hideToolbar": "Araç çubuğunu gizle", "URLSetting": "URL parametreleri yapılandırması", "URLSettingDescription": "Aşağıdaki ayarları değiştirmek paylaşılan bağlantıları etkilemez. Yeni parametrelerin etkili olması için bağlantıyı yeni parametrelerle kopyalamanız gerekir", + "theme": "Tema", + "themeSystem": "Sistem", + "themeLight": "Açık", + "themeDark": "Koyu", "cancel": "İptal", "save": "Kaydet", "requireLogin": "Giriş yapılmasını gerektir" @@ -33,12 +38,43 @@ "api": { "label": "API", "restfulApi": "Restful API", - "databaseConnection": "Veritabanı Bağlantısı" + "databaseConnection": "Veritabanı Bağlantısı", + "title": "API Erişimi", + "aiContext": "AI'ya Kopyala", + "advanced": "Gelişmiş", + "generatingToken": "Oluşturuluyor...", + "aiContextTitle": "AI Dostu API Belgelendirmesi", + "aiContextDescriptionNoToken": "Bu belgelendirmeyi AI asistanınıza kopyalayın (ChatGPT, Claude vb.). API token'ı oluşturmak için 'Token Oluştur'a tıklayın, otomatik olarak doldurulacaktır.", + "aiContextDescriptionWithToken": "Bu belgelendirmeyi AI asistanınıza kopyalayın (ChatGPT, Claude vb.). İzin kısıtlamalı bir API token'ı oluşturuldu ve dolduruldu.", + "generateToken": "Token Oluştur", + "confirmTitle": "API Token'ı Oluştur", + "confirmDescription": "Bu, bu taban için aşağıdaki izinlere sahip yeni bir API token'ı oluşturacaktır:", + "scopeTableRead": "Tablo bilgilerini oku", + "scopeFieldRead": "Alanları oku", + "scopeRead": "Kayıtları oku", + "scopeCreate": "Kayıt oluştur", + "scopeUpdate": "Kayıtları güncelle", + "scopeDelete": "Kayıtları sil", + "confirmExpiry": "Token 1 yıl geçerli olacaktır.", + "confirmButton": "Onayla ve Oluştur", + "tokenInfo": "Token sona erme: {{expiry}}", + "tokenCreatedSuccess": "Token başarıyla oluşturuldu! AI asistanınızla kullanmak için kopyalayın.", + "copied": "Kopyalandı!", + "copy": "Kopyala", + "copyAIDoc": "AI Belgesini Kopyala", + "aiDocPreview": "AI Belgesi Önizleme", + "manageToken": "Token'ı Yönet", + "openInNewTab": "Yeni Sekmede Aç", + "advancedDesc": "Daha fazla özelleştirme seçeneği için gelişmiş API sorgu oluşturucuyu açın.", + "openAdvanced": "Sorgu Oluşturucuyu Aç", + "queryBuilderTitle": "API Sorgu Oluşturucu", + "queryBuilderDesc": "Çalıştırmaya hazır API istek kodu oluşturmak için filtreleri, sıralamayı ve diğer parametreleri görsel olarak yapılandırın.", + "viewApiDocs": "Tam API Belgelerini Görüntüle" }, "personalView": { "personal": "Kişisel", - "tip": "Etkinleştirildiğinde, görünüm ayarları yalnızca size uygulanacaktır", "collaborative": "İş Birlikçi", + "tip": "Etkinleştirildiğinde, görünüm ayarları yalnızca size uygulanacaktır", "dialog": { "title": "Kişisel moddan çık", "description": "Kişisel görünüm yapılandırması, gerçek zamanlı iş birliği durumuna geri yüklenecek. Ayrıca kişisel görünüm ayarlarını kaydedip herkese senkronize edebilirsiniz.", @@ -207,7 +243,8 @@ } }, "conditionalRollup": { - "title": "{{lookupFieldName}} koşullu toplama" + "title": "{{lookupFieldName}} koşullu toplama", + "description": "Filtreler kullanarak başka bir tablodan değerleri topla." } }, "editor": { @@ -219,9 +256,10 @@ "reset": "Sıfırla", "fieldUpdated": "Alan güncellendi", "fieldCreated": "Alan oluşturuldu", - "confirmFieldChange": "Confirm Field Change", + "confirmFieldChange": "Alan Değişikliğini Onayla", "areYouSurePerformIt": "Bunu gerçekleştirmek istediğinizden emin misiniz?", "addDescription": "Açıklama Ekle", + "dbFieldName": "Veritabanı alan adı", "description": "Açıklama", "descriptionPlaceholder": "Bu alanı açıklayın (isteğe bağlı)", "type": "Tür", @@ -254,6 +292,7 @@ "linkFromAnotherBase": "Harici veritabanından bağlantı", "inSelfLink": "kendi içinde bağlantı", "betweenTwoTables": "iki tablo arasında", + "tips": "İpuçları", "linkTipMessage": "İpucu: bu yapılandırma

{{relationship}} ilişkisini temsil eder {{linkType}}", "style": "Stil", "maximum": "Maksimum", @@ -267,6 +306,28 @@ "lookupToTable": "Bağlantı veritabanındaki {{tableName}} alanı", "rollupToTable": "Bağlantı veritabanındaki {{tableName}} alanı", "selectField": "Bir alan seç...", + "lastModifiedScope": "Alanlar", + "lastModifiedAll": "Tüm düzenlenebilir alanlar", + "lastModifiedSpecific": "Belirli alanlar", + "lastModifiedSelect": "İzlenen alanlar", + "lastModifiedSelectAll": "Tüm alanları izle", + "noEditableFields": "Düzenlenebilir alan yok", + "conditionalRollup": { + "fieldMapping": "Alan eşlemesi ekle", + "selectBaseField": "Temel alan seçin", + "noMappings": "Henüz alan eşlemesi yapılandırılmadı." + }, + "conditionalLookup": { + "sortLimitToggleLabel": "Bağlı kayıtları sırala ve eşleşme sayısını sınırla", + "sortLabel": "Sonuçları sırala", + "orderPlaceholder": "Bir sıralama seçin", + "clearSort": "Sıralamayı temizle", + "limitLabel": "Dahil edilecek maksimum kayıt sayısı", + "limitPlaceholder": "Tüm eşleşmeleri dahil etmek için boş bırakın", + "limitHint": "En fazla {{limit}} eşleşen kayıt tutulur.", + "sortMissingWarningTitle": "Sıralama alanı kullanılamıyor", + "sortMissingWarningDescription": "Bu sıralamayı sağlayan alan silindi. Sonuçlar sıralamayı yok sayar ve yalnızca limiti uygular." + }, "linkTable": "Bağlantı tablosu", "linkBase": "Bağlantı veritabanı", "tableNoPermission": "İzin olmayan tablo", @@ -298,20 +359,7 @@ "safeToDeleteDesc": "Bu alan diğer alanlar tarafından referans alınmıyor, güvenle silinebilir", "affectedItems": "Etkilenen öğeler", "type": "Tür", - "source": "Kaynak", - "sourceTable": "Kaynak tablo", - "typeField": "Alan" - }, - "conditionalLookup": { - "sortLimitToggleLabel": "Sort linked records and limit the number of matches", - "sortLabel": "Sort results", - "orderPlaceholder": "Select an order", - "clearSort": "Clear sort", - "limitLabel": "Maximum records to include", - "limitPlaceholder": "Leave blank to include all matches", - "limitHint": "We only keep up to {{limit}} matching records.", - "sortMissingWarningTitle": "Sorting field unavailable", - "sortMissingWarningDescription": "The field that powered this sort was deleted. Results ignore the sort and only enforce the limit." + "source": "Kaynak" } }, "subTitle": { @@ -329,6 +377,7 @@ "rating": "Önceden tanımlanmış bir ölçekte değerlendirme ekleyin.", "formula": "Alanlara dayalı değerler hesaplayın.", "rollup": "Bağlantılı kayıtlardan veri özetleyin.", + "conditionalRollup": "Koşullu filtrelerle bağlı tablodan değerleri özetle.", "conditionalLookup": "Tanımladığınız filtreleri karşılayan bağlı değerleri gösterir.", "count": "Bağlantılı kayıtların sayısını sayın.", "createdTime": "Her kaydın oluşturulduğu tarih ve saati görün.", @@ -367,7 +416,10 @@ "sourceFieldForAttachment": "Ek alanın kaynak alanı", "imageSize": "Görüntü boyutu", "imageQuality": "Görüntü kalitesi", - "imageCount": "Görüntü sayısı" + "imageCount": "Görüntü sayısı", + "aspectRatio": "En boy oranı", + "resolution": "Çözünürlük", + "advancedSettings": "Gelişmiş ayarlar" }, "placeholder": { "summarize": "İçerik özetini", @@ -383,6 +435,8 @@ "targetLanguage": "İngilizce, Çince, Fransızca...", "imageSize": "Lütfen görüntü boyutunu girin", "imageQuality": "Lütfen görüntü kalitesini girin", + "aspectRatio": "En boy oranı seçin", + "resolution": "Çözünürlük seçin", "attachPromptForImageGeneration": "Görüntünün canlı ve doğal olması gerekiyor", "attachPromptForRating": "Görüntü kalitesini değerlendirin" }, @@ -391,6 +445,17 @@ "medium": "Orta", "high": "Yüksek" }, + "hint": { + "imageInputSupported": "Bu model görsel girişini destekler. Oluşturma için referans olarak görselleri kullanmak üzere bir ek dosya alanı seçebilirsiniz.", + "attachmentNotSupported": "Bu model ek dosya girişini desteklemiyor. Yalnızca Gemini modelleri görselden görsele oluşturmayı destekler.", + "singleImageOnly": "Bu model aynı anda yalnızca bir görsel oluşturabilir" + }, + "auto": "Otomatik", + "resolution": { + "1K": "1K (Standart)", + "2K": "2K (HD)", + "4K": "4K (Ultra HD)" + }, "autoFill": { "title": "Otomatik Güncelle", "tip": "Etkinleştirdiğinizde, mevcut alan, AI yapılandırmasının içerik değişiklikleriyle senkronize olarak güncellenecektir" @@ -402,9 +467,21 @@ "autoFillConfirm": { "title": "Tüm sütunu oluşturulsun mu?", "description": "Tüm sütunu oluşturmak {{rowCount}} satırı güncelleyecektir. Bu işlem çok sayıda yapay zeka kaynağı tüketebilir.", + "generateMode": "Oluşturma modu", + "emptyOnlyMode": "Yalnızca boş hücreleri doldur", + "emptyOnlyModeDesc": "Yalnızca boş hücreler için oluşturulur, mevcut içerik üzerine yazılmaz", + "allMode": "Tüm sütunu oluştur", + "allModeDesc": "Tüm satırlar için oluşturulur, mevcut içeriğin üzerine yazılır", + "saveOnlyMode": "Yalnızca yapılandırmayı kaydet", + "saveOnlyModeDesc": "Yalnızca alan yapılandırmasını kaydeder, hiçbir hücreye yazılmaz", "saveConfigOnly": "Yalnızca yapılandırmayı kaydet", "generate": "Oluştur", - "generateFailed": "Oluşturma başarısız oldu" + "fillEmptyCells": "Boş hücreleri doldur", + "generateAll": "Tümünü oluştur", + "recommended": "Recommended", + "generateFailed": "Oluşturma başarısız oldu", + "taskLimited": "Satır sınırı nedeniyle yalnızca ilk {{processedCount}} satır işlendi ({{rowCount}} satır eşleşti)", + "limitWarning": "Görev başına 1.000 satır sınırı nedeniyle yalnızca ilk 1.000 satır işlenecektir. Kalan satırları işlemek için görevi tekrar çalıştırabilirsiniz." }, "action": { "addAttachment": "Ek alan ekle" @@ -419,8 +496,7 @@ "deleteConfirm": "\"{{tableName}}\" tablosunu silmek istediğinizden emin misiniz?", "dbTableName": "Fiziksel veritabanındaki tablo adı", "schemaName": "Fiziksel veritabanındaki şema adı", - "tableInfo": "Tablo Bilgisi", - "tableInfoDetail": "Tablo için temel bilgiler", + "baseInfo": "Temel bilgiler", "typeOfDatabase": "Veritabanı türü", "descriptionForTable": "Bu tablo için açıklama", "nameForTable": "Bu tablo için ad", @@ -443,12 +519,26 @@ "fillFailed": "Doldurma başarısız", "clearing": "Temizleniyor...", "clearSuccessful": "Temizleme başarılı", + "clearConfirmTitle": "Verileri temizle", + "clearConfirmDescription": "Bu işlem {{rowCount}} kayıttaki {{cellCount}} hücreyi temizleyecektir. Devam etmek istediğinize emin misiniz?", + "deleteRecordConfirmTitle": "Kayıtları sil", + "deleteRecordConfirmDescription": "Bu işlem {{recordCount}} kaydı silecektir. Devam etmek istediğinize emin misiniz?", + "pasteConfirmTitle": "Yapıştır", + "pasteConfirmDescription": "{{recordCount}} kaydın üzerine yazılacak bir yapıştırma işlemi gerçekleştireceksiniz. Devam etmek istediğinize emin misiniz?", + "expandCommonDescription": "Yapıştırılan verilerin tabloya sığması için eklenmesi gereken:", + "expandColDescription": "{{count}} alan", + "expandRowDescription": "{{count}} kayıt", + "paste": "Yapıştır", + "deleteRecord": "Sil", + "clear": "Temizle", + "conjunction": "ve", "deleteFieldConfirmTitle": "Aşağıdaki alanları silmek üzeresiniz", "deleting": "Siliniyor...", "deleteSuccessful": "Silme başarılı", "pasteFileFailed": "Dosyalar yalnızca bir ek alanına yapıştırılabilir", "copyError": { - "noFocus": "Lütfen pencereyi değiştirmeyin" + "noFocus": "Lütfen pencereyi değiştirmeyin", + "noPermission": "Kayıtları kopyalama izniniz yok" } }, "graph": { @@ -463,6 +553,8 @@ "loading": "Bütünlük kontrol ediliyor...", "allGood": "Her şey yolunda!", "fixIssues": "Sorunları düzelt", + "type": "Tür", + "message": "Hata mesajı", "v2": { "dialogTitle": "Şema Bütünlüğü", "dialogDescription": "{{tableName}} için v2 şema denetimi ve onarım akışını çalıştır.", @@ -483,61 +575,61 @@ "detailsMissing": "Eksik: {{details}}", "detailsExtra": "Fazladan: {{details}}", "message": { - "schemaValid": "Schema is valid", - "schemaValidationFailed": "Schema validation failed", - "schemaElementMissing": "Schema element missing", - "schemaAlreadyValid": "Schema is already valid", - "schemaRepaired": "Schema repaired successfully", - "manualRepair": "Rule requires manual repair", - "noRepairStatements": "No repair statements available", - "skippedDependencies": "Skipped because dependencies are not satisfied", - "checkStreamConnected": "Schema integrity check stream connected", - "baseCheckStreamConnected": "Base schema integrity check stream connected", - "repairStreamConnected": "Schema integrity repair stream connected", - "baseRepairStreamConnected": "Base schema integrity repair stream connected", - "checkCompleted": "Schema integrity check completed", - "baseCheckCompleted": "Base schema integrity check completed", - "repairCompleted": "Schema integrity repair completed", - "baseRepairCompleted": "Base schema integrity repair completed" + "schemaValid": "Şema geçerli", + "schemaValidationFailed": "Şema doğrulama başarısız", + "schemaElementMissing": "Şema öğesi eksik", + "schemaAlreadyValid": "Şema zaten geçerli", + "schemaRepaired": "Şema başarıyla onarıldı", + "manualRepair": "Kural manuel onarım gerektiriyor", + "noRepairStatements": "Onarım ifadesi mevcut değil", + "skippedDependencies": "Bağımlılıklar karşılanmadığı için atlandı", + "checkStreamConnected": "Şema bütünlük denetimi akışı bağlandı", + "baseCheckStreamConnected": "Temel şema bütünlük denetimi akışı bağlandı", + "repairStreamConnected": "Şema bütünlük onarım akışı bağlandı", + "baseRepairStreamConnected": "Temel şema bütünlük onarım akışı bağlandı", + "checkCompleted": "Şema bütünlük denetimi tamamlandı", + "baseCheckCompleted": "Temel şema bütünlük denetimi tamamlandı", + "repairCompleted": "Şema bütünlük onarımı tamamlandı", + "baseRepairCompleted": "Temel şema bütünlük onarımı tamamlandı" }, "rule": { - "column": "Physical column", - "columnTyped": "Physical column ({{dataType}})", - "notNull": "NOT NULL constraint", - "columnUnique": "UNIQUE constraint", - "fkColumn": "Foreign key column", - "index": "Index", - "uniqueIndex": "Unique index", + "column": "Fiziksel sütun", + "columnTyped": "Fiziksel sütun ({{dataType}})", + "notNull": "NOT NULL kısıtlaması", + "columnUnique": "UNIQUE kısıtlaması", + "fkColumn": "Yabancı anahtar sütunu", + "index": "İndeks", + "uniqueIndex": "Benzersiz indeks", "primaryKey": "PRIMARY KEY", - "defaultExpression": "Default expression", - "foreignKey": "Foreign key constraint", - "junctionTable": "Junction table", - "junctionUnique": "Junction table unique constraint", - "junctionIndex": "Junction table index", - "junctionForeignKey": "Junction table foreign key", - "reference": "Reference records", - "generatedColumn": "Generated column", - "generatedMeta": "Generated column state", - "linkValueColumn": "Link value column", - "orderColumn": "Order column", - "fieldMeta": "Field metadata", - "symmetricField": "Symmetric field relationship", - "systemColumn": "System column \"{{columnName}}\"", - "systemColumnTyped": "System column \"{{columnName}}\" ({{dataType}})", - "systemNotNull": "NOT NULL on system column \"{{columnName}}\"", - "systemUnique": "UNIQUE index on system column \"{{columnName}}\"", - "systemPrimaryKey": "PRIMARY KEY on system column \"{{columnName}}\"", - "systemDefault": "Default expression on system column \"{{columnName}}\"", - "connection": "Connection", - "completion": "Completion", - "unexpected": "Unexpected error" + "defaultExpression": "Varsayılan ifade", + "foreignKey": "Yabancı anahtar kısıtlaması", + "junctionTable": "Bağlantı tablosu", + "junctionUnique": "Bağlantı tablosu benzersizlik kısıtlaması", + "junctionIndex": "Bağlantı tablosu indeksi", + "junctionForeignKey": "Bağlantı tablosu yabancı anahtarı", + "reference": "Referans kayıtları", + "generatedColumn": "Otomatik oluşturulan sütun", + "generatedMeta": "Otomatik oluşturulan sütun durumu", + "linkValueColumn": "Bağlantı değer sütunu", + "orderColumn": "Sıralama sütunu", + "fieldMeta": "Alan meta verisi", + "symmetricField": "Simetrik alan ilişkisi", + "systemColumn": "Sistem sütunu \"{{columnName}}\"", + "systemColumnTyped": "Sistem sütunu \"{{columnName}}\" ({{dataType}})", + "systemNotNull": "Sistem sütunu \"{{columnName}}\" üzerinde NOT NULL", + "systemUnique": "Sistem sütunu \"{{columnName}}\" üzerinde UNIQUE indeksi", + "systemPrimaryKey": "Sistem sütunu \"{{columnName}}\" üzerinde PRIMARY KEY", + "systemDefault": "Sistem sütunu \"{{columnName}}\" üzerinde varsayılan ifade", + "connection": "Bağlantı", + "completion": "Tamamlanma", + "unexpected": "Beklenmeyen hata" }, "detail": { - "systemColumnMissing": "System column \"{{columnName}}\" not found", - "systemColumnNotNull": "System column \"{{columnName}}\" should be NOT NULL", - "systemColumnUnique": "System column \"{{columnName}}\" should have a UNIQUE index", - "systemColumnPrimaryKey": "System column \"{{columnName}}\" should be PRIMARY KEY", - "systemColumnDefault": "System column \"{{columnName}}\" should have a default expression" + "systemColumnMissing": "Sistem sütunu \"{{columnName}}\" bulunamadı", + "systemColumnNotNull": "Sistem sütunu \"{{columnName}}\" NOT NULL olmalıdır", + "systemColumnUnique": "Sistem sütunu \"{{columnName}}\" UNIQUE indeksine sahip olmalıdır", + "systemColumnPrimaryKey": "Sistem sütunu \"{{columnName}}\" PRIMARY KEY olmalıdır", + "systemColumnDefault": "Sistem sütunu \"{{columnName}}\" varsayılan ifadeye sahip olmalıdır" }, "phase": { "check": "Kontrol sonuçları", @@ -567,7 +659,34 @@ "manual": "Manuel", "skipped": "Atlandı" } + }, + "errorType": { + "ForeignTableNotFound": "ForeignTableNotFound", + "ForeignKeyNotFound": "ForeignKeyNotFound", + "SelfKeyNotFound": "SelfKeyNotFound", + "SymmetricFieldNotFound": "SymmetricFieldNotFound", + "MissingRecordReference": "MissingRecordReference", + "InvalidLinkReference": "InvalidLinkReference", + "ForeignKeyHostTableNotFound": "ForeignKeyHostTableNotFound", + "ReferenceFieldNotFound": "ReferenceFieldNotFound", + "UniqueIndexNotFound": "UniqueIndexNotFound", + "EmptyString": "EmptyString" } + }, + "index": { + "description": "İndeksler, özellikle büyük veri miktarlarıyla ({{rowCount}} satırın üzerinde) çalışırken arama performansını önemli ölçüde artırabilir. Dezavantajı, yazma işlemlerinin biraz yavaşlamasıdır. Sık arama yapıyorsanız veya büyük veri kümeleriniz varsa indekslemeyi etkinleştirmeniz önerilir.", + "repair": "onar", + "repairTip": "İndeks anomalileri tespit edildi, bu durum arama performansının düşmesine neden olabilir. İndeksi düzeltmek için onar düğmesine tıklamanız önerilir", + "enableIndexTip": "Bir indeks oluşturuyorsunuz. Gereken süre tablo boyutuna bağlıdır. Bu süreçte tablonun okuma ve yazma performansı etkilenebilir. Lütfen sabırlı olun.", + "globalSearchTip_limited": "Tarih, onay kutusu ve düğme alanları hariç tüm alanlarda arama yap, en fazla {{count}} alan", + "globalSearchTip_infinity": "Tarih, onay kutusu ve düğme alanları hariç tüm alanlarda arama yap", + "autoIndexTip": "Tablonuz {{rowCount}} satırı aştı. Arama performansını artırmak için indekslemeyi etkinleştirmenizi öneririz. İndekslemenin yazma hızını biraz düşürebileceğini lütfen unutmayın. İndeks oluşturma sırasında tablonun okuma/yazma performansı geçici olarak etkilenebilir. Lütfen sabırlı olun.", + "enableIndex": "etkinleştir", + "keepAsIs": "olduğu gibi bırak", + "ignoreIndexError": "yoksay" + }, + "searchTips": { + "maxFieldTips_limited": "En fazla {{count}} alan sınırı aşıldı, fazla alanlar göz ardı edilecektir" } }, "import": { @@ -578,7 +697,7 @@ "linkUrl": "Bağlantı(URL)", "linkUrlInputTitle": "URL'den dosya ekle", "importTitle": "Yeni bir tablo oluştur", - "incrementImportTitle": "İçe Aktar — ", + "incrementImportTitle": "İçe Aktar , ", "optionsTitle": "İçe aktarma seçeneği", "primitiveFields": "Temel Alanlar", "importFields": "İçe Aktarma Alanı", @@ -600,7 +719,6 @@ "duplicating": "Çoğaltılıyor...", "duplicateSuccess": "Başarıyla çoğaltıldı", "duplicateFailed": "Çoğaltılamadı", - "importing": "İçe aktarılıyor", "includeRecords": "Kayıtları dahil et" }, "tips": { @@ -642,6 +760,34 @@ "exportCsv": "Csv İndir" } }, + "download": { + "allAttachments": { + "title": "Tüm ekleri indir", + "loading": "Önizleme yükleniyor...", + "rowsWithAttachments": "{{count}} satır ek içeriyor", + "totalAttachments": "{{count}} ek", + "totalSize": "Toplam boyut: {{size}}", + "startDownload": "İndirmeyi başlat", + "confirmTitle": "{{count}} dosya indir", + "confirmDescription": "Toplam boyut: {{size}}. Dosyalar ZIP dosyasına sıkıştırılacak.", + "confirm": "İndir", + "cancel": "İptal", + "downloading": "İndiriliyor...", + "downloadingFile": "İndiriliyor: {{fileName}}", + "progress": "{{downloaded}} / {{total}}", + "completed": "İndirme tamamlandı", + "cancelled": "İndirme iptal edildi", + "noAttachments": "İndirilecek ek yok", + "error": "İndirme başarısız", + "errorPartial": "{{failedCount}} dosya indirilemedi", + "requireHttps": "Toplu indirme HTTPS gerektirir. Lütfen HTTPS veya localhost üzerinden erişin.", + "advancedOptions": "Gelişmiş seçenekler", + "namingFieldLabel": "Ek adı öneki", + "selectField": "Varsayılan: ek dizini", + "groupByRow": "Klasörlere arşivle", + "groupByRowTip": "Bir satırda birden fazla ek varsa, aynı klasöre yerleştirilir; yalnızca bir eki olan satırlar klasör oluşturmaz." + } + }, "grid": { "prefillingRowTitle": "Yeni kayıt ekle", "prefillingRowTooltip": "Lütfen yeni kayıt verilerini aşağıya girin. Bu satırın dışına tıkladığınızda kayıt otomatik olarak kaydedilecektir.", @@ -720,6 +866,7 @@ "deleteRecord": "Kaydı sil", "deleteAllSelectedRecords": "Seçili tüm kayıtları sil", "editField": "Alanı düzenle", + "duplicateField": "Alanı çoğalt", "insertFieldLeft": "Sola ekle", "insertFieldRight": "Sağa ekle", "freezeUpField": "Bu alana kadar dondur", @@ -729,6 +876,7 @@ "filterField": "Bu alana göre filtrele", "sortField": "Bu alana göre sırala", "groupField": "Bu alana göre grupla", + "downloadAllAttachments": "Tüm dosyaları indir", "autoFill": "Tüm kayıtları güncelle", "groupMenuTitle": "Grup menüsü", "expandGroup": "Bu grup ve alt gruplarını genişlet", @@ -742,6 +890,7 @@ "description": "Veritabanına doğrudan veritabanı bağlantısı üzerinden erişebilirsiniz, mevcut veritabanı altındaki tüm tablolar dahil", "noPermission": "Veritabanına erişim izniniz yok", "connectionCountTip": "Maksimum veritabanı bağlantısı sayısı {{max}} ve mevcut bağlantı sayısı {{current}}", + "createFailed": "Lütfen PUBLIC_DATABASE_PROXY ortam değişkeninin doğru ayarlandığından emin olun", "helpLink": "https://help.teable.ai/en/deploy/database-connection" }, "view": { @@ -751,7 +900,10 @@ "insertToolTip": "Otomatik sıralama açık, sırayla ekleme kullanılamaz", "action": { "rename": "Görünümü yeniden adlandır", + "duplicate": "Görünümü çoğalt", "delete": "Görünümü sil", + "lock": "Görünümü kilitle", + "unlock": "Görünüm kilidini aç", "enable": "Etkinleştir" }, "category": { @@ -781,32 +933,37 @@ "title": "Birden fazla kayıt eklemek istiyor musunuz?", "description": "{{count}} kayıt tabloya eklenecek." }, - "download": { - "allAttachments": { - "title": "Tüm ekleri indir", - "loading": "Önizleme yükleniyor...", - "rowsWithAttachments": "{{count}} satır ek içeriyor", - "totalAttachments": "{{count}} ek", - "totalSize": "Toplam boyut: {{size}}", - "startDownload": "İndirmeyi başlat", - "confirmTitle": "{{count}} dosya indir", - "confirmDescription": "Toplam boyut: {{size}}. Dosyalar ZIP dosyasına sıkıştırılacak.", - "confirm": "İndir", - "cancel": "İptal", - "downloading": "İndiriliyor...", - "downloadingFile": "İndiriliyor: {{fileName}}", - "progress": "{{downloaded}} / {{total}}", - "completed": "İndirme tamamlandı", - "cancelled": "İndirme iptal edildi", - "noAttachments": "İndirilecek ek yok", - "error": "İndirme başarısız", - "errorPartial": "{{failedCount}} dosya indirilemedi", - "requireHttps": "Toplu indirme HTTPS gerektirir. Lütfen HTTPS veya localhost üzerinden erişin.", - "advancedOptions": "Gelişmiş seçenekler", - "namingFieldLabel": "Ek adı öneki", - "selectField": "Varsayılan: ek dizini", - "groupByRow": "Klasörlere arşivle", - "groupByRowTip": "Bir satırda birden fazla ek varsa, aynı klasöre yerleştirilir; yalnızca bir eki olan satırlar klasör oluşturmaz." + "tableTrash": { + "title": "Tablo çöp kutusu", + "resourceType": "Tür", + "deletedResource": "Kaynak" + }, + "plugin": { + "recent": "Son kullanılanlar", + "more": "Daha fazlasını keşfet..." + }, + "pluginPanel": { + "empty": { + "description": "Henüz eklenti paneli eklenmedi." + }, + "createPluginPanel": { + "button": "Eklenti paneli oluştur", + "title": "Eklenti paneli oluştur" + }, + "namePlaceholder": "Eklenti paneli adı girin" + }, + "addPlugin": "Eklenti ekle", + "pluginContextMenu": { + "mangeButton": "Eklentileri yönet", + "manage": "Bağlam menüsü eklentilerinizi yönetin", + "noPlugin": "Bağlam menüsü eklentisi yok", + "delete": "Sil", + "deleteDescription": "Bu eklentiyi silmek istediğinize emin misiniz?" + }, + "permission": { + "cell": { + "deniedRead": "Bu hücreyi görüntüleme izniniz yok", + "deniedUpdate": "Bu hücreyi güncelleme izniniz yok" } }, "baseShare": { @@ -868,6 +1025,602 @@ "publishSuccess": "Uygulama başarıyla yayınlandı", "publishFailed": "Uygulama yayınlanamadı", "openLink": "Bağlantıyı aç", - "appPublished": "Uygulama yayınlandı" + "appPublished": "Uygulama yayınlandı", + "shareTableTab": "Tabloyu paylaş", + "shareViewTab": "Görünümü paylaş", + "shareNodeTab": "Düğümü paylaş" + }, + "aiChat": { + "agent": { + "askUserQuestion": { + "label": "Soru", + "confirm": "Onayla ({{count}})", + "otherPlaceholder": "Veya yanıtınızı yazın...", + "otherSend": "Gönder", + "addCustomPlaceholder": "Özel seçenek ekle..." + }, + "completion": { + "completed": "Tamamlandı", + "tools": "{{count}} araç", + "toolsWithErrors": "{{count}} araç ({{errors}} hata)", + "hasErrors": "hatalar", + "noDetails": "Ayrıntı mevcut değil", + "contextWindow": "Bağlam Penceresi", + "contextTooltip": "Ajanın çalışma belleği kullanımı. Sınıra yaklaşıldığında, ajan yer açmak için önceki konuşmayı otomatik olarak özetler.", + "contextTipNewChat": "Farklı konular için yeni bir sohbet başlatarak Kredi kullanımını önemli ölçüde azaltabilirsiniz.", + "contextTipMemory": "Uzun süreli belleğe kaydetmek için \"XXX'i hatırla\" deyin, sohbetler arasında erişilebilir." + }, + "taskProgress": { + "title": "Görev İlerlemesi", + "noTasks": "Görev yok", + "operationFailed": "Görev işlemi başarısız", + "collapse": "Daralt", + "showMore": "Daha fazla göster ({{count}})" + }, + "tool": { + "executing": "Yürütülüyor...", + "executionFailed": "Araç yürütme başarısız", + "stoppedByUser": "Kullanıcı tarafından durduruldu", + "executionDenied": "Araç yürütme reddedildi", + "moreLines": "... +{{count}} satır daha", + "copy": "Kopyala", + "copied": "Kopyalandı!", + "copyNewContent": "Yeni içeriği kopyala", + "showAllLines": "Tüm {{count}} satırı göster", + "collapse": "Daralt", + "linesHidden": "{{count}} satır gizli, genişletmek için tıklayın" + }, + "subtask": { + "working": "Alt görev üzerinde çalışılıyor", + "workingOn": "Alt görev üzerinde çalışılıyor: {{description}}", + "completed": "Alt görev tamamlandı" + }, + "skill": { + "running": "Beceri çalıştırılıyor", + "runningName": "Beceri çalıştırılıyor: {{name}}" + }, + "plan": { + "entering": "Plan moduna giriliyor", + "exiting": "Plan modundan çıkılıyor" + }, + "worktree": { + "creating": "Çalışma ağacı oluşturuluyor", + "creatingName": "Çalışma ağacı oluşturuluyor: {{name}}", + "exiting": "Çalışma ağacından çıkılıyor" + }, + "cron": { + "scheduling": "Görev zamanlanıyor", + "removing": "Zamanlanmış görev kaldırılıyor", + "listing": "Zamanlanmış görevler" + }, + "step": "Adım {{number}}", + "runDetails": { + "working": "Çalışıyor...", + "summary": "{{actions}} işlem tamamlandı", + "moreActions": "... +{{count}} işlem daha", + "collapseActions": "Daralt" + } + }, + "tool": { + "getTableFields": "Tablo alanlarını getir", + "getTablesMeta": "Tablo meta verilerini getir", + "sqlQuery": "SQL sorgusu çalıştır", + "generateScriptAction": "Betik eylemi oluştur", + "getScriptInput": "Betik girdisini al", + "getTeableApi": "API'yi getir", + "dataVisualization": "Veri görselleştirme", + "updateBase": "Veritabanı bilgisini güncelle", + "args": "Argümanlar", + "result": "Sonuç", + "thinking": "Düşünüyor...", + "retrying": "Yeniden deneniyor ({{attempt}}/{{maxRetries}})...", + "queuing": "Sıraya alınıyor...", + "toBeConfirmed": "Onay bekleniyor", + "errorMessage": "Hata mesajı", + "confirm": "Onayla", + "createRecordsSuccess": "{{count}} kayıt başarıyla oluşturuldu", + "createRecordsFailed": "Kayıt oluşturma başarısız", + "updateRecordsSuccess": "{{count}} kayıt başarıyla güncellendi", + "updateRecordsFailed": "Kayıt güncelleme başarısız", + "generatingRecords": "{{count}} kayıt oluşturuluyor...", + "creatingRecords": "{{count}} kayıt oluşturuluyor...", + "updatingRecords": "{{count}} kayıt güncelleniyor...", + "recordsPreview": "Kayıt önizlemesi", + "andMoreRecords": "Ve {{count}} tane daha...", + "unknownError": "Bilinmeyen hata", + "recordIds": "Kayıt kimlikleri", + "records": "kayıt", + "viewAll": "Tümünü Gör", + "showLess": "Daha Az Göster", + "generatingData": "Veri oluşturuluyor...", + "generatingUpdates": "Güncellemeler oluşturuluyor...", + "recordsGenerated": "{{count}} kayıt oluşturuldu", + "recordsCount": "Kayıtlar({{count}})", + "fieldsCount": "Alanlar({{count}})", + "fieldsGenerated": "{{count}} alan oluşturuldu", + "updatedProperties": "Güncellenen ({{count}})", + "configured": "yapılandırıldı", + "recordsToUpdate": "{{count}} kayıt güncellenecek", + "showingLast": "son {{count}}", + "recordLabel": "Kayıt", + "statusGenerating": "Oluşturuluyor...", + "statusCreating": "Oluşturuluyor...", + "statusUpdating": "Güncelleniyor...", + "statusCreated": "Oluşturuldu", + "statusUpdated": "Güncellendi", + "getApps": { + "title": "Uygulama Listesi", + "loading": "Uygulamalar yükleniyor...", + "foundApps": "{{count}} uygulama bulundu", + "noApps": "Bu temelde uygulama bulunamadı", + "openApp": "Uygulamayı Aç" + }, + "generateApp": { + "title": "Uygulama Oluşturucu", + "creatingApp": "Uygulama oluşturuluyor", + "updatingApp": "Uygulama güncelleniyor", + "generatingApp": "Uygulama oluşturuluyor", + "generating": "Oluşturuluyor...", + "openApp": "Uygulamayı Aç", + "viewProgress": "İlerlemeyi Gör", + "newApp": "Yeni Uygulama", + "building": "Derleniyor..." + }, + "generateAutomation": { + "title": "Otomasyon Oluşturucu", + "creatingAutomation": "Otomasyon oluşturuluyor", + "updatingAutomation": "Otomasyon güncelleniyor", + "generatingAutomation": "Otomasyon derleniyor", + "building": "Derleniyor...", + "openAutomation": "Otomasyonu Aç", + "viewProgress": "İlerlemeyi Gör", + "testResults": "Test Sonuçları", + "triggerTest": "Tetikleyici", + "actionTest": "Eylem {{index}}" + }, + "htmlPreview": { + "preview": "Önizleme", + "code": "Kod", + "download": "İndir", + "downloadHtml": "HTML", + "downloadImage": "Görsel (PNG)", + "copy": "Kopyala", + "copied": "Kopyalandı!", + "fullscreen": "Tam Ekran", + "exitFullscreen": "Tam Ekrandan Çık", + "downloadSuccess": "Görsel başarıyla indirildi", + "downloadFailed": "Görsel yakalama başarısız", + "iframeFailed": "Yakalama başarısız: iframe erişilemez" + }, + "loadAttachment": { + "title": "Ek Yükle", + "loading": "Ek yükleniyor", + "failed": "Ek yükleme başarısız", + "empty": "Yüklenen ek yok", + "modeNative": "AI Görüntüleme", + "modeNativeDesc": "AI yerel bağlamına yüklendi", + "modeExtracted": "Metin Çıkarıldı", + "modeExtractedDesc": "Dosya içeriği ayrıştırılıp analiz için metin olarak çıkarıldı", + "visionLoaded": "Görsel analiz için yüklendi", + "pdfLoaded": "PDF analizi için yüklendi", + "textExtracted": "{{chars}} karakter çıkarıldı", + "contextLoaded": "AI bağlamına yüklendi", + "truncated": "Kırpıldı", + "preview": "Önizleme" + }, + "textExtract": { + "title": "Metin Çıkarma", + "loading": "Metin çıkarılıyor", + "failed": "Metin çıkarma başarısız", + "empty": "Çıkarılan metin yok", + "preview": "Önizleme", + "truncated": "Kırpıldı", + "previews": "önizlemeler", + "chars": "{{chars}} karakter", + "totalCharacters": "Toplam: {{chars}} karakter", + "filesTruncated": "({{count}} dosya kırpıldı)" + }, + "importExcel": { + "title": "Excel İçe Aktar", + "loading": "Dosya işleniyor...", + "failed": "İçe aktarma başarısız", + "suggestions": "Suggestions", + "analyzeComplete": "Analiz Tamamlandı", + "worksheets": "Çalışma Sayfaları", + "columns": "sütunlar", + "importComplete": "İçe Aktarma Tamamlandı", + "stageAnalyze": "Analiz ediliyor", + "stageImport": "İçe aktarılıyor" + } + }, + "tools": { + "getTeableApi": "Teable API'sini Getir", + "readFiles": "Dosyaları Oku", + "writeFile": "Dosya Yaz", + "deleteFiles": "Dosyaları Sil", + "listFiles": "Dosyaları Listele", + "addDependencies": "Bağımlılık Ekle", + "checkBuildErrors": "Derleme Hatalarını Kontrol Et", + "lint": "Kod Denetimi" + }, + "fallback": { + "previewLoadFailed": "Önizleme yükleme başarısız", + "retry": "{{count}} kez yeniden dene", + "chatAborted": "iptal edildi" + }, + "preview": { + "deletedTable": "Silinen tablo", + "deletedView": "Silinen görünüm", + "deletedField": "Silinen alan", + "deletedRecords": "Silinen kayıtlar" + }, + "agentName": { + "tableOperatorAgent": "Tablo ajanı", + "viewOperatorAgent": "Görünüm ajanı", + "fieldOperatorAgent": "Alan ajanı", + "recordOperatorAgent": "Kayıt ajanı", + "buildBaseAgent": "Veritabanı oluşturma ajanı", + "buildAutomationAgent": "Otomasyon oluşturma ajanı" + }, + "confirm": { + "toBeConfirmed": "Onaylanacak", + "deleteWarning": "Silmek istediğinizden emin misiniz?" + }, + "action": { + "createTable": "Tablo oluştur", + "updateTable": "Tabloyu güncelle", + "updateTableName": "Tablo adını güncelle", + "deleteTable": "Tabloyu sil", + "createView": "Görünüm oluştur", + "updateView": "Görünümü güncelle", + "updateViewName": "Görünüm adını güncelle", + "deleteView": "Görünümü sil", + "createField": "Alan oluştur", + "createAiField": "AI alanı oluştur", + "createLinkField": "Bağlantı alanı oluştur", + "createLookupField": "Arama alanı oluştur", + "createRollupField": "Toplama alanı oluştur", + "createFormulaField": "Formül alanı oluştur", + "deleteField": "Alanı sil", + "updateField": "Alanı güncelle", + "createRecord": "Kayıt oluştur", + "createRecords": "Kayıtlar oluştur", + "deleteRecord": "Kaydı sil", + "updateRecord": "Kaydı güncelle", + "updateRecords": "Kayıtları güncelle", + "updateBase": "Veritabanı bilgisini güncelle", + "planTask": "Görev planla...", + "generateTables": "Tabloları oluştur", + "generatePrimaryFields": "Birincil alanları oluştur", + "generateFields": "Alanları oluştur", + "generateViews": "Görünümleri oluştur", + "generateRecords": "Kayıtları oluştur", + "generateAIFields": "AI alanlarını oluştur", + "generateLinkFields": "Bağlantı alanlarını oluştur", + "generateLookupFields": "Arama alanlarını oluştur", + "generateRollupFields": "Toplama alanlarını oluştur", + "generateFormulaFields": "Formül alanlarını oluştur", + "generateWorkflow": "İş akışı oluştur", + "generateTrigger": "Tetikleyici oluştur", + "generateScriptAction": "Betik eylem düğümü oluştur", + "generateSendMailAction": "E-posta gönderme eylem düğümü oluştur", + "generateAction": "Eylem düğümü oluştur", + "setupAutomationTrigger": "Otomasyon tetikleyicisini ayarla", + "testAutomationNode": "Otomasyon düğümünü test et", + "activateAutomation": "Otomasyonu etkinleştir", + "deleteAutomationNode": "{{nodeType}} düğümünü sil", + "executeScript": "Betiği çalıştır", + "wait": "Bekle", + "generateScriptFlowChart": "Betik akış şeması oluştur", + "triggerAiFill": "AI doldurmayı tetikle", + "initialize": "Ortamı başlat", + "rename": "Uygulama adı oluştur", + "buildTest": "Test oluştur", + "developTask": "Görevi geliştir", + "generateSummary": "Özet oluştur", + "previewEnvironment": "Önizleme ortamını hazırla", + "getRelativeData": "İlişkili verileri al", + "getPreviousNodeOutputVariables": "Önceki düğüm çıkış değişkenlerini al", + "getApiJson": "API bilgisini al", + "generateScriptAndDependencies": "Betik ve bağımlılıkları oluştur", + "analyzingAttachment": "Ek dosya analiz ediliyor...", + "locateResource": "Bul", + "goTo": "Git", + "operationSuccess": "İşlem başarıyla tamamlandı", + "operationFailed": "İşlem başarısız oldu" + }, + "aiFill": { + "processedRecords": "{{count}} kayıt AI oluşturma için sıraya alındı" + }, + "queryTool": { + "getRecords": "Kayıtları sorgula", + "getRecordsWithTable": "Kayıtları sorgula · {{tableName}}", + "getGridRows": "Izgara satırlarını sorgula", + "getGridRowsWithTable": "Izgara satırlarını sorgula · {{tableName}}", + "getFields": "Alanları sorgula", + "getFieldsWithTable": "Alanları sorgula · {{tableName}}", + "getTables": "Tabloları sorgula", + "getViews": "Görünümleri sorgula", + "getViewsWithTable": "Görünümleri sorgula · {{tableName}}", + "sqlQuery": "SQL sorgusu", + "querying": "Sorgulanıyor...", + "queryFailed": "Sorgu başarısız oldu", + "aborted": "İptal edildi", + "noData": "Veri döndürülmedi", + "dataFormatError": "Veri biçimi hatası", + "unsupportedQueryType": "Desteklenmeyen sorgu türü: {{toolName}}", + "returnedRecords": "{{count}} kayıt döndürüldü", + "record": "Kayıt {{index}}", + "moreRecords": "... +{{count}} kayıt daha", + "foundFields": "{{count}} alan bulundu", + "moreFields": "... +{{count}} alan daha", + "foundTables": "{{count}} tablo bulundu", + "moreTables": "... +{{count}} tablo daha", + "foundViews": "{{count}} görünüm bulundu", + "moreViews": "... +{{count}} görünüm daha", + "queryReturned": "Sorgu {{rowCount}} satır x {{columnCount}} sütun döndürdü", + "row": "Satır {{index}}", + "moreRows": "... +{{count}} satır daha", + "getDoc": "Belgeyi Al", + "getDocWithTopic": "Belgeyi Al · {{topic}}", + "getAutomations": "Otomasyonları sorgula", + "getAutomation": "Otomasyonu sorgula", + "getAutomationRuns": "Otomasyon çalıştırmalarını sorgula", + "foundAutomations": "{{count}} otomasyon bulundu", + "moreAutomations": "... +{{count}} otomasyon daha", + "foundRuns": "{{count}} çalıştırma bulundu", + "moreRuns": "... +{{count}} çalıştırma daha", + "active": "Etkin", + "trigger": "Tetikleyici", + "actions": "{{count}} eylem", + "moreActions": "... +{{count}} eylem daha", + "getUserIntegrations": "Entegrasyonları kontrol et", + "connectedIntegrations": "Bağlı", + "availableToConnect": "Bağlanılabilir", + "connect": "Bağlan", + "noIntegrationsAvailable": "Kullanılabilir entegrasyon yok", + "activateTool": "Araçları etkinleştir", + "webSearch": "Web araması", + "webSearchResults": "{{count}} sonuç bulundu", + "webSearchCompleted": "Arama tamamlandı", + "searchApi": "API ara", + "searchApiWithQuery": "API ara · {{query}}", + "noApiFound": "API bulunamadı", + "foundApis": "{{count}} API bulundu", + "totalApis": "Toplam {{count}} API mevcut", + "callApi": "API çağır", + "callApiWithMethod": "{{method}} {{path}}...", + "response": "Yanıt", + "success": "Başarılı", + "failed": "Başarısız", + "inputData": "Giriş verisi", + "availableNodes": "Kullanılabilir düğümler", + "hasPreviousCode": "Mevcut kod var", + "noInputData": "Giriş verisi mevcut değil" + }, + "showUI": { + "connect": "Bağlan", + "connecting": "Bağlanıyor...", + "connected": "Bağlandı", + "connectToUse": "Otomasyonlarda kullanmak için {{provider}} bağlayın", + "checkingConnection": "Bağlantı durumu kontrol ediliyor...", + "confirm": "Onayla", + "confirmed": "Onaylandı", + "cancel": "İptal", + "cancelled": "İptal edildi", + "connectionCancelled": "Bağlantı iptal edildi" + }, + "codeBlock": { + "hiddenLines": "{{count}} satır gizlendi", + "collapseCode": "Kodu daralt", + "code": "Kod", + "preview": "Önizleme" + }, + "buildFlow": { + "progress": "Derleme ilerlemesi", + "completed": "Uygulama derlemesi tamamlandı", + "completedDesc": "Tüm adımlar başarıyla tamamlandı, uygulama önizlemeye hazır", + "stepStatus": { + "initializing": "Uygulama oluşturuluyor ve ortam başlatılıyor...", + "naming": "Uygulama adı oluşturuluyor...", + "planning": "Gereksinimler analiz ediliyor ve geliştirme planlanıyor...", + "developing": "Kod yazılıyor ve özellikler uygulanıyor...", + "summarizing": "Geliştirme sonuçları düzenleniyor...", + "deploying": "Önizleme ortamına dağıtılıyor...", + "testing": "Test oluşturuluyor..." + }, + "moduleStatus": { + "running": "Çalışıyor", + "completed": "Tamamlandı", + "error": "Başarısız", + "pending": "Pending" + }, + "toolStatus": { + "running": "Çalışıyor", + "completed": "Tamamlandı", + "error": "Başarısız" + } + }, + "generateScript": { + "generateSuccess": "Betik başarıyla oluşturuldu" + }, + "buildBase": { + "title": "Veritabanı oluştur", + "generateSuccess": "Veritabanı başarıyla oluşturuldu", + "generateError": "Veritabanı oluşturma başarısız oldu" + }, + "buildAutomation": { + "title": "Otomasyon oluştur", + "generateSuccess": "Otomasyon başarıyla oluşturuldu" + }, + "automation": { + "created": "Oluşturuldu", + "updated": "Güncellendi", + "workflow": "İş akışı", + "trigger": "Tetikleyici", + "scriptAction": "Betik Eylemi", + "workflowLabel": "İş akışı", + "triggerLabel": "Tetikleyici", + "scriptActionLabel": "Betik Eylemi", + "workflowId": "İş akışı", + "triggerId": "Tetikleyici", + "scriptActionId": "Betik Eylemi", + "viewAutomation": "Görüntüle", + "navigateToAutomation": "Otomasyona git", + "triggerType": { + "recordCreated": "Kayıt Oluşturuldu", + "recordUpdated": "Kayıt Güncellendi", + "recordCreatedOrUpdated": "Kayıt Oluşturuldu veya Güncellendi", + "formSubmitted": "Form Gönderildi", + "scheduledTime": "Zamanlanmış Zaman", + "buttonClick": "Düğme Tıklaması" + }, + "activated": "Etkinleştirildi", + "deactivated": "Devre dışı bırakıldı", + "discarded": "Değişiklikler İptal Edildi", + "activateFailed": "Etkinleştirme Başarısız", + "deactivateFailed": "Devre Dışı Bırakma Başarısız", + "discardFailed": "İptal Başarısız", + "scriptUpdated": "Betik Güncellendi", + "scriptUpdateFailed": "Güncelleme Başarısız", + "scriptExecuted": "Betik Çalıştırıldı", + "scriptExecutionFailed": "Çalıştırma Başarısız", + "scriptReady": "Betik hazır", + "executingScript": "Betik çalıştırılıyor...", + "waitedSeconds": "{{seconds}}sn beklendi", + "waitFailed": "Bekleme başarısız", + "flowchartGenerated": "Akış Şeması Oluşturuldu", + "flowchartGenerationFailed": "Oluşturma Başarısız" + }, + "newChat": "Yeni Sohbet", + "clearChat": "Sohbeti Temizle", + "expand": "Genişlet", + "history": "Geçmiş", + "close": "Daralt", + "clearChatConfirmTitle": "Sohbeti Temizlemeyi Onayla", + "clearChatConfirmDesc": "Mevcut sohbet içeriği kaydedilmeyecektir. Temizlemek istediğinizden emin misiniz?", + "dontShowAgain": "Bir daha gösterme", + "sandboxExpiry": { + "expiresIn": "Sandbox {{time}} içinde sona eriyor", + "reset": "Sıfırla", + "resetTitle": "Sandbox Sıfırla", + "runningTasks_one": "{{count}} çalışan görev var. Sıfırlama onu sonlandıracaktır.", + "runningTasks_other": "{{count}} çalışan görev var. Sıfırlama bunları sonlandıracaktır.", + "noRunningTasks": "Şu anda çalışan görev yok.", + "newSandboxHint": "Bir sonraki mesajınızda otomatik olarak yeni bir sandbox oluşturulacaktır.", + "cancel": "İptal", + "confirmReset": "Sıfırla", + "confirmResetWithTasks": "Yine de Sıfırla", + "expiresSoon": "Sandbox süresi doluyor", + "resetFailed": "Sandbox sıfırlama başarısız oldu" + }, + "noModel": "Kullanılabilir model yok", + "addAttachment": "Ek Dosya Ekle", + "noHistory": "Sohbet geçmişi yok", + "noFoundHistory": "Sohbet geçmişi bulunamadı, lütfen yeni bir konuşma başlatın", + "timeGroup": { + "today": "Bugün", + "oneWeek": "Bir hafta", + "twoWeek": "İki hafta", + "oneMonth": "Bir ay", + "other": "Diğer" + }, + "context": { + "button": "Bağlam ekle", + "search": "Tablo ekle", + "searchEmpty": "Eşleşen bağlam bulunamadı", + "emptyContext": "Eklenecek bağlam yok", + "selectionRows": "Satırlar {{start}}-{{end}}" + }, + "inputPlaceholder": "Ne yapmak istediğinizi açıklayın", + "thought": "Düşünüyor", + "meta": { + "timeCostUnit": "s", + "timeCostDescription": "Oluşturma süresi: {{timeCost}}sn", + "creditDescription": "{{credits}} kredi harcandı", + "tokenDescription": "Kullanılan token: {{tokens}}", + "input": "Input", + "output": "Output", + "tokens": "Token", + "totalTimeCost": "Toplam süre", + "totalCreditCost": "Toplam kredi maliyeti", + "customModel": "Custom model", + "tokenDetails": "Token Detayları", + "cachedInput": "Önbellek Girişi (%90 indirim)", + "cacheWrite": "Önbellek Yazımı", + "reasoning": "Akıl Yürütme (Düşünme)", + "taskCompleted": "Görev tamamlandı" + }, + "dataVisualization": { + "error": "Veri görselleştirme başarısız oldu" + }, + "tips": { + "modelTips": "Yalnızca yöneticiler yapılandırabilir" + }, + "attachment": { + "imageNotSupported": "Görsel desteklenmiyor", + "attachmentSizeExceeded": "Ek dosya boyutu {{size}}MB sınırını aşıyor" + }, + "suggestions": { + "recommend": "Recommended", + "ask": "Sor", + "analyze": "Analiz et", + "build": "Oluştur", + "title": "Nasıl yardımcı olabilirim?", + "whatCanIDo": "Ne yapabilirim?", + "createOrModifyDatabase": "Veritabanı oluştur veya düzenle", + "buildAutomations": "Otomasyon oluştur", + "buildApps": "Uygulama oluştur", + "buildMeCRM": "Bana bir CRM oluştur", + "addAIField": "Her müşteriyi analiz etmek için AI alanı ekle", + "createDataAnalysis": "Bana bir veri analizi raporu oluştur", + "emailWhenRecordCreated": "Kayıt oluşturulduğunda bana e-posta gönder", + "syncStatusToSlack": "Durum güncellemelerini Slack ile senkronize et", + "buildDashboard": "Bu tablodan bir kontrol paneli oluştur", + "buildLeadCapture": "Bana bir potansiyel müşteri yakalama sayfası oluştur" + }, + "buildApp": { + "thinking": { + "duration": "{{duration}}sn düşündü" + }, + "task": { + "searching": "\"{{query}}\" aranıyor", + "readingFiles": "Dosyalar okunuyor:", + "foundResults": "{{count}} sonuç bulundu", + "noIssuesFound": "Sorun bulunamadı", + "defaultTitle": "Görev" + }, + "codeProject": { + "defaultTitle": "Kod Projesi" + } + }, + "scriptPreview": { + "aiModelRequired": "Önizleme oluşturmak için AI modeli gereklidir.", + "writeCodeHint": "Akış şeması önizlemesini görmek için kod yazın.", + "noPreview": "Akış şeması önizlemesi mevcut değil.", + "generatePreview": "Önizleme Oluştur", + "analyzing": "Betik analiz ediliyor...", + "codeChanged": "Bu önizleme oluşturulduktan sonra kod değişti.", + "regenerate": "Yeniden Oluştur", + "refresh": "Yenile", + "regenerating": "Yeniden oluşturuluyor..." + }, + "queue": { + "nQueued": "{{count}} Sırada", + "edit": "Düzenle", + "forceSend": "Durdur ve şimdi gönder", + "removeFromQueue": "Kaldır", + "queueFull": "Sıra dolu (en fazla 10 mesaj)", + "messageQueued": "Mesaj sıraya alındı" + } + }, + "upload": { + "panelUploading": "{{count}} dosya yükleniyor", + "panelFailed": "{{count}} dosya başarısız oldu", + "panelCompleted": "{{count}} dosya tamamlandı", + "statusFailed": "Başarısız", + "statusCompleted": "Tamamlandı", + "statusCancel": "Yüklemeyi iptal et", + "statusRetry": "Yüklemeyi yeniden dene" } } diff --git a/packages/common-i18n/src/locales/tr/token.json b/packages/common-i18n/src/locales/tr/token.json index 893f04595a..d9c7a8aa5f 100644 --- a/packages/common-i18n/src/locales/tr/token.json +++ b/packages/common-i18n/src/locales/tr/token.json @@ -32,7 +32,9 @@ "edit": { "title": "Token düzenle", "name": "İsim", - "scopes": "Kapsamlar" + "scopes": "Kapsamlar", + "selectAll": "Select all", + "cancelSelectAll": "Cancel select all" }, "refresh": { "title": "Kişisel erişim tokenini yeniden oluştur", @@ -43,7 +45,13 @@ "button": "Veritabanı veya alan ekle", "empty": "Erişim bulunamadı.", "spaceSelectItem": "Alandaki tüm veritabanları", - "inputPlaceholder": "Alan veya veritabanı ara..." + "inputPlaceholder": "Alan veya veritabanı ara...", + "fullAccess": { + "button": "Add all resources", + "description": "All current and future spaces and bases", + "title": "All resources" + }, + "sharedBase": "Shared with me" }, "moreScopes": "ve {{len}} daha fazla", "list": { @@ -57,6 +65,10 @@ "title": "Bu tokeni silmek istediğinizden emin misiniz?", "description": "Bu tokeni kullanan uygulamalar veya betikler artık Teable API'sine erişemeyecek. Bu işlemi geri alamazsınız." }, + "noAccessConfirm": { + "title": "Are you sure to continue?", + "description": "This token will not be able to access any data in any base." + }, "help": { "link": "https://help.teable.ai/en/api-doc/token" }