637 lines
16 KiB
Dart
637 lines
16 KiB
Dart
class AppTranslations {
|
|
static Map<String, Map<String, String>> translations = {
|
|
// Language names
|
|
'Language': {
|
|
'English': 'Language',
|
|
'Slovenian': 'Jezik',
|
|
},
|
|
'Select Language': {
|
|
'English': 'Select Language',
|
|
'Slovenian': 'Izberi jezik',
|
|
},
|
|
'English': {
|
|
'English': 'English',
|
|
'Slovenian': 'Angleščina',
|
|
},
|
|
'Slovenian': {
|
|
'English': 'Slovenian',
|
|
'Slovenian': 'Slovenščina',
|
|
},
|
|
|
|
// Bullet color
|
|
'Select Bullet Color': {
|
|
'English': 'Select Bullet Color',
|
|
'Slovenian': 'Izberi barvo zadetka',
|
|
},
|
|
|
|
// Camera settings
|
|
'Camera Settings': {
|
|
'English': 'Camera Settings',
|
|
'Slovenian': 'Nastavitve kamere',
|
|
},
|
|
'Camera': {
|
|
'English': 'Camera',
|
|
'Slovenian': 'Kamera',
|
|
},
|
|
'Enter Camera IP': {
|
|
'English': 'Enter Camera IP',
|
|
'Slovenian': 'Vnesi IP kamere',
|
|
},
|
|
'Save': {
|
|
'English': 'Save',
|
|
'Slovenian': 'Shrani',
|
|
},
|
|
'Reset to Default': {
|
|
'English': 'Reset to Default',
|
|
'Slovenian': 'Ponastavi na privzeto',
|
|
},
|
|
'Cancel': {
|
|
'English': 'Cancel',
|
|
'Slovenian': 'Prekliči',
|
|
},
|
|
|
|
// Color names
|
|
'Blue': {
|
|
'English': 'Blue',
|
|
'Slovenian': 'Modra',
|
|
},
|
|
'Green': {
|
|
'English': 'Green',
|
|
'Slovenian': 'Zelena',
|
|
},
|
|
'Yellow': {
|
|
'English': 'Yellow',
|
|
'Slovenian': 'Rumena',
|
|
},
|
|
'Purple': {
|
|
'English': 'Purple',
|
|
'Slovenian': 'Vijolična',
|
|
},
|
|
'Cyan': {
|
|
'English': 'Cyan',
|
|
'Slovenian': 'Cian',
|
|
},
|
|
'Teal': {
|
|
'English': 'Teal',
|
|
'Slovenian': 'Modrozelena',
|
|
},
|
|
'Indigo': {
|
|
'English': 'Indigo',
|
|
'Slovenian': 'Indigo',
|
|
},
|
|
'Pink': {
|
|
'English': 'Pink',
|
|
'Slovenian': 'Rožnata',
|
|
},
|
|
'Lime': {
|
|
'English': 'Lime',
|
|
'Slovenian': 'Limona',
|
|
},
|
|
'Mint': {
|
|
'English': 'Mint',
|
|
'Slovenian': 'Meta',
|
|
},
|
|
'Orange': {
|
|
'English': 'Orange',
|
|
'Slovenian': 'Oranžna',
|
|
},
|
|
'Violet': {
|
|
'English': 'Violet',
|
|
'Slovenian': 'Vijolična',
|
|
},
|
|
'Amber': {
|
|
'English': 'Amber',
|
|
'Slovenian': 'Jantarna',
|
|
},
|
|
'Brown': {
|
|
'English': 'Brown',
|
|
'Slovenian': 'Rjava',
|
|
},
|
|
'Grey': {
|
|
'English': 'Grey',
|
|
'Slovenian': 'Siva',
|
|
},
|
|
|
|
// Calendar Screen
|
|
'Retry': {
|
|
'English': 'Retry',
|
|
'Slovenian': 'Poskusi znova',
|
|
},
|
|
'No upcoming events': {
|
|
'English': 'No upcoming events',
|
|
'Slovenian': 'Ni prihajajočih dogodkov',
|
|
},
|
|
'Pull down to refresh': {
|
|
'English': 'Pull down to refresh',
|
|
'Slovenian': 'Potegni navzdol za osvežitev',
|
|
},
|
|
'Today': {
|
|
'English': 'Today',
|
|
'Slovenian': 'Danes',
|
|
},
|
|
'Tomorrow': {
|
|
'English': 'Tomorrow',
|
|
'Slovenian': 'Jutri',
|
|
},
|
|
'NOW': {
|
|
'English': 'NOW',
|
|
'Slovenian': 'ZDAJ',
|
|
},
|
|
'Untitled Event': {
|
|
'English': 'Untitled Event',
|
|
'Slovenian': 'Brez naslova',
|
|
},
|
|
'All day': {
|
|
'English': 'All day',
|
|
'Slovenian': 'Cel dan',
|
|
},
|
|
'Event Card Styles Preview': {
|
|
'English': 'Event Card Styles Preview',
|
|
'Slovenian': 'Predogled stilov dogodkov',
|
|
},
|
|
'Example Event Preview': {
|
|
'English': 'Example Event Preview',
|
|
'Slovenian': 'Primer dogodka',
|
|
},
|
|
'DEŽURSTVO': {
|
|
'English': 'DUTY',
|
|
'Slovenian': 'DEŽURSTVO',
|
|
},
|
|
'DUTY': {
|
|
'English': 'DUTY',
|
|
'Slovenian': 'DEŽURSTVO',
|
|
},
|
|
|
|
// Preview Screen
|
|
'Enter Missing Bullet Scores': {
|
|
'English': 'Enter Missing Bullet Scores',
|
|
'Slovenian': 'Vnesi manjkajoče ocene zadetkov',
|
|
},
|
|
'Bullet Score': {
|
|
'English': 'Bullet Score',
|
|
'Slovenian': 'Ocena zadetka',
|
|
},
|
|
'Add Bullets': {
|
|
'English': 'Add Bullets',
|
|
'Slovenian': 'Dodaj zadetke',
|
|
},
|
|
'Save Target Data': {
|
|
'English': 'Save Target Data',
|
|
'Slovenian': 'Shrani podatke tarče',
|
|
},
|
|
'Training': {
|
|
'English': 'Training',
|
|
'Slovenian': 'Trening',
|
|
},
|
|
'Tournament': {
|
|
'English': 'Tournament',
|
|
'Slovenian': 'Tekmovanje',
|
|
},
|
|
'Last used folder': {
|
|
'English': 'Last used folder',
|
|
'Slovenian': 'Zadnja uporabljena mapa',
|
|
},
|
|
'New folder': {
|
|
'English': 'New folder',
|
|
'Slovenian': 'Nova mapa',
|
|
},
|
|
'Detection Preview': {
|
|
'English': 'Detection Preview',
|
|
'Slovenian': 'Predogled zaznave',
|
|
},
|
|
'Show Camera Detections': {
|
|
'English': 'Show Camera Detections',
|
|
'Slovenian': 'Prikaži zaznave kamere',
|
|
},
|
|
'Show Mapped Target': {
|
|
'English': 'Show Mapped Target',
|
|
'Slovenian': 'Prikaži preslikano tarčo',
|
|
},
|
|
|
|
// Book Screen
|
|
'Folder Settings': {
|
|
'English': 'Folder Settings',
|
|
'Slovenian': 'Nastavitve mape',
|
|
},
|
|
'Enter new folder name': {
|
|
'English': 'Enter new folder name',
|
|
'Slovenian': 'Vnesi novo ime mape',
|
|
},
|
|
'Tournament Mode 🏆': {
|
|
'English': 'Tournament Mode 🏆',
|
|
'Slovenian': 'Tekmovalni način 🏆',
|
|
},
|
|
'Mark as Tournament 🏆': {
|
|
'English': 'Mark as Tournament 🏆',
|
|
'Slovenian': 'Označi kot tekmovanje 🏆',
|
|
},
|
|
'Apply': {
|
|
'English': 'Apply',
|
|
'Slovenian': 'Uporabi',
|
|
},
|
|
'Confirm Deletion': {
|
|
'English': 'Confirm Deletion',
|
|
'Slovenian': 'Potrdi brisanje',
|
|
},
|
|
'Yes, delete': {
|
|
'English': 'Yes, delete',
|
|
'Slovenian': 'Da, izbriši',
|
|
},
|
|
'No targets in this folder': {
|
|
'English': 'No targets in this folder',
|
|
'Slovenian': 'V tej mapi ni tarč',
|
|
},
|
|
'Target': {
|
|
'English': 'Target',
|
|
'Slovenian': 'Tarča',
|
|
},
|
|
'Close': {
|
|
'English': 'Close',
|
|
'Slovenian': 'Zapri',
|
|
},
|
|
'Showing: 📂 All folders': {
|
|
'English': 'Showing: 📂 All folders',
|
|
'Slovenian': 'Prikaz: 📂 Vse mape',
|
|
},
|
|
'Showing: 🏆 Tournament folders': {
|
|
'English': 'Showing: 🏆 Tournament folders',
|
|
'Slovenian': 'Prikaz: 🏆 Tekmovalne mape',
|
|
},
|
|
'Showing: 🎯 Training folders': {
|
|
'English': 'Showing: 🎯 Training folders',
|
|
'Slovenian': 'Prikaz: 🎯 Treningske mape',
|
|
},
|
|
'No saved target data found': {
|
|
'English': 'No saved target data found',
|
|
'Slovenian': 'Ni shranjenih podatkov tarče',
|
|
},
|
|
'Filter Folders': {
|
|
'English': 'Filter Folders',
|
|
'Slovenian': 'Filtriraj mape',
|
|
},
|
|
'📂 All folders': {
|
|
'English': '📂 All folders',
|
|
'Slovenian': '📂 Vse mape',
|
|
},
|
|
'🏆 Tournament': {
|
|
'English': '🏆 Tournament',
|
|
'Slovenian': '🏆 Tekmovanje',
|
|
},
|
|
'🎯 Training': {
|
|
'English': '🎯 Training',
|
|
'Slovenian': '🎯 Trening',
|
|
},
|
|
'Sort By': {
|
|
'English': 'Sort By',
|
|
'Slovenian': 'Razvrsti po',
|
|
},
|
|
'📅 Sort by Date': {
|
|
'English': '📅 Sort by Date',
|
|
'Slovenian': '📅 Razvrsti po datumu',
|
|
},
|
|
'🏆 Sort by Score': {
|
|
'English': '🏆 Sort by Score',
|
|
'Slovenian': '🏆 Razvrsti po oceni',
|
|
},
|
|
|
|
// Navigation Menu
|
|
'Book': {
|
|
'English': 'Book',
|
|
'Slovenian': 'Knjiga',
|
|
},
|
|
'Shooting': {
|
|
'English': 'Shooting',
|
|
'Slovenian': 'Streljanje',
|
|
},
|
|
'Calendar': {
|
|
'English': 'Calendar',
|
|
'Slovenian': 'Koledar',
|
|
},
|
|
'Settings': {
|
|
'English': 'Settings',
|
|
'Slovenian': 'Nastavitve',
|
|
},
|
|
'Scan': {
|
|
'English': 'Scan',
|
|
'Slovenian': 'Skeniraj',
|
|
},
|
|
|
|
// Camera Screen
|
|
'Align the target inside the square': {
|
|
'English': 'Align the target inside the square',
|
|
'Slovenian': 'Poravnaj tarčo znotraj kvadrata',
|
|
},
|
|
'Select the number of bullets': {
|
|
'English': 'Select the number of bullets',
|
|
'Slovenian': 'Izberi število zadetkov',
|
|
},
|
|
|
|
// Book Screen - Preview
|
|
'Total score': {
|
|
'English': 'Total score',
|
|
'Slovenian': 'Rezultat:',
|
|
},
|
|
|
|
// Stream Screen (Camera View)
|
|
'Choose a Filter': {
|
|
'English': 'Choose a Filter',
|
|
'Slovenian': 'Izberi filter',
|
|
},
|
|
'None': {
|
|
'English': 'None',
|
|
'Slovenian': 'Brez',
|
|
},
|
|
'Greyscale': {
|
|
'English': 'Greyscale',
|
|
'Slovenian': 'Sivine',
|
|
},
|
|
'Invert': {
|
|
'English': 'Invert',
|
|
'Slovenian': 'Inverz',
|
|
},
|
|
'Processing image...': {
|
|
'English': 'Processing image...',
|
|
'Slovenian': 'Obdelava slike...',
|
|
},
|
|
'Unable to load camera stream': {
|
|
'English': 'Unable to load camera stream',
|
|
'Slovenian': 'Ni mogoče naložiti kamere',
|
|
},
|
|
|
|
// Mode Selection
|
|
'Select Detection Mode': {
|
|
'English': 'Select Detection Mode',
|
|
'Slovenian': 'Izberi način zaznavanja',
|
|
},
|
|
'Capture & Shoot': {
|
|
'English': 'Capture & Shoot',
|
|
'Slovenian': 'Zajemi in streljaj',
|
|
},
|
|
'Take single photo and detect bullets': {
|
|
'English': 'Take single photo and detect bullets',
|
|
'Slovenian': 'Zajemi fotografijo in zazna zadetke',
|
|
},
|
|
'Live Detection': {
|
|
'English': 'Live Detection',
|
|
'Slovenian': 'Živa zaznava',
|
|
},
|
|
'Continuous monitoring with real-time scoring': {
|
|
'English': 'Continuous monitoring with real-time scoring',
|
|
'Slovenian': 'Neprekinjeno spremljanje z ocenjevanjem v živo',
|
|
},
|
|
|
|
// Live Detection Screen
|
|
'Capture Baseline': {
|
|
'English': 'Capture Baseline',
|
|
'Slovenian': 'Zajemi osnovno sliko',
|
|
},
|
|
'Position target and capture empty baseline': {
|
|
'English': 'Position target and capture empty baseline',
|
|
'Slovenian': 'Postavi tarčo in zajemi prazno osnovno sliko',
|
|
},
|
|
'Start Detection': {
|
|
'English': 'Start Detection',
|
|
'Slovenian': 'Začni zaznavanje',
|
|
},
|
|
'Stop Detection': {
|
|
'English': 'Stop Detection',
|
|
'Slovenian': 'Ustavi zaznavanje',
|
|
},
|
|
'Bullets Detected': {
|
|
'English': 'Bullets Detected',
|
|
'Slovenian': 'Zaznani zadetki',
|
|
},
|
|
'Current Score': {
|
|
'English': 'Current Score',
|
|
'Slovenian': 'Trenutna ocena',
|
|
},
|
|
'Monitoring...': {
|
|
'English': 'Monitoring...',
|
|
'Slovenian': 'Spremljanje...',
|
|
},
|
|
'Save & Exit': {
|
|
'English': 'Save & Exit',
|
|
'Slovenian': 'Shrani in zapri',
|
|
},
|
|
'Capturing baseline...': {
|
|
'English': 'Capturing baseline...',
|
|
'Slovenian': 'Zajemanje osnove...',
|
|
},
|
|
'Baseline captured!': {
|
|
'English': 'Baseline captured!',
|
|
'Slovenian': 'Osnova zajeta!',
|
|
},
|
|
'Analyzing frame...': {
|
|
'English': 'Analyzing frame...',
|
|
'Slovenian': 'Analiza slike...',
|
|
},
|
|
'New bullet detected!': {
|
|
'English': 'New bullet detected!',
|
|
'Slovenian': 'Nov zadetek zaznan!',
|
|
},
|
|
'Calculate Score': {
|
|
'English': 'Calculate Score',
|
|
'Slovenian': 'Izračunaj rezultat',
|
|
},
|
|
'Target reached': {
|
|
'English': 'Target reached',
|
|
'Slovenian': 'Cilj dosežen',
|
|
},
|
|
'bullets': {
|
|
'English': 'bullets',
|
|
'Slovenian': 'zadetkov',
|
|
},
|
|
'Click Calculate Score to continue': {
|
|
'English': 'Click Calculate Score to continue',
|
|
'Slovenian': 'Kliknite Izračunaj rezultat za nadaljevanje',
|
|
},
|
|
|
|
// Delete confirmations
|
|
'Are you sure you want to delete this file?': {
|
|
'English': 'Are you sure you want to delete this file?',
|
|
'Slovenian': 'Ali ste prepričani, da želite izbrisati to datoteko?',
|
|
},
|
|
'Are you sure you want to delete this target?': {
|
|
'English': 'Are you sure you want to delete this target?',
|
|
'Slovenian': 'Ali ste prepričani, da želite izbrisati to tarčo?',
|
|
},
|
|
'Delete Target': {
|
|
'English': 'Delete Target',
|
|
'Slovenian': 'Izbriši tarčo',
|
|
},
|
|
'Are you sure you want to delete the folder': {
|
|
'English': 'Are you sure you want to delete the folder',
|
|
'Slovenian': 'Ali ste prepričani, da želite izbrisati mapo',
|
|
},
|
|
'and all of its contents?': {
|
|
'English': 'and all of its contents?',
|
|
'Slovenian': 'in vso njeno vsebino?',
|
|
},
|
|
|
|
// Help dialog translations
|
|
'Help': {
|
|
'English': 'Help',
|
|
'Slovenian': 'Pomoč',
|
|
},
|
|
'Tap camera button to capture and detect bullets': {
|
|
'English': 'Tap camera button to capture and detect bullets',
|
|
'Slovenian': 'Tapnite gumb kamere za zajem in zaznavanje zadetkov',
|
|
},
|
|
'Bottom left number: Set expected bullet count (1-5)': {
|
|
'English': 'Bottom left number: Set expected bullet count (1-5)',
|
|
'Slovenian': 'Spodaj levo številka: Nastavite število zadetkov (1-5)',
|
|
},
|
|
'Sun icon: Adjust brightness and contrast for better visibility': {
|
|
'English':
|
|
'Sun icon: Adjust brightness and contrast for better visibility',
|
|
'Slovenian':
|
|
'Ikona sonca: Prilagodite svetlost in kontrast za boljšo vidljivost',
|
|
},
|
|
'Filter icon: Apply color filters (None, Greyscale, Invert)': {
|
|
'English': 'Filter icon: Apply color filters (None, Greyscale, Invert)',
|
|
'Slovenian':
|
|
'Ikona filtra: Uporabite barvne filtre (Brez, Sivine, Inverzno)',
|
|
},
|
|
'Pinch to zoom on the camera stream': {
|
|
'English': 'Pinch to zoom on the camera stream',
|
|
'Slovenian': 'Povečajte s prstoma na video pretoku',
|
|
},
|
|
'Align target inside the square frame': {
|
|
'English': 'Align target inside the square frame',
|
|
'Slovenian': 'Poravnajte tarčo znotraj kvadratnega okvirja',
|
|
},
|
|
'Got it!': {
|
|
'English': 'Got it!',
|
|
'Slovenian': 'Razumem!',
|
|
},
|
|
|
|
// Brightness & Contrast dialog translations
|
|
'Brightness & Contrast': {
|
|
'English': 'Brightness & Contrast',
|
|
'Slovenian': 'Svetlost in kontrast',
|
|
},
|
|
'Brightness': {
|
|
'English': 'Brightness',
|
|
'Slovenian': 'Svetlost',
|
|
},
|
|
'Contrast': {
|
|
'English': 'Contrast',
|
|
'Slovenian': 'Kontrast',
|
|
},
|
|
'Reset': {
|
|
'English': 'Reset',
|
|
'Slovenian': 'Ponastavi',
|
|
},
|
|
'Done': {
|
|
'English': 'Done',
|
|
'Slovenian': 'Končano',
|
|
},
|
|
|
|
// Calendar Screen - New translations
|
|
'Contacts': {
|
|
'English': 'Contacts',
|
|
'Slovenian': 'Stiki',
|
|
},
|
|
'Could not launch phone call: ': {
|
|
'English': 'Could not launch phone call: ',
|
|
'Slovenian': 'Ne morem zagnati klica: ',
|
|
},
|
|
'League / Competition': {
|
|
'English': 'League / Competition',
|
|
'Slovenian': 'Liga / Tekmovanje',
|
|
},
|
|
'Team Meeting': {
|
|
'English': 'Team Meeting',
|
|
'Slovenian': 'Sestanek ekipe',
|
|
},
|
|
'Duty Shift': {
|
|
'English': 'Duty Shift',
|
|
'Slovenian': 'Dežurstvo',
|
|
},
|
|
'TEKMOVANJE': {
|
|
'English': 'COMPETITION',
|
|
'Slovenian': 'TEKMOVANJE',
|
|
},
|
|
'COMPETITION': {
|
|
'English': 'COMPETITION',
|
|
'Slovenian': 'TEKMOVANJE',
|
|
},
|
|
'SESTANEK': {
|
|
'English': 'MEETING',
|
|
'Slovenian': 'SESTANEK',
|
|
},
|
|
'MEETING': {
|
|
'English': 'MEETING',
|
|
'Slovenian': 'SESTANEK',
|
|
},
|
|
'Strelišče Ljubljana': {
|
|
'English': 'Shooting Range',
|
|
'Slovenian': 'Strelišče Ljubljana',
|
|
},
|
|
'Shooting Range': {
|
|
'English': 'Shooting Range',
|
|
'Slovenian': 'Strelišče Ljubljana',
|
|
},
|
|
'Phone': {
|
|
'English': 'Phone',
|
|
'Slovenian': 'Telefon',
|
|
},
|
|
'Email': {
|
|
'English': 'Email',
|
|
'Slovenian': 'Elektronska pošta',
|
|
},
|
|
'copied to clipboard': {
|
|
'English': 'copied to clipboard',
|
|
'Slovenian': 'kopirano v odložišče',
|
|
},
|
|
|
|
// App Update translations
|
|
'Update Available': {
|
|
'English': 'Update Available',
|
|
'Slovenian': 'Posodobitev je na voljo',
|
|
},
|
|
'A new version of the app is available': {
|
|
'English': 'A new version of the app is available',
|
|
'Slovenian': 'Nova različica aplikacije je na voljo',
|
|
},
|
|
'Update': {
|
|
'English': 'Update',
|
|
'Slovenian': 'Posodobi',
|
|
},
|
|
'Later': {
|
|
'English': 'Later',
|
|
'Slovenian': 'Kasneje',
|
|
},
|
|
|
|
// App Update Check Button
|
|
'Check for Updates': {
|
|
'English': 'Check for Updates',
|
|
'Slovenian': 'Preveri za posodobitve',
|
|
},
|
|
'No updates available': {
|
|
'English': 'No updates available',
|
|
'Slovenian': 'Ni dostopnih posodobitev',
|
|
},
|
|
'You are using the latest version': {
|
|
'English': 'You are using the latest version',
|
|
'Slovenian': 'Uporabljate najnovejšo različico',
|
|
},
|
|
'Updates': {
|
|
'English': 'Updates',
|
|
'Slovenian': 'Posodobitve',
|
|
},
|
|
'OK': {
|
|
'English': 'OK',
|
|
'Slovenian': 'V redu',
|
|
},
|
|
};
|
|
|
|
static String translate(String key, String language) {
|
|
if (translations.containsKey(key) &&
|
|
translations[key]!.containsKey(language)) {
|
|
return translations[key]![language]!;
|
|
}
|
|
return key; // Return the key itself if translation not found
|
|
}
|
|
}
|