Files
meshcore-sar_android/lib/l10n/app_localizations_el.dart
2026-03-08 20:34:38 +01:00

1712 lines
39 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';
// ignore_for_file: type=lint
/// The translations for Modern Greek (`el`).
class AppLocalizationsEl extends AppLocalizations {
AppLocalizationsEl([String locale = 'el']) : super(locale);
@override
String get appTitle => 'MeshCore SAR';
@override
String get messages => 'Messages';
@override
String get contacts => 'Contacts';
@override
String get map => 'Map';
@override
String get settings => 'Settings';
@override
String get connect => 'Connect';
@override
String get disconnect => 'Disconnect';
@override
String get noDevicesFound => 'No devices found';
@override
String get scanAgain => 'Scan Again';
@override
String get tapToConnect => 'Tap to connect';
@override
String get deviceNotConnected => 'Device not connected';
@override
String get locationPermissionDenied => 'Location permission denied';
@override
String get locationPermissionPermanentlyDenied =>
'Location permission permanently denied. Please enable in Settings.';
@override
String get locationPermissionRequired =>
'Location permission is required for GPS tracking and team coordination. You can enable it later in Settings.';
@override
String get locationServicesDisabled =>
'Location services are disabled. Please enable them in Settings.';
@override
String get failedToGetGpsLocation => 'Failed to get GPS location';
@override
String failedToAdvertise(String error) {
return 'Failed to advertise: $error';
}
@override
String get cancelReconnection => 'Cancel reconnection';
@override
String get general => 'General';
@override
String get theme => 'Theme';
@override
String get chooseTheme => 'Choose Theme';
@override
String get light => 'Light';
@override
String get dark => 'Dark';
@override
String get blueLightTheme => 'Blue light theme';
@override
String get blueDarkTheme => 'Blue dark theme';
@override
String get sarRed => 'SAR Red';
@override
String get alertEmergencyMode => 'Alert/Emergency mode';
@override
String get sarGreen => 'SAR Green';
@override
String get safeAllClearMode => 'Safe/All Clear mode';
@override
String get autoSystem => 'Auto (System)';
@override
String get followSystemTheme => 'Follow system theme';
@override
String get showRxTxIndicators => 'Show RX/TX Indicators';
@override
String get displayPacketActivity =>
'Display packet activity indicators in top bar';
@override
String get disableMap => 'Disable Map';
@override
String get disableMapDescription =>
'Hide the map tab to reduce battery usage';
@override
String get language => 'Language';
@override
String get chooseLanguage => 'Choose Language';
@override
String get save => 'Save';
@override
String get cancel => 'Cancel';
@override
String get close => 'Close';
@override
String get about => 'About';
@override
String get appVersion => 'App Version';
@override
String get appName => 'App Name';
@override
String get aboutMeshCoreSar => 'About MeshCore SAR';
@override
String get aboutDescription =>
'A Search & Rescue application designed for emergency response teams. Features include:\n\n• BLE mesh networking for device-to-device communication\n• Offline maps with multiple layer options\n• Real-time team member tracking\n• SAR tactical markers (found person, fire, staging)\n• Contact management and messaging\n• GPS tracking with compass heading\n• Map tile caching for offline use';
@override
String get technologiesUsed => 'Technologies Used:';
@override
String get technologiesList =>
'• Flutter for cross-platform development\n• BLE (Bluetooth Low Energy) for mesh networking\n• OpenStreetMap for mapping\n• Provider for state management\n• SharedPreferences for local storage';
@override
String get moreInfo => 'More Info';
@override
String get packageName => 'Package Name';
@override
String get sampleData => 'Sample Data';
@override
String get sampleDataDescription =>
'Load or clear sample contacts, channel messages, and SAR markers for testing';
@override
String get loadSampleData => 'Load Sample Data';
@override
String get clearAllData => 'Clear All Data';
@override
String get clearAllDataConfirmTitle => 'Clear All Data';
@override
String get clearAllDataConfirmMessage =>
'This will clear all contacts and SAR markers. Are you sure?';
@override
String get clear => 'Clear';
@override
String loadedSampleData(
int teamCount,
int channelCount,
int sarCount,
int messageCount,
) {
return 'Loaded $teamCount team members, $channelCount channels, $sarCount SAR markers, $messageCount messages';
}
@override
String failedToLoadSampleData(String error) {
return 'Failed to load sample data: $error';
}
@override
String get allDataCleared => 'All data cleared';
@override
String get failedToStartBackgroundTracking =>
'Failed to start background tracking. Check permissions and BLE connection.';
@override
String locationBroadcast(String latitude, String longitude) {
return 'Location broadcast: $latitude, $longitude';
}
@override
String get defaultPinInfo =>
'The default pin for devices without a screen is 123456. Trouble pairing? Forget the bluetooth device in system settings.';
@override
String get noMessagesYet => 'No messages yet';
@override
String get pullDownToSync => 'Pull down to sync messages';
@override
String get deleteContact => 'Delete Contact';
@override
String get delete => 'Delete';
@override
String get viewOnMap => 'View on Map';
@override
String get refresh => 'Refresh';
@override
String get resetPath => 'Reset Path (Re-route)';
@override
String get publicKeyCopied => 'Public key copied to clipboard';
@override
String copiedToClipboard(String label) {
return '$label copied to clipboard';
}
@override
String get pleaseEnterPassword => 'Please enter a password';
@override
String failedToSyncContacts(String error) {
return 'Failed to sync contacts: $error';
}
@override
String get loggedInSuccessfully =>
'Logged in successfully! Waiting for room messages...';
@override
String get loginFailed => 'Login failed - incorrect password';
@override
String loggingIn(String roomName) {
return 'Logging in to $roomName...';
}
@override
String failedToSendLogin(String error) {
return 'Failed to send login: $error';
}
@override
String get lowLocationAccuracy => 'Low Location Accuracy';
@override
String get continue_ => 'Continue';
@override
String get sendSarMarker => 'Send SAR marker';
@override
String get deleteDrawing => 'Delete Drawing';
@override
String get drawingTools => 'Drawing Tools';
@override
String get drawLine => 'Draw Line';
@override
String get drawLineDesc => 'Draw a freehand line on the map';
@override
String get drawRectangle => 'Draw Rectangle';
@override
String get drawRectangleDesc => 'Draw a rectangular area on the map';
@override
String get measureDistance => 'Measure Distance';
@override
String get measureDistanceDesc => 'Long press two points to measure';
@override
String get clearMeasurement => 'Clear Measurement';
@override
String distanceLabel(String distance) {
return 'Distance: $distance';
}
@override
String get longPressForSecondPoint => 'Long press for second point';
@override
String get longPressToStartMeasurement => 'Long press to set first point';
@override
String get longPressToStartNewMeasurement =>
'Long press to start new measurement';
@override
String get shareDrawings => 'Share Drawings';
@override
String get clearAllDrawings => 'Clear All Drawings';
@override
String get completeLine => 'Complete Line';
@override
String broadcastDrawingsToTeam(int count, String plural) {
return 'Broadcast $count drawing$plural to team';
}
@override
String removeAllDrawings(int count, String plural) {
return 'Remove all $count drawing$plural';
}
@override
String deleteAllDrawingsConfirm(int count, String plural) {
return 'Delete all $count drawing$plural from the map?';
}
@override
String get drawing => 'Drawing';
@override
String shareDrawingsCount(int count, String plural) {
return 'Share $count Drawing$plural';
}
@override
String get showReceivedDrawings => 'Show Received Drawings';
@override
String get showingAllDrawings => 'Showing all drawings';
@override
String get showingOnlyYourDrawings => 'Showing only your drawings';
@override
String get showSarMarkers => 'Show SAR Markers';
@override
String get showingSarMarkers => 'Showing SAR markers';
@override
String get hidingSarMarkers => 'Hiding SAR markers';
@override
String get clearAll => 'Clear All';
@override
String get publicChannel => 'Public Channel';
@override
String get broadcastToAll => 'Broadcast to all nearby nodes (ephemeral)';
@override
String get storedPermanently => 'Stored permanently in room';
@override
String get notConnectedToDevice => 'Not connected to device';
@override
String get typeYourMessage => 'Type your message...';
@override
String get quickLocationMarker => 'Quick location marker';
@override
String get markerType => 'Marker Type';
@override
String get sendTo => 'Send To';
@override
String get noDestinationsAvailable => 'No destinations available.';
@override
String get selectDestination => 'Select destination...';
@override
String get ephemeralBroadcastInfo =>
'Ephemeral: Broadcast over-the-air only. Not stored - nodes must be online.';
@override
String get persistentRoomInfo =>
'Persistent: Stored immutably in room. Synced automatically and preserved offline.';
@override
String get location => 'Location';
@override
String get fromMap => 'From Map';
@override
String get gettingLocation => 'Getting location...';
@override
String get locationError => 'Location Error';
@override
String get retry => 'Retry';
@override
String get refreshLocation => 'Refresh location';
@override
String accuracyMeters(int accuracy) {
return 'Accuracy: ±${accuracy}m';
}
@override
String get notesOptional => 'Notes (optional)';
@override
String get addAdditionalInformation => 'Add additional information...';
@override
String lowAccuracyWarning(int accuracy) {
return 'Location accuracy is ±${accuracy}m. This may not be accurate enough for SAR operations.\n\nContinue anyway?';
}
@override
String get loginToRoom => 'Login to Room';
@override
String get enterPasswordInfo =>
'Enter the password to access this room. The password will be saved for future use.';
@override
String get password => 'Password';
@override
String get enterRoomPassword => 'Enter room password';
@override
String get loggingInDots => 'Logging in...';
@override
String get login => 'Login';
@override
String failedToAddRoom(String error) {
return 'Failed to add room to device: $error\n\nThe room may not have advertised yet.\nTry waiting for the room to broadcast.';
}
@override
String get direct => 'Direct';
@override
String get flood => 'Flood';
@override
String get loggedIn => 'Logged In';
@override
String get noGpsData => 'No GPS data';
@override
String get distance => 'Distance';
@override
String directPingTimeout(String name) {
return 'Direct ping timeout - retrying $name with flooding...';
}
@override
String pingFailed(String name) {
return 'Ping failed to $name - no response received';
}
@override
String deleteContactConfirmation(String name) {
return 'Are you sure you want to delete \"$name\"?\n\nThis will remove the contact from both the app and the companion radio device.';
}
@override
String failedToRemoveContact(String error) {
return 'Failed to remove contact: $error';
}
@override
String get type => 'Type';
@override
String get publicKey => 'Public Key';
@override
String get lastSeen => 'Last Seen';
@override
String get roomStatus => 'Room Status';
@override
String get loginStatus => 'Login Status';
@override
String get notLoggedIn => 'Not Logged In';
@override
String get adminAccess => 'Admin Access';
@override
String get yes => 'Yes';
@override
String get no => 'No';
@override
String get permissions => 'Permissions';
@override
String get passwordSaved => 'Password Saved';
@override
String get locationColon => 'Location:';
@override
String get telemetry => 'Telemetry';
@override
String get voltage => 'Voltage';
@override
String get battery => 'Battery';
@override
String get temperature => 'Temperature';
@override
String get humidity => 'Humidity';
@override
String get pressure => 'Pressure';
@override
String get gpsTelemetry => 'GPS (Telemetry)';
@override
String get updated => 'Updated';
@override
String pathResetInfo(String name) {
return 'Path reset for $name. Next message will find a new route.';
}
@override
String get reLoginToRoom => 'Re-Login to Room';
@override
String get heading => 'Heading';
@override
String get elevation => 'Elevation';
@override
String get accuracy => 'Accuracy';
@override
String get bearing => 'Bearing';
@override
String get direction => 'Direction';
@override
String get filterMarkers => 'Filter Markers';
@override
String get filterMarkersTooltip => 'Filter markers';
@override
String get contactsFilter => 'Contacts';
@override
String get repeatersFilter => 'Repeaters';
@override
String get sarMarkers => 'SAR Markers';
@override
String get foundPerson => 'Found Person';
@override
String get fire => 'Fire';
@override
String get stagingArea => 'Staging Area';
@override
String get showAll => 'Show All';
@override
String get locationUnavailable => 'Location unavailable';
@override
String get ahead => 'ahead';
@override
String degreesRight(int degrees) {
return '$degrees° right';
}
@override
String degreesLeft(int degrees) {
return '$degrees° left';
}
@override
String latLonFormat(String latitude, String longitude) {
return 'Lat: $latitude Lon: $longitude';
}
@override
String get noContactsYet => 'No contacts yet';
@override
String get connectToDeviceToLoadContacts =>
'Connect to a device to load contacts';
@override
String get teamMembers => 'Team Members';
@override
String get repeaters => 'Repeaters';
@override
String get rooms => 'Rooms';
@override
String get channels => 'Channels';
@override
String get selectMapLayer => 'Select Map Layer';
@override
String get openStreetMap => 'OpenStreetMap';
@override
String get openTopoMap => 'OpenTopoMap';
@override
String get esriSatellite => 'ESRI Satellite';
@override
String get googleHybrid => 'Google Hybrid';
@override
String get googleRoadmap => 'Google Roadmap';
@override
String get googleTerrain => 'Google Terrain';
@override
String get dragToPosition => 'Drag to Position';
@override
String get createSarMarker => 'Create SAR Marker';
@override
String get compass => 'Compass';
@override
String get navigationAndContacts => 'Navigation & Contacts';
@override
String get sarAlert => 'SAR ALERT';
@override
String get textCopiedToClipboard => 'Text copied to clipboard';
@override
String get cannotReplySenderMissing =>
'Cannot reply: sender information missing';
@override
String get cannotReplyContactNotFound => 'Cannot reply: contact not found';
@override
String get copyText => 'Copy text';
@override
String get saveAsTemplate => 'Save as Template';
@override
String get templateSaved => 'Template saved successfully';
@override
String get templateAlreadyExists => 'Template with this emoji already exists';
@override
String get deleteMessage => 'Delete message';
@override
String get deleteMessageConfirmation =>
'Are you sure you want to delete this message?';
@override
String get shareLocation => 'Share location';
@override
String shareLocationText(
String markerInfo,
String lat,
String lon,
String url,
) {
return '$markerInfo\n\nCoordinates: $lat, $lon\n\nGoogle Maps: $url';
}
@override
String get sarLocationShare => 'SAR Location';
@override
String get justNow => 'Just now';
@override
String minutesAgo(int minutes) {
return '${minutes}m ago';
}
@override
String hoursAgo(int hours) {
return '${hours}h ago';
}
@override
String daysAgo(int days) {
return '${days}d ago';
}
@override
String secondsAgo(int seconds) {
return '${seconds}s ago';
}
@override
String get sending => 'Sending...';
@override
String get sent => 'Sent';
@override
String get delivered => 'Delivered';
@override
String deliveredWithTime(int time) {
return 'Delivered (${time}ms)';
}
@override
String get failed => 'Failed';
@override
String get broadcast => 'Broadcast';
@override
String deliveredToContacts(int delivered, int total) {
return 'Delivered to $delivered/$total contacts';
}
@override
String get allDelivered => 'All delivered';
@override
String get recipientDetails => 'Recipient Details';
@override
String get pending => 'Pending';
@override
String get sarMarkerFoundPerson => 'Found Person';
@override
String get sarMarkerFire => 'Fire Location';
@override
String get sarMarkerStagingArea => 'Staging Area';
@override
String get sarMarkerObject => 'Object Found';
@override
String get from => 'From';
@override
String get coordinates => 'Coordinates';
@override
String get tapToViewOnMap => 'Tap to view on map';
@override
String get radioSettings => 'Radio Settings';
@override
String get frequencyMHz => 'Frequency (MHz)';
@override
String get frequencyExample => 'e.g., 869.618';
@override
String get bandwidth => 'Bandwidth';
@override
String get spreadingFactor => 'Spreading Factor';
@override
String get codingRate => 'Coding Rate';
@override
String get txPowerDbm => 'TX Power (dBm)';
@override
String maxPowerDbm(int power) {
return 'Max: $power dBm';
}
@override
String get you => 'You';
@override
String exportFailed(String error) {
return 'Export failed: $error';
}
@override
String importFailed(String error) {
return 'Import failed: $error';
}
@override
String get unknown => 'Unknown';
@override
String get onlineLayers => 'Online Layers';
@override
String get locationTrail => 'Location Trail';
@override
String get showTrailOnMap => 'Show Trail on Map';
@override
String get trailVisible => 'Trail is visible on the map';
@override
String get trailHiddenRecording => 'Trail is hidden (still recording)';
@override
String get duration => 'Duration';
@override
String get points => 'Points';
@override
String get clearTrail => 'Clear Trail';
@override
String get clearTrailQuestion => 'Clear Trail?';
@override
String get clearTrailConfirmation =>
'Are you sure you want to clear the current location trail? This action cannot be undone.';
@override
String get noTrailRecorded => 'No trail recorded yet';
@override
String get startTrackingToRecord =>
'Start location tracking to record your trail';
@override
String get trailControls => 'Trail Controls';
@override
String get contactTrails => 'Contact Trails';
@override
String get showAllContactTrails => 'Show All Contact Trails';
@override
String get noContactsWithLocationHistory =>
'No contacts with location history';
@override
String showingTrailsForContacts(int count) {
return 'Showing trails for $count contacts';
}
@override
String get individualContactTrails => 'Individual Contact Trails';
@override
String get deviceInformation => 'Device Information';
@override
String get bleName => 'BLE Name';
@override
String get meshName => 'Mesh Name';
@override
String get notSet => 'Not set';
@override
String get model => 'Model';
@override
String get version => 'Version';
@override
String get buildDate => 'Build Date';
@override
String get firmware => 'Firmware';
@override
String get maxContacts => 'Max Contacts';
@override
String get maxChannels => 'Max Channels';
@override
String get publicInfo => 'Public Info';
@override
String get meshNetworkName => 'Mesh Network Name';
@override
String get nameBroadcastInMesh => 'Name broadcast in mesh advertisements';
@override
String get telemetryAndLocationSharing => 'Telemetry & Location Sharing';
@override
String get lat => 'Lat';
@override
String get lon => 'Lon';
@override
String get useCurrentLocation => 'Use current location';
@override
String get noneUnknown => 'None/Unknown';
@override
String get chatNode => 'Chat Node';
@override
String get repeater => 'Repeater';
@override
String get roomChannel => 'Room/Channel';
@override
String typeNumber(int number) {
return 'Type $number';
}
@override
String copiedToClipboardShort(String label) {
return 'Copied $label to clipboard';
}
@override
String failedToSave(String error) {
return 'Failed to save: $error';
}
@override
String failedToGetLocation(String error) {
return 'Failed to get location: $error';
}
@override
String get sarTemplates => 'SAR Templates';
@override
String get manageSarTemplates => 'Manage cursor on target templates';
@override
String get addTemplate => 'Add Template';
@override
String get editTemplate => 'Edit Template';
@override
String get deleteTemplate => 'Delete Template';
@override
String get templateName => 'Template Name';
@override
String get templateNameHint => 'e.g. Found Person';
@override
String get templateEmoji => 'Emoji';
@override
String get emojiRequired => 'Emoji is required';
@override
String get nameRequired => 'Name is required';
@override
String get templateDescription => 'Description (Optional)';
@override
String get templateDescriptionHint => 'Add additional context...';
@override
String get templateColor => 'Color';
@override
String get previewFormat => 'Preview (SAR Message Format)';
@override
String get importFromClipboard => 'Import';
@override
String get exportToClipboard => 'Export';
@override
String deleteTemplateConfirmation(String name) {
return 'Delete template \'$name\'?';
}
@override
String get templateAdded => 'Template added';
@override
String get templateUpdated => 'Template updated';
@override
String get templateDeleted => 'Template deleted';
@override
String templatesImported(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Imported $count templates',
one: 'Imported 1 template',
zero: 'No templates imported',
);
return '$_temp0';
}
@override
String templatesExported(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Exported $count templates to clipboard',
one: 'Exported 1 template to clipboard',
);
return '$_temp0';
}
@override
String get resetToDefaults => 'Reset to Defaults';
@override
String get resetToDefaultsConfirmation =>
'This will delete all custom templates and restore the 4 default templates. Continue?';
@override
String get reset => 'Reset';
@override
String get resetComplete => 'Templates reset to defaults';
@override
String get noTemplates => 'No templates available';
@override
String get tapAddToCreate => 'Tap + to create your first template';
@override
String get ok => 'OK';
@override
String get permissionsSection => 'Permissions';
@override
String get locationPermission => 'Location Permission';
@override
String get checking => 'Checking...';
@override
String get locationPermissionGrantedAlways => 'Granted (Always)';
@override
String get locationPermissionGrantedWhileInUse => 'Granted (While In Use)';
@override
String get locationPermissionDeniedTapToRequest => 'Denied - Tap to request';
@override
String get locationPermissionPermanentlyDeniedOpenSettings =>
'Permanently Denied - Open Settings';
@override
String get locationPermissionDialogContent =>
'Location permission is permanently denied. Please enable it in your device settings to use GPS tracking and location sharing features.';
@override
String get openSettings => 'Open Settings';
@override
String get locationPermissionGranted => 'Location permission granted!';
@override
String get locationPermissionRequiredForGps =>
'Location permission is required for GPS tracking and location sharing.';
@override
String get locationPermissionAlreadyGranted =>
'Location permission is already granted.';
@override
String get sarNavyBlue => 'SAR Navy Blue';
@override
String get sarNavyBlueDescription => 'Professional/Operations Mode';
@override
String get selectRecipient => 'Select Recipient';
@override
String get broadcastToAllNearby => 'Broadcast to all nearby';
@override
String get searchRecipients => 'Search recipients...';
@override
String get noContactsFound => 'No contacts found';
@override
String get noRoomsFound => 'No rooms found';
@override
String get noRecipientsAvailable => 'No recipients available';
@override
String get noChannelsFound => 'No channels found';
@override
String get newMessage => 'New message';
@override
String get channel => 'Channel';
@override
String get samplePoliceLead => 'Police Lead';
@override
String get sampleDroneOperator => 'Drone Operator';
@override
String get sampleFirefighterAlpha => 'Firefighter';
@override
String get sampleMedicCharlie => 'Medic';
@override
String get sampleCommandDelta => 'Command';
@override
String get sampleFireEngine => 'Fire Engine';
@override
String get sampleAirSupport => 'Air Support';
@override
String get sampleBaseCoordinator => 'Base Coordinator';
@override
String get channelEmergency => 'Emergency';
@override
String get channelCoordination => 'Coordination';
@override
String get channelUpdates => 'Updates';
@override
String get sampleTeamMember => 'Sample Team Member';
@override
String get sampleScout => 'Sample Scout';
@override
String get sampleBase => 'Sample Base';
@override
String get sampleSearcher => 'Sample Searcher';
@override
String get sampleObjectBackpack => ' Backpack found - blue color';
@override
String get sampleObjectVehicle => ' Vehicle abandoned - check for owner';
@override
String get sampleObjectCamping => ' Camping equipment discovered';
@override
String get sampleObjectTrailMarker => ' Trail marker found off-path';
@override
String get sampleMsgAllTeamsCheckIn => 'All teams check in';
@override
String get sampleMsgWeatherUpdate => 'Weather update: Clear skies, temp 18°C';
@override
String get sampleMsgBaseCamp => 'Base camp established at staging area';
@override
String get sampleMsgTeamAlpha => 'Team moving to sector 2';
@override
String get sampleMsgRadioCheck => 'Radio check - all stations respond';
@override
String get sampleMsgWaterSupply => 'Water supply available at checkpoint 3';
@override
String get sampleMsgTeamBravo => 'Team reporting: sector 1 clear';
@override
String get sampleMsgEtaRallyPoint => 'ETA to rally point: 15 minutes';
@override
String get sampleMsgSupplyDrop => 'Supply drop confirmed for 14:00';
@override
String get sampleMsgDroneSurvey => 'Drone survey completed - no findings';
@override
String get sampleMsgTeamCharlie => 'Team requesting backup';
@override
String get sampleMsgRadioDiscipline => 'All units: maintain radio discipline';
@override
String get sampleMsgUrgentMedical =>
'URGENT: Medical assistance needed at sector 4';
@override
String get sampleMsgAdultMale => ' Adult male, conscious';
@override
String get sampleMsgFireSpotted => 'Fire spotted - coordinates incoming';
@override
String get sampleMsgSpreadingRapidly => ' Spreading rapidly!';
@override
String get sampleMsgPriorityHelicopter => 'PRIORITY: Need helicopter support';
@override
String get sampleMsgMedicalTeamEnRoute =>
'Medical team en route to your location';
@override
String get sampleMsgEvacHelicopter => 'Evac helicopter ETA 10 minutes';
@override
String get sampleMsgEmergencyResolved => 'Emergency resolved - all clear';
@override
String get sampleMsgEmergencyStagingArea => ' Emergency staging area';
@override
String get sampleMsgEmergencyServices =>
'Emergency services notified and responding';
@override
String get sampleAlphaTeamLead => 'Team Lead';
@override
String get sampleBravoScout => 'Scout';
@override
String get sampleCharlieMedic => 'Medic';
@override
String get sampleDeltaNavigator => 'Navigator';
@override
String get sampleEchoSupport => 'Support';
@override
String get sampleBaseCommand => 'Base Command';
@override
String get sampleFieldCoordinator => 'Field Coordinator';
@override
String get sampleMedicalTeam => 'Medical Team';
@override
String get mapDrawing => 'Map Drawing';
@override
String get navigateToDrawing => 'Navigate to Drawing';
@override
String get copyCoordinates => 'Copy Coordinates';
@override
String get hideFromMap => 'Hide from Map';
@override
String get lineDrawing => 'Line Drawing';
@override
String get rectangleDrawing => 'Rectangle Drawing';
@override
String get manualCoordinates => 'Manual Coordinates';
@override
String get enterCoordinatesManually => 'Enter coordinates manually';
@override
String get latitudeLabel => 'Latitude';
@override
String get longitudeLabel => 'Longitude';
@override
String get exampleCoordinates => 'Example: 46.0569, 14.5058';
@override
String get shareDrawing => 'Share Drawing';
@override
String get shareWithAllNearbyDevices => 'Share with all nearby devices';
@override
String get shareToRoom => 'Share to Room';
@override
String get sendToPersistentStorage => 'Send to persistent room storage';
@override
String get deleteDrawingConfirm =>
'Are you sure you want to delete this drawing?';
@override
String get drawingDeleted => 'Drawing deleted';
@override
String yourDrawingsCount(int count) {
return 'Your Drawings ($count)';
}
@override
String get shared => 'Shared';
@override
String get line => 'Line';
@override
String get rectangle => 'Rectangle';
@override
String get updateAvailable => 'Update Available';
@override
String get currentVersion => 'Current';
@override
String get latestVersion => 'Latest';
@override
String get downloadUpdate => 'Download';
@override
String get updateLater => 'Later';
@override
String get cadastralParcels => 'Cadastral Parcels';
@override
String get forestRoads => 'Forest Roads';
@override
String get wmsOverlays => 'WMS Overlays';
@override
String get hikingTrails => 'Hiking Trails';
@override
String get mainRoads => 'Main Roads';
@override
String get houseNumbers => 'House Numbers';
@override
String get fireHazardZones => 'Fire Hazard Zones';
@override
String get historicalFires => 'Historical Fires';
@override
String get firebreaks => 'Firebreaks';
@override
String get krasFireZones => 'Kras Fire Zones';
@override
String get placeNames => 'Place Names';
@override
String get municipalityBorders => 'Municipality Borders';
@override
String get topographicMap => 'Topographic Map 1:25000';
@override
String get recentMessages => 'Recent Messages';
@override
String get addChannel => 'Add Channel';
@override
String get channelName => 'Channel Name';
@override
String get channelNameHint => 'e.g., Rescue Team Alpha';
@override
String get channelSecret => 'Channel Secret';
@override
String get channelSecretHint => 'Shared password for this channel';
@override
String get channelSecretHelp =>
'This secret must be shared with all team members who need access to this channel';
@override
String get channelTypesInfo =>
'Hash channels (#team): Secret auto-generated from name. Same name = same channel across devices.\n\nPrivate channels: Use explicit secret. Only those with the secret can join.';
@override
String get hashChannelInfo =>
'Hash channel: Secret will be auto-generated from the channel name. Anyone using the same name will join the same channel.';
@override
String get channelNameRequired => 'Channel name is required';
@override
String get channelNameTooLong => 'Channel name must be 31 characters or less';
@override
String get channelSecretRequired => 'Channel secret is required';
@override
String get channelSecretTooLong =>
'Channel secret must be 32 characters or less';
@override
String get invalidAsciiCharacters => 'Only ASCII characters are allowed';
@override
String get channelCreatedSuccessfully => 'Channel created successfully';
@override
String channelCreationFailed(String error) {
return 'Failed to create channel: $error';
}
@override
String get deleteChannel => 'Delete Channel';
@override
String deleteChannelConfirmation(String channelName) {
return 'Are you sure you want to delete channel \"$channelName\"? This action cannot be undone.';
}
@override
String get channelDeletedSuccessfully => 'Channel deleted successfully';
@override
String channelDeletionFailed(String error) {
return 'Failed to delete channel: $error';
}
@override
String get createChannel => 'Create Channel';
@override
String get wizardBack => 'Back';
@override
String get wizardSkip => 'Skip';
@override
String get wizardNext => 'Next';
@override
String get wizardGetStarted => 'Get Started';
@override
String get wizardWelcomeTitle => 'Welcome to MeshCore SAR';
@override
String get wizardWelcomeDescription =>
'A powerful off-grid communication tool for search and rescue operations. Connect with your team using mesh radio technology when traditional networks are unavailable.';
@override
String get wizardConnectingTitle => 'Connecting to Your Radio';
@override
String get wizardConnectingDescription =>
'Connect your smartphone to a MeshCore radio device via Bluetooth to start communicating off-grid.';
@override
String get wizardConnectingFeature1 => 'Scan for nearby MeshCore devices';
@override
String get wizardConnectingFeature2 => 'Pair with your radio via Bluetooth';
@override
String get wizardConnectingFeature3 =>
'Works completely offline - no internet required';
@override
String get wizardChannelTitle => 'Channels';
@override
String get wizardChannelDescription =>
'Broadcast messages to everyone on a channel, perfect for team-wide announcements and coordination.';
@override
String get wizardChannelFeature1 =>
'Public Channel for general team communication';
@override
String get wizardChannelFeature2 =>
'Create custom channels for specific groups';
@override
String get wizardChannelFeature3 =>
'Messages are automatically relayed by the mesh';
@override
String get wizardContactsTitle => 'Contacts';
@override
String get wizardContactsDescription =>
'Your team members appear automatically as they join the mesh network. Send them direct messages or view their location.';
@override
String get wizardContactsFeature1 => 'Contacts discovered automatically';
@override
String get wizardContactsFeature2 => 'Send private direct messages';
@override
String get wizardContactsFeature3 => 'View battery level and last seen time';
@override
String get wizardMapTitle => 'Map & Location';
@override
String get wizardMapDescription =>
'Track your team in real-time and mark important locations for search and rescue operations.';
@override
String get wizardMapFeature1 =>
'SAR markers for found persons, fires, and staging areas';
@override
String get wizardMapFeature2 => 'Real-time GPS tracking of team members';
@override
String get wizardMapFeature3 => 'Download offline maps for remote areas';
@override
String get wizardMapFeature4 => 'Draw shapes and share tactical information';
@override
String get viewWelcomeTutorial => 'View Welcome Tutorial';
@override
String get allTeamContacts => 'All Team Contacts';
@override
String directMessagesInfo(int count) {
return 'Direct messages with ACKs. Sent to $count team members.';
}
@override
String sarMarkerSentToContacts(int count) {
return 'SAR marker sent to $count contacts';
}
@override
String get noContactsAvailable => 'No team contacts available';
@override
String get reply => 'Απάντηση';
@override
String get technicalDetails => 'Τεχνικές λεπτομέρειες';
@override
String get messageTechnicalDetails => 'Τεχνικές λεπτομέρειες μηνύματος';
@override
String get linkQuality => 'Ποιότητα σύνδεσης';
@override
String get delivery => 'Παράδοση';
@override
String get status => 'Κατάσταση';
@override
String get expectedAckTag => 'Αναμενόμενη ετικέτα ACK';
@override
String get roundTrip => 'Χρόνος μετ\' επιστροφής';
@override
String get retryAttempt => 'Απόπειρα επανάληψης';
@override
String get floodFallback => 'Εφεδρική πλημμύρα';
@override
String get identity => 'Ταυτότητα';
@override
String get messageId => 'Αναγνωριστικό μηνύματος';
@override
String get sender => 'Αποστολέας';
@override
String get senderKey => 'Κλειδί αποστολέα';
@override
String get recipient => 'Παραλήπτης';
@override
String get recipientKey => 'Κλειδί παραλήπτη';
@override
String get voice => 'Φωνή';
@override
String get voiceId => 'Αναγνωριστικό φωνής';
@override
String get envelope => 'Φάκελος';
@override
String get sessionProgress => 'Πρόοδος συνεδρίας';
@override
String get complete => 'Ολοκληρώθηκε';
@override
String get rawDump => 'Ακατέργαστα δεδομένα';
@override
String get cannotRetryMissingRecipient =>
'Δεν είναι δυνατή η επανάληψη: λείπουν πληροφορίες παραλήπτη';
@override
String get voiceUnavailable => 'Η φωνή δεν είναι διαθέσιμη αυτή τη στιγμή';
@override
String get requestingVoice => 'Αίτηση φωνής';
}