* feat(i18n): add Greek translation (#1061)

* i18n: complete Turkish (tr) translation (#1075)

Fill in the remaining ~2100 UI strings in shared/src/i18n/tr so Turkish
matches the English catalog. Brand names, URLs, and technical placeholders
are left untranslated by design.

* chore: prettier + lint

* chore: enforce prettier & lint on shared package

---------

Co-authored-by: Dimitris Kafetzis <39215021+Dkafetzis@users.noreply.github.com>
Co-authored-by: Ahmet Yılmaz <70577707+sharkpaw@users.noreply.github.com>
This commit is contained in:
Julien G.
2026-05-27 17:53:55 +02:00
committed by GitHub
parent 4ff4435f8b
commit 17264ef745
87 changed files with 5177 additions and 2243 deletions
+78 -78
View File
@@ -1,91 +1,91 @@
import type { TranslationStrings } from '../types';
const places: TranslationStrings = {
'places.addPlace': 'Add Place/Activity',
'places.importFile': 'Import file',
'places.sidebarDrop': 'Drop to import',
'places.addPlace': 'Yer/etkinlik Ekle',
'places.importFile': 'Dosyayı içe aktar',
'places.sidebarDrop': 'İçe aktarmak için bırakın',
'places.importFileHint':
'Import .gpx, .kml or .kmz files from tools like Google My Maps, Google Earth, or a GPS tracker.',
'places.importFileDropHere': 'Click to select a file or drag and drop here',
'places.importFileDropActive': 'Drop file to select',
'Google Haritalarım, Google Earth veya GPS izleyici gibi araçlardan .gpx, .kml veya .kmz dosyalarını içe aktarın.',
'places.importFileDropHere':
'Bir dosya seçmek için tıklayın veya buraya sürükleyip bırakın',
'places.importFileDropActive': 'Seçmek için dosyayı bırakın',
'places.importFileUnsupported':
'Unsupported file type. Use .gpx, .kml or .kmz.',
'Desteklenmeyen dosya türü. .gpx, .kml veya .kmz kullanın.',
'places.importFileTooLarge':
'File is too large. Maximum upload size is {maxMb} MB.',
'places.importFileError': 'Import failed',
'places.importAllSkipped': 'All places were already in the trip.',
'places.gpxImported': '{count} places imported from GPX',
'places.gpxImportTypes': 'What do you want to import?',
'places.gpxImportWaypoints': 'Waypoints',
'places.gpxImportRoutes': 'Routes',
'places.gpxImportTracks': 'Tracks (with path geometry)',
'places.gpxImportNoneSelected': 'Select at least one type to import.',
'places.kmlImportTypes': 'What do you want to import?',
'places.kmlImportPoints': 'Points (Placemarks)',
'places.kmlImportPaths': 'Paths (LineStrings)',
'places.kmlImportNoneSelected': 'Select at least one type to import.',
'places.selectionCount': '{count} selected',
'places.deleteSelected': 'Delete selected',
'places.kmlKmzImported': '{count} places imported from KMZ/KML',
'places.urlResolved': 'Place imported from URL',
'places.importList': 'List Import',
"Dosya çok büyük. Maksimum yükleme boyutu {maxMb} MB'tır.",
'places.importFileError': 'İçe aktarma başarısız oldu',
'places.importAllSkipped': 'Tüm yerler zaten yolculuktaydı.',
'places.gpxImported': "{count} yer GPX'ten içe Aktarıldı",
'places.gpxImportTypes': 'Neyi içe aktarmak istiyorsunuz?',
'places.gpxImportWaypoints': 'Ara noktalar',
'places.gpxImportRoutes': 'Rotalar',
'places.gpxImportTracks': 'İzler (yol geometrisi ile)',
'places.gpxImportNoneSelected': 'İçe aktarılacak en az bir tür seçin.',
'places.kmlImportTypes': 'Neyi içe aktarmak istiyorsunuz?',
'places.kmlImportPoints': 'Noktalar (Yer İşaretleri)',
'places.kmlImportPaths': "Yollar (LineString'ler)",
'places.kmlImportNoneSelected': 'İçe aktarılacak en az bir tür seçin.',
'places.selectionCount': '{count} seçildi',
'places.deleteSelected': 'Seçileni sil',
'places.kmlKmzImported': "KMZ/KML'den {count} yer içe Aktarıldı",
'places.urlResolved': "URL'den içe aktarılan Yer",
'places.importList': 'Liste İçe Aktarma',
'places.kmlKmzSummaryValues':
'Placemarks: {total} • Imported: {created} • Skipped: {skipped}',
'places.importGoogleList': 'Google List',
'places.importNaverList': 'Naver List',
'Yer işaretleri: {total} • İçe aktarıldı: {created} • Atlandı: {skipped}',
'places.importGoogleList': 'Google Listesi',
'places.importNaverList': 'Naver Listesi',
'places.googleListHint':
'Paste a shared Google Maps list link to import all places.',
'places.googleListImported': '{count} places imported from "{list}"',
'places.googleListError': 'Failed to import Google Maps list',
'Tüm yerleri içe aktarmak için paylaşılan bir Google Haritalar listesi bağlantısını yapıştırın.',
'places.googleListImported': '"{list}"ten {count} yer içe aktarıldı',
'places.googleListError': 'Google Haritalar listesi içe aktarılamadı',
'places.naverListHint':
'Paste a shared Naver Maps list link to import all places.',
'places.naverListImported': '{count} places imported from "{list}"',
'places.naverListError': 'Failed to import Naver Maps list',
'places.viewDetails': 'View Details',
'places.assignToDay': 'Add to which day?',
'places.all': 'All',
'places.unplanned': 'Unplanned',
'places.filterTracks': 'Tracks',
'places.search': 'Search places...',
'places.allCategories': 'All Categories',
'places.categoriesSelected': 'categories',
'places.clearFilter': 'Clear filter',
'places.count': '{count} places',
'places.countSingular': '1 place',
'places.allPlanned': 'All places are planned',
'places.noneFound': 'No places found',
'places.editPlace': 'Edit Place',
'places.formName': 'Name',
'places.formNamePlaceholder': 'e.g. Eiffel Tower',
'places.formDescription': 'Description',
'places.formDescriptionPlaceholder': 'Short description...',
'places.formAddress': 'Address',
'places.formAddressPlaceholder': 'Street, City, Country',
'places.formLat': 'Latitude (e.g. 48.8566)',
'places.formLng': 'Longitude (e.g. 2.3522)',
'places.formCategory': 'Category',
'places.noCategory': 'No Category',
'places.categoryNamePlaceholder': 'Category name',
'places.formTime': 'Time',
'places.startTime': 'Start',
'places.endTime': 'End',
'places.endTimeBeforeStart': 'End time is before start time',
'places.timeCollision': 'Time overlap with:',
'places.formWebsite': 'Website',
'places.formNotes': 'Notes',
'places.formNotesPlaceholder': 'Personal notes...',
'places.formReservation': 'Reservation',
'places.reservationNotesPlaceholder':
'Reservation notes, confirmation number...',
'places.mapsSearchPlaceholder': 'Search places...',
'places.mapsSearchError': 'Place search failed.',
'places.loadingDetails': 'Loading place details…',
'Tüm yerleri içe aktarmak için paylaşılan bir Naver Haritalar listesi bağlantısını yapıştırın.',
'places.naverListImported': '"{list}"ten {count} yer içe aktarıldı',
'places.naverListError': 'Naver Haritalar listesi içe aktarılamadı',
'places.viewDetails': 'Ayrıntıları Görüntüle',
'places.assignToDay': 'Hangi güne eklensin?',
'places.all': 'Tüm',
'places.unplanned': 'Planlanmamış',
'places.filterTracks': 'Parçalar',
'places.search': 'Yer ara...',
'places.allCategories': 'Tüm Kategoriler',
'places.categoriesSelected': 'kategoriler',
'places.clearFilter': 'Filtreyi temizle',
'places.count': '{count} yer',
'places.countSingular': '1 yer',
'places.allPlanned': 'Bütün yerler planlandı',
'places.noneFound': 'Hiçbir yer bulunamadı',
'places.editPlace': 'Yeri Düzenle',
'places.formName': 'İsim',
'places.formNamePlaceholder': 'örneğin Eyfel Kulesi',
'places.formDescription': 'Tanım',
'places.formDescriptionPlaceholder': 'Kısa açıklama...',
'places.formAddress': 'Adres',
'places.formAddressPlaceholder': 'Sokak, Şehir, Ülke',
'places.formLat': 'Enlem (ör. 48,8566)',
'places.formLng': 'Boylam (ör. 2,3522)',
'places.formCategory': 'Kategori',
'places.noCategory': 'Kategori Yok',
'places.categoryNamePlaceholder': 'Kategori adı',
'places.formTime': 'Zaman',
'places.startTime': 'Başlangıç',
'places.endTime': 'Son',
'places.endTimeBeforeStart': 'Bitiş zamanı başlangıç zamanından önce',
'places.timeCollision': 'Zaman şununla çakışıyor:',
'places.formWebsite': 'Web sitesi',
'places.formNotes': 'Notlar',
'places.formNotesPlaceholder': 'Kişisel notlar...',
'places.formReservation': 'Rezervasyon',
'places.reservationNotesPlaceholder': 'Rezervasyon notları, onay numarası...',
'places.mapsSearchPlaceholder': 'Yerleri ara...',
'places.mapsSearchError': 'Yer arama başarısız oldu.',
'places.loadingDetails': 'Yer ayrıntıları yükleniyor…',
'places.osmHint':
'Using OpenStreetMap search (no photos, opening hours, or ratings). Add a Google API key in settings for full details.',
'OpenStreetMap aramasını kullanma (fotoğraf, açılış saatleri veya derecelendirme yok). Tüm ayrıntılar için ayarlara bir Google API anahtarı ekleyin.',
'places.osmActive':
'Search via OpenStreetMap (no photos, ratings or opening hours). Add a Google API key in Settings for enhanced data.',
'places.categoryCreateError': 'Failed to create category',
'places.nameRequired': 'Please enter a name',
'places.saveError': 'Failed to save',
"OpenStreetMap aracılığıyla arama yapın (fotoğraf, derecelendirme veya çalışma saatleri yok). Gelişmiş veriler için Ayarlar'a bir Google API anahtarı ekleyin.",
'places.categoryCreateError': 'Kategori oluşturulamadı',
'places.nameRequired': 'Lütfen bir ad girin',
'places.saveError': 'Kaydedilemedi',
};
export default places;