Objavljen izvor
Preuzmi ZIP izvora
CH-J SM Mobile
Pregledaj direktorije i datoteke za određeni programski izdanje.
CH-J / SM Mobile
134 datoteke
sm-mobile-20261016T050549Z-3678f2a05fa9
Dodano: · Izgrađeno:
1
import 'dart:async';3
import 'package:flutter/foundation.dart';4
import 'package:flutter/widgets.dart';5
import 'package:flutter_localizations/flutter_localizations.dart';6
import 'package:intl/intl.dart' as intl;8
import 'app_localizations_cs.dart';9
import 'app_localizations_de.dart';10
import 'app_localizations_en.dart';12
// ignore_for_file: type=lint14
/// Callers can lookup localized strings with an instance of AppLocalizations15
/// returned by `AppLocalizations.of(context)`.16
///17
/// Applications need to include `AppLocalizations.delegate()` in their app's18
/// `localizationDelegates` list, and the locales they support in the app's19
/// `supportedLocales` list. For example:20
///21
/// ```dart22
/// import 'l10n/app_localizations.dart';23
///24
/// return MaterialApp(25
/// localizationsDelegates: AppLocalizations.localizationsDelegates,26
/// supportedLocales: AppLocalizations.supportedLocales,27
/// home: MyApplicationHome(),28
/// );29
/// ```30
///31
/// ## Update pubspec.yaml32
///33
/// Please make sure to update your pubspec.yaml to include the following34
/// packages:35
///36
/// ```yaml37
/// dependencies:38
/// # Internationalization support.39
/// flutter_localizations:40
/// sdk: flutter41
/// intl: any # Use the pinned version from flutter_localizations42
///43
/// # Rest of dependencies44
/// ```45
///46
/// ## iOS Applications47
///48
/// iOS applications define key application metadata, including supported49
/// locales, in an Info.plist file that is built into the application bundle.50
/// To configure the locales supported by your app, you’ll need to edit this51
/// file.52
///53
/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file.54
/// Then, in the Project Navigator, open the Info.plist file under the Runner55
/// project’s Runner folder.56
///57
/// Next, select the Information Property List item, select Add Item from the58
/// Editor menu, then select Localizations from the pop-up menu.59
///60
/// Select and expand the newly-created Localizations item then, for each61
/// locale your application supports, add a new item and select the locale62
/// you wish to add from the pop-up menu in the Value field. This list should63
/// be consistent with the languages listed in the AppLocalizations.supportedLocales64
/// property.65
abstract class AppLocalizations {66
AppLocalizations(String locale)67
: localeName = intl.Intl.canonicalizedLocale(locale.toString());69
final String localeName;71
static AppLocalizations? of(BuildContext context) {72
return Localizations.of<AppLocalizations>(context, AppLocalizations);73
}75
static const LocalizationsDelegate<AppLocalizations> delegate =76
_AppLocalizationsDelegate();78
/// A list of this localizations delegate along with the default localizations79
/// delegates.80
///81
/// Returns a list of localizations delegates containing this delegate along with82
/// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,83
/// and GlobalWidgetsLocalizations.delegate.84
///85
/// Additional delegates can be added by appending to this list in86
/// MaterialApp. This list does not have to be used at all if a custom list87
/// of delegates is preferred or required.88
static const List<LocalizationsDelegate<dynamic>> localizationsDelegates =89
<LocalizationsDelegate<dynamic>>[90
delegate,91
GlobalMaterialLocalizations.delegate,92
GlobalCupertinoLocalizations.delegate,93
GlobalWidgetsLocalizations.delegate,94
];96
/// A list of this localizations delegate's supported locales.97
static const List<Locale> supportedLocales = <Locale>[98
Locale('cs'),99
Locale('de'),100
Locale('en'),101
];103
/// No description provided for @servers.104
///105
/// In en, this message translates to:106
/// **'Servers'**107
String get servers;109
/// No description provided for @terminal.110
///111
/// In en, this message translates to:112
/// **'Terminal'**113
String get terminal;115
/// No description provided for @files.116
///117
/// In en, this message translates to:118
/// **'Files'**119
String get files;121
/// No description provided for @monitor.122
///123
/// In en, this message translates to:124
/// **'Monitor'**125
String get monitor;127
/// No description provided for @diagnostics.128
///129
/// In en, this message translates to:130
/// **'Diagnostics'**131
String get diagnostics;133
/// No description provided for @settings.134
///135
/// In en, this message translates to:136
/// **'Settings'**137
String get settings;139
/// No description provided for @addServer.140
///141
/// In en, this message translates to:142
/// **'Add server'**143
String get addServer;145
/// No description provided for @editServer.146
///147
/// In en, this message translates to:148
/// **'Edit server'**149
String get editServer;151
/// No description provided for @name.152
///153
/// In en, this message translates to:154
/// **'Name'**155
String get name;157
/// No description provided for @host.158
///159
/// In en, this message translates to:160
/// **'Hostname / IP address'**161
String get host;163
/// No description provided for @username.164
///165
/// In en, this message translates to:166
/// **'SSH username'**167
String get username;169
/// No description provided for @port.170
///171
/// In en, this message translates to:172
/// **'SSH port'**173
String get port;175
/// No description provided for @password.176
///177
/// In en, this message translates to:178
/// **'Password'**179
String get password;181
/// No description provided for @privateKey.182
///183
/// In en, this message translates to:184
/// **'Private key'**185
String get privateKey;187
/// No description provided for @passphrase.188
///189
/// In en, this message translates to:190
/// **'Key passphrase (never saved)'**191
String get passphrase;193
/// No description provided for @savePassword.194
///195
/// In en, this message translates to:196
/// **'Save SSH password in Vault'**197
String get savePassword;199
/// No description provided for @chooseKey.200
///201
/// In en, this message translates to:202
/// **'Choose private key'**203
String get chooseKey;205
/// No description provided for @keyStored.206
///207
/// In en, this message translates to:208
/// **'Private key stored securely'**209
String get keyStored;211
/// No description provided for @connect.212
///213
/// In en, this message translates to:214
/// **'Connect'**215
String get connect;217
/// No description provided for @disconnect.218
///219
/// In en, this message translates to:220
/// **'Disconnect'**221
String get disconnect;223
/// No description provided for @connecting.224
///225
/// In en, this message translates to:226
/// **'Connecting…'**227
String get connecting;229
/// No description provided for @connected.230
///231
/// In en, this message translates to:232
/// **'Connected'**233
String get connected;235
/// No description provided for @disconnected.236
///237
/// In en, this message translates to:238
/// **'Disconnected'**239
String get disconnected;241
/// No description provided for @reconnect.242
///243
/// In en, this message translates to:244
/// **'Reconnect'**245
String get reconnect;247
/// No description provided for @search.248
///249
/// In en, this message translates to:250
/// **'Search servers'**251
String get search;253
/// No description provided for @emptyServers.254
///255
/// In en, this message translates to:256
/// **'Add your first server. Profiles stay on this device.'**257
String get emptyServers;259
/// No description provided for @selectServer.260
///261
/// In en, this message translates to:262
/// **'Connect to a server from Servers.'**263
String get selectServer;265
/// No description provided for @save.266
///267
/// In en, this message translates to:268
/// **'Save'**269
String get save;271
/// No description provided for @cancel.272
///273
/// In en, this message translates to:274
/// **'Cancel'**275
String get cancel;277
/// No description provided for @delete.278
///279
/// In en, this message translates to:280
/// **'Delete'**281
String get delete;283
/// No description provided for @duplicate.284
///285
/// In en, this message translates to:286
/// **'Duplicate'**287
String get duplicate;289
/// No description provided for @edit.290
///291
/// In en, this message translates to:292
/// **'Edit'**293
String get edit;295
/// No description provided for @confirmDelete.296
///297
/// In en, this message translates to:298
/// **'Delete this item? This action cannot be undone.'**299
String get confirmDelete;301
/// No description provided for @confirmRename.302
///303
/// In en, this message translates to:304
/// **'Rename the selected remote item?'**305
String get confirmRename;307
/// No description provided for @hostTrustTitle.308
///309
/// In en, this message translates to:310
/// **'Verify server identity'**311
String get hostTrustTitle;313
/// No description provided for @hostTrustBody.314
///315
/// In en, this message translates to:316
/// **'Compare this SHA-256 fingerprint through a separate trusted channel before trusting this server.'**317
String get hostTrustBody;319
/// No description provided for @trust.320
///321
/// In en, this message translates to:322
/// **'Trust this key'**323
String get trust;325
/// No description provided for @hostChanged.326
///327
/// In en, this message translates to:328
/// **'SECURITY: The saved SSH host key has changed. Connection blocked. Verify the server independently.'**329
String get hostChanged;331
/// No description provided for @hostRejected.332
///333
/// In en, this message translates to:334
/// **'The SSH host key was not trusted.'**335
String get hostRejected;337
/// No description provided for @language.338
///339
/// In en, this message translates to:340
/// **'Language'**341
String get language;343
/// No description provided for @system.344
///345
/// In en, this message translates to:346
/// **'System'**347
String get system;349
/// No description provided for @light.350
///351
/// In en, this message translates to:352
/// **'Light'**353
String get light;355
/// No description provided for @dark.356
///357
/// In en, this message translates to:358
/// **'Dark'**359
String get dark;361
/// No description provided for @theme.362
///363
/// In en, this message translates to:364
/// **'Appearance'**365
String get theme;367
/// No description provided for @welcome.368
///369
/// In en, this message translates to:370
/// **'Welcome to SM Mobile'**371
String get welcome;373
/// No description provided for @localOnly.374
///375
/// In en, this message translates to:376
/// **'Direct SSH / SFTP. No account, cloud or telemetry.'**377
String get localOnly;379
/// No description provided for @guidance.380
///381
/// In en, this message translates to:382
/// **'Operational safety and backups'**383
String get guidance;385
/// No description provided for @continueAction.386
///387
/// In en, this message translates to:388
/// **'Continue'**389
String get continueAction;391
/// No description provided for @license.392
///393
/// In en, this message translates to:394
/// **'Software license'**395
String get license;397
/// No description provided for @consent.398
///399
/// In en, this message translates to:400
/// **'I accept CH-J Proprietary Software License 1.14. I acknowledge the risk of data loss or corruption and the need for appropriate backups before risky operations. The app does not guarantee that backups exist or are recoverable.'**401
String get consent;403
/// No description provided for @accept.404
///405
/// In en, this message translates to:406
/// **'Accept and continue'**407
String get accept;409
/// No description provided for @decline.410
///411
/// In en, this message translates to:412
/// **'Decline'**413
String get decline;415
/// No description provided for @licenseDeclined.416
///417
/// In en, this message translates to:418
/// **'The license was declined. Server functions remain locked.'**419
String get licenseDeclined;421
/// No description provided for @vault.422
///423
/// In en, this message translates to:424
/// **'Local Vault'**425
String get vault;427
/// No description provided for @createVault.428
///429
/// In en, this message translates to:430
/// **'Create secure Vault'**431
String get createVault;433
/// No description provided for @masterPassword.434
///435
/// In en, this message translates to:436
/// **'Master password'**437
String get masterPassword;439
/// No description provided for @confirmPassword.440
///441
/// In en, this message translates to:442
/// **'Confirm password'**443
String get confirmPassword;445
/// No description provided for @vaultAdvice.446
///447
/// In en, this message translates to:448
/// **'Use at least 12 characters. This password cannot be recovered. Store it safely.'**449
String get vaultAdvice;451
/// No description provided for @unlock.452
///453
/// In en, this message translates to:454
/// **'Unlock'**455
String get unlock;457
/// No description provided for @lock.458
///459
/// In en, this message translates to:460
/// **'Lock Vault'**461
String get lock;463
/// No description provided for @biometric.464
///465
/// In en, this message translates to:466
/// **'Biometrics / device credential'**467
String get biometric;469
/// No description provided for @unlockBiometric.470
///471
/// In en, this message translates to:472
/// **'Unlock with device security'**473
String get unlockBiometric;475
/// No description provided for @biometricReason.476
///477
/// In en, this message translates to:478
/// **'Unlock the SM Mobile Vault'**479
String get biometricReason;481
/// No description provided for @lockBackground.482
///483
/// In en, this message translates to:484
/// **'Lock when leaving the app'**485
String get lockBackground;487
/// No description provided for @idleTimeout.488
///489
/// In en, this message translates to:490
/// **'Lock after inactivity (minutes)'**491
String get idleTimeout;493
/// No description provided for @weakPassword.494
///495
/// In en, this message translates to:496
/// **'Use a master password with 12–128 characters.'**497
String get weakPassword;499
/// No description provided for @passwordMismatch.500
///501
/// In en, this message translates to:502
/// **'Passwords do not match.'**503
String get passwordMismatch;505
/// No description provided for @locked.506
///507
/// In en, this message translates to:508
/// **'Vault locked. Unlock it to continue.'**509
String get locked;511
/// No description provided for @unlockFailed.512
///513
/// In en, this message translates to:514
/// **'Unable to unlock. Check your password or use the master-password fallback.'**515
String get unlockFailed;517
/// No description provided for @storageError.518
///519
/// In en, this message translates to:520
/// **'Secure storage is unavailable or damaged. Your stored data was not reset.'**521
String get storageError;523
/// No description provided for @invalidProfile.524
///525
/// In en, this message translates to:526
/// **'Check the name, hostname/IP, username and port (1–65535).'**527
String get invalidProfile;529
/// No description provided for @invalidImport.530
///531
/// In en, this message translates to:532
/// **'Invalid profile file. Use CH-J JSON format version 1, up to 5 MiB and 10,000 profiles.'**533
String get invalidImport;535
/// No description provided for @networkError.536
///537
/// In en, this message translates to:538
/// **'Network connection failed. Check the address, VPN and local-network permission.'**539
String get networkError;541
/// No description provided for @authFailed.542
///543
/// In en, this message translates to:544
/// **'SSH authentication failed. Check the username, password or private key.'**545
String get authFailed;547
/// No description provided for @invalidKey.548
///549
/// In en, this message translates to:550
/// **'Invalid private key or passphrase.'**551
String get invalidKey;553
/// No description provided for @timeout.554
///555
/// In en, this message translates to:556
/// **'The operation timed out.'**557
String get timeout;559
/// No description provided for @operationFailed.560
///561
/// In en, this message translates to:562
/// **'Operation failed. Check the connection and permissions.'**563
String get operationFailed;565
/// No description provided for @permissionDenied.566
///567
/// In en, this message translates to:568
/// **'The server denied file access.'**569
String get permissionDenied;571
/// No description provided for @fileError.572
///573
/// In en, this message translates to:574
/// **'SFTP operation failed. The item may be missing, the directory nonempty, or access denied.'**575
String get fileError;577
/// No description provided for @fileExists.578
///579
/// In en, this message translates to:580
/// **'The destination already exists. Choose another name.'**581
String get fileExists;583
/// No description provided for @unsafePath.584
///585
/// In en, this message translates to:586
/// **'Unsafe path, unsupported file type or symbolic link. Symbolic links are not followed.'**587
String get unsafePath;589
/// No description provided for @cancelled.590
///591
/// In en, this message translates to:592
/// **'Transfer cancelled.'**593
String get cancelled;595
/// No description provided for @upload.596
///597
/// In en, this message translates to:598
/// **'Upload file'**599
String get upload;601
/// No description provided for @download.602
///603
/// In en, this message translates to:604
/// **'Download and save / share'**605
String get download;607
/// No description provided for @rename.608
///609
/// In en, this message translates to:610
/// **'Rename'**611
String get rename;613
/// No description provided for @newFolder.614
///615
/// In en, this message translates to:616
/// **'New folder'**617
String get newFolder;619
/// No description provided for @refresh.620
///621
/// In en, this message translates to:622
/// **'Refresh'**623
String get refresh;625
/// No description provided for @parent.626
///627
/// In en, this message translates to:628
/// **'Parent directory'**629
String get parent;631
/// No description provided for @size.632
///633
/// In en, this message translates to:634
/// **'Size'**635
String get size;637
/// No description provided for @modified.638
///639
/// In en, this message translates to:640
/// **'Modified'**641
String get modified;643
/// No description provided for @symlink.644
///645
/// In en, this message translates to:646
/// **'Symbolic link (blocked)'**647
String get symlink;649
/// No description provided for @emptyDirectory.650
///651
/// In en, this message translates to:652
/// **'This directory is empty.'**653
String get emptyDirectory;655
/// No description provided for @importProfiles.656
///657
/// In en, this message translates to:658
/// **'Import profiles'**659
String get importProfiles;661
/// No description provided for @exportProfiles.662
///663
/// In en, this message translates to:664
/// **'Export profiles'**665
String get exportProfiles;667
/// No description provided for @importPreview.668
///669
/// In en, this message translates to:670
/// **'Review imported profiles'**671
String get importPreview;673
/// No description provided for @importAdvice.674
///675
/// In en, this message translates to:676
/// **'Only connection details are imported. Assign authentication before connecting. Duplicate matching uses host, port and username.'**677
String get importAdvice;679
/// No description provided for @skipDuplicates.680
///681
/// In en, this message translates to:682
/// **'Skip duplicates'**683
String get skipDuplicates;685
/// No description provided for @updateDuplicates.686
///687
/// In en, this message translates to:688
/// **'Update duplicates (clear saved credentials)'**689
String get updateDuplicates;691
/// No description provided for @createDuplicates.692
///693
/// In en, this message translates to:694
/// **'Create separate copies'**695
String get createDuplicates;697
/// No description provided for @importAction.698
///699
/// In en, this message translates to:700
/// **'Import reviewed profiles'**701
String get importAction;703
/// No description provided for @done.704
///705
/// In en, this message translates to:706
/// **'Done'**707
String get done;709
/// No description provided for @copy.710
///711
/// In en, this message translates to:712
/// **'Copy selection'**713
String get copy;715
/// No description provided for @paste.716
///717
/// In en, this message translates to:718
/// **'Paste'**719
String get paste;721
/// No description provided for @keyboard.722
///723
/// In en, this message translates to:724
/// **'Show keyboard'**725
String get keyboard;727
/// No description provided for @monitorInterval.728
///729
/// In en, this message translates to:730
/// **'Refresh interval (seconds)'**731
String get monitorInterval;733
/// No description provided for @cpu.734
///735
/// In en, this message translates to:736
/// **'CPU'**737
String get cpu;739
/// No description provided for @ram.740
///741
/// In en, this message translates to:742
/// **'RAM'**743
String get ram;745
/// No description provided for @disk.746
///747
/// In en, this message translates to:748
/// **'Root filesystem'**749
String get disk;751
/// No description provided for @uptime.752
///753
/// In en, this message translates to:754
/// **'Uptime (seconds)'**755
String get uptime;757
/// No description provided for @load.758
///759
/// In en, this message translates to:760
/// **'Load average (1 / 5 / 15 min)'**761
String get load;763
/// No description provided for @release.764
///765
/// In en, this message translates to:766
/// **'OS version'**767
String get release;769
/// No description provided for @rtt.770
///771
/// In en, this message translates to:772
/// **'SSH command round-trip'**773
String get rtt;775
/// No description provided for @handshake.776
///777
/// In en, this message translates to:778
/// **'SSH connection and authentication'**779
String get handshake;781
/// No description provided for @unsupportedSystem.782
///783
/// In en, this message translates to:784
/// **'Monitoring requires a Linux server with /proc and standard POSIX utilities.'**785
String get unsupportedSystem;787
/// No description provided for @runDiagnostics.788
///789
/// In en, this message translates to:790
/// **'Run DNS / TCP test'**791
String get runDiagnostics;793
/// No description provided for @icmpNote.794
///795
/// In en, this message translates to:796
/// **'TCP connect is not ICMP ping. ICMP and traceroute are not implemented on mobile.'**797
String get icmpNote;799
/// No description provided for @dnsResults.800
///801
/// In en, this message translates to:802
/// **'DNS addresses (not saved to profiles)'**803
String get dnsResults;805
/// No description provided for @tcpConnect.806
///807
/// In en, this message translates to:808
/// **'TCP connection time'**809
String get tcpConnect;811
/// No description provided for @backgroundNote.812
///813
/// In en, this message translates to:814
/// **'Monitoring stops outside this screen and while the app is inactive. The OS may suspend SSH sessions in the background.'**815
String get backgroundNote;817
/// No description provided for @componentLicenses.818
///819
/// In en, this message translates to:820
/// **'Third-party licenses'**821
String get componentLicenses;823
/// No description provided for @clearPassword.824
///825
/// In en, this message translates to:826
/// **'Remove saved password'**827
String get clearPassword;829
/// No description provided for @biometricUnavailable.830
///831
/// In en, this message translates to:832
/// **'Device security is unavailable. Configure biometrics or a secure device passcode first.'**833
String get biometricUnavailable;835
/// No description provided for @licenseError.836
///837
/// In en, this message translates to:838
/// **'License or guidance could not be loaded. Application access is blocked.'**839
String get licenseError;840
}842
class _AppLocalizationsDelegate843
extends LocalizationsDelegate<AppLocalizations> {844
const _AppLocalizationsDelegate();846
@override847
Future<AppLocalizations> load(Locale locale) {848
return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));849
}851
@override852
bool isSupported(Locale locale) =>853
<String>['cs', 'de', 'en'].contains(locale.languageCode);855
@override856
bool shouldReload(_AppLocalizationsDelegate old) => false;857
}859
AppLocalizations lookupAppLocalizations(Locale locale) {860
// Lookup logic when only language code is specified.861
switch (locale.languageCode) {862
case 'cs':863
return AppLocalizationsCs();864
case 'de':865
return AppLocalizationsDe();866
case 'en':867
return AppLocalizationsEn();868
}870
throw FlutterError(871
'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely '872
'an issue with the localizations generation tool. Please file an issue '873
'on GitHub with a reproducible sample app and the gen-l10n configuration '874
'that was used.',875
);876
}SHA-256
28af4e16fe47e6fde309ecd555551099ff63e2096c6cc7303890a3130a1f5faeCH-J Proprietary Software License 1.14 · Izvor je osiguran pod CH-J Proprietary Software License 1.14. Njena dostupnost ne mijenja uvjete licenciranja niti daje dodatna prava.
Arhiv SHA-256
c486a807e4828998b9c57ab0f2e760f7980b31965fe118e89d3e1a5a2b65be65