mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-22 23:01:48 +00:00
chore: move i18n to shared package (#1066)
* chore: move i18n to shared package * chore: move server translations to shared package and apply linter and prettier on entire shared package
This commit is contained in:
@@ -0,0 +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.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',
|
||||
'places.importFileUnsupported':
|
||||
'Unsupported file type. Use .gpx, .kml or .kmz.',
|
||||
'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',
|
||||
'places.kmlKmzSummaryValues':
|
||||
'Placemarks: {total} • Imported: {created} • Skipped: {skipped}',
|
||||
'places.importGoogleList': 'Google List',
|
||||
'places.importNaverList': 'Naver List',
|
||||
'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',
|
||||
'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…',
|
||||
'places.osmHint':
|
||||
'Using OpenStreetMap search (no photos, opening hours, or ratings). Add a Google API key in settings for full details.',
|
||||
'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',
|
||||
};
|
||||
export default places;
|
||||
Reference in New Issue
Block a user