CH-J SM Mobilebainisteoireacht freastalaí SSH
Roghchlár
Foinse foilsithe

CH-J SM Mobile

Brabhsáil comhadlanna agus comhaid chun feidhmchlár áirithe a scaoileadh.

Íosluchtaigh foinse ZIP
CH-J / SM Mobile 134 Comhaid
sm-mobile-20261016T050549Z-3678f2a05fa9 Suimigh: · Tógtha:
Comhaid
app_localizations.dart Suimigh: Dáta gan taifeadadh 24.0 KB · 876 líne
Íosluchtaigh comhad
1import 'dart:async';
3import 'package:flutter/foundation.dart';
4import 'package:flutter/widgets.dart';
5import 'package:flutter_localizations/flutter_localizations.dart';
6import 'package:intl/intl.dart' as intl;
8import 'app_localizations_cs.dart';
9import 'app_localizations_de.dart';
10import 'app_localizations_en.dart';
12// ignore_for_file: type=lint
14/// Callers can lookup localized strings with an instance of AppLocalizations
15/// returned by `AppLocalizations.of(context)`.
16///
17/// Applications need to include `AppLocalizations.delegate()` in their app's
18/// `localizationDelegates` list, and the locales they support in the app's
19/// `supportedLocales` list. For example:
20///
21/// ```dart
22/// 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.yaml
32///
33/// Please make sure to update your pubspec.yaml to include the following
34/// packages:
35///
36/// ```yaml
37/// dependencies:
38/// # Internationalization support.
39/// flutter_localizations:
40/// sdk: flutter
41/// intl: any # Use the pinned version from flutter_localizations
42///
43/// # Rest of dependencies
44/// ```
45///
46/// ## iOS Applications
47///
48/// iOS applications define key application metadata, including supported
49/// 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 this
51/// 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 Runner
55/// project’s Runner folder.
56///
57/// Next, select the Information Property List item, select Add Item from the
58/// Editor menu, then select Localizations from the pop-up menu.
59///
60/// Select and expand the newly-created Localizations item then, for each
61/// locale your application supports, add a new item and select the locale
62/// you wish to add from the pop-up menu in the Value field. This list should
63/// be consistent with the languages listed in the AppLocalizations.supportedLocales
64/// property.
65abstract 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 localizations
79 /// delegates.
80 ///
81 /// Returns a list of localizations delegates containing this delegate along with
82 /// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
83 /// and GlobalWidgetsLocalizations.delegate.
84 ///
85 /// Additional delegates can be added by appending to this list in
86 /// MaterialApp. This list does not have to be used at all if a custom list
87 /// 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;
842class _AppLocalizationsDelegate
843 extends LocalizationsDelegate<AppLocalizations> {
844 const _AppLocalizationsDelegate();
846 @override
847 Future<AppLocalizations> load(Locale locale) {
848 return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));
849 }
851 @override
852 bool isSupported(Locale locale) =>
853 <String>['cs', 'de', 'en'].contains(locale.languageCode);
855 @override
856 bool shouldReload(_AppLocalizationsDelegate old) => false;
859AppLocalizations 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 );
SHA-25628af4e16fe47e6fde309ecd555551099ff63e2096c6cc7303890a3130a1f5fae

CH-J Proprietary Software License 1.14 · Tá Foinse ar fáil faoin CH-J Proprietary Software License 1.14. Ní chuireann a infhaighteacht a athrú ar na téarmaí ceadúnais nó cearta breise a dheonú.

Cartlann SHA-256c486a807e4828998b9c57ab0f2e760f7980b31965fe118e89d3e1a5a2b65be65