feat: add core i18n runtime and catalogs
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
export const common = {
|
||||
"actions.save": "Kaydet",
|
||||
"actions.cancel": "İptal",
|
||||
"actions.delete": "Sil",
|
||||
"actions.edit": "Düzenle",
|
||||
"actions.create": "Oluştur",
|
||||
"actions.close": "Kapat",
|
||||
"actions.search": "Ara",
|
||||
"states.loading": "Yükleniyor...",
|
||||
"states.empty": "Henüz kayıt yok.",
|
||||
"states.error": "Bir hata oluştu.",
|
||||
"pagination.previous": "Önceki",
|
||||
"pagination.next": "Sonraki",
|
||||
"plural.item": "{count, plural, one {# kayıt} other {# kayıt}}",
|
||||
};
|
||||
@@ -0,0 +1,244 @@
|
||||
import type { TranslationCatalog } from "@/lib/i18n/types";
|
||||
import { common } from "./common";
|
||||
|
||||
export const trCatalog = {
|
||||
common: {
|
||||
...common,
|
||||
"notFound.title": "Sayfa bulunamadı",
|
||||
"notFound.description": "Aradığın sayfa taşınmış, silinmiş veya hiç var olmamış olabilir.",
|
||||
"notFound.backHome": "Ana sayfaya dön",
|
||||
"error.title": "Bir şeyler ters gitti",
|
||||
"error.description": "Beklenmeyen bir hata oluştu. Lütfen tekrar dene.",
|
||||
"error.retry": "Tekrar dene",
|
||||
"maintenance.title": "Bakım modu",
|
||||
"maintenance.description": "Bu çalışma alanı kısa süreli bakımda. Lütfen birazdan tekrar dene.",
|
||||
"itemsCount": "{count, plural, one {# öğe} other {# öğe}}",
|
||||
},
|
||||
auth: {
|
||||
"login.title": "Giriş yap",
|
||||
"login.description": "Neta çalışma alanına erişmek için hesabına giriş yap.",
|
||||
"login.email": "E-posta",
|
||||
"login.emailPlaceholder": "ornek@mail.com",
|
||||
"login.password": "Şifre",
|
||||
"login.forgotPassword": "Şifremi unuttum",
|
||||
"login.submit": "Giriş yap",
|
||||
"login.pending": "Giriş yapılıyor...",
|
||||
"login.setupPrompt": "İlk kurulumu yapmadın mı?",
|
||||
"login.createAdmin": "Admin hesabını oluştur",
|
||||
"register.title": "Admin hesabı oluştur",
|
||||
"register.firstAdminTitle": "İlk admin hesabını oluştur",
|
||||
"register.description": "Bu Neta çalışma alanının ilk yönetici hesabını oluştur.",
|
||||
"register.submit": "Admin hesabını oluştur",
|
||||
"register.pending": "Oluşturuluyor...",
|
||||
"register.hasAccount": "Zaten hesabın var mı?",
|
||||
"register.closed": "Kayıt kapalı. Bu Neta kurulumunda ilk admin hesabı zaten oluşturulmuş.",
|
||||
"register.failed": "Kullanıcı oluşturulamadı.",
|
||||
"forgot.title": "Şifre sıfırlama",
|
||||
"forgot.description": "Self-host kurulumda e-posta sağlayıcısı bağlandığında bu akış aktif edilir.",
|
||||
"forgot.helper": "Şimdilik admin panelinden yeni şifre belirleyebilir veya veritabanındaki kullanıcıyı yönetebilirsin.",
|
||||
"forgot.back": "Giriş sayfasına dön",
|
||||
"reset.title": "Yeni şifre belirle",
|
||||
"reset.description": "Şifre sıfırlama bağlantısı entegrasyonu henüz yapılandırılmadı.",
|
||||
"invite.title": "Portal davetini kabul et",
|
||||
"invite.description": "Davet edilen hesabın için adını ve şifreni belirle.",
|
||||
"invite.email": "E-posta",
|
||||
"invite.displayName": "Ad soyad",
|
||||
"invite.password": "Şifre",
|
||||
"invite.passwordHelp": "En az 8 karakter kullan.",
|
||||
"invite.submit": "Portal hesabını oluştur",
|
||||
"invite.pending": "Hesap oluşturuluyor...",
|
||||
"invite.backToLogin": "Giriş sayfasına dön",
|
||||
"invite.expired": "Bu davetin süresi dolmuş. Freelancer'dan yeni bir bağlantı istemelisin.",
|
||||
"invite.accepted": "Bu davet daha önce kullanılmış. Hesabınla giriş yapabilirsin.",
|
||||
"invite.revoked": "Bu davet iptal edilmiş. Freelancer'dan yeni bir bağlantı istemelisin.",
|
||||
"invite.success": "Portal hesabın oluşturuldu. Şimdi giriş yapabilirsin.",
|
||||
"language": "Dil",
|
||||
"marketing.headline": "Freelancer işlerini, müşterilerini ve finansını tek yerde yönet.",
|
||||
"marketing.description": "{app}, günlük operasyonunu, projelerini, side projectlerini ve temel finans durumunu sade raporlarla takip etmen için tasarlanır.",
|
||||
"marketing.openSource": "Açık kaynak ve self-host edilebilir.",
|
||||
"marketing.github": "GitHub",
|
||||
"marketing.via": "üzerinden ulaşabilirsin.",
|
||||
"marketing.builtBy": "tarafından kodlandı.",
|
||||
"highlights.clients": "Müşteriler",
|
||||
"highlights.calendar": "Takvim",
|
||||
"highlights.finance": "Finans",
|
||||
"highlights.reports": "Raporlar",
|
||||
"messages.invalidCredentials": "E-posta veya şifre hatalı.",
|
||||
"messages.setupUnavailable": "Kayıt kapalı. Bu Neta kurulumunda ilk freelancer hesabı zaten oluşturulmuş.",
|
||||
"messages.setupStateError": "Kurulum durumu okunamadı.",
|
||||
"messages.signupFailed": "Kullanıcı oluşturulamadı.",
|
||||
"messages.portalInviteFailed": "Portal hesabı oluşturulamadı.",
|
||||
},
|
||||
navigation: {
|
||||
"groups.overview": "GENEL BAKIŞ",
|
||||
"groups.operations": "OPERASYON",
|
||||
"groups.personal": "KİŞİSEL",
|
||||
"groups.ai": "AI ASİSTAN",
|
||||
"groups.processes": "SÜREÇLER",
|
||||
"items.dashboard": "Dashboard",
|
||||
"items.calendar": "Takvim",
|
||||
"items.analytics": "Analizler",
|
||||
"items.clients": "Müşteriler",
|
||||
"items.projects": "Projeler",
|
||||
"items.tasks": "Görevler",
|
||||
"items.finance": "Finans",
|
||||
"items.journal": "Günlük",
|
||||
"items.chat": "Sohbet",
|
||||
"items.settings": "Ayarlar",
|
||||
"items.portalProjects": "Projeleriniz",
|
||||
"items.portalTasks": "Yapılan Görevler",
|
||||
"items.portalRevisions": "Revizyon Talepleri",
|
||||
"shell.skipToContent": "Ana içeriğe geç",
|
||||
"shell.homeAriaLabel": "{app} ana sayfa",
|
||||
"shell.mobileMenuAriaLabel": "Ana menüyü aç veya kapat",
|
||||
"shell.mobileMenuTooltip": "Menü",
|
||||
"shell.logoAlt": "{app} logosu",
|
||||
"shell.progressTitle": "Proje ilerlemesi",
|
||||
"shell.progressValue": "%{progress} tamamlandı",
|
||||
"shell.progressAriaLabel": "Proje ilerlemesi",
|
||||
"shell.accountMenuAriaLabel": "{name} için hesap menüsünü aç",
|
||||
"account.signOut": "Çıkış yap",
|
||||
"account.signingOut": "Çıkış yapılıyor",
|
||||
"account.signOutError": "Çıkış yapılamadı. Lütfen tekrar deneyin.",
|
||||
},
|
||||
dashboard: {
|
||||
"title": "Dashboard",
|
||||
"description": "İş performansını, gelirlerini ve günlük durumunu takip et.",
|
||||
"stats.netEarnings": "Net Kazanç",
|
||||
"stats.activeProjects": "Aktif Projeler",
|
||||
"stats.completedTasks": "Tamamlanan Görev",
|
||||
"stats.averageMood": "Ortalama Mood",
|
||||
"sections.financeSummary": "Gelir / Gider Özeti",
|
||||
"sections.moodTrend": "Mood & Enerji Trendi",
|
||||
"sections.recentProjects": "Son Eklenen Projeler",
|
||||
"sections.recentClients": "Son Eklenen Müşteriler",
|
||||
"empty.finance": "Bu tarih aralığında finansal veri yok.",
|
||||
"empty.journal": "Bu tarih aralığında günlük verisi yok.",
|
||||
"empty.projects": "Henüz proje yok.",
|
||||
"empty.clients": "Henüz müşteri yok.",
|
||||
"filters.range": "Tarih aralığı",
|
||||
"filters.today": "Bugün",
|
||||
"filters.thisWeek": "Bu Hafta",
|
||||
"filters.thisMonth": "Bu Ay",
|
||||
},
|
||||
clients: {
|
||||
"title": "Müşteriler",
|
||||
"description": "Müşteri ilişkilerini, projeleri ve takipleri yönetin.",
|
||||
"actions.add": "Müşteri ekle",
|
||||
"fields.name": "Müşteri adı",
|
||||
"fields.email": "E-posta",
|
||||
},
|
||||
projects: {
|
||||
"title": "Projeler",
|
||||
"description": "Proje durumlarını, teslim tarihlerini ve müşteri bağlantılarını takip edin.",
|
||||
"actions.add": "Proje ekle",
|
||||
"actions.risk": "AI Risk Analizi",
|
||||
"stats.active": "Aktif proje",
|
||||
"stats.progress": "Ortalama ilerleme",
|
||||
"stats.budget": "Toplam bütçe",
|
||||
"fields.name": "Proje adı",
|
||||
"fields.description": "Açıklama",
|
||||
},
|
||||
tasks: {
|
||||
"title": "Görevler",
|
||||
"description": "Yapılacak işleri, öncelikleri ve proje bağlantılarını yönetin.",
|
||||
"actions.add": "Görev ekle",
|
||||
"view.kanban": "Kanban",
|
||||
"view.list": "Liste",
|
||||
"fields.title": "Görev başlığı",
|
||||
"fields.description": "Açıklama",
|
||||
},
|
||||
calendar: {
|
||||
"title": "Takvim",
|
||||
"description": "Toplantı, odak zamanı ve teslim tarihlerini planlayın.",
|
||||
"actions.add": "Etkinlik ekle",
|
||||
"event.title": "Etkinlik",
|
||||
},
|
||||
finance: {
|
||||
"title": "Finans İşlemleri",
|
||||
"description": "Gelir, gider, ödeme durumu ve proje/müşteri bağlantılarını takip et.",
|
||||
"actions.add": "İşlem ekle",
|
||||
"actions.ai": "AI Analizi",
|
||||
},
|
||||
journal: {
|
||||
"title": "Günlük",
|
||||
"description": "Mood, enerji ve çalışma notlarını takip edin.",
|
||||
"actions.add": "Günlük ekle",
|
||||
"fields.note": "Not",
|
||||
},
|
||||
chat: {
|
||||
"title": "Sohbet",
|
||||
"description": "İş verilerinle bağlamlı AI asistan görüşmeleri yap.",
|
||||
"actions.new": "Yeni sohbet",
|
||||
"errors.invalid": "Sohbet isteği geçersiz.",
|
||||
},
|
||||
settings: {
|
||||
"title": "Ayarlar",
|
||||
"language.title": "Diller ve çeviriler",
|
||||
"language.default": "Varsayılan dil",
|
||||
},
|
||||
portal: {
|
||||
"dashboard.title": "Müşteri Paneli",
|
||||
"dashboard.activeProjects": "Aktif Projeler",
|
||||
"dashboard.completed": "Tamamlanan",
|
||||
"dashboard.averageProgress": "Ortalama İlerleme",
|
||||
"dashboard.allProjects": "Tüm Projeleriniz",
|
||||
"projects.title": "Projeleriniz",
|
||||
"projects.empty": "Henüz size atanmış bir proje bulunmuyor.",
|
||||
"tasks.title": "Yapılan Görevler",
|
||||
"tasks.empty": "Henüz sizinle paylaşılan bir görev bulunmuyor.",
|
||||
"revisions.title": "Revizyon Talepleri",
|
||||
"revisions.mine": "Revizyon Taleplerim",
|
||||
"revisions.empty": "Henüz bir revizyon talebinde bulunmadınız.",
|
||||
"actions.requestRevision": "Revizyon Talep Et",
|
||||
"actions.noRevisionQuota": "Revizyon Hakkı Bitti",
|
||||
"actions.sendRequest": "Talebi Gönder",
|
||||
"actions.cancel": "İptal",
|
||||
"actions.newRequest": "Yeni Talep Oluştur",
|
||||
"labels.delivery": "Teslim",
|
||||
"labels.deadline": "Son Teslim",
|
||||
"labels.progress": "İlerleme",
|
||||
"labels.project": "Proje",
|
||||
"labels.remainingQuota": "Kalan Hak",
|
||||
"labels.unlimited": "Sınırsız",
|
||||
"tabs.overview": "Genel Bakış",
|
||||
"tabs.plan": "Plan & Aşamalar",
|
||||
"tabs.revisions": "Revizyonlar",
|
||||
"sections.progress": "İlerleme Durumu",
|
||||
"sections.doneTasks": "Yapılan İşler",
|
||||
"empty.tasks": "Listelenecek görev bulunmuyor.",
|
||||
"empty.plan": "Henüz bir plan yüklenmemiş.",
|
||||
"empty.revisions": "Henüz bir revizyon talebi oluşturmadınız.",
|
||||
"revision.title": "Yeni Revizyon Talebi",
|
||||
"revision.pendingWarning": "Şu anda sonuçlanmamış {count} adet revizyon talebiniz var. Yeni bir tane eklemek istediğinize emin misiniz?",
|
||||
"revision.descriptionLabel": "Lütfen yapılmasını istediğiniz değişiklikleri detaylıca açıklayın",
|
||||
"revision.descriptionPlaceholder": "Şu kısmın rengi mavi olabilir mi? Ayrıca metinleri güncelleyelim...",
|
||||
"revision.success": "Revizyon talebiniz başarıyla iletildi.",
|
||||
"revision.error": "Revizyon talebi oluşturulamadı.",
|
||||
"status.project.active": "Aktif",
|
||||
"status.project.completed": "Tamamlandı",
|
||||
"status.project.waiting": "Beklemede",
|
||||
"status.task.todo": "Bekliyor",
|
||||
"status.task.inProgress": "İşleniyor",
|
||||
"status.task.done": "Tamamlandı",
|
||||
"status.revision.pending": "Bekliyor",
|
||||
"status.revision.inProgress": "İşleniyor",
|
||||
"status.revision.completed": "Tamamlandı",
|
||||
"status.revision.rejected": "Reddedildi",
|
||||
},
|
||||
status: {
|
||||
"project.active": "Aktif",
|
||||
"project.completed": "Tamamlandı",
|
||||
"task.todo": "Yapılacak",
|
||||
"task.done": "Tamamlandı",
|
||||
},
|
||||
validation: {
|
||||
"required": "Bu alan zorunludur.",
|
||||
"invalidLocale": "Dil kodu geçersiz.",
|
||||
"unsupportedLocale": "Bu dil desteklenmiyor.",
|
||||
},
|
||||
api: {
|
||||
"errors.unauthenticated": "Geçerli bir oturum gerekli.",
|
||||
"errors.forbidden": "Bu işlem için yetkiniz yok.",
|
||||
},
|
||||
} as const satisfies TranslationCatalog;
|
||||
Reference in New Issue
Block a user