From c883a484b82567e588bb88a10ffebfc4f442261c Mon Sep 17 00:00:00 2001 From: stavares843 Date: Mon, 9 Sep 2024 11:04:35 +0100 Subject: [PATCH 01/22] fix typos --- docker/README.md | 2 +- docker/dev/linux/Dockerfile | 2 +- docker/dev/windows/Dockerfile | 2 +- ios/Podfile | 2 +- lib/app/cubits/repo.dart | 2 +- lib/app/cubits/repos.dart | 2 +- lib/app/pages/main_page.dart | 4 +-- lib/app/session.dart | 2 +- lib/app/utils/constants.dart | 2 +- lib/app/utils/password_hasher.dart | 2 +- .../platform/platform_webview_mobile.dart | 14 +++++----- .../platform_window_manager_desktop.dart | 2 +- .../dialogs/modal_actions_bottom_sheet.dart | 8 +++--- .../modal_share_repository_bottom_sheet.dart | 2 +- lib/app/widgets/eq_values.dart | 2 +- lib/app/widgets/holder.dart | 2 +- lib/app/widgets/repo_creation.dart | 2 +- lib/generated/intl/messages_en.dart | 14 +++++----- lib/generated/intl/messages_es.dart | 4 +-- lib/generated/intl/messages_fr.dart | 6 ++-- lib/generated/intl/messages_my.dart | 10 +++---- lib/generated/intl/messages_ru.dart | 10 +++---- lib/generated/intl/messages_uk.dart | 10 +++---- lib/generated/l10n.dart | 28 +++++++++---------- lib/l10n/intl_en.arb | 20 ++++++------- lib/l10n/intl_fa.arb | 20 ++++++------- lib/l10n/intl_my.arb | 20 ++++++------- lib/l10n/intl_ru.arb | 20 ++++++------- lib/l10n/intl_uk.arb | 20 ++++++------- .../Extension+Servicing.swift | 4 +-- macos/OuisyncFileProvider/Item.swift | 4 +-- macos/README.md | 2 +- macos/Runner/FileProviderProxy.swift | 2 +- test/flutter_test_config.dart | 2 +- .../create_repo_from_blind_token_test.dart | 4 +-- test/unit/move_entry_between_repos_test.dart | 2 +- test/unit/settings_test.dart | 2 +- util/README.md | 6 ++-- 38 files changed, 132 insertions(+), 132 deletions(-) diff --git a/docker/README.md b/docker/README.md index 6aa122795..db7b389f3 100644 --- a/docker/README.md +++ b/docker/README.md @@ -41,5 +41,5 @@ The previous command would look like this: `sudo docker build --build-arg build_name= --build-arg build_number= --build-arg keystore= --build-arg keystore_password_file= --build-arg ndk_version= --build-arg branch= -f -t .` -**Note:** By default, docker will run using **BuildKit**. If you want to dissable it, just add `DOCKER_BUILDKIT=0` at the beginning of the command, right +**Note:** By default, docker will run using **BuildKit**. If you want to disable it, just add `DOCKER_BUILDKIT=0` at the beginning of the command, right between `sudo` and `docker` diff --git a/docker/dev/linux/Dockerfile b/docker/dev/linux/Dockerfile index 2415d6b17..251a68410 100644 --- a/docker/dev/linux/Dockerfile +++ b/docker/dev/linux/Dockerfile @@ -34,7 +34,7 @@ ADD https://github.com/Kitware/CMake/releases/download/v3.26.3/cmake-3.26.3.tar. # Extract into /home/TEMP/cmake-3.26.3 RUN tar -zxvf cmake-3.26.3.tar.gz -# Boostrap CMake +# Bootstrap CMake RUN cd cmake-3.26.3 && \ ./bootstrap diff --git a/docker/dev/windows/Dockerfile b/docker/dev/windows/Dockerfile index fa29291d2..2ef4e618b 100644 --- a/docker/dev/windows/Dockerfile +++ b/docker/dev/windows/Dockerfile @@ -116,7 +116,7 @@ RUN cd C:\code\ouisync-app\ouisync-plugin && \ RUN cd C:\code\ouisync-app && \ flutter pub get -# If you want the hability to SSH into this container, uncomment the following section +# If you want the ability to SSH into this container, uncomment the following section # FROM ouisync-code as SSHLogLevel diff --git a/ios/Podfile b/ios/Podfile index 16bc1b07a..6ff5ecfe9 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -47,7 +47,7 @@ end # post install post_install do |installer| - # fix xcode 15 DT_TOOLCHAIN_DIR - remove after fix oficially - https://github.com/CocoaPods/CocoaPods/issues/12065 + # fix xcode 15 DT_TOOLCHAIN_DIR - remove after fix officially - https://github.com/CocoaPods/CocoaPods/issues/12065 installer.aggregate_targets.each do |target| target.xcconfigs.each do |variant, xcconfig| xcconfig_path = target.client_root + target.xcconfig_relative_path(variant) diff --git a/lib/app/cubits/repo.dart b/lib/app/cubits/repo.dart index ed09eac1c..c9884a8d9 100644 --- a/lib/app/cubits/repo.dart +++ b/lib/app/cubits/repo.dart @@ -550,7 +550,7 @@ class RepoCubit extends Cubit with AppLogger { } } - /// Returns null if the authMode is AuthModeBlindOrManual or if decrytion fails. + /// Returns null if the authMode is AuthModeBlindOrManual or if decryption fails. /// TODO: If decryption fails, we should throw and catch that above to inform /// the user about the fact. Future getLocalSecret(MasterKey masterKey) async { diff --git a/lib/app/cubits/repos.dart b/lib/app/cubits/repos.dart index a4bbda68a..05e0e5011 100644 --- a/lib/app/cubits/repos.dart +++ b/lib/app/cubits/repos.dart @@ -260,7 +260,7 @@ class ReposCubit extends WatchSelf with AppLogger { await repo.setSyncEnabled(true); - // Check for the situation where we alredy have an entry for the repository + // Check for the situation where we already have an entry for the repository // but it's location has changed. If so, reuse the existing stored secrets // (if any). final databaseId = DatabaseId(await repo.hexDatabaseId()); diff --git a/lib/app/pages/main_page.dart b/lib/app/pages/main_page.dart index 3e8b8687a..8c88957ae 100644 --- a/lib/app/pages/main_page.dart +++ b/lib/app/pages/main_page.dart @@ -148,7 +148,7 @@ class _MainPageState extends State void checkForDokan() { final dokanCheck = DokanCheck( requiredMayor: Constants.dokanMayorRequired, - minimumRequiredVersion: Constants.dokanMinimunVersion, + minimumRequiredVersion: Constants.dokanMinimumVersion, ); final dokanCheckResult = dokanCheck.checkDokanInstallation(); @@ -404,7 +404,7 @@ class _MainPageState extends State // final sortDirection = // _sortListCubit?.state.direction ?? SortDirection.asc; - /// Usiing the "back" arrow causes the app settings icon (gear) to get + /// Using the "back" arrow causes the app settings icon (gear) to get /// the focus, even if we explicitly ask for it to losse it. /// So for now we request focus for the FAB, then unfocused it. _fabFocus.requestFocus(); diff --git a/lib/app/session.dart b/lib/app/session.dart index 73272d83a..eb8c59232 100644 --- a/lib/app/session.dart +++ b/lib/app/session.dart @@ -45,7 +45,7 @@ Future createSession({ defaultLocalDiscoveryEnabled: true, ); - // Add cache servers as user defined peers so we immediatelly connect to them. + // Add cache servers as user defined peers so we immediately connect to them. for (final host in Constants.cacheServers) { unawaited(addCacheServerAsPeer(session, host, logger: logger)); } diff --git a/lib/app/utils/constants.dart b/lib/app/utils/constants.dart index 333d23303..bcbba9d34 100644 --- a/lib/app/utils/constants.dart +++ b/lib/app/utils/constants.dart @@ -141,5 +141,5 @@ class Constants { static const int android12SDK = 32; static const String dokanMayorRequired = '2'; - static const String dokanMinimunVersion = '2.1.0.1000'; + static const String dokanMinimumVersion = '2.1.0.1000'; } diff --git a/lib/app/utils/password_hasher.dart b/lib/app/utils/password_hasher.dart index 95f400037..037cb6e24 100644 --- a/lib/app/utils/password_hasher.dart +++ b/lib/app/utils/password_hasher.dart @@ -1,6 +1,6 @@ import 'package:ouisync/ouisync.dart'; -// This class exists mainly to avoid passing the ouisync Session througout the +// This class exists mainly to avoid passing the ouisync Session throughout the // code where only it's password hashing functionality is needed. class PasswordHasher { final Session _ouisyncSession; diff --git a/lib/app/utils/platform/platform_webview_mobile.dart b/lib/app/utils/platform/platform_webview_mobile.dart index 3af63c8de..36436e71a 100644 --- a/lib/app/utils/platform/platform_webview_mobile.dart +++ b/lib/app/utils/platform/platform_webview_mobile.dart @@ -23,20 +23,20 @@ class PlatformWebViewMobile implements PlatformWebView { final controller = WebViewController.fromPlatformCreationParams(params); - final initalizations = []; + final initializations = []; - initalizations + initializations .add(controller.setJavaScriptMode(JavaScriptMode.unrestricted)); - initalizations.add(controller.setBackgroundColor(Colors.white)); - initalizations.add(controller.loadRequest(Uri.parse(url))); + initializations.add(controller.setBackgroundColor(Colors.white)); + initializations.add(controller.loadRequest(Uri.parse(url))); if (controller.platform is AndroidWebViewController) { - initalizations.add(AndroidWebViewController.enableDebugging(true)); - initalizations.add((controller.platform as AndroidWebViewController) + initializations.add(AndroidWebViewController.enableDebugging(true)); + initializations.add((controller.platform as AndroidWebViewController) .setMediaPlaybackRequiresUserGesture(false)); } - await Future.wait(initalizations); + await Future.wait(initializations); return WebViewWidget(controller: controller); } diff --git a/lib/app/utils/platform/platform_window_manager_desktop.dart b/lib/app/utils/platform/platform_window_manager_desktop.dart index 3ae82973e..974f9477a 100644 --- a/lib/app/utils/platform/platform_window_manager_desktop.dart +++ b/lib/app/utils/platform/platform_window_manager_desktop.dart @@ -116,7 +116,7 @@ class PlatformWindowManagerDesktop /// For some reason, if we use a constant value for the title in the /// WindowsOptions, the app hangs. This is true for the localized strings, /// or a regular constant value in Constants. - /// So we use a harcoded string to start, then we use the localized string + /// So we use a hardcoded string to start, then we use the localized string /// in app.dart -for now. // Make it usable on older HD displays. diff --git a/lib/app/widgets/dialogs/modal_actions_bottom_sheet.dart b/lib/app/widgets/dialogs/modal_actions_bottom_sheet.dart index 7d90bb37f..cb92941af 100644 --- a/lib/app/widgets/dialogs/modal_actions_bottom_sheet.dart +++ b/lib/app/widgets/dialogs/modal_actions_bottom_sheet.dart @@ -64,7 +64,7 @@ class DirectoryActions extends StatelessWidget with AppLogger { required IconData icon, required Function()? action, }) { - Color? dissabledColor = action == null ? Colors.grey : null; + Color? disabledColor = action == null ? Colors.grey : null; return Padding( padding: Dimensions.paddingBottomSheetActions, @@ -76,12 +76,12 @@ class DirectoryActions extends StatelessWidget with AppLogger { Icon( icon, size: Dimensions.sizeIconBig, - color: dissabledColor, + color: disabledColor, ), Dimensions.spacingVertical, Text( name, - style: TextStyle(color: dissabledColor), + style: TextStyle(color: disabledColor), ) ], ), @@ -95,7 +95,7 @@ class DirectoryActions extends StatelessWidget with AppLogger { builder: (context, state) { /// If we are not using the modal bottom sheet, this is, we /// are not moving entries or adding media from the device, - /// we dissable the add File button. + /// we disable the add File button. final enable = state is HideSheetState; return Row( diff --git a/lib/app/widgets/dialogs/modal_share_repository_bottom_sheet.dart b/lib/app/widgets/dialogs/modal_share_repository_bottom_sheet.dart index 667e9add0..3df60fdc2 100644 --- a/lib/app/widgets/dialogs/modal_share_repository_bottom_sheet.dart +++ b/lib/app/widgets/dialogs/modal_share_repository_bottom_sheet.dart @@ -45,7 +45,7 @@ class _ShareRepositoryState extends State with AppLogger { labelStyle = context.theme.appTextStyle.bodyMicro .copyWith(color: Constants.inputLabelForeColor); - // On certain resolutions (higer) the constrain set on this dialog when called + // On certain resolutions (higher) the constrain set on this dialog when called // causes the content to scroll, giving the appearance of a smaller padding // at the bottom of the content. // diff --git a/lib/app/widgets/eq_values.dart b/lib/app/widgets/eq_values.dart index 81fcadf5f..79ea586fc 100644 --- a/lib/app/widgets/eq_values.dart +++ b/lib/app/widgets/eq_values.dart @@ -68,7 +68,7 @@ class EqValues extends StatelessWidget { fontSize: subtitleFontSize), TextSpan(text: '${S.current.messageEqValuesP10}\n\n'), Fields.boldTextSpan( - '· ${S.current.titleFreedomExpresionAccessInfo}\n\n', + '· ${S.current.titleFreedomExpressionAccessInfo}\n\n', fontSize: subtitleFontSize), TextSpan(text: '${S.current.messageEqValuesP11}.\n\n'), Fields.boldTextSpan('· ${S.current.titleJustLegalSociety}\n\n', diff --git a/lib/app/widgets/holder.dart b/lib/app/widgets/holder.dart index 9119f7479..4913608e2 100644 --- a/lib/app/widgets/holder.dart +++ b/lib/app/widgets/holder.dart @@ -7,7 +7,7 @@ import '../utils/extensions.dart'; /// Helper widget that maintains a lifecycle of some resource and explicitly provides it to the /// descendant widgets. This is similar to `Provider` from the `provider` package but it passes the -/// resource expicitly via the `builder` callback instead of implicitly via `context`. This means +/// resource explicitly via the `builder` callback instead of implicitly via `context`. This means /// that it's impossible to forget to pass the resource as it would lead to compile time error, /// unlike `Provider` which would cause runtime error in such case. class ObjectHolder extends StatefulWidget { diff --git a/lib/app/widgets/repo_creation.dart b/lib/app/widgets/repo_creation.dart index 787894e38..ee2ba1f3b 100644 --- a/lib/app/widgets/repo_creation.dart +++ b/lib/app/widgets/repo_creation.dart @@ -219,7 +219,7 @@ class RepoCreation extends StatelessWidget { case RepoCreationFailure(location: final location, error: final error): await Dialogs.simpleAlertDialog( context: context, - title: S.current.messsageFailedCreateRepository(location.path), + title: S.current.messageFailedCreateRepository(location.path), message: error, ); } diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index e42de1e3c..ea4134ee6 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -261,7 +261,7 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Network"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Repository"), - "mesageNoMediaPresent": + "messageNoMediaPresent": MessageLookupByLibrary.simpleMessage("There is no media present."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": @@ -544,11 +544,11 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP1": MessageLookupByLibrary.simpleMessage( "The Ouisync app creates logfiles on users\' devices. Their purpose is only to log device’s activity to facilitate the debugging process in case the user experiences difficulties in connecting with their peers or otherwise in using the Ouisync app. The logfile remains on a user\'s device unless the user decides to send it to us for support purposes"), "messageLogDataP2": MessageLookupByLibrary.simpleMessage( - "If the user does decide to contact us, the personally indetifiable data we may collect is:"), + "If the user does decide to contact us, the personally identifiable data we may collect is:"), "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "None of this data is shared with any third parties"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("All"), - "messageLogLevelErroWarnInfoDebug": + "messageLogLevelErrorWarnInfoDebug": MessageLookupByLibrary.simpleMessage("Error, Warn, Info and Debug"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Only Error"), @@ -699,7 +699,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageSecurityPracticesP3": MessageLookupByLibrary.simpleMessage( "The Ouisync app stores users’ data on an \'Always-On Peer\', which is a server located in Canada. All data is stored as encrypted chunks and is not readable by the server or its operators. The purpose of this server is simply to bridge the gaps between peers who are not online at the same time. All data is periodically purged from this server - its purpose is not to provide permanent data storage but simply facilitation of data syncing by peers"), "messageSecurityPracticesP4": MessageLookupByLibrary.simpleMessage( - "If you have a reason to believe that your personal data has been illegaly obtained and shared by other Ouisync users, please contact us at the address below"), + "If you have a reason to believe that your personal data has been illegally obtained and shared by other Ouisync users, please contact us at the address below"), "messageSelectAccessMode": MessageLookupByLibrary.simpleMessage( "Select a permission to create a share link"), "messageSelectLocation": @@ -777,8 +777,8 @@ class MessageLookup extends MessageLookupByLibrary { "Full access. Your peer can read and write"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Change password"), "popupMenuItemCopyPassword": @@ -857,7 +857,7 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Add"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Folder details"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( + "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( "Freedom of expression and access to information"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Issue tracker"), diff --git a/lib/generated/intl/messages_es.dart b/lib/generated/intl/messages_es.dart index 8c8fdcce5..855c2b2ba 100644 --- a/lib/generated/intl/messages_es.dart +++ b/lib/generated/intl/messages_es.dart @@ -789,8 +789,8 @@ class MessageLookup extends MessageLookupByLibrary { "Acceso total. Tu par puede leer y modificar"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Cambiar la contraseña"), "popupMenuItemCopyPassword": diff --git a/lib/generated/intl/messages_fr.dart b/lib/generated/intl/messages_fr.dart index 0f182d747..5ab7ba011 100644 --- a/lib/generated/intl/messages_fr.dart +++ b/lib/generated/intl/messages_fr.dart @@ -506,11 +506,11 @@ class MessageLookup extends MessageLookupByLibrary { "messageView": MessageLookupByLibrary.simpleMessage("Voir"), "messageWiFi": MessageLookupByLibrary.simpleMessage("Wi-Fi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( - "Accès complet. Votre pair peut lire et écrire"), + "Accès complete. Votre pair peut lire et écrire"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Modifier le mot de passe"), "popupMenuItemCopyPassword": diff --git a/lib/generated/intl/messages_my.dart b/lib/generated/intl/messages_my.dart index 32e2ea4b5..1b1a1efa7 100644 --- a/lib/generated/intl/messages_my.dart +++ b/lib/generated/intl/messages_my.dart @@ -279,7 +279,7 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("ကွန်ရက်"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("သိုလှောင်ခန်း"), - "mesageNoMediaPresent": + "messageNoMediaPresent": MessageLookupByLibrary.simpleMessage("တင်ဆက်နေသော မီဒီယာ မရှိပါ။"), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( @@ -567,7 +567,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "ဤဒေတာကို မည်သည့်ပြင်ပအဖွဲ့အစည်းနှင့်မျှ မျှဝေခြင်းမပြုပါ"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("အားလုံး"), - "messageLogLevelErroWarnInfoDebug": + "messageLogLevelErrorWarnInfoDebug": MessageLookupByLibrary.simpleMessage( "မှားယွင်းမှု၊ သတိပေးမှု၊ အချက်အလက်နှင့် အမှားအယွင်းများ"), "messageLogLevelError": @@ -794,8 +794,8 @@ class MessageLookup extends MessageLookupByLibrary { "အပြည့်အဝ ခွင့်ပြုသည်။ သင်တို့အချင်းချင်း ရေးသားဖတ်ရှုနိုင်ပါသည်"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("စကားဝှက်ကို ပြောင်းလဲပါ"), "popupMenuItemCopyPassword": @@ -872,7 +872,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ပေါင်းထည့်မည်"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage( "ဖိုဒါ၏ အသေးစိတ်အချက်အလက်များ"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( + "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( "လွတ်လပ်စွာ ထုတ်ဖော်ပြောဆိုခွင့်နှင့် သတင်းအချက်အလက်ရယူခွင့်"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("ပြဿနာခြေရာခံသူ"), diff --git a/lib/generated/intl/messages_ru.dart b/lib/generated/intl/messages_ru.dart index 0335bf127..f9b093f48 100644 --- a/lib/generated/intl/messages_ru.dart +++ b/lib/generated/intl/messages_ru.dart @@ -257,7 +257,7 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemLogs": MessageLookupByLibrary.simpleMessage("Логи"), "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Сеть"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Хранилище"), - "mesageNoMediaPresent": + "messageNoMediaPresent": MessageLookupByLibrary.simpleMessage("Медиафайлов не обнаружено."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( @@ -517,7 +517,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "Никакие из этих данных не передаются третьим лицам"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Всё"), - "messageLogLevelErroWarnInfoDebug": + "messageLogLevelErrorWarnInfoDebug": MessageLookupByLibrary.simpleMessage( "Ошибки, предупреждения, информация и отладка"), "messageLogLevelError": @@ -727,8 +727,8 @@ class MessageLookup extends MessageLookupByLibrary { "Полный доступ. Вашр пиры могут и просматривать, и изменять содержимое"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Изменить пароль"), "popupMenuItemCopyPassword": @@ -804,7 +804,7 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Добавить"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Информация о папке"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( + "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( "Свобода выражения и доступа к информации"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Трекер проблем"), diff --git a/lib/generated/intl/messages_uk.dart b/lib/generated/intl/messages_uk.dart index ebdd31ca9..f98b50d27 100644 --- a/lib/generated/intl/messages_uk.dart +++ b/lib/generated/intl/messages_uk.dart @@ -257,7 +257,7 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Мережа"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Репозиторій"), - "mesageNoMediaPresent": + "messageNoMediaPresent": MessageLookupByLibrary.simpleMessage("Не маж медіа файлів."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( @@ -520,7 +520,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "Жодні з цих даних не передаються третім особам"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Все"), - "messageLogLevelErroWarnInfoDebug": + "messageLogLevelErrorWarnInfoDebug": MessageLookupByLibrary.simpleMessage( "Помилки, попередження, інформація та дебаг"), "messageLogLevelError": @@ -733,8 +733,8 @@ class MessageLookup extends MessageLookupByLibrary { "Повний доступ. Ваш вузол може читати і писати"), "messageWritingFileCanceled": m26, "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "messageFailedAddRepository": m28, + "messageFailedCreateRepository": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Змінити пароль"), "popupMenuItemCopyPassword": @@ -807,7 +807,7 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Додати"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Подробиці папки"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( + "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( "Свобода вираження та доступ до інформації"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Відстеження проблем"), diff --git a/lib/generated/l10n.dart b/lib/generated/l10n.dart index 0ab311bcc..49811a9fc 100644 --- a/lib/generated/l10n.dart +++ b/lib/generated/l10n.dart @@ -591,10 +591,10 @@ class S { } /// `Freedom of expression and access to information` - String get titleFreedomExpresionAccessInfo { + String get titleFreedomExpressionAccessInfo { return Intl.message( 'Freedom of expression and access to information', - name: 'titleFreedomExpresionAccessInfo', + name: 'titleFreedomExpressionAccessInfo', desc: '', args: [], ); @@ -1411,20 +1411,20 @@ class S { } /// `Failed to create repository {name}` - String messsageFailedCreateRepository(Object name) { + String messageFailedCreateRepository(Object name) { return Intl.message( 'Failed to create repository $name', - name: 'messsageFailedCreateRepository', + name: 'messageFailedCreateRepository', desc: '', args: [name], ); } /// `Failed to import repository {name}` - String messsageFailedAddRepository(Object name) { + String messageFailedAddRepository(Object name) { return Intl.message( 'Failed to import repository $name', - name: 'messsageFailedAddRepository', + name: 'messageFailedAddRepository', desc: '', args: [name], ); @@ -1991,10 +1991,10 @@ class S { } /// `There is no media present.` - String get mesageNoMediaPresent { + String get messageNoMediaPresent { return Intl.message( 'There is no media present.', - name: 'mesageNoMediaPresent', + name: 'messageNoMediaPresent', desc: '', args: [], ); @@ -2451,10 +2451,10 @@ class S { } /// `Error, Warn, Info and Debug` - String get messageLogLevelErroWarnInfoDebug { + String get messageLogLevelErrorWarnInfoDebug { return Intl.message( 'Error, Warn, Info and Debug', - name: 'messageLogLevelErroWarnInfoDebug', + name: 'messageLogLevelErrorWarnInfoDebug', desc: '', args: [], ); @@ -3390,10 +3390,10 @@ class S { ); } - /// `If you have a reason to believe that your personal data has been illegaly obtained and shared by other Ouisync users, please contact us at the address below` + /// `If you have a reason to believe that your personal data has been illegally obtained and shared by other Ouisync users, please contact us at the address below` String get messageSecurityPracticesP4 { return Intl.message( - 'If you have a reason to believe that your personal data has been illegaly obtained and shared by other Ouisync users, please contact us at the address below', + 'If you have a reason to believe that your personal data has been illegally obtained and shared by other Ouisync users, please contact us at the address below', name: 'messageSecurityPracticesP4', desc: '', args: [], @@ -3430,10 +3430,10 @@ class S { ); } - /// `If the user does decide to contact us, the personally indetifiable data we may collect is:` + /// `If the user does decide to contact us, the personally identifiable data we may collect is:` String get messageLogDataP2 { return Intl.message( - 'If the user does decide to contact us, the personally indetifiable data we may collect is:', + 'If the user does decide to contact us, the personally identifiable data we may collect is:', name: 'messageLogDataP2', desc: '', args: [], diff --git a/lib/l10n/intl_en.arb b/lib/l10n/intl_en.arb index 730b6e8ce..c31fc5e35 100644 --- a/lib/l10n/intl_en.arb +++ b/lib/l10n/intl_en.arb @@ -87,7 +87,7 @@ "titlePrivacyPolicy":"Privacy Policy", "titleDigitalSecurity":"Digital Security", "titleOpennessTransparency":"Openness and Transparency", - "titleFreedomExpresionAccessInfo":"Freedom of expression and access to information", + "titleFreedomExpressionAccessInfo":"Freedom of expression and access to information", "titleJustLegalSociety":"Just and legal society", "titleTermsPrivacy":"Ouisync Terms of Use & Privacy Notice", "titleOverview":"1. Overview", @@ -212,10 +212,10 @@ "@messageErrorEntryNotFound": {}, "messageErrorCreatingRepository": "Error creating the repository", "@messageErrorCreatingRepository": {}, - "messsageFailedCreateRepository": "Failed to create repository {name}", - "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "Failed to import repository {name}", - "@messsageFailedAddRepository": {}, + "messageFailedCreateRepository": "Failed to create repository {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "Failed to import repository {name}", + "@messageFailedAddRepository": {}, "messageRepoAuthFailed":"Repository authentication failed", "messageBioAuthFailed":"Biometric authentication failed", "messageErrorRepositoryNameExist": "There is already a repository with this name", @@ -318,8 +318,8 @@ "@messageConfirmFileDeletion": {}, "messageConfirmRepositoryDeletion": "Are you sure you want to delete this repository?", "@messageConfirmRepositoryDeletion": {}, - "mesageNoMediaPresent": "There is no media present.", - "@mesageNoMediaPresent": {}, + "messageNoMediaPresent": "There is no media present.", + "@messageNoMediaPresent": {}, "messageEntryTypeDefault": "An entry", "@messageEntryTypeDefault": {}, "messageEntryTypeFolder": "A folder", @@ -396,7 +396,7 @@ "messageLogLevelError":"Only Error", "messageLogLevelErrorWarn":"Error and Warn", "messageLogLevelErrorWarnInfo":"Error, Warn and Info", - "messageLogLevelErroWarnInfoDebug":"Error, Warn, Info and Debug", + "messageLogLevelErrorWarnInfoDebug":"Error, Warn, Info and Debug", "messageLogLevelAll":"All", "messageSaveLogFile":"Save log file", "messageErrorUnhandledState":"Error: unhandled state", @@ -490,11 +490,11 @@ "messageSecurityPracticesP1":"Data that the user uploads into the Ouisync repositories is end-to-end encrypted in transit as well as at rest. This includes metadata such as file names, sizes, folder structure etc. Within Ouisync, data is readable only by the person who uploaded the data and those persons with whom they shared their repositories", "messageSecurityPracticesP2":"You can learn more about the encryption techniques used in our documentation", "messageSecurityPracticesP3":"The Ouisync app stores users’ data on an 'Always-On Peer', which is a server located in Canada. All data is stored as encrypted chunks and is not readable by the server or its operators. The purpose of this server is simply to bridge the gaps between peers who are not online at the same time. All data is periodically purged from this server - its purpose is not to provide permanent data storage but simply facilitation of data syncing by peers", - "messageSecurityPracticesP4":"If you have a reason to believe that your personal data has been illegaly obtained and shared by other Ouisync users, please contact us at the address below", + "messageSecurityPracticesP4":"If you have a reason to believe that your personal data has been illegally obtained and shared by other Ouisync users, please contact us at the address below", "messageDeletionDataServerP1":"The simplest way to delete your data is by deleting files or repositories from your own device. Any file deletion will be propagated to all your peers - ie, if you have Write access to a repository, you can delete any files within it and the same files will be deleted from your peers’ repositories as well as from our Always-On-Peer. If you need to delete only the repositories from our Always-On-Peer (but still keep them in your own repository on your own device), please contact us at the address below", "messageDeletionDataServerNote":"The Ouisync team cannot delete individual files from repositories, as it is not possible to identify them because they are encrypted. We are able to delete whole repositories if you send us the link to the repository that needs to be deleted", "messageLogDataP1":"The Ouisync app creates logfiles on users' devices. Their purpose is only to log device’s activity to facilitate the debugging process in case the user experiences difficulties in connecting with their peers or otherwise in using the Ouisync app. The logfile remains on a user's device unless the user decides to send it to us for support purposes", - "messageLogDataP2":"If the user does decide to contact us, the personally indetifiable data we may collect is:", + "messageLogDataP2":"If the user does decide to contact us, the personally identifiable data we may collect is:", "messageLogData1":"Email address - if the user decided to contact us by email", "messageLogData2":"Information the user may provide by email, through help tickets, or through our website, and associated metadata - for the purposes of providing technical support", "messageLogData3":"User’s IP address - for the purposes of providing technical support", diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 311cbf3cb..b7430ec84 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -144,10 +144,10 @@ "@messageErrorEntryNotFound": {}, "messageErrorCreatingRepository": "خطا در ایجاد مخزن", "@messageErrorCreatingRepository": {}, - "messsageFailedCreateRepository": "ایجاد مخزن ناموفق بود {name}", - "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "خطا در واردکردن مخزن {name}", - "@messsageFailedAddRepository": {}, + "messageFailedCreateRepository": "ایجاد مخزن ناموفق بود {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "خطا در واردکردن مخزن {name}", + "@messageFailedAddRepository": {}, "messageErrorRepositoryNameExist": "یک مخزن با این نام وجود دارد", "@messageErrorRepositoryNameExist": {}, "messageErrorCharactersNotAllowed": "استفاده از / یا \\ مجاز نیست", @@ -240,8 +240,8 @@ "@messageConfirmFileDeletion": {}, "messageConfirmRepositoryDeletion": "آیا اطمینان دارید که می خواهید این مخزن را حذف کنید؟", "@messageConfirmRepositoryDeletion": {}, - "mesageNoMediaPresent": "هیچ رسانه‌ای وجود ندارد.", - "@mesageNoMediaPresent": {}, + "messageNoMediaPresent": "هیچ رسانه‌ای وجود ندارد.", + "@messageNoMediaPresent": {}, "messageEntryTypeDefault": "یک ورودی", "@messageEntryTypeDefault": {}, "messageEntryTypeFolder": "یک پوشه", @@ -620,8 +620,8 @@ "@titleRequiredPermission": {}, "titleContactUs": "تماس با ما", "@titleContactUs": {}, - "messageLogLevelErroWarnInfoDebug": "خطا، هشدار، اطلاعات و رفع اشکال", - "@messageLogLevelErroWarnInfoDebug": {}, + "messageLogLevelErrorWarnInfoDebug": "خطا، هشدار، اطلاعات و رفع اشکال", + "@messageLogLevelErrorWarnInfoDebug": {}, "messageEqValuesP2": "افراد شجاع زندگی و آزادی خود را برای دفاع از حقوق بشر، برای بسیج افکار عمومی، برای انتفاد و برای افشای عاملان فساد و سواستفاده، به خطر می‌اندازند. افراد شجاع از دیگران و ایده‌ها حمایت‌ می‌کنند و نگرانی‌های خود را با دنیا به‌اشتراک می‌گذارند. این افراد شجاع حقوق بشر را به‌طور آنلاین نیز به نمایش می‌گذارند", "@messageEqValuesP2": {}, "messageErrorChangingLocalPassword": "تغییر رمز عبور محلی ناموفق بود", @@ -762,8 +762,8 @@ "@messageSavingChanges": {}, "titleWeAreEq": "ما eQualit.ie هستیم", "@titleWeAreEq": {}, - "titleFreedomExpresionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", - "@titleFreedomExpresionAccessInfo": {}, + "titleFreedomExpressionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", + "@titleFreedomExpressionAccessInfo": {}, "messageView": "بازدید", "@messageView": {}, "titleLinksOtherSites": "لینک به سایت‌های دیگر", diff --git a/lib/l10n/intl_my.arb b/lib/l10n/intl_my.arb index 2a247e7c4..2d5fa76e1 100644 --- a/lib/l10n/intl_my.arb +++ b/lib/l10n/intl_my.arb @@ -166,10 +166,10 @@ "@messageErrorEntryNotFound": {}, "messageErrorCreatingRepository": "repository ကို တည်ဆောက်မှု မအောင်မြင်ပါ", "@messageErrorCreatingRepository": {}, - "messsageFailedCreateRepository": "repository {name} ကို တည်ဆောက်မှု မအောင်မြင်ပါ", - "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "repository {name} ကို ထည့်သွင်းမှု မအောင်မြင်ပါ", - "@messsageFailedAddRepository": {}, + "messageFailedCreateRepository": "repository {name} ကို တည်ဆောက်မှု မအောင်မြင်ပါ", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "repository {name} ကို ထည့်သွင်းမှု မအောင်မြင်ပါ", + "@messageFailedAddRepository": {}, "messageErrorRepositoryNameExist": "ထိုအမည်နှင့် repository တစ်ခု ရှိပြီးဖြစ်ပါသည်", "@messageErrorRepositoryNameExist": {}, "messageErrorCharactersNotAllowed": "\\ သို့မဟုတ် / ကို အသုံးပြုခွင့် မပေးပါ", @@ -266,8 +266,8 @@ "@messageConfirmFileDeletion": {}, "messageConfirmRepositoryDeletion": "ထို repository ကို ဖျက်ရန် သေချာပါသလား။", "@messageConfirmRepositoryDeletion": {}, - "mesageNoMediaPresent": "တင်ဆက်နေသော မီဒီယာ မရှိပါ။", - "@mesageNoMediaPresent": {}, + "messageNoMediaPresent": "တင်ဆက်နေသော မီဒီယာ မရှိပါ။", + "@messageNoMediaPresent": {}, "messageEntryTypeDefault": "အကြောင်းအရာတစ်ခု", "@messageEntryTypeDefault": {}, "messageEntryTypeFolder": "ဖိုဒါတစ်ခု", @@ -354,8 +354,8 @@ "@messageLogLevelErrorWarn": {}, "messageLogLevelErrorWarnInfo": "မှားယွင်းမှု၊ သတိပေးမှုနှင့် အချက်အလက်များ", "@messageLogLevelErrorWarnInfo": {}, - "messageLogLevelErroWarnInfoDebug": "မှားယွင်းမှု၊ သတိပေးမှု၊ အချက်အလက်နှင့် အမှားအယွင်းများ", - "@messageLogLevelErroWarnInfoDebug": {}, + "messageLogLevelErrorWarnInfoDebug": "မှားယွင်းမှု၊ သတိပေးမှု၊ အချက်အလက်နှင့် အမှားအယွင်းများ", + "@messageLogLevelErrorWarnInfoDebug": {}, "messageLogLevelAll": "အားလုံး", "@messageLogLevelAll": {}, "messageSaveLogFile": "စာရင်းဖိုင်ကို သိမ်းဆည်းမည်", @@ -640,8 +640,8 @@ "@titleOurPrinciples": {}, "titlePrivacy": "ကိုယ်ရေးလုံခြုံမှု", "@titlePrivacy": {}, - "titleFreedomExpresionAccessInfo": "လွတ်လပ်စွာ ထုတ်ဖော်ပြောဆိုခွင့်နှင့် သတင်းအချက်အလက်ရယူခွင့်", - "@titleFreedomExpresionAccessInfo": {}, + "titleFreedomExpressionAccessInfo": "လွတ်လပ်စွာ ထုတ်ဖော်ပြောဆိုခွင့်နှင့် သတင်းအချက်အလက်ရယူခွင့်", + "@titleFreedomExpressionAccessInfo": {}, "titleJustLegalSociety": "တရားမျှတသော လူ့အဖွဲ့အစည်း", "@titleJustLegalSociety": {}, "titleTermsOfUse": "၂။ အခေါ်အဝေါ်များ", diff --git a/lib/l10n/intl_ru.arb b/lib/l10n/intl_ru.arb index e0deca870..26ec0a085 100644 --- a/lib/l10n/intl_ru.arb +++ b/lib/l10n/intl_ru.arb @@ -166,10 +166,10 @@ "@messageErrorEntryNotFound": {}, "messageErrorCreatingRepository": "Ошибка при создании хранилища", "@messageErrorCreatingRepository": {}, - "messsageFailedCreateRepository": "Ошибка создания хранилища {name}", - "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "Ошибка импортирования хранилища {name}", - "@messsageFailedAddRepository": {}, + "messageFailedCreateRepository": "Ошибка создания хранилища {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "Ошибка импортирования хранилища {name}", + "@messageFailedAddRepository": {}, "messageErrorRepositoryNameExist": "Хранилище с таким именем уже существует", "@messageErrorRepositoryNameExist": {}, "messageErrorCharactersNotAllowed": "Использование \\ or / не разрешено", @@ -266,8 +266,8 @@ "@messageConfirmFileDeletion": {}, "messageConfirmRepositoryDeletion": "Вы уверены что хотите удалить это хранилище?", "@messageConfirmRepositoryDeletion": {}, - "mesageNoMediaPresent": "Медиафайлов не обнаружено.", - "@mesageNoMediaPresent": {}, + "messageNoMediaPresent": "Медиафайлов не обнаружено.", + "@messageNoMediaPresent": {}, "messageEntryTypeDefault": "Запись", "@messageEntryTypeDefault": {}, "messageEntryTypeFolder": "Папка", @@ -354,8 +354,8 @@ "@messageLogLevelErrorWarn": {}, "messageLogLevelErrorWarnInfo": "Ошибки, предупреждения и информация", "@messageLogLevelErrorWarnInfo": {}, - "messageLogLevelErroWarnInfoDebug": "Ошибки, предупреждения, информация и отладка", - "@messageLogLevelErroWarnInfoDebug": {}, + "messageLogLevelErrorWarnInfoDebug": "Ошибки, предупреждения, информация и отладка", + "@messageLogLevelErrorWarnInfoDebug": {}, "messageLogLevelAll": "Всё", "@messageLogLevelAll": {}, "messageSaveLogFile": "Сохранить лог", @@ -734,8 +734,8 @@ "@labelLocalIPv4": {}, "titleWeAreEq": "Мы — eQualit.ie", "@titleWeAreEq": {}, - "titleFreedomExpresionAccessInfo": "Свобода выражения и доступа к информации", - "@titleFreedomExpresionAccessInfo": {}, + "titleFreedomExpressionAccessInfo": "Свобода выражения и доступа к информации", + "@titleFreedomExpressionAccessInfo": {}, "titleLinksOtherSites": "Ссылки на Другие сайты", "@titleLinksOtherSites": {}, "labelConnectionType": "Тип соединения", diff --git a/lib/l10n/intl_uk.arb b/lib/l10n/intl_uk.arb index 42979d600..fc8c20698 100644 --- a/lib/l10n/intl_uk.arb +++ b/lib/l10n/intl_uk.arb @@ -144,10 +144,10 @@ "@messageErrorEntryNotFound": {}, "messageErrorCreatingRepository": "Помилка при створенні репозиторію", "@messageErrorCreatingRepository": {}, - "messsageFailedCreateRepository": "Не вдалося створити репозиторій {name}", - "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "Не вдалося імпортувати репозиторій {name}", - "@messsageFailedAddRepository": {}, + "messageFailedCreateRepository": "Не вдалося створити репозиторій {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "Не вдалося імпортувати репозиторій {name}", + "@messageFailedAddRepository": {}, "messageErrorRepositoryNameExist": "Репозиторій з такою назвою вже існує", "@messageErrorRepositoryNameExist": {}, "messageErrorCharactersNotAllowed": "Використання \\ або / не допускається", @@ -240,8 +240,8 @@ "@messageConfirmFileDeletion": {}, "messageConfirmRepositoryDeletion": "Ви впевнені, що хочете видалити цей репозиторій?", "@messageConfirmRepositoryDeletion": {}, - "mesageNoMediaPresent": "Не маж медіа файлів.", - "@mesageNoMediaPresent": {}, + "messageNoMediaPresent": "Не маж медіа файлів.", + "@messageNoMediaPresent": {}, "messageEntryTypeDefault": "Запис", "@messageEntryTypeDefault": {}, "messageEntryTypeFolder": "Папка", @@ -424,8 +424,8 @@ "@messageFileIsDownloading": {}, "messageLogLevelErrorWarn": "Помилки та попередження", "@messageLogLevelErrorWarn": {}, - "messageLogLevelErroWarnInfoDebug": "Помилки, попередження, інформація та дебаг", - "@messageLogLevelErroWarnInfoDebug": {}, + "messageLogLevelErrorWarnInfoDebug": "Помилки, попередження, інформація та дебаг", + "@messageLogLevelErrorWarnInfoDebug": {}, "messageUnlockRepoFailed": "Пароль не розблокував репозиторій", "@messageUnlockRepoFailed": {}, "messagePassword": "Пароль", @@ -716,8 +716,8 @@ "@titleDigitalSecurity": {}, "titleOpennessTransparency": "Відритість та прозорість", "@titleOpennessTransparency": {}, - "titleFreedomExpresionAccessInfo": "Свобода вираження та доступ до інформації", - "@titleFreedomExpresionAccessInfo": {}, + "titleFreedomExpressionAccessInfo": "Свобода вираження та доступ до інформації", + "@titleFreedomExpressionAccessInfo": {}, "titleJustLegalSociety": "Справедливе і правове суспільство", "@titleJustLegalSociety": {}, "messageFAQ": "Поширені запитання", diff --git a/macos/OuisyncFileProvider/Extension+Servicing.swift b/macos/OuisyncFileProvider/Extension+Servicing.swift index e7334f6f0..dc66bd830 100644 --- a/macos/OuisyncFileProvider/Extension+Servicing.swift +++ b/macos/OuisyncFileProvider/Extension+Servicing.swift @@ -84,10 +84,10 @@ extension Extension { } if ext.ouisyncSession != nil { - // TODO: What shoudld we do if there is another app trying to connect? Right now Ouisync + // TODO: What should we do if there is another app trying to connect? Right now Ouisync // runs inside the app, so that would mean we have two or more Ouisyncs running at the // same time. The app is set up in Flutter to only allow one instance, but whether that - // actually works remains to be tested. If it happens that there are acually more than + // actually works remains to be tested. If it happens that there are actually more than // one Ouisync instance, we might need to move the backend to the extension, but that // would require a lot of boilerplate to make it accessible from Dart. NSLog("😡 Session already exists") diff --git a/macos/OuisyncFileProvider/Item.swift b/macos/OuisyncFileProvider/Item.swift index e16091a9e..0d66c806a 100644 --- a/macos/OuisyncFileProvider/Item.swift +++ b/macos/OuisyncFileProvider/Item.swift @@ -24,7 +24,7 @@ enum EntryItem: Hashable, Equatable, CustomDebugStringConvertible { func id() -> EntryIdentifier { switch self { - case .file(let file): return file.fileIdentifer().entry() + case .file(let file): return file.fileIdentifier().entry() case .directory(let dir): return dir.directoryIdentifier().entry() } } @@ -54,7 +54,7 @@ class FileItem: NSObject, NSFileProviderItem { try await file.exists() } - func fileIdentifer() -> FileIdentifier { + func fileIdentifier() -> FileIdentifier { FileIdentifier(file.path, repoName) } diff --git a/macos/README.md b/macos/README.md index bedf9b8dc..901602cbe 100644 --- a/macos/README.md +++ b/macos/README.md @@ -31,7 +31,7 @@ flutter run ### Removing the file provider extension -Sometimes the extention misbehaves and/or xcode won't start the newly compiled binary. +Sometimes the extension misbehaves and/or xcode won't start the newly compiled binary. If that happens it is sometimes useful to remove the extension from the system: ```bash diff --git a/macos/Runner/FileProviderProxy.swift b/macos/Runner/FileProviderProxy.swift index 74ff1ac85..0070a1282 100644 --- a/macos/Runner/FileProviderProxy.swift +++ b/macos/Runner/FileProviderProxy.swift @@ -163,7 +163,7 @@ class FFI { // Blocks until Dart creates a session, then returns it. func waitForSession(_ context: UnsafeRawPointer, _ callback: FFICallback) async throws -> SessionHandle { - // TODO: Might be worth change the ffi function to call a callback when the session becomes created instead of bussy sleeping. + // TODO: Might be worth change the ffi function to call a callback when the session becomes created instead of busy sleeping. var elapsed: UInt64 = 0; while true { let result = ffiSessionGrab(context, callback) diff --git a/test/flutter_test_config.dart b/test/flutter_test_config.dart index 849ecaad5..b425613e5 100644 --- a/test/flutter_test_config.dart +++ b/test/flutter_test_config.dart @@ -4,7 +4,7 @@ import 'utils.dart'; /// Automatically invokes each test inside `testEnv`. /// -/// See the "Per directory hierachy" section in +/// See the "Per directory hierarchy" section in /// https://api.flutter.dev/flutter/flutter_test/flutter_test-library.html for more info. Future testExecutable(FutureOr Function() testMain) async { await testEnv(testMain); diff --git a/test/unit/create_repo_from_blind_token_test.dart b/test/unit/create_repo_from_blind_token_test.dart index 9ce33762c..8dcbbdcd9 100644 --- a/test/unit/create_repo_from_blind_token_test.dart +++ b/test/unit/create_repo_from_blind_token_test.dart @@ -33,8 +33,8 @@ void main() { .having((t) => t.value, 'value', isNotNull) .having((t) => t.error, 'error', isNull)); - final tokenAccesMode = await (token as ShareTokenValid).value.mode; - expect(tokenAccesMode, equals(AccessMode.blind)); + final tokenAccessMode = await (token as ShareTokenValid).value.mode; + expect(tokenAccessMode, equals(AccessMode.blind)); final suggestedRepoName = await token.value.suggestedName; diff --git a/test/unit/move_entry_between_repos_test.dart b/test/unit/move_entry_between_repos_test.dart index 36a0246a1..7332c4406 100644 --- a/test/unit/move_entry_between_repos_test.dart +++ b/test/unit/move_entry_between_repos_test.dart @@ -180,7 +180,7 @@ void main() { expect(folder1Contents, dirEntryComparator(expectedFile1)); } - // Move folder woth one file to other repo + // Move folder worth one file to other repo { final result = await originRepoCubit.moveEntryToRepo( destinationRepoCubit: otherRepoCubit, diff --git a/test/unit/settings_test.dart b/test/unit/settings_test.dart index f53e8c1f4..cf983e4ae 100644 --- a/test/unit/settings_test.dart +++ b/test/unit/settings_test.dart @@ -58,7 +58,7 @@ void main() { expect(prefs.getKeys().length, 1); expect(s1.repos, unorderedEquals([RepoLocation.fromDbPath(fooPath)])); - // The auth mode should have been transfered to the repo metadata + // The auth mode should have been transferred to the repo metadata final repo = await Repository.open(session, store: fooPath); expect(await repo.getAuthMode(), isA()); diff --git a/util/README.md b/util/README.md index 2b3d7b3d3..bff01bb9e 100644 --- a/util/README.md +++ b/util/README.md @@ -1,6 +1,6 @@ # Creating a release -## Prerequisities +## Prerequisite Create `android/key.properties` with the following content: @@ -30,7 +30,7 @@ Bump the app version in `pubspec.yaml`. The version has the following format: MAJOR.MINOR.PATH{-PRE}+BUILD -Where `MAJOR`, `MINOR` and `PATCH` are the coresponding semver components, `PRE` is an optional +Where `MAJOR`, `MINOR` and `PATCH` are the corresponding semver components, `PRE` is an optional pre-release tag (e.g. `alpha`, `beta`, `rc1`, `rc2`, ...) and `BUILD` is the build number. The build number must be incremented for every release. The other components are just for user information and can be set to anything but ideally we should follow established practices (i.e., semver). @@ -44,7 +44,7 @@ Notes: - Omitting the github token still creates the release packages but doesn't upload them to github. -## MSIX Addtional assets +## MSIX Additional assets For bundling additional assets with the Ouisync MSIX, place the required files inside ./additional_assets From a68c55c8882325c047cfda1885acb135a303d4a6 Mon Sep 17 00:00:00 2001 From: Ziqian Gao Date: Fri, 13 Sep 2024 19:42:28 +0000 Subject: [PATCH 02/22] Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 0.8% (4 of 484 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/zh_Hans/ --- lib/l10n/intl_zh_CN.arb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/l10n/intl_zh_CN.arb b/lib/l10n/intl_zh_CN.arb index 62cd17dc4..e3fb56114 100644 --- a/lib/l10n/intl_zh_CN.arb +++ b/lib/l10n/intl_zh_CN.arb @@ -1,3 +1,5 @@ { - "@@locale": "zh-CN" -} \ No newline at end of file + "@@locale": "zh-CN", + "titleAbout": "关于", + "@titleAbout": {} +} From da2171989ec76de84e4f4c108e6a8de40027b418 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Wed, 18 Sep 2024 10:06:38 +0000 Subject: [PATCH 03/22] Translated using Weblate (Spanish) Currently translated at 100.0% (484 of 484 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index a8554021c..18d736ec0 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -528,7 +528,7 @@ "@messageRemoveBiometrics": {}, "messageErrorChangingPassword": "Ha habido un problema al cambiar la contraseña. Por favor, inténtelo de nuevo", "@messageErrorChangingPassword": {}, - "messageUnsavedChanges": "Tienes cambios sin guardar.\n\n¿Desea descartarlos?", + "messageUnsavedChanges": "Tienes cambios sin guardar.\n\n¿Te gustaría descartarlos?", "@messageUnsavedChanges": {}, "messageNewPassword": "Nueva contraseña", "@messageNewPassword": {}, From 83886d7b4530ec6f55dd10c5a5913361b4b4fa35 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Tue, 1 Oct 2024 14:07:52 +0000 Subject: [PATCH 04/22] Translated using Weblate (Spanish) Currently translated at 100.0% (484 of 484 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index 18d736ec0..f16f42d68 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -414,7 +414,7 @@ "@messageNetworkIsUnavailable": {}, "messageRepositoryAlreadyExist": "Este repositorio ya existe en la aplicación con el nombre \"{name}\".", "@messageRepositoryAlreadyExist": {}, - "messageSyncingIsDisabledOnMobileInternet": "La sincronización está desactivada cuando usas los datos móviles", + "messageSyncingIsDisabledOnMobileInternet": "La sincronización a través de Internet está desactivada cuando se utilizan datos móviles", "@messageSyncingIsDisabledOnMobileInternet": {}, "messageRepoMissing": "El repositorio ya no está allí", "@messageRepoMissing": {}, @@ -504,7 +504,7 @@ "@messageGeneratePassword": {}, "messageRemoveBiometricValidation": "Remover validación biométrica", "@messageRemoveBiometricValidation": {}, - "messageRememberSavePasswordAlert": "Recuerda guardar la contraseña de forma segura; si la olvidas, no hay forma de recuperarla.", + "messageRememberSavePasswordAlert": "Recuerda guardar la contraseña de forma segura. No hay forma de recuperarla si se pierde o se olvida.", "@messageRememberSavePasswordAlert": {}, "messageBiometricValidationRemoved": "Validación biométrica eliminada", "@messageBiometricValidationRemoved": {}, From 4af29200a478ad3774ee00276adf065f5020fdb7 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Mon, 7 Oct 2024 16:30:06 +0000 Subject: [PATCH 05/22] Translated using Weblate (Spanish) Currently translated at 100.0% (488 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index 74b0ad1e0..ae0fac9d8 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1025,6 +1025,13 @@ "actionLocateRepo": "Localizar repositorio", "@actionLocateRepo": {}, "titleApplicationLanguage": "Idioma de la aplicación", + "@titleApplicationLanguage": {}, "messageSecurityOptionsNotAvailableBlind": "Las opciones de seguridad no están disponibles para repositorios vacíos", - "@messageSecurityOptionsNotAvailableBlind": {} + "@messageSecurityOptionsNotAvailableBlind": {}, + "languageOfTheDevice": "idioma del dispositivo", + "@languageOfTheDevice": {}, + "languageIsNotAvailable": "no disponible", + "@languageIsNotAvailable": {}, + "messageSettingsVersionNewerThanCurrent": "Los ajustes de este dispositivo se crearón con una versión más reciente de Ouisync y no se pueden migrar.", + "@messageSettingsVersionNewerThanCurrent": {} } From 7fa86c92e74fa90ae2562008f7ebe8f1feddd577 Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Wed, 23 Oct 2024 12:02:02 +0000 Subject: [PATCH 06/22] Translated using Weblate (Persian) Currently translated at 100.0% (488 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 342 ++++++++++++++++++++++--------------------- 1 file changed, 177 insertions(+), 165 deletions(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index c6be9d4f7..6162d4e14 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -2,23 +2,23 @@ "@@locale": "fa", "titleAbout": "درباره ما", "@titleAbout": {}, - "titleAppTitle": "Ouisync", + "titleAppTitle": "وی‌سینک", "@titleAppTitle": {}, - "titleAddFile": "اضافه‌کردن فایل به Ouisync", + "titleAddFile": "اضافه‌ کردن فایل به وی‌سینک", "@titleAddFile": {}, - "titleMovingEntry": "(مقدار) ورودی در حال انتقال", + "titleMovingEntry": "در حال انتقال (مقدار) ورودی", "@titleMovingEntry": {}, "titleFolderActions": "اضافه‌ کردن", "@titleFolderActions": {}, - "titleCreateFolder": "ایجاد یک پوشه", + "titleCreateFolder": "ایجاد پوشه", "@titleCreateFolder": {}, - "titleCreateRepository": "ایجاد یک مخزن جدید", + "titleCreateRepository": "ایجاد مخزن جدید", "@titleCreateRepository": {}, "titleEditRepository": "ویرایش مخزن", "@titleEditRepository": {}, - "titleUnlockRepository": "بازکردن قفل مخزن", + "titleUnlockRepository": "باز کردن قفل مخزن", "@titleUnlockRepository": {}, - "titleAddRepository": "وارد‌کردن یک مخزن", + "titleAddRepository": "وارد‌ کردن مخزن", "@titleAddRepository": {}, "titleSettings": "تنظیمات", "@titleSettings": {}, @@ -34,13 +34,13 @@ "@titleDeleteNotEmptyFolder": {}, "titleRepositoriesList": "مخزن‌های من", "@titleRepositoriesList": {}, - "titleShareRepository": "به‌اشتراک‌گذاری مخزن \"{name}\"", + "titleShareRepository": "اشتراک‌گذاری مخزن \"{name}\"", "@titleShareRepository": {}, "titleDeleteFile": "حذف فایل", "@titleDeleteFile": {}, "titleNetwork": "شبکه", "@titleNetwork": {}, - "titleLogs": "ثبت رویدادها", + "titleLogs": "گزارش‌ها", "@titleLogs": {}, "titleDeleteRepository": "حذف مخزن", "@titleDeleteRepository": {}, @@ -50,9 +50,9 @@ "@titleDownloadLocation": {}, "titleBackgroundAndroidPermissionsTitle": "مجوزهای مورد نیاز", "@titleBackgroundAndroidPermissionsTitle": {}, - "titleLockAllRepos": "قفل‌کردن تمام مخزن‌ها", + "titleLockAllRepos": "قفل‌ کردن تمام مخزن‌ها", "@titleLockAllRepos": {}, - "titleAddRepoToken": "واردکردن یک مخزن با توکن", + "titleAddRepoToken": "وارد کردن یک مخزن با توکن", "@titleAddRepoToken": {}, "titleScanRepoQR": "اسکن کد QR مخزن", "@titleScanRepoQR": {}, @@ -102,31 +102,31 @@ "@labelDownloadedTo": {}, "labelSetPermission": "تنظیم مجوز", "@labelSetPermission": {}, - "labelTokenLink": "لینک به‌اشتراک‌گذاری مخزن", + "labelTokenLink": "لینک اشتراک‌گذاری مخزن", "@labelTokenLink": {}, - "labelCopyLink": "لینک را کپی کنید", + "labelCopyLink": "کپی کردن لینک", "@labelCopyLink": {}, - "labelShareLink": "لینک را به‌اشتراک‌ بگذارید", + "labelShareLink": "اشتراک‌گذاری لینک", "@labelShareLink": {}, "labelQRCode": "کد QR", "@labelQRCode": {}, - "labelLockAllRepos": "قفل‌کردن تمام مخزن‌ها", + "labelLockAllRepos": "قفل‌ کردن همگی", "@labelLockAllRepos": {}, "messageLoadingDefault": "در حال بارگذاری…", "@messageLoadingDefault": {}, "messageLibraryPanic": "یک مشکل داخلی شناسایی شد.", "@messageLibraryPanic": {}, - "messageSyncingIsDisabledOnMobileInternet": "هنگام استفاده از اینترنت همراه، همگام‌سازی غیرفعال است", + "messageSyncingIsDisabledOnMobileInternet": "هنگام استفاده از دیتای موبایل، همگام‌سازی اینترنتی غیرفعال است", "@messageSyncingIsDisabledOnMobileInternet": {}, "messageNetworkIsUnavailable": "شبکه در دسترس نیست", "@messageNetworkIsUnavailable": {}, - "messageNewVersionIsAvailable": "یک نسخه جدید در دسترس است.", + "messageNewVersionIsAvailable": "نسخه جدید موجود است.", "@messageNewVersionIsAvailable": {}, - "messageErrorDefault": "اشکالی پیش آمد. لطفا دوباره تلاش کنید.", + "messageErrorDefault": "اشکالی پیش آمده. لطفا دوباره تلاش کنید.", "@messageErrorDefault": {}, "messageErrorDefaultShort": "ناموفق.", "@messageErrorDefaultShort": {}, - "messageErrorLoadingContents": "ما نتوانستیم محتوای این پوشه را بارگذاری کنیم. لطفا دوباره تلاش کنید.", + "messageErrorLoadingContents": "نتوانستیم محتوای این پوشه را بارگذاری کنیم. لطفا دوباره تلاش کنید.", "@messageErrorLoadingContents": {}, "messageErrorFormValidatorNameDefault": "لطفا یک نام معتبر وارد کنید.", "@messageErrorFormValidatorNameDefault": {}, @@ -146,9 +146,9 @@ "@messageErrorCreatingRepository": {}, "messsageFailedCreateRepository": "ایجاد مخزن ناموفق بود {name}", "@messsageFailedCreateRepository": {}, - "messsageFailedAddRepository": "خطا در واردکردن مخزن {name}", + "messsageFailedAddRepository": "خطا در وارد کردن مخزن {name}", "@messsageFailedAddRepository": {}, - "messageErrorRepositoryNameExist": "یک مخزن با این نام وجود دارد", + "messageErrorRepositoryNameExist": "مخزنی با این نام وجود دارد", "@messageErrorRepositoryNameExist": {}, "messageErrorCharactersNotAllowed": "استفاده از / یا \\ مجاز نیست", "@messageErrorCharactersNotAllowed": {}, @@ -156,29 +156,29 @@ "@messageBlindReplicaExplanation": {}, "messageReadReplicaExplanation": "امکان تغییر وجود ندارد، فقط دسترسی به محتوا مجاز است", "@messageReadReplicaExplanation": {}, - "messageWriteReplicaExplanation": "دسترسی کامل. همتاهای شما امکان خواندن و نوشتن دارند", + "messageWriteReplicaExplanation": "دسترسی کامل. همتای شما امکان خواندن و نوشتن دارد", "@messageWriteReplicaExplanation": {}, - "messageNoRepo": "قبل از اضافه‌کردن فایل ها، باید یک مخزن ایجاد کنید", + "messageNoRepo": "قبل از اضافه‌ کردن فایل‌ها، باید یک مخزن ایجاد کنید", "@messageNoRepo": {}, - "messageCreateNewRepo": "یک مخزن ایجاد کنید یا با استفاده از توکن مخزن به یکی از دوستان‌تان لینک شوید", + "messageCreateNewRepo": "یک مخزن ایجاد کنید یا با استفاده از توکن مخزن به یکی از دوستان‌تان لینک شوید", "@messageCreateNewRepo": {}, "messageNoRepos": "هیچ مخزنی یافت نشد", "@messageNoRepos": {}, - "messageEmptyRepo": "این مخزن خالی است", + "messageEmptyRepo": "این مخزن خالی است", "@messageEmptyRepo": {}, - "messageEmptyFolder": "این پوشه خالی است", + "messageEmptyFolder": "این پوشه خالی است", "@messageEmptyFolder": {}, - "messageCreateAddNewItem": "با استفاده از ... یک پوشه جدید ایجاد کنید، یا یک فایل اضافه کنید،", + "messageCreateAddNewItem": "با استفاده از یک پوشه جدید ایجاد کنید، یا یک فایل اضافه کنید", "@messageCreateAddNewItem": {}, - "messageReadOnlyContents": "در این مخزن فقط مجوز خواندن وجود دارد", + "messageReadOnlyContents": "این مخزن فقط خواندنی است.", "@messageReadOnlyContents": {}, - "messageLockedRepository": "این مخزن قفل شده است.", + "messageLockedRepository": "این مخزن قفل شده است.", "@messageLockedRepository": {}, - "messageBlindRepository": "این مخزن یک کپی با مدل [کور] است.", + "messageBlindRepository": "این مخزن یک کپی با مجوز کور است.", "@messageBlindRepository": {}, - "messageBlindRepositoryContent": "رمز عبور ارائه‌شده به شما امکان دسترسی برای مشاهده محتوای این مخزن را نمی‌دهد.", + "messageBlindRepositoryContent": "رمز عبور ارائه‌شده امکان مشاهده محتوای این مخزن را به شما نمی‌دهد.", "@messageBlindRepositoryContent": {}, - "messageInputPasswordToUnlock": "روی دکمه باز کردن قفل ضربه بزنید و رمز عبور را برای دسترسی به محتوای این مخزن وارد کنید.", + "messageInputPasswordToUnlock": "روی دکمه باز کردن قفل ضربه بزنید و رمز عبور را برای دسترسی به محتوای این مخزن وارد کنید.", "@messageInputPasswordToUnlock": {}, "messageUnlockRepository": "رمز عبور را برای باز کردن قفل وارد کنید. {name}", "@messageUnlockRepository": {}, @@ -192,17 +192,17 @@ "@messageWritingFileCanceled": {}, "messageDownloadingFileCanceled": "{name} - دانلود لغو شد", "@messageDownloadingFileCanceled": {}, - "messageRepositoryAlreadyExist": "این مخزن از قبل در برنامه با این نام وجود دارد \"{name}\".", + "messageRepositoryAlreadyExist": "این مخزن از قبل در برنامه با نامِ \"{name}\" وجود دارد.", "@messageRepositoryAlreadyExist": {}, - "messageMovingEntry": "این ویژگی هنگام جابجایی «ورودی» در دسترس نیست.", + "messageMovingEntry": "این ویژگی هنگام انتقال «ورودی» در دسترس نیست.", "@messageMovingEntry": {}, "messageRepositoryToken": "لینک را این‌جا قرار دهید", "@messageRepositoryToken": {}, - "messageRepositoryName": "به مخزن یک نام اختصاص دهید", + "messageRepositoryName": "نامی برای مخزن انتخاب کنید", "@messageRepositoryName": {}, "messageRepositoryNewName": "نام جدید مخزن", "@messageRepositoryNewName": {}, - "messageRepositoryAccessMode": "اجازه «دسترسی» داده شد: {access}", + "messageRepositoryAccessMode": "اجازه دسترسی داده شد: {access}", "@messageRepositoryAccessMode": {}, "messageRepositorySuggestedName": "پیشنهاد: {name}\n(برای استفاده از این نام این‌جا ضربه بزنید)", "@messageRepositorySuggestedName": {}, @@ -214,19 +214,19 @@ "@messageErrorRetypePassword": {}, "messageErrorTokenInvalid": "این توکن معتبر نیست.", "@messageErrorTokenInvalid": {}, - "messageErrorTokenValidator": "لطفاً یک توکن معتبر وارد کنید.", + "messageErrorTokenValidator": "لطفا یک توکن معتبر وارد کنید.", "@messageErrorTokenValidator": {}, "messageErrorTokenEmpty": "لطفا یک توکن وارد کنید.", "@messageErrorTokenEmpty": {}, "messageFolderName": "نام پوشه", "@messageFolderName": {}, - "messageConfirmFolderDeletion": "آیا اطمینان دارید که می‌خواهید این پوشه را حذف کنید؟", + "messageConfirmFolderDeletion": "مطمئنید که می‌خواهید این پوشه را حذف کنید؟", "@messageConfirmFolderDeletion": {}, - "messageConfirmNotEmptyFolderDeletion": "این پوشه خالی نیست\n\nآیا هنوز می‌خواهید آن را حذف کنید؟ (با این کار تمام محتویات آن حذف می‌شود)", + "messageConfirmNotEmptyFolderDeletion": "این پوشه خالی نیست\n\nهنوز می‌خواهید حذفش کنید؟ (با این کار تمام محتویاتش حذف می‌شود)", "@messageConfirmNotEmptyFolderDeletion": {}, "messageError": "خطا!", "@messageError": {}, - "messageAck": "زمانی استفاده خواهد شد که مشکلی بروز کند. سورپرایز شدن یا واکنش منفی به چیزی که طبق انتظار عمل نمی‌کند.\nدر گفتگوی مرتبط با خطاها استفاده می‌شود.", + "messageAck": "ای بابا!", "@messageAck": {}, "messageCreatingToken": "در حال ایجاد توکن اشتراکی…", "@messageCreatingToken": {}, @@ -236,9 +236,9 @@ "@messageTokenCopiedToClipboard": {}, "messageMoveEntryOrigin": "از {path}", "@messageMoveEntryOrigin": {}, - "messageConfirmFileDeletion": "آیا اطمینان دارید که می خواهید این فایل را حذف کنید؟", + "messageConfirmFileDeletion": "مطمئنید که می‌خواهید این فایل را حذف کنید؟", "@messageConfirmFileDeletion": {}, - "messageConfirmRepositoryDeletion": "آیا اطمینان دارید که می خواهید این مخزن را حذف کنید؟", + "messageConfirmRepositoryDeletion": "مطمئنید که می‌خواهید این مخزن را حذف کنید؟", "@messageConfirmRepositoryDeletion": {}, "mesageNoMediaPresent": "هیچ رسانه‌ای وجود ندارد.", "@mesageNoMediaPresent": {}, @@ -252,51 +252,51 @@ "@messageEntryAlreadyExist": {}, "messageFolderDeleted": "پوشه با موفقیت حذف شد: {name}", "@messageFolderDeleted": {}, - "messageExitOuiSync": "برای خروج، دوباره دکمه بازگشت را فشار دهید.", + "messageExitOuiSync": "برای خروج، دوباره دکمه بازگشت را بزنید.", "@messageExitOuiSync": {}, "messageInitializing": "در حال راه‌اندازی…", "@messageInitializing": {}, - "messageAddingFileToLockedRepository": "این مخزن قفل شده یا یک مدل کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید.", + "messageAddingFileToLockedRepository": "این مخزن قفل شده یا دارای مجوز کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید.", "@messageAddingFileToLockedRepository": {}, - "messageAddingFileToReadRepository": "این مخزن یک کپی فقط قابل خواندن است.", + "messageAddingFileToReadRepository": "این مخزن یک کپی فقط خواندنی است.", "@messageAddingFileToReadRepository": {}, "messageFileName": "نام فایل", "@messageFileName": {}, "messageSelectLocation": "مکان را انتخاب کنید", "@messageSelectLocation": {}, - "messageSaveToLocation": "فایل موردنظر را در این پوشه ذخیره کنید", + "messageSaveToLocation": "فایل مورد نظر را در این پوشه ذخیره کنید", "@messageSaveToLocation": {}, - "messageOuiSyncDesktopTitle": "Ouisync", + "messageOuiSyncDesktopTitle": "وی‌سینک", "@messageOuiSyncDesktopTitle": {}, "messageFilePreviewNotAvailable": "پیش‌نمایش فایل هنوز در دسترس نیست", "@messageFilePreviewNotAvailable": {}, "messageBackgroundNotificationAndroid": "در حال اجرا", "@messageBackgroundNotificationAndroid": {}, - "messageBackgroundAndroidPermissions": "به زودی سیستم عامل از شما مجوز اجرای این اپلیکیشن را در پس‌زمینه درخواست می‌کند.\n\nاین (مجوز) برای ادامه همگام‌سازی لازم است در حالتی که اپلیکیشن در پیش‌زمینه اجرا نمی‌شود", + "messageBackgroundAndroidPermissions": "به‌زودی سیستم‌عامل از شما اجازه می‌خواهد تا این برنامه را در پس‌زمینه اجرا کند.\n\nاین کار برای ادامه همگام‌سازی هنگامی که برنامه در پیش‌زمینه فعال نیست، ضروری است", "@messageBackgroundAndroidPermissions": {}, - "messageSelectAccessMode": "یک مجوز برای ایجاد پیوند (لینک) به‌اشتراک‌گذاری انتخاب کنید", + "messageSelectAccessMode": "یک مجوز برای ایجاد لینک اشتراک‌گذاری انتخاب کنید", "@messageSelectAccessMode": {}, - "messageNothingHereYet": "اینجا هنوز چیزی وجود ندارد!", + "messageNothingHereYet": "هنوز چیزی این‌جا نیست!", "@messageNothingHereYet": {}, "messageLockingAllRepos": "در حال قفل کردن تمام مخازنی که باز هستند…", "@messageLockingAllRepos": {}, - "messageLockOpenRepos": "آیا می‌خواهید تمام مخازنی که باز هستند را قفل کنید؟\n\n({number} باز)", + "messageLockOpenRepos": "آیا می‌خواهید تمام مخازنی را که باز هستند قفل کنید؟\n\n({number} باز)", "@messageLockOpenRepos": {}, "messageShareWithWR": "کد QR را به‌ اشتراک بگذارید", "@messageShareWithWR": {}, - "messageScanQROrShare": "این (کد QR) را با دستگاه دیگر خود اسکن کنید یا با همتایان خود به اشتراک بگذارید", + "messageScanQROrShare": "این کد را با دستگاه دیگر خود اسکن کنید یا با همتاهای خود به اشتراک بگذارید", "@messageScanQROrShare": {}, "messageAddRepoQR": "یک مخزن را با استفاده از یک کد QR وارد کنید", "@messageAddRepoQR": {}, "messageOr": "یا", "@messageOr": {}, - "messageAddRepoLink": "یک مخزن را با استفاده از پیوند (لینک) توکن وارد کنید", + "messageAddRepoLink": "یک مخزن را با استفاده از لینک توکن وارد کنید", "@messageAddRepoLink": {}, - "messageActionNotAvailable": "این گزینه در مخازنی که فقط قابل هستند، موجود نیست", + "messageActionNotAvailable": "این گزینه در مخازن فقط خواندنی موجود نیست", "@messageActionNotAvailable": {}, - "messageAccessModeDisabled": "مجوز موردنظر نمی تواند بیشتر از حالت دسترسی فعلی مخزن باشد: {access}", + "messageAccessModeDisabled": "مجوز مورد نظر نمی‌تواند بالاتر از حالت دسترسی فعلی مخزن باشد: {access}", "@messageAccessModeDisabled": {}, - "messageShareActionDisabled": "برای ایجاد پیوند مخزن ابتدا باید یک مجوز انتخاب کنید", + "messageShareActionDisabled": "برای ایجاد لینک مخزن ابتدا باید یک مجوز انتخاب کنید", "@messageShareActionDisabled": {}, "messageChangeExtensionAlert": "تغییر پسوند یک فایل می تواند آن‌را غیرقابل استفاده کند", "@messageChangeExtensionAlert": {}, @@ -322,21 +322,21 @@ "@iconDownload": {}, "iconPreview": "پیش‌نمایش", "@iconPreview": {}, - "iconShare": "به‌اشتراک‌گذاری", + "iconShare": "اشتراک‌گذاری‌", "@iconShare": {}, "iconRename": "تغییر نام", "@iconRename": {}, - "iconMove": "حرکت دادن (انتقال)", + "iconMove": "انتقال", "@iconMove": {}, "iconDelete": "حذف", "@iconDelete": {}, - "iconCreateRepository": "ایجاد یک مخزن جدید", + "iconCreateRepository": "ایجاد مخزن جدید", "@iconCreateRepository": {}, "iconAddExistingRepository": "وارد کردن یک مخزن", "@iconAddExistingRepository": {}, "iconAccessMode": "حالت دسترسی", "@iconAccessMode": {}, - "iconShareTokenWithPeer": "این را با همتایان خود به‌‌اشتراک بگذارید", + "iconShareTokenWithPeer": "این را با همتاهای خود به‌‌اشتراک بگذارید", "@iconShareTokenWithPeer": {}, "actionCreateRepository": "ایجاد مخزن", "@actionCreateRepository": {}, @@ -358,15 +358,15 @@ "@actionCancel": {}, "actionDelete": "حذف", "@actionDelete": {}, - "actionMove": "حرکت دادن (انتقال)", + "actionMove": "انتقال", "@actionMove": {}, - "actionSave": "ذخیره کردن", + "actionSave": "ذخیره", "@actionSave": {}, - "actionUnlock": "بازکردن قفل", + "actionUnlock": "باز کردن قفل", "@actionUnlock": {}, "actionRetry": "دوباره سعی کنید", "@actionRetry": {}, - "actionShare": "به‌اشتراک‌گذاری", + "actionShare": "اشتراک‌گذاری‌", "@actionShare": {}, "actionRename": "تغییر نام", "@actionRename": {}, @@ -412,15 +412,15 @@ "@messageFile": {}, "titleRemoveBiometrics": "مشخصات بیومتریک را حذف کنید", "@titleRemoveBiometrics": {}, - "messageMissingBackgroundServicePermission": "اپلیکیشن Ouisync مجوز اجراشدن در پس‌زمینه را ندارد، باز کردن یک اپلیکیشن دیگر ممکن است، روند همگام‌سازی را متوقف کند", + "messageMissingBackgroundServicePermission": "اپلیکیشن وی‌سینک مجوز اجرا در پس‌زمینه را ندارد، باز کردن یک اپلیکیشن دیگر ممکن است روند همگام‌سازی را متوقف کند", "@messageMissingBackgroundServicePermission": {}, "messageEqValuesP7": "با الهام از اعلامیه جهانی حقوق بشر، اصول و ارزش‌های ما برای هر فرد، گروه و نهادی از جامعه که با آ‌ن‌ها همکاری می‌کنیم، از جمله ذی‌نفعان نرم‌افزار و خدماتی که منتشر می‌کنیم، اعمال می‌شود. تمام پروژه‌های ما با در نظر گرفتن اصول و ارزش‌های ما طراحی شده‌اند. دانش، ابزار و خدمات ما تا زمانی که اصول و شرایط‌‌مان رعایت شود، در دسترس این گروه‌ها و افراد است", "@messageEqValuesP7": {}, - "messageEqValuesP12": "ما از داخل کشورهای مختلف فعالیت می‌کنیم و از زمینه‌ها و گروه‌های متفاوت اجتماعی گردهم جمع شده‌ایم. ما به همراه هم برای جامعه‌ای فعالیت می‌کنیم که به حقوق دیگران در دنیای فیزیکی و دیجیتالی احترام بگذارد و از آن دفاع کند. اعلامیه جهانی حقوق بشر مجموعه ای از حقوق انسان را بیان می‌کند که الهام‌بخش کار ماست. ما معتقدیم که مردم حق و وظیفه دارند از این حقوق حمایت کنند.", + "messageEqValuesP12": "ما از داخل کشورهای مختلف فعالیت می‌کنیم و از زمینه‌ها و گروه‌های متفاوت اجتماعی گردهم جمع شده‌ایم. ما به همراه هم برای جامعه‌ای فعالیت می‌کنیم که به حقوق دیگران در دنیای فیزیکی و دیجیتالی احترام بگذارد و از آن دفاع کند. اعلامیه جهانی حقوق بشر مجموعه ای از حقوق انسان را بیان می‌کند که الهام‌بخش کار ماست. ما معتقدیم که مردم حق و وظیفه دارند از این حقوق حمایت کنند", "@messageEqValuesP12": {}, "messageReplaceExistingFile": "فایل موجود را جایگزین کنید", "@messageReplaceExistingFile": {}, - "messageUnsavedChanges": "شما تغییرات ذخیره‌نشده‌ای دارید\n\nآیا می خواهید آن‌ها را نادیده بگیرید؟", + "messageUnsavedChanges": "تغییرات ذخیره‌نشده‌ای دارید\n\nمی‌خواهید آن‌ها را نادیده بگیرید؟", "@messageUnsavedChanges": {}, "messageRepositoryIsNotOpen": "هیچ مخزنی باز نیست", "@messageRepositoryIsNotOpen": {}, @@ -440,7 +440,7 @@ "@titleSortBy": {}, "messageStrong": "قوی", "@messageStrong": {}, - "messageOnboardingShare": "همه فایل‌ها و پوشه‌های اضافه‌شده به Ouisync به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت استراحت، به‌صورت امن رمزنگاری شده‌اند.", + "messageOnboardingShare": "همه فایل‌ها و پوشه‌های اضافه‌شده به وی‌سینک به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت استراحت، به‌صورت امن رمزنگاری شده‌اند.", "@messageOnboardingShare": {}, "messageRepositoryNewPassword": "رمز عبور جدید", "@messageRepositoryNewPassword": {}, @@ -450,11 +450,11 @@ "@titlePrivacyPolicy": {}, "labelConnectionType": "نوع اتصال", "@labelConnectionType": {}, - "messageFileAlreadyExist": "{name} از قبل در این‌جا وجود دارد.\n\nچه‌کاری قصد دارید انجام دهید؟", + "messageFileAlreadyExist": "{name} از قبل در این‌جا وجود دارد.\n\nمی‌خواهید چه کاری بکنید؟", "@messageFileAlreadyExist": {}, - "messageNoRepoIsSelected": "هیچ مخزنی انتخاب نشده‌ است", + "messageNoRepoIsSelected": "هیچ مخزنی انتخاب نشده‌", "@messageNoRepoIsSelected": {}, - "messageVerbosity": "درازنویسی ثبت رویدادها", + "messageVerbosity": "سطح جزئیات گزارش", "@messageVerbosity": {}, "messageLogLevelAll": "همه", "@messageLogLevelAll": {}, @@ -462,29 +462,29 @@ "@labelInternalIP": {}, "messageValidateLocalPassword": "تایید رمز عبور محلی", "@messageValidateLocalPassword": {}, - "messageUnlockRepoFailed": "رمز عبور موردنظر مخزن را باز نکرد", + "messageUnlockRepoFailed": "رمز عبور، مخزن را باز نکرد", "@messageUnlockRepoFailed": {}, - "messagePasswordCopiedClipboard": "رمز عبور در حافظه کوتاه‌مدت کپی شد", + "messagePasswordCopiedClipboard": "رمز عبور در کلیپ‌بورد کپی شد", "@messagePasswordCopiedClipboard": {}, - "labelLocalIPv6": "IPv6 محلی", + "labelLocalIPv6": "Local IPv6‌", "@labelLocalIPv6": {}, "messageRemoveBiometricValidation": "حذف اعتبارسنجی بیومتریکی", "@messageRemoveBiometricValidation": {}, "messageRousseau": "ژان ژاک روسو", "@messageRousseau": {}, - "messageTermsPrivacyP1": "این شرایط استفاده از Ouisync «توافقنامه»، همراه با سند حریم خصوصی ما (مجموعاً «شرایط»)، بر استفاده شما از Ouisync - یک پروتکل و نرم‌افزار همگام‌سازی فایل به‌طور آنلاین، حاکم است.", + "messageTermsPrivacyP1": "این شرایط استفاده از وی‌سینک (که از این پس «توافق‌نامه» نامیده می‌شود)، به همراه اطلاعیه حریم خصوصی ما (که مجموعا «شرایط» نامیده می‌شوند)، استفاده شما از وی‌سینک - یک پروتکل و نرم‌افزار همگام‌سازی فایل آنلاین - را تعیین می‌کنند.", "@messageTermsPrivacyP1": {}, - "messageErrorChangingPassword": "در تغییر رمز عبور مشکلی وجود داشت. لطفا دوباره تلاش کنید", + "messageErrorChangingPassword": "در تغییر رمز عبور مشکلی پیش آمد. لطفا دوباره تلاش کنید", "@messageErrorChangingPassword": {}, "messageLogLevelErrorWarn": "خطا و هشدار", "@messageLogLevelErrorWarn": {}, - "titleUPnP": "معیار اجرا و اتصال همگانی", + "titleUPnP": "معیار اجرا و اتصال همگانی (UPnP)", "@titleUPnP": {}, "titleIssueTracker": "ردیاب اشکالات", "@titleIssueTracker": { "description": "link to github issue tracker in setting/about" }, - "labelTcpListenerEndpointV4": "گوش‌دادن به TCP IPv4", + "labelTcpListenerEndpointV4": "Listening on TCP IPv4‌", "@labelTcpListenerEndpointV4": {}, "titleLogData": "ثبت اطلاعات", "@titleLogData": {}, @@ -492,61 +492,61 @@ "@titleChildrensPrivacy": {}, "messageLogLevelError": "فقط خطا", "@messageLogLevelError": {}, - "labelExternalIPv6": "IPv6 خارجی", + "labelExternalIPv6": "External IPv6‌", "@labelExternalIPv6": {}, "messageFAQ": "پرسش‌های متداول", "@messageFAQ": {}, "messageDeclarationDOS": "اعلامیه خدمات آنلاین توزیع‌شده", "@messageDeclarationDOS": {}, - "messageRepoMissing": "مخزن موردنظر دیگر آن‌جا نیست", + "messageRepoMissing": "مخزن مورد نظر دیگر آن‌جا نیست", "@messageRepoMissing": {}, "titleOurPrinciples": "اصول ما", "@titleOurPrinciples": {}, "titleSecurity": "امنیت", "@titleSecurity": {}, - "messageRepoDeletionFailed": "(درخواست) حذف مخزن ناموفق بود", + "messageRepoDeletionFailed": "حذف مخزن ناموفق بود", "@messageRepoDeletionFailed": {}, "messageWeak": "ضعیف", "@messageWeak": {}, "messageEthernet": "شبکه محلی کابلی", "@messageEthernet": {}, - "messageSaveLogFile": "ذخیره‌سازی فایل مرتبط با ثبت رویدادها", + "messageSaveLogFile": "ذخیره فایل گزارش", "@messageSaveLogFile": {}, "titleEqualitiesValues": "ارزش‌های سازمان eQualitie", "@titleEqualitiesValues": {}, - "titleSecurityPractices": "۳.۳ تمرینات امنیتی", + "titleSecurityPractices": "۳.۳. تمرینات امنیتی", "@titleSecurityPractices": {}, - "labelAttachLogs": "ضمیمه فایل ثبت رویدادها", + "labelAttachLogs": "ضمیمه کردن فایل گزارش‌ها", "@labelAttachLogs": {}, "messageChangeLocalPassword": "تغییر رمز عبور محلی", "@messageChangeLocalPassword": {}, "titleJustLegalSociety": "جامعه عدالت‌محور و قانونی", "@titleJustLegalSociety": {}, - "messageRepoMissingErrorDescription": "ما نتوانستیم مخزن را در مکانی که معمولا هست، پیدا کنیم \"{name}\"", + "messageRepoMissingErrorDescription": "نتوانستیم این مخزن را در مکانی که معمولا هست، بیابیم: \"{name}\"", "@messageRepoMissingErrorDescription": {}, "messagePassword": "رمز عبور", "@messagePassword": {}, - "titleOnboardingPermissions": "تنظیم مجوزهایی برای همکاری، پخش و ذخیره‌سازی به‌طور ساده", + "titleOnboardingPermissions": "تنظیم مجوزها برای همکاری، پخش یا صرفا ذخیره‌سازی", "@titleOnboardingPermissions": {}, - "messageRepoDeletionErrorDescription": "ما نتوانستیم مخزن را حذف کنیم \"{name}\"", + "messageRepoDeletionErrorDescription": "نتوانستیم این مخزن را حذف کنیم: \"{name}\"", "@messageRepoDeletionErrorDescription": {}, - "titleUnsavedChanges": "تغییرات ذخیره‌ نشده", + "titleUnsavedChanges": "تغییرات ذخیره‌‌نشده", "@titleUnsavedChanges": {}, "titleChangePassword": "تغییر رمز عبور", "@titleChangePassword": {}, "messageErrorUpdatingSecureStorage": "به‌روزرسانی رمز عبور در حافظه امن ناموفق بود", "@messageErrorUpdatingSecureStorage": {}, - "messageNewPasswordCopiedClipboard": "رمز عبور جدید در حافظه کوتاه‌مدت کپی شد", + "messageNewPasswordCopiedClipboard": "رمز عبور جدید در کلیپ‌بورد کپی شد", "@messageNewPasswordCopiedClipboard": {}, "titleTermsOfUse": "۲. شرایط استفاده", "@titleTermsOfUse": {}, - "messageQuoteMainIsFree": "«انسان آزاد به دنیا می‌آید و همه‌جا در زنجیر است»", + "messageQuoteMainIsFree": "«انسان آزاد زاده می‌شود، اما همه جا در زنجیر است.»", "@messageQuoteMainIsFree": {}, "messageRemovaLocalPassword": "حذف رمز عبور محلی", "@messageRemovaLocalPassword": {}, - "messageEqValuesP14": "ما تدابیری را برای کاهش سوء‌استفاده از محصولات و خدمات خود در نظر گرفته‌ایم. وقتی از هرگونه استفاده‌ای که اصول یا شرایط خدمات ما را نقض می‌کند، آگاه می‌شویم، برای جلوگیری از آن اقدام می‌کنیم. با تکیه بر سیاست‌های داخلی خود، ما به دقت در مورد اقداماتی که ممکن است اصول ما را به خطر بیندازند، بررسی لازم را انجام می‌دهیم. رویه‌های ما بر اساس تجربه و بهترین شیوه‌ها به تکامل خود ادامه خواهند داد تا بتوانیم به تعادل مناسب بین امکان دسترسی آزاد به محصولات و خدمات خود و رعایت اصول و ارزش‌های خود دست یابیم.", + "messageEqValuesP14": "ما تدابیری را برای کاهش سوء‌استفاده از محصولات و خدمات خود در نظر گرفته‌ایم. وقتی از هرگونه استفاده‌ای که اصول یا شرایط خدمات ما را نقض می‌کند، آگاه می‌شویم، برای جلوگیری از آن اقدام می‌کنیم. با تکیه بر سیاست‌های داخلی خود، ما به دقت در مورد اقداماتی که ممکن است اصول ما را به خطر بیندازند، بررسی لازم را انجام می‌دهیم. رویه‌های ما بر اساس تجربه و بهترین شیوه‌ها به تکامل خود ادامه خواهند داد تا بتوانیم به تعادل مناسب بین امکان دسترسی آزاد به محصولات و خدمات خود و رعایت اصول و ارزش‌های خود دست یابیم", "@messageEqValuesP14": {}, - "messageTerms1_1": "حقوق مرتبط با حفاظت از اطلاعات شخصی، از جمله اصول و ارزش‌های اساسی یا قانون: [] را نقض می‌کنند ", + "messageTerms1_1": "حقوق حفاظت از اطلاعات شخصی را نقض می‌کند، از جمله ارزش‌های بنیادین یا مفاد ", "@messageTerms1_1": {}, "messageErrorNewPasswordSameOldPassword": "رمز عبور جدید همان رمز عبور قدیمی است", "@messageErrorNewPasswordSameOldPassword": {}, @@ -564,7 +564,7 @@ "@messageBioAuthFailed": {}, "messageFileIsDownloading": "فایل از قبل در حال آپلود است", "@messageFileIsDownloading": {}, - "titleTermsPrivacy": "شرایط استفاده و سند حریم خصوصی Ouisync", + "titleTermsPrivacy": "شرایط استفاده و سند حریم خصوصی وی‌سینک", "@titleTermsPrivacy": {}, "messageUnlockRepoOk": "به‌عنوان کپی {access} باز شد", "@messageUnlockRepoOk": {}, @@ -574,21 +574,21 @@ "@titlePIPEDA": {}, "messageEqValuesP6": "ما یک مجموعه بین‌المللی از فعالین با پیشینه‌ها و عقاید مختلف هستیم که در کنار هم برای دفاع از اصول مشترک میان خود ایستاده‌ایم. ما توسعه‌دهندگان نرم‌افزار، رمزنگاران، کارشناسان امنیت، و همچنین مربیان، جامعه‌شناسان، مورخان، انسان‌شناسان و روزنامه‌نگاران هستیم. ما ابزارهای باز (متن‌باز) و قابل استفاده مجدد را با تمرکز بر حریم خصوصی، امنیت آنلاین و مدیریت اطلاعات بهتر توسعه می‌دهیم. ما فعالیت‌های خود را با کمک‌های مالی دولتی و مشاوره با بخش خصوصی تامین می‌کنیم. ما به اینترنت عاری از کنترل و نظارت‌، سانسور و سرکوب اعتقاد داریم", "@messageEqValuesP6": {}, - "messageEqValuesP8": "حق «حریم خصوصی» یک حق اساسی است که هدف ما حفظ آن است در هر زمان و هر کجا که امکان دارد. حریم خصوصی ذی‌نفعان مستقیم ما در فعالیتی که می‌کنیم، ارزشمند و مقدس است. ابزارها، خدمات و سیاست‌های داخلی ما به همین منظور طراحی شده‌اند. ما از تمامی منابع فنی و قانونی که در اختیار داریم، برای حفظ حریم خصوصی ذی‌نفعان خود استفاده خواهیم کرد. لطفاً به سند حریم خصوصی ما مراجعه کنید. ", + "messageEqValuesP8": "حق «حریم خصوصی» یک حق اساسی است که هدف ما حفظ آن است در هر زمان و هر کجا که امکان دارد. حریم خصوصی ذی‌نفعان مستقیم ما در فعالیتی که می‌کنیم، ارزشمند و مقدس است. ابزارها، خدمات و سیاست‌های داخلی ما به همین منظور طراحی شده‌اند. ما از تمامی منابع فنی و قانونی که در اختیار داریم، برای حفظ حریم خصوصی ذی‌نفعان خود استفاده خواهیم کرد. لطفا به سند حریم خصوصی ما مراجعه کنید. ", "@messageEqValuesP8": {}, "titleSetPasswordFor": "انتخاب رمز عبور", "@titleSetPasswordFor": {}, - "messagePasswordStrength": "میزان قدرتمندی رمز عبور", + "messagePasswordStrength": "قدرت رمز عبور", "@messagePasswordStrength": {}, "titleRepositoryName": "نام مخزن", "@titleRepositoryName": {}, "messageRemovedInBrackets": "حذف شد", "@messageRemovedInBrackets": {}, - "messageTermsPrivacyP3": "اپلیکیشن Ouisync مطابق با اصول و ارزش‌های eQuality ساخته شده است. با استفاده از این نرم‌افزار، موافقت می‌کنید که از Ouisync برای انتشار، به‌اشتراک‌گذاری یا ذخیره مطالبی که مغایر با ارزش‌های اساسی یا قوانین ایالت کبک یا کشور کانادا یا اعلامیه جهانی حقوق بشر است، از جمله محتوایی که:", + "messageTermsPrivacyP3": "برنامه وی‌سینک با توجه به ارزش‌های eQualitie ساخته شده است. با استفاده از این نرم‌افزار، شما موافقت می‌کنید که از وی‌سینک برای انتشار، اشتراک‌گذاری یا ذخیره مطالبی که با ارزش‌های بنیادین آن، قوانین استان کبک یا کانادا، یا منشور بین‌المللی حقوق بشر در تضاد باشد، استفاده نخواهید کرد، از جمله محتوایی که:", "@messageTermsPrivacyP3": {}, "messageNewPassword": "رمز عبور جدید", "@messageNewPassword": {}, - "labelQuicListenerEndpointV6": "گوش‌دادن به QUIC/UDP IPv6", + "labelQuicListenerEndpointV6": "Listening on QUIC/UDP IPv6‌", "@labelQuicListenerEndpointV6": {}, "messageUnlockUsingBiometrics": "با استفاده از بیومتریک قفل را باز کنید", "@messageUnlockUsingBiometrics": {}, @@ -598,19 +598,19 @@ "@messageCameraPermission": {}, "messageTerms3": "حاوی یا ترویج‌کننده اعمال شدید خشونت‌آمیز یا فعالیت های تروریستی، از جمله ترور یا تبلیغات خشونت‌آمیز افراطی", "@messageTerms3": {}, - "titleDataCollection": "۳.۱ جمع‌آوری اطلاعات", + "titleDataCollection": "۳.۱. جمع‌آوری اطلاعات", "@titleDataCollection": {}, - "messageDataSharingP1": "Ouisync (و eQualit.ie) هیچ اطلاعاتی را با طرف‌های شخص ثالث به‌اشتراک نمی‌گذارد", + "messageDataSharingP1": "وی‌سینک (و eQualit.ie) هیچ اطلاعاتی را با طرف‌های ثالث به‌اشتراک نمی‌گذارد", "@messageDataSharingP1": {}, "messageErrorOpeningRepo": "خطا در باز کردن مخزن", "@messageErrorOpeningRepo": {}, - "messageErrorAuthenticatingBiometrics": "خطایی در احراز‌هویت با استفاده از روش‌های بیومتریک وجود داشت. لطفا دوباره تلاش کنید", + "messageErrorAuthenticatingBiometrics": "خطایی در احراز‌هویت با روش بیومتریک پیش آمد. لطفا دوباره تلاش کنید", "@messageErrorAuthenticatingBiometrics": {}, "messageTapForTermsPrivacy": "برای خواندن شرایط استفاده و سند حریم خصوصی، این‌جا ضربه بزنید", "@messageTapForTermsPrivacy": {}, - "messageGrantingRequiresSettings": "اعطای این مجوز نیاز به رفتن به بخش تنظیمات دارد:\n\nتنظیمات»»»اپ‌ها و اعلان‌ها", + "messageGrantingRequiresSettings": "برای دسترسی این مجوز باید به تنظیمات بروید:\n\nتنظیمات > اپ‌ها و اعلان‌ها", "@messageGrantingRequiresSettings": {}, - "messageErrorUnhandledState": "خطا: حالت کنترل‌نشده", + "messageErrorUnhandledState": "خطا: وضعیت غیر قابل کنترل", "@messageErrorUnhandledState": {}, "messageStoragePermission": "برای دسترسی به فایل‌ها مورد نیاز است", "@messageStoragePermission": {}, @@ -622,43 +622,43 @@ "@titleContactUs": {}, "messageLogLevelErroWarnInfoDebug": "خطا، هشدار، اطلاعات و رفع اشکال", "@messageLogLevelErroWarnInfoDebug": {}, - "messageEqValuesP2": "افراد شجاع زندگی و آزادی خود را برای دفاع از حقوق بشر، برای بسیج افکار عمومی، برای انتفاد و برای افشای عاملان فساد و سواستفاده، به خطر می‌اندازند. افراد شجاع از دیگران و ایده‌ها حمایت‌ می‌کنند و نگرانی‌های خود را با دنیا به‌اشتراک می‌گذارند. این افراد شجاع حقوق بشر را به‌طور آنلاین نیز به نمایش می‌گذارند", + "messageEqValuesP2": "افراد شجاع زندگی و آزادی خود را برای دفاع از حقوق بشر، برای بسیج افکار عمومی، برای انتفاد و برای افشای عاملان فساد و سوءاستفاده، به خطر می‌اندازند. افراد شجاع از دیگران و ایده‌ها حمایت‌ می‌کنند و نگرانی‌های خود را با دنیا به‌اشتراک می‌گذارند. این افراد شجاع حقوق بشر را به‌طور آنلاین نیز به نمایش می‌گذارند", "@messageEqValuesP2": {}, "messageErrorChangingLocalPassword": "تغییر رمز عبور محلی ناموفق بود", "@messageErrorChangingLocalPassword": {}, "messageMedium": "متوسط", "@messageMedium": {}, - "messageOnboardingAccess": "فایل‌ها را در همه دستگاه‌های خود یا با دیگران به اشتراک بگذارید و فضای ذخیره سازی ابری امن خود را بسازید!", + "messageOnboardingAccess": "فایل‌ها را با تمامی دستگاه‌های خود یا با دیگران به اشتراک بگذارید و فضای ذخیره‌سازی ابری امن خود را بسازید!", "@messageOnboardingAccess": {}, - "labelTcpListenerEndpointV6": "گوش‌دادن به TCP IPv6", + "labelTcpListenerEndpointV6": "Listening on TCP IPv6‌", "@labelTcpListenerEndpointV6": {}, - "messageLocalDiscovery": "کشف محلی", + "messageLocalDiscovery": "شناسایی شبکه محلی", "@messageLocalDiscovery": {}, "messagePrivacyIntro": "این بخش برای اطلاع رسانی به بازدیدکنندگان در مورد سیاست‌های ما در مورد جمع‌آوری، استفاده و افشای اطلاعات شخصی در صورتی که کسی تصمیم به استفاده از سرویس ما داشته باشد، استفاده می شود", "@messagePrivacyIntro": {}, - "messageOpenFileError": "خطا در بازکردن فایل {name}", + "messageOpenFileError": "خطا در باز کردن فایل {name}", "@messageOpenFileError": {}, "messageStorage": "فضای ذخیره‌سازی", "@messageStorage": {}, - "labelExternalIPv4": "IPv4 خارجی", + "labelExternalIPv4": "External IPv4‌", "@labelExternalIPv4": {}, "messageTerms4": "دفاع از تعصب، نفرت‌پراکنی، یا تحریک خشونت علیه هر فرد یا گروهی از مردم بر اساس نژاد، مذهب، قومیت، ملیت، جنسیت، هویت جنسیتی، گرایش جنسی، ناتوانی، نقص یا هر ویژگی دیگر مرتبط با آن‌ها است. تبعیض یا به حاشیه‌راندن سیستماتیک", "@messageTerms4": {}, - "messageOnboardingPermissions": "مخازن را می‌توان به صورت خواندنی-نوشتنی، فقط خواندنی یا «کور» (شما فایل‌ها را برای دیگران ذخیره می‌کنید، اما نمی‌توانید به آن‌ها دسترسی داشته باشید) به اشتراک گذاشت", + "messageOnboardingPermissions": "مخازن می‌توانند به صورت خواندنی-نوشتنی، فقط خواندنی یا کور به اشتراک گذاشته شوند (در این حالت فایل‌ها را برای دیگران ذخیره می‌کنید، اما به آن‌ها دسترسی ندارید)", "@messageOnboardingPermissions": {}, "messageEqValuesP3": "اینترنت بستری برای بیان آزاد و تعیین سرنوشت به دست خود است. مانند هر ابزار ارتباطی، اینترنت از سانسور، نظارت، حمله‌ها و تلاش‌های بازیگران دولتی و گروه‌های جنایتکار برای خاموش‌کردن صدای مخالفان مصون نیست. هنگامی که ارائه نظر و بیان دموکراتیک جرم‌انگاری شود، زمانی که تبعیض قومی و سیاسی وجود داشته باشد، اینترنت به میدان جنگ دیگری برای مقاومت غیرخشونت‌آمیز تبدیل می‌شود", "@messageEqValuesP3": {}, "messageErrorOpeningRepoDescription": "آماده‌سازی اولیه مخزن {name} ناموفق بود", "@messageErrorOpeningRepoDescription": {}, - "messageLogViewer": "نمایشگر ثبت رویدادها", + "messageLogViewer": "نمایشگر ثبت گزارش", "@messageLogViewer": {}, - "labelRepositoryCurrentPassword": "رمز عبور حال حاضر", + "labelRepositoryCurrentPassword": "رمز عبور فعلی", "@labelRepositoryCurrentPassword": {}, "titlePrivacy": "حریم خصوصی", "@titlePrivacy": {}, "titleOnboardingShare": "ارسال و دریافت فایل‌ها به‌طور امن", "@titleOnboardingShare": {}, - "messageEqValuesP1": "حقوق اساسی و آزادی‌های اساسی، ذاتی، غیرقابل انکار و به‌طور یکسان برای همگان اعمال می‌شود. حقوق بشر امری جهانی است؛ در حقوق بین‌الملل حمایت‌شده و تصریح‌شده در: ", + "messageEqValuesP1": "حقوق اساسی و آزادی‌های اساسی ذاتی و سلب‌نشدنی‌اند و به‌طور برابر برای همگان اعمال می‌شوند. حقوق بشر جهانی است؛ در قوانین بین‌الملل محافظت شده و در: ", "@messageEqValuesP1": {}, "messageBiometricValidationRemoved": "اعتبارسنجی بیومتریکی حذف شد", "@messageBiometricValidationRemoved": {}, @@ -666,19 +666,19 @@ "@messageBy": {}, "messageAddLocalPassword": "اضافه‌کردن رمز عبور محلی", "@messageAddLocalPassword": {}, - "messageTerms2": "شامل مطالب استثمار جنسی کودکان (از جمله مطالبی که ممکن است موارد مرتبط با سوءاستفاده جنسی غیرقانونی از کودکان نباشد، اما با این وجود سوءاستفاده جنسی از خردسالان را ترویج می کند)، پورنوگرافی غیرقانونی یا در غیر این‌صورت ناشایست هستند.", + "messageTerms2": "شامل محتوای استثمار جنسی کودکان (از جمله محتوایی که ممکن است به لحاظ قانونی سوءاستفاده جنسی از کودکان محسوب نشود اما همچنان استثمار جنسی کودکان را ترویج می‌کند)، پورنوگرافی غیرقانونی، یا هرگونه محتوای غیر اخلاقی باشد", "@messageTerms2": {}, "messageRepoAuthFailed": "خطا در احراز هویت مخزن", "@messageRepoAuthFailed": {}, - "titleDataSharing": "۳.۲ به‌اشتراک‌گذاری اطلاعات", + "titleDataSharing": "۳.۲. به‌اشتراک‌گذاری اطلاعات", "@titleDataSharing": {}, - "messageTermsPrivacyP2": "با نصب و اجرای اپلیکیشن Ouisync، موافقت خود را برای تعهد و رعایت این توافق‌نامه میان شما و eQualitie inc اعلام می‌کنید. («eQualitie»، «ما» یا «ما»). استفاده از اپلیکیشن Ouisync و شبکه Ouisync (خدمات) توسط eQualitie بدون هیچ هزینه‌ای ارائه می‌شود و برای استفاده همانطور که هست، در نظر گرفته شده است.", + "messageTermsPrivacyP2": "با نصب و اجرای برنامه وی‌سینک، شما موافقت خود را با این توافق‌نامه بین خود و شرکت eQualitie inc. («eQualitie» یا «ما») اعلام می‌کنید و متعهد به رعایت آن می‌شوید. استفاده از برنامه وی‌سینک و شبکه وی‌سینک (که از این پس «سرویس» نامیده می‌شود) توسط eQualitie به صورت رایگان ارائه می‌شود و برای استفاده به همان شکل که هست، در نظر گرفته شده است", "@messageTermsPrivacyP2": {}, "titleChangesToTerms": "تغییرات به این شرایط", "@titleChangesToTerms": {}, "messageGeneratePassword": "ایجاد رمز عبور", "@messageGeneratePassword": {}, - "messageGranted": "اعطا شد", + "messageGranted": "دسترسی داده شد", "@messageGranted": {}, "messageRemoveBiometrics": "حذف روش‌های بیومتریکی", "@messageRemoveBiometrics": {}, @@ -686,7 +686,7 @@ "@messageVPN": {}, "messageErrorAddingSecureStorge": "اضافه‌کردن یک رمز عبور محلی ناموفق بود", "@messageErrorAddingSecureStorge": {}, - "labelQuicListenerEndpointV4": "گوش‌دادن به QUIC/UDP IPv4", + "labelQuicListenerEndpointV4": "Listening on QUIC/UDP IPv4‌", "@labelQuicListenerEndpointV4": {}, "messagePermissionRequired": "این مجوز لازم است", "@messagePermissionRequired": {}, @@ -694,7 +694,7 @@ "@titleOnboardingAccess": {}, "messageErrorRemovingPassword": "حذف رمز عبور ناموفق بود", "@messageErrorRemovingPassword": {}, - "messageSettingsRuntimeID": "شناسه زمان اجرا", + "messageSettingsRuntimeID": "شناسه زمان اجرا (Runtime ID)", "@messageSettingsRuntimeID": {}, "messageEqValuesP4": "ماموریت ما ترویج و دفاع از آزادی‌های اساسی و حقوق بشر، از جمله جریان آزاد اطلاعات به صورت آنلاین است. هدف ما ایجاد فناوری در دسترس و بهبود مجموعه مهارت‌های مورد نیاز برای دفاع از حقوق و آزادی‌های اساسی بشر در عصر دیجیتال است", "@messageEqValuesP4": {}, @@ -706,7 +706,7 @@ "@messageLogLevelErrorWarnInfo": {}, "messageTerms1_2": "(قانون حفاظت از اطلاعات شخصی و اسناد الکترونیکی)", "@messageTerms1_2": {}, - "titleDeletionDataServer": "۳.۴ حذف اطلاعات شما از سرور [Always-On-Peer] ما", + "titleDeletionDataServer": "۳.۴. حذف اطلاعات شما از سرورِ همیشه همتابه‌همتای ما", "@titleDeletionDataServer": {}, "messageBluetooth": "بلوتوث", "@messageBluetooth": {}, @@ -714,21 +714,21 @@ "@messageGood": {}, "messageWiFi": "وای‌فای", "@messageWiFi": {}, - "messageSyncMobileData": "همگام‌سازی هنگام استفاده از اینترنت همراه", + "messageSyncMobileData": "همگام‌سازی هنگام استفاده از دیتای موبایل", "@messageSyncMobileData": {}, - "messageDataCollectionP1": "تیم Ouisync برای حریم خصوصی کاربر ارزش قائل است و بنابراین هیچ اطلاعات کاربری را جمع آوری نمی‌کند.", + "messageDataCollectionP1": "تیم وی‌سینک برای حریم خصوصی کاربر ارزش قائل است و بنابراین هیچ اطلاعات کاربری را جمع آوری نمی‌کند", "@messageDataCollectionP1": {}, - "messageTapForValues": "برای خواندن اصول (ارزش‌ها) ما این‌جا ضربه بزنید", + "messageTapForValues": "برای خواندن ارزش‌های ما این‌جا ضربه بزنید", "@messageTapForValues": {}, - "messageEqValuesP13": "ما درک می‌کنیم که ابزارها و خدمات ما می‌توانند برای نقض این اصول و ارزش‌ها و شرایط خدمات ما مورد سوء‌استفاده قرار گیرند، و قاطعانه و فعالانه چنین استفاده‌ای را محکوم و منع می‌کنیم. ما نه اجازه استفاده از نرم‌افزار و خدمات خود را برای پیشبرد فعالیت‌های غیرقانونی می‌دهیم و نه به تبلیغ سخنانی که مشوق نفرت‌پراکنی هستند یا ترویج خشونت می‌کنند، از طریق اینترنت، کمک می‌کنیم.", + "messageEqValuesP13": "ما درک می‌کنیم که ابزارها و خدمات ما می‌توانند برای نقض این اصول و ارزش‌ها و شرایط خدمات ما مورد سوء‌استفاده قرار گیرند، و قاطعانه و فعالانه چنین استفاده‌ای را محکوم و منع می‌کنیم. ما نه اجازه استفاده از نرم‌افزار و خدمات خود را برای پیشبرد فعالیت‌های غیرقانونی می‌دهیم و نه به تبلیغ سخنانی که مشوق نفرت‌پراکنی هستند یا ترویج خشونت می‌کنند، از طریق اینترنت، کمک می‌کنیم", "@messageEqValuesP13": {}, - "messageRememberSavePasswordAlert": "به‌یاد داشته باشید که رمز عبور را به‌طور ایمن ذخیره کنید. اگر آن را فراموش کردید، راهی برای بازیابی آن وجود ندارد.", + "messageRememberSavePasswordAlert": "به‌یاد داشته باشید که رمز عبور را به‌طور ایمن ذخیره کنید. در صورت فراموشی، راهی برای بازیابی وجود ندارد.", "@messageRememberSavePasswordAlert": {}, "titleFAQShort": "پرسش‌های متداول", "@titleFAQShort": {}, - "messageInternationalBillHumanRights": "اعلامیه جهانی حقوق بشر", + "messageInternationalBillHumanRights": "اعلامیه جهانی حقوق بشر به رسمیت شناخته شده است", "@messageInternationalBillHumanRights": {}, - "messageNone": "هیچ‌کدام", + "messageNone": "هیچ کدام", "@messageNone": {}, "titleSaveChanges": "ذخیره تغییرات", "@titleSaveChanges": {}, @@ -746,7 +746,7 @@ "@titleOurMission": {}, "messageMobile": "موبایل", "@messageMobile": {}, - "messagePeerExchange": "تبادل همتا", + "messagePeerExchange": "تبادل با همتا", "@messagePeerExchange": {}, "messageEqValuesP9": "امنیت یک موضوع ثابت در تمام پروژه‌های توسعه نرم‌افزار، ارائه خدمات و ظرفیت‌سازی ما است. ما سیستم‌ها و فرآیندهای خود را برای بهبود امنیت اطلاعات در فضای اینترنت و افزایش شاخص‌های امنیتی و تجربه کاربر طراحی می‌کنیم. ما سعی می‌کنیم ویژگی‌های امنیتی یک ابزار یا سیستم را به خاطر سرعت، قابلیت استفاده یا هزینه، به خطر نیاندازیم. ما به امنیت مبهم اعتقادی نداریم و از طریق دسترسی آزاد به کدهای منبع ابزارها شفافیت را حفظ می‌کنیم. ما همیشه جانب احتیاط را رعایت می‌کنیم و سعی داریم تا امنیت عملیات‌های داخلی نرم‌افزارها را به‌خوبی اعمال کنیم", "@messageEqValuesP9": {}, @@ -754,37 +754,37 @@ "@messageErrorAddingLocalPassword": {}, "messageEqValuesP10": "به عنوان یک سازمان، ما به دنبال شفافیت در سیاست‌ها و رویه‌های خود هستیم. تا آنجا که ممکن است، کد منبع ما باز و آزادانه در دسترس است، و توسط مجوزهایی محافظت می‌شود که توسعه جامعه‌محور، به‌اشتراک‌گذاری و انتشار این اصول و ارزش‌ها را ترغیب و تشویق می‌کنند", "@messageEqValuesP10": {}, - "messageDataCollectionP2": "اپلیکیشن Ouisync به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام، نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد", + "messageDataCollectionP2": "اپلیکیشن وی‌سینک به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام، نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد", "@messageDataCollectionP2": {}, - "labelLocalIPv4": "IPv4 محلی", + "labelLocalIPv4": "Local IPv4‌", "@labelLocalIPv4": {}, - "messageSavingChanges": "آیا می‌خواهید تغییرات فعلی را ذخیره کنید؟", + "messageSavingChanges": "می‌خواهید تغییرات فعلی را ذخیره کنید؟", "@messageSavingChanges": {}, "titleWeAreEq": "ما eQualit.ie هستیم", "@titleWeAreEq": {}, "titleFreedomExpresionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", "@titleFreedomExpresionAccessInfo": {}, - "messageView": "بازدید", + "messageView": "مشاهده", "@messageView": {}, "titleLinksOtherSites": "لینک به سایت‌های دیگر", "@titleLinksOtherSites": {}, - "messageNATType": "نوع NAT", + "messageNATType": "NAT type‌", "@messageNATType": {}, - "messageDeletionDataServerNote": "تیم Ouisync نمی تواند فایل‌های شخصی را از مخازن حذف کند، زیرا شناسایی آن‌ها به علت رمزنگاری ممکن نیست. اگر پیوند(لینک) مخزنی که باید حذف شود را برای ما ارسال کنید، می توانیم کل مخازن را حذف کنیم.", + "messageDeletionDataServerNote": "تیم وی‌سینک نمی تواند فایل‌های شخصی را از مخازن حذف کند، زیرا شناسایی آن‌ها به علت رمزنگاری ممکن نیست. اگر لینک مخزنی که باید حذف شود را برای ما ارسال کنید، می توانیم کل مخازن را حذف کنیم", "@messageDeletionDataServerNote": {}, "actionNo": "خیر", "@actionNo": {}, - "messageFailedToMount": "دسترسی به مخازن از طریق بخش جستجوگر فایل در دسترس نیست: {reason}", + "messageFailedToMount": "دسترسی به مخازن از طریق بخش جست‌وجوگر فایل در دسترس نیست: {reason}", "@messageFailedToMount": { "placeholders": { "reason": {} } }, - "messageDeletionDataServerP1": "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هرگونه حذف فایل به همه همتایان شما اطلاع‌رسانی خواهد شد(منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتایان شما و همچنین از همتای همیشه فعال ما Always-On-Peer حذف خواهند شد. \nاگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفاً با آدرس زیر با ما تماس بگیرید.", + "messageDeletionDataServerP1": "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هرگونه حذف فایل به همه همتایان شما اطلاع‌رسانی خواهد شد(منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتایان شما و همچنین از همتای همیشه فعال ما حذف خواهند شد. اگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفا با آدرس زیر با ما تماس بگیرید", "@messageDeletionDataServerP1": {}, "messageSecurityPracticesP2": "درباره تکنیک‌های رمزنگاری مورد استفاده در اسناد ما می‌توانید اطلاعات بیشتری کسب کنید", "@messageSecurityPracticesP2": {}, - "messageSecurityPracticesP4": "اگر دلیلی مبنی بر به‌اشتراک‌گذاری و نشت اطلاعات شخصی خودتان به‌طور غیرقانونی توسط سایر کاربران Ouisync دارید، لطفاً با آدرس زیر با ما تماس بگیرید.", + "messageSecurityPracticesP4": "اگر دلیلی مبنی بر به‌اشتراک‌گذاری و نشت اطلاعات شخصی خودتان به‌طور غیرقانونی توسط سایر کاربران وی‌سینک دارید، لطفا با آدرس زیر با ما تماس بگیرید", "@messageSecurityPracticesP4": {}, "messageInfoPeerExchange": "ابزاری است که برای تبادل لیست همتایان با همتاهایی که به آن‌ها متصل هستید، استفاده می‌شود", "@messageInfoPeerExchange": {}, @@ -798,9 +798,9 @@ "@actionBack": {}, "menuItemRepository": "مخزن", "@menuItemRepository": {}, - "messageInfoNATType": "این مقدار توسط ارائه‌دهنده خدمات اینترنت شما تنظیم شده است.\n\nوقتی این تنظیمات غیرمتقارن باشد، ارتباط با همتایان خود در بهترین وجه امکان‌پذیر می‌شود", + "messageInfoNATType": "این مقدار به روتر شما و/یا ارائه‌دهنده خدمات اینترنتی شما بستگی دارد.\n\nاتصال با همتایان شما به بهترین شکل زمانی حاصل می‌شود که مستقل از نقطه انتهایی باشد", "@messageInfoNATType": {}, - "messageInfoBittorrentDHT": "ابزاری است که به همتایان اجازه می‌دهد بدون سرور متمرکز یکدیگر را در شبکه همتابه‌همتا P2P پیدا کنند", + "messageInfoBittorrentDHT": "ابزاری است که به همتاها اجازه می‌دهد بدون سرور متمرکز، یکدیگر را در شبکه همتابه‌همتا (P2P) پیدا کنند", "@messageInfoBittorrentDHT": {}, "actionReloadRepo": "بارگذاری مجدد مخزن", "@actionReloadRepo": {}, @@ -822,11 +822,11 @@ "@messagePeerExchangeWikipedia": {}, "messageChangesToTermsP1": "ممکن است شرایط استفاده (خدمات) خود را هر از چندگاهی به‌روز کنیم. بنابراین، به شما توصیه می‌شود برای اطلاع از هر‌گونه تغییر، این صفحه را به صورت دوره‌ای مرور کنید", "@messageChangesToTermsP1": {}, - "messageAutomaticUnlockRepositoryFailed": "ما نتوانستیم قفل مخزن را باز کنیم", + "messageAutomaticUnlockRepositoryFailed": "نتوانستیم قفل مخزن را باز کنیم", "@messageAutomaticUnlockRepositoryFailed": {}, "messageRemoveBiometricsConfirmation": "اعتبار‌سنجی بیومتریک برای این مخزن حذف شود؟\n\nقفل مخزن به‌طور خودکار باز می‌شود، مگر اینکه رمز عبور محلی اضافه شود.", "@messageRemoveBiometricsConfirmation": {}, - "messageBiometricUnlockRepositoryFailed": "بازکردن قفل بیومتریک ناموفق بود", + "messageBiometricUnlockRepositoryFailed": "باز کردن قفل بیومتریک ناموفق بود", "@messageBiometricUnlockRepositoryFailed": {}, "messageCanadaPrivacyAct": "قانون حفظ حریم خصوصی کانادا", "@messageCanadaPrivacyAct": {}, @@ -838,47 +838,47 @@ "@messageLogData2": {}, "actionRemove": "حذف", "@actionRemove": {}, - "messageInfoUPnP": "مجموعه‌ای از پروتکل‌های شبکه است که به اپلیکیشن‌های Ouisync شما اجازه می‌دهد تا یکدیگر را کشف کرده و با یکدیگر ارتباط برقرار کنند.\n\nبرای بهترین اتصال، توصیه می‌کنیم این تنظیمات روشن باشد", + "messageInfoUPnP": "مجموعه‌ای از پروتکل‌های شبکه است که به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا یکدیگر را کشف کرده و با یکدیگر ارتباط برقرار کنند.\n\nبرای بهترین اتصال، توصیه می‌کنیم این تنظیمات روشن باشد", "@messageInfoUPnP": {}, "actionYes": "بله", "@actionYes": {}, "messageLaunchAtStartup": "راه‌اندازی هنگام شروع به کار", "@messageLaunchAtStartup": {}, - "messageAvailableOnMobile": "در تلفن همراه در دسترس است", + "messageAvailableOnMobile": "در موبایل در دسترس است", "@messageAvailableOnMobile": {}, "messageLogData1": "آدرس ایمیل - اگر کاربر تصمیم گرفت از طریق ایمیل با ما تماس بگیرد", "@messageLogData1": {}, "messageAddLocalPasswordConfirmation": "یک رمز عبور محلی برای این مخزن اضافه کنید؟", "@messageAddLocalPasswordConfirmation": {}, - "messageRemoveLocalPasswordConfirmation": "این رمز عبور محلی مخزن حذف شود؟\n\nمخزن به‌طور خودکار باز می‌شود، مگر اینکه یک رمز عبور محلی مجدد اضافه شود", + "messageRemoveLocalPasswordConfirmation": "این رمز عبور محلی مخزن حذف شود؟\n\nمخزن به‌طور خودکار باز می‌شود، مگر این که یک رمز عبور محلی مجدد اضافه شود", "@messageRemoveLocalPasswordConfirmation": {}, - "actionSkip": "پرش", + "actionSkip": "صرف نظر", "@actionSkip": {}, "menuItemAbout": "درباره ما", "@menuItemAbout": {}, - "messageInfoLocalDiscovery": "سیستم کشف محلی همتا (Local Peer Discovery) به اپلیکیشن‌های Ouisync شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتایان خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد", + "messageInfoLocalDiscovery": "سیستم شناسایی محلی همتا (Local Peer Discovery) به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتایان خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد", "@messageInfoLocalDiscovery": {}, "actionIDontAgree": "موافق نیستم", "@actionIDontAgree": {}, - "messageInfoSyncMobileData": "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای (انتقال) داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتایان خود به اشتراک می‌گذارید، از شما هزینه دریافت کند", + "messageInfoSyncMobileData": "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای انتقال داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتایان خود به اشتراک می‌گذارید، از شما هزینه دریافت کند", "@messageInfoSyncMobileData": {}, - "actionUndo": "واگرد", + "actionUndo": "بازگرداندن", "@actionUndo": {}, "messageUpdateLocalPasswordConfirmation": "رمز عبور محلی این مخزن به‌روز شود؟", "@messageUpdateLocalPasswordConfirmation": {}, "actionRemoveLocalPassword": "حذف رمز عبور محلی", "@actionRemoveLocalPassword": {}, - "messageSecurityPracticesP3": "اپلیکیشن Ouisync داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفاً پر کردن شکاف بین همتایان خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتایان را تسهیل می‌کند.", + "messageSecurityPracticesP3": "اپلیکیشن وی‌سینک داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفاً پر کردن شکاف بین همتایان خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتایان را تسهیل می‌کند", "@messageSecurityPracticesP3": {}, - "menuItemLogs": "ثبت رویدادها (لاگ)", + "menuItemLogs": "گزارش‌ها", "@menuItemLogs": {}, "replacementChanges": "{changes}", "@replacementChanges": {}, - "messageChildrensPolicyP1": "ما آگاهانه اطلاعات قابل شناسایی شخصی از کودکان جمع آوری نمی‌کنیم. ما همه کودکان را تشویق می‌کنیم که هرگز اطلاعات شناسایی شخصی را از طریق اپلیکیشن و/یا خدمات ارائه نکنند. ما والدین و سرپرستان قانونی کودکان را تشویق می‌کنیم که بر استفاده فرزندان خود از اینترنت نظارت داشته باشند و به اجرای این خط‌مشی کمک کنند و به فرزندان خود آموزش دهند که هرگز اطلاعات قابل شناسایی شخصی را از طریق برنامه و/یا خدمات بدون اجازه آن‌ها ارائه نکنند. اگر دلیلی مبنی بر ارائه اطلاعات هویتی شخصی توسط کودکی به برنامه و/یا خدمات به ما دارید، لطفاً با ما تماس بگیرید.\nهمچنین باید حداقل ۱۶ سال سن داشته باشید تا با پردازش اطلاعات شناسایی شخصی خودتان در کشور خود موافقت کنید (در برخی کشورها ممکن است به والدین یا قیم شما اجازه دهیم از طرف شما این کار را انجام دهند).", + "messageChildrensPolicyP1": "ما به طور آگاهانه اطلاعات شخصی قابل شناسایی از کودکان جمع‌آوری نمی‌کنیم. از تمامی کودکان می‌خواهیم که هیچ‌گاه اطلاعات شخصی قابل شناسایی خود را از طریق برنامه و/یا خدمات ارسال نکنند. همچنین به والدین و سرپرستان قانونی توصیه می‌کنیم تا بر استفاده فرزندانشان از اینترنت نظارت کنند و با راهنمایی فرزندانشان در این زمینه که بدون اجازه آن‌ها هیچ‌گونه اطلاعات شخصی قابل شناسایی را از طریق برنامه و/یا خدمات ارائه ندهند، به اجرای این سیاست کمک کنند. اگر دلیلی دارید که باور کنید کودکی از طریق برنامه و/یا خدمات اطلاعات شخصی قابل شناسایی را برای ما ارسال کرده است، لطفا با ما تماس بگیرید. همچنین شما باید حداقل ۱۶ سال سن داشته باشید تا بتوانید با پردازش اطلاعات شخصی قابل شناسایی خود در کشور خود موافقت کنید (در برخی کشورها ممکن است والدین یا سرپرستان قانونی شما بتوانند این کار را از طرف شما انجام دهند)", "@messageChildrensPolicyP1": {}, "popupMenuItemCopyPassword": "کپی‌کردن رمز عبور", "@popupMenuItemCopyPassword": {}, - "messageSecurityPracticesP1": "داده‌هایی که کاربر در مخازن Ouisync آپلود می‌کند، در حین انتقال و همچنین در حالت استراحت رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در Ouisync، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است.", + "messageSecurityPracticesP1": "داده‌هایی که کاربر در مخازن وی‌سینک آپلود می‌کند، در حین انتقال و همچنین در حالت استراحت رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در وی‌سینک، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است", "@messageSecurityPracticesP1": {}, "actionClear": "پاک‌ کردن", "@actionClear": {}, @@ -888,11 +888,11 @@ "@messageRepositoryNotMounted": {}, "actionAdd": "اضافه کردن", "@actionAdd": {}, - "messageCookiesP1": "اپلیکیشن Ouisync از کوکی‌ها استفاده نمی‌کند", + "messageCookiesP1": "اپلیکیشن وی‌سینک از کوکی‌ها استفاده نمی‌کند", "@messageCookiesP1": {}, - "messageLinksOtherSitesP1": "این سرویس ممکن است حاوی پیوندهایی (لینک‌هایی) به وب‌سایت‌های دیگر باشد. اگر روی پیوند شخص ثالث کلیک کنید، به آن سایت هدایت خواهید شد. توجه داشته باشید که این وب‌سایت‌های خارجی توسط ما اداره نمی‌شوند. بنابراین، ما قویاً به شما توصیه می‌کنیم که سند حریم خصوصی این وب سایت‌ها را بررسی کنید. ما هیچ کنترلی بر آن نداریم و هیچ مسئولیتی در قبال محتوا، خط‌مشی‌های حفظ حریم خصوصی، یا عملکرد وب‌سایت‌ها یا خدمات شخص ثالث نداریم.", + "messageLinksOtherSitesP1": "این سرویس ممکن است حاوی لینک‌هایی به وب‌سایت‌های دیگر باشد. اگر روی لینک شخص ثالث کلیک کنید، به آن سایت هدایت خواهید شد. توجه داشته باشید که این وب‌سایت‌های خارجی توسط ما اداره نمی‌شوند. بنابراین، ما قویا به شما توصیه می‌کنیم که سند حریم خصوصی این وب سایت‌ها را بررسی کنید. ما هیچ کنترلی بر آن نداریم و هیچ مسئولیتی در قبال محتوا، خط‌مشی‌های حفظ حریم خصوصی، یا عملکرد وب‌سایت‌ها یا خدمات شخص ثالث نداریم", "@messageLinksOtherSitesP1": {}, - "messageLogDataP1": "اپلیکیشن Ouisync فایل‌های مرتبط با ثبت رویدادها (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتایان خود یا در موارد دیگر در استفاده از Ouisync با مشکل مواجه شود. فایل ثبت رویدادها (لاگ) در دستگاه کاربر باقی می‌ماند، مگر اینکه کاربر تصمیم بگیرد، آن‌را برای اهداف پشتیبانی برای ما ارسال کند.", + "messageLogDataP1": "اپلیکیشن وی‌سینک فایل‌های مرتبط با ثبت گزارش (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتایان خود یا در موارد دیگر در استفاده از وی‌سینک با مشکل مواجه شود. فایل گزارش (لاگ) در دستگاه کاربر باقی می‌ماند، مگر این که کاربر تصمیم بگیرد آن‌را برای اهداف پشتیبانی برای ما ارسال کند", "@messageLogDataP1": {}, "actionGoToSettings": "به بخش تنظیمات بروید", "@actionGoToSettings": {}, @@ -928,7 +928,7 @@ "@messageLogData3": {}, "messageRemoveBiometricsConfirmationMoreInfo": "با این عمل رمز مخزن حذف می‌شود و از اعتبارسنجی بیومتریک برای باز‌کردن قفل استفاده می‌شود", "@messageRemoveBiometricsConfirmationMoreInfo": {}, - "messageInfoRuntimeID": "یک شناسه منحصر‌به‌فرد است که هربار هنگام شروع توسط Ouisync تولید می‌شود.\n\nمی‌توانید از آن برای تأیید ارتباط خود با دیگران در بخش مرتبط با همتای (Peer) اپلیکیشن، استفاده کنید", + "messageInfoRuntimeID": "یک شناسه منحصر‌به‌فرد است که هربار هنگام شروع توسط وی‌سینک تولید می‌شود.\n\nمی‌توانید از آن برای تایید ارتباط خود با دیگران در بخش مرتبط با همتای (Peer) اپلیکیشن، استفاده کنید", "@messageInfoRuntimeID": {}, "messageDownloadFileCanceled": "دانلود فایل لغو شد", "@messageDownloadFileCanceled": {}, @@ -940,7 +940,7 @@ "@messagePreviewingFileFailed": {}, "messageFilePreviewFailed": "ما نتوانستیم فرآیند پیش‌نمایش فایل را آغاز کنیم", "@messageFilePreviewFailed": {}, - "messageCopiedToClipboard": "در کلیپ‌بورد(ذخیره موقت) کپی شد.", + "messageCopiedToClipboard": "در کلیپ‌بورد کپی شد.", "@messageCopiedToClipboard": {}, "titleUserProvidedPeers": "همتا‌های ارائه‌شده توسط کاربر", "@titleUserProvidedPeers": {}, @@ -948,17 +948,17 @@ "@messageResetLocalSecret": {}, "messagePeerAdded": "یک همتا افزوده شد", "@messagePeerAdded": {}, - "messageInstallDokanForOuisyncP2": "برای دسترسی به مخازن از طریق بخش جستجوگر فایل.\nلطفاً رابط نرم‌افزاری Dokan را برای بهبود تجربه وی‌سینک خود نصب کنید.", + "messageInstallDokanForOuisyncP2": "برای دسترسی به مخازن از طریق بخش جست‌وجوگر فایل.\nلطفا رابط نرم‌افزاری Dokan را برای بهبود تجربه وی‌سینک خود نصب کنید.", "@messageInstallDokanForOuisyncP2": {}, - "messageDokanDifferentMayorP1": "نصب شده", + "messageDokanDifferentMayorP1": "نصب‌شده", "@messageDokanDifferentMayorP1": {}, - "messageDokanOlderVersionP2": "قدیمی است.\n\nلطفاً نسخه موجود رابط کاربری Dokan را حذف کنید، سیستم را مجدد راه‌اندازی و وی‌سینک را دوباره اجرا کنید.", + "messageDokanOlderVersionP2": "قدیمی است.\n\nلطفا نسخه موجود رابط کاربری Dokan را حذف کنید، سیستم را مجدد راه‌اندازی و وی‌سینک را دوباره اجرا کنید.", "@messageDokanOlderVersionP2": {}, - "labelRememberPassword": "رمزعبور را به خاطر بسپار", + "labelRememberPassword": "به‌خاطر سپردن رمز عبور", "@labelRememberPassword": {}, - "repositoryIsAlreadyImported": "مخزن قبلا وارد شده است", + "repositoryIsAlreadyImported": "مخزن قبلا وارد شده", "@repositoryIsAlreadyImported": {}, - "buttonLocateRepository": "مکان‌یابی", + "buttonLocateRepository": "موقعیت‌یابی", "@buttonLocateRepository": {}, "messageUpdateLocalSecretFailed": "به‌روزرسانی شاخص‌های امنیتی مخزن انجام نشد.", "@messageUpdateLocalSecretFailed": {}, @@ -966,7 +966,7 @@ "@messageUpdateLocalSecretOk": {}, "messageUseLocalPassword": "از رمز عبور محلی استفاده کنید", "@messageUseLocalPassword": {}, - "messageConfirmIrreversibleChange": "این اقدام غیر قابل بازگشت خواهد بود، آیا تمایل دارید ادامه دهید؟", + "messageConfirmIrreversibleChange": "این اقدام بازگشت‌ناپذیر خواهد بود، مایلید ادامه دهید؟", "@messageConfirmIrreversibleChange": {}, "actionNewMediaFile": "رسانه", "@actionNewMediaFile": {}, @@ -990,7 +990,7 @@ "@actionInstallDokan": {}, "actionUpdateDokan": "به‌روزرسانی Dokan", "@actionUpdateDokan": {}, - "messageDokanDifferentMayorP2": "قدیمی شده است. لطفا آن را به آخرین نسخه به‌روزرسانی کنید.", + "messageDokanDifferentMayorP2": "قدیمی است. لطفا آن را به آخرین نسخه به‌روزرسانی کنید.", "@messageDokanDifferentMayorP2": {}, "messageDokanInstallationFailed": "نصب رابط کاربری Dokan موفقیت‌آمیز نبود.", "@messageDokanInstallationFailed": {}, @@ -1013,5 +1013,17 @@ "messageDokan": "رابط نرم‌افزاری دکان (Dokan)", "@messageDokan": {}, "messageInstallDokanForOuisyncP1": "موارد استفاده از وی‌سینک", - "@messageInstallDokanForOuisyncP1": {} + "@messageInstallDokanForOuisyncP1": {}, + "messageSecurityOptionsNotAvailableBlind": "گزینه‌های امنیت برای مخازن کور در دسترس نیستند", + "@messageSecurityOptionsNotAvailableBlind": {}, + "actionLocateRepo": "یافتن مخزن", + "@actionLocateRepo": {}, + "titleApplicationLanguage": "زبان برنامه", + "@titleApplicationLanguage": {}, + "languageIsNotAvailable": "در دسترس نیست", + "@languageIsNotAvailable": {}, + "languageOfTheDevice": "زبان دستگاه", + "@languageOfTheDevice": {}, + "messageSettingsVersionNewerThanCurrent": "تنظیمات موجود در این دستگاه با نسخه جدیدتری از وی‌سینک ایجاد شده‌اند و قابل انتقال نیستند.", + "@messageSettingsVersionNewerThanCurrent": {} } From 17e18604b0bbfe6fad2fba66e814293444be1bbb Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Mon, 4 Nov 2024 18:14:05 +0000 Subject: [PATCH 07/22] Translated using Weblate (Persian) Currently translated at 100.0% (488 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 6162d4e14..149436ad0 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -428,7 +428,7 @@ "@messageIgnoreBatteryOptimizationsPermission": {}, "titleDigitalSecurity": "امنیت دیجیتال", "@titleDigitalSecurity": {}, - "messageSecureUsingBiometrics": "با استفاده از بیومتریک ایمن شوید", + "messageSecureUsingBiometrics": "محافظت با استفاده از بیومتریک", "@messageSecureUsingBiometrics": {}, "messageRepositoryCurrentPassword": "رمز عبور کنونی", "@messageRepositoryCurrentPassword": {}, @@ -566,7 +566,7 @@ "@messageFileIsDownloading": {}, "titleTermsPrivacy": "شرایط استفاده و سند حریم خصوصی وی‌سینک", "@titleTermsPrivacy": {}, - "messageUnlockRepoOk": "به‌عنوان کپی {access} باز شد", + "messageUnlockRepoOk": "به‌عنوان یک کپیِ {access} باز شد", "@messageUnlockRepoOk": {}, "messageMediaLocation": "موقعیت مکانی رسانه‌ها", "@messageMediaLocation": {}, From 52a9aa1e321adca85b38bcd5e7347537c1979877 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Pab=C3=B3n?= Date: Tue, 5 Nov 2024 18:25:29 +0800 Subject: [PATCH 08/22] Update localized strings --- lib/generated/intl/messages_all.dart | 27 +- lib/generated/intl/messages_en.dart | 97 +++--- lib/generated/intl/messages_es.dart | 98 +++--- lib/generated/intl/messages_fa.dart | 456 +++++++++++++------------ lib/generated/intl/messages_fr.dart | 73 ++-- lib/generated/intl/messages_my.dart | 99 +++--- lib/generated/intl/messages_ru.dart | 95 +++--- lib/generated/intl/messages_uk.dart | 95 +++--- lib/generated/intl/messages_zh-CN.dart | 4 +- 9 files changed, 517 insertions(+), 527 deletions(-) diff --git a/lib/generated/intl/messages_all.dart b/lib/generated/intl/messages_all.dart index a2443ef64..5d4060f88 100644 --- a/lib/generated/intl/messages_all.dart +++ b/lib/generated/intl/messages_all.dart @@ -11,7 +11,6 @@ import 'dart:async'; -import 'package:flutter/foundation.dart'; import 'package:intl/intl.dart'; import 'package:intl/message_lookup_by_library.dart'; import 'package:intl/src/intl_helpers.dart'; @@ -28,15 +27,15 @@ import 'messages_zh-TW.dart' as messages_zh_tw; typedef Future LibraryLoader(); Map _deferredLibraries = { - 'en': () => new SynchronousFuture(null), - 'es': () => new SynchronousFuture(null), - 'fa': () => new SynchronousFuture(null), - 'fr': () => new SynchronousFuture(null), - 'my': () => new SynchronousFuture(null), - 'ru': () => new SynchronousFuture(null), - 'uk': () => new SynchronousFuture(null), - 'zh_CN': () => new SynchronousFuture(null), - 'zh_TW': () => new SynchronousFuture(null), + 'en': () => new Future.value(null), + 'es': () => new Future.value(null), + 'fa': () => new Future.value(null), + 'fr': () => new Future.value(null), + 'my': () => new Future.value(null), + 'ru': () => new Future.value(null), + 'uk': () => new Future.value(null), + 'zh_CN': () => new Future.value(null), + 'zh_TW': () => new Future.value(null), }; MessageLookupByLibrary? _findExact(String localeName) { @@ -65,18 +64,18 @@ MessageLookupByLibrary? _findExact(String localeName) { } /// User programs should call this before using [localeName] for messages. -Future initializeMessages(String localeName) { +Future initializeMessages(String localeName) async { var availableLocale = Intl.verifiedLocale( localeName, (locale) => _deferredLibraries[locale] != null, onFailure: (_) => null); if (availableLocale == null) { - return new SynchronousFuture(false); + return new Future.value(false); } var lib = _deferredLibraries[availableLocale]; - lib == null ? new SynchronousFuture(false) : lib(); + await (lib == null ? new Future.value(false) : lib()); initializeInternalMessageLookup(() => new CompositeMessageLookup()); messageLookup.addLocale(availableLocale, _findGeneratedMessagesFor); - return new SynchronousFuture(true); + return new Future.value(true); } bool _messagesExistFor(String locale) { diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index 5c38ee133..112b79e0c 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -42,50 +42,50 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} is not empty"; - static String m10(reason) => + static String m10(name) => "Failed to import repository ${name}"; + + static String m11(name) => "Failed to create repository ${name}"; + + static String m12(reason) => "Accessing repositories via File Explorer is not available: ${reason}"; - static String m11(name) => + static String m13(name) => "${name} already exist in this location.\n\nWhat do you want to do?"; - static String m12(name) => "Folder deleted successfully: ${name}"; + static String m14(name) => "Folder deleted successfully: ${name}"; - static String m13(number) => + static String m15(number) => "Do you want to lock all open repositories?\n\n(${number} open)"; - static String m14(path) => "from ${path}"; + static String m16(path) => "from ${path}"; - static String m15(name) => "Error creating file ${name}"; + static String m17(name) => "Error creating file ${name}"; - static String m16(name) => "Error opening file ${name}"; + static String m18(name) => "Error opening file ${name}"; - static String m17(path) => "Previewing file ${path} failed"; + static String m19(path) => "Previewing file ${path} failed"; - static String m18(name) => "We could not delete the repository \"${name}\""; + static String m20(name) => "We could not delete the repository \"${name}\""; - static String m19(name) => + static String m21(name) => "We could not find the repository \"${name}\" at the usual location"; - static String m20(access) => "Access mode granted: ${access}"; + static String m22(access) => "Access mode granted: ${access}"; - static String m21(name) => + static String m23(name) => "This repository already exists in the app under the name \"${name}\"."; - static String m22(name) => "Suggested: ${name}\n(tap here to use this name)"; + static String m24(name) => "Suggested: ${name}\n(tap here to use this name)"; - static String m23(name) => "Sort by: ${name}"; + static String m25(name) => "Sort by: ${name}"; - static String m24(access) => "Unlocked as a ${access} replica"; + static String m26(access) => "Unlocked as a ${access} replica"; - static String m25(name) => "Enter password to unlock \"${name}\""; + static String m27(name) => "Enter password to unlock \"${name}\""; - static String m26(name) => "${name} writing canceled"; + static String m28(name) => "${name} writing canceled"; - static String m27(name) => "${name} - writing failed"; - - static String m28(name) => "Failed to import repository ${name}"; - - static String m29(name) => "Failed to create repository ${name}"; + static String m29(name) => "${name} - writing failed"; static String m30(access) => "${access}"; @@ -265,8 +265,6 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Network"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Repository"), - "messageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("There is no media present."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage("Accessing secure storage"), @@ -469,9 +467,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Press back again to exit."), "messageFAQ": MessageLookupByLibrary.simpleMessage("Frequently Asked Questions"), - "messageFailedToMount": m10, + "messageFailedAddRepository": m10, + "messageFailedCreateRepository": m11, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("file"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage( "File is already being uploaded"), "messageFileName": MessageLookupByLibrary.simpleMessage("File name"), @@ -480,7 +480,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "File preview is not yet available"), "messageFiles": MessageLookupByLibrary.simpleMessage("files"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("Folder name"), "messageGeneratePassword": @@ -534,7 +534,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Loading…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage("Local Discovery"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "This repository is locked."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( @@ -552,21 +552,21 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "None of this data is shared with any third parties"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("All"), - "messageLogLevelErrorWarnInfoDebug": - MessageLookupByLibrary.simpleMessage("Error, Warn, Info and Debug"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Only Error"), "messageLogLevelErrorWarn": MessageLookupByLibrary.simpleMessage("Error and Warn"), "messageLogLevelErrorWarnInfo": MessageLookupByLibrary.simpleMessage("Error, Warn and Info"), + "messageLogLevelErrorWarnInfoDebug": + MessageLookupByLibrary.simpleMessage("Error, Warn, Info and Debug"), "messageLogViewer": MessageLookupByLibrary.simpleMessage("Log viewer"), "messageMedium": MessageLookupByLibrary.simpleMessage("Medium"), "messageMissingBackgroundServicePermission": MessageLookupByLibrary.simpleMessage( "Ouisync does not have permission to run in the background, opening another application may stop ongoing synchronization"), "messageMobile": MessageLookupByLibrary.simpleMessage("Mobile"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "This function is not available when moving an entry."), "messageNATOnWikipedia": @@ -574,7 +574,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageNATType": MessageLookupByLibrary.simpleMessage("NAT type"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("Network is unavailable"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "New password copied to the clipboard"), @@ -582,6 +582,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("A new version is available."), "messageNoAppsForThisAction": MessageLookupByLibrary.simpleMessage( "Not apps can perform this action"), + "messageNoMediaPresent": + MessageLookupByLibrary.simpleMessage("There is no media present."), "messageNoRepo": MessageLookupByLibrary.simpleMessage( "Before adding files, you need to create a repository"), "messageNoRepoIsSelected": @@ -600,7 +602,7 @@ class MessageLookup extends MessageLookupByLibrary { "All files and folders added to Ouisync are securely encrypted by default, both in transit and at rest."), "messageOnlyAvailableFiles": MessageLookupByLibrary.simpleMessage("Only available for files"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("Or"), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -619,7 +621,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Peer removed"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("This permission is required"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "This section is used to inform visitors regarding our policies with the collection, use, and disclosure of Personal Information if anyone decides to use our Service"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( @@ -654,14 +656,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Replace existing folder"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage( "Repository authentication failed"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( "The repository deletion failed"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage( "The repository is not there anymore"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("The current password"), "messageRepositoryIsNotOpen": @@ -676,7 +678,7 @@ class MessageLookup extends MessageLookupByLibrary { "The repository is not mounted "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("Password"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("Paste the link here"), "messageResetLocalSecret": @@ -717,7 +719,7 @@ class MessageLookup extends MessageLookupByLibrary { "You need to select one permission to create a repository link first"), "messageShareWithWR": MessageLookupByLibrary.simpleMessage("Share with QR Code"), - "messageSortBy": m23, + "messageSortBy": m25, "messageStorage": MessageLookupByLibrary.simpleMessage("Storage"), "messageStoragePermission": MessageLookupByLibrary.simpleMessage( "Needed for getting access to the files"), @@ -755,8 +757,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Unknown file extension"), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( "The password did not unlock the repository"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage("Unlock using biometrics"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( @@ -782,10 +784,8 @@ class MessageLookup extends MessageLookupByLibrary { "messageWiFi": MessageLookupByLibrary.simpleMessage("Wi-Fi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( "Full access. Your peer can read and write"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Change password"), "popupMenuItemCopyPassword": @@ -866,8 +866,9 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Add"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Folder details"), - "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( - "Freedom of expression and access to information"), + "titleFreedomExpressionAccessInfo": + MessageLookupByLibrary.simpleMessage( + "Freedom of expression and access to information"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Issue tracker"), "titleJustLegalSociety": diff --git a/lib/generated/intl/messages_es.dart b/lib/generated/intl/messages_es.dart index 071c2b748..50abd7dbe 100644 --- a/lib/generated/intl/messages_es.dart +++ b/lib/generated/intl/messages_es.dart @@ -44,52 +44,48 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} no está vacío"; - static String m10(reason) => + static String m12(reason) => "El acceso a los repositorios a través del Explorador de archivos no está disponible: ${reason}"; - static String m11(name) => + static String m13(name) => "${name} ya existe en esta ubicación.\n\n¿Qué deseas hacer?"; - static String m12(name) => "Directorio borrado exitosamente: ${name}"; + static String m14(name) => "Directorio borrado exitosamente: ${name}"; - static String m13(number) => + static String m15(number) => "Desea bloquear todos los repositorios abiertos?\n\n(${number} actualmente)"; - static String m14(path) => "desde ${path}"; + static String m16(path) => "desde ${path}"; - static String m15(name) => "Error creando archivo ${name}"; + static String m17(name) => "Error creando archivo ${name}"; - static String m16(name) => "Error al abrir el archivo ${name}"; + static String m18(name) => "Error al abrir el archivo ${name}"; - static String m17(path) => "Error al previsualizar el archivo ${path}"; + static String m19(path) => "Error al previsualizar el archivo ${path}"; - static String m18(name) => "No pudimos borrar el repositorio \"${name}\""; + static String m20(name) => "No pudimos borrar el repositorio \"${name}\""; - static String m19(name) => + static String m21(name) => "No pudimos encontrar el repositorio \"${name}\" en la ubicación habitual"; - static String m20(access) => "Modo de aceso otorgado: ${access}"; + static String m22(access) => "Modo de aceso otorgado: ${access}"; - static String m21(name) => + static String m23(name) => "Este repositorio ya existe en la aplicación con el nombre \"${name}\"."; - static String m22(name) => + static String m24(name) => "Sugerido: ${name}\n(clic aquí para usar este nombre)"; - static String m23(name) => "Ordenar por: ${name}"; + static String m25(name) => "Ordenar por: ${name}"; - static String m24(access) => "Abierto en modo ${access}"; + static String m26(access) => "Abierto en modo ${access}"; - static String m25(name) => + static String m27(name) => "Introduzca la contraseña para desbloquear \"${name}\""; - static String m26(name) => "${name} escritura cancelada"; - - static String m27(name) => "${name} - fallo durante escritura"; + static String m28(name) => "${name} escritura cancelada"; - static String m28(name) => "Error al importar el repositorio ${name}"; - - static String m29(name) => "Fallo creando el repositorio ${name}"; + static String m29(name) => "${name} - fallo durante escritura"; static String m30(access) => "${access}"; @@ -270,13 +266,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ingrese la clave: "), "labelUseExternalStorage": MessageLookupByLibrary.simpleMessage("Usar almacenamiento externo"), + "languageIsNotAvailable": + MessageLookupByLibrary.simpleMessage("no disponible"), + "languageOfTheDevice": + MessageLookupByLibrary.simpleMessage("idioma del dispositivo"), "menuItemAbout": MessageLookupByLibrary.simpleMessage("Acerca de"), "menuItemLogs": MessageLookupByLibrary.simpleMessage("Registros"), "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Red"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Repositorio"), - "mesageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("No hay archivos presentes."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "Acceso seguro al almacenamiento"), @@ -481,9 +479,9 @@ class MessageLookup extends MessageLookupByLibrary { "Presione de nuevo el botón para ir atrás para salir de la aplicación."), "messageFAQ": MessageLookupByLibrary.simpleMessage("Preguntas frecuentes"), - "messageFailedToMount": m10, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("archivo"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage( "El archivo ya se está subiendo"), "messageFileName": @@ -493,7 +491,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "La vista previa de archivo no está disponible todavía"), "messageFiles": MessageLookupByLibrary.simpleMessage("archivos"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("Nombre de directorio"), "messageGeneratePassword": @@ -548,7 +546,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Cargando…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage("Descubrir la zona"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "Este repositorio está cerrado."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( @@ -566,9 +564,6 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "Ninguno de estos datos se comparte con terceros"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Todos"), - "messageLogLevelErroWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "Error, Alerta, Información y Depuración"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Solo error"), "messageLogLevelErrorWarn": @@ -582,7 +577,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "Ouisync no tiene permiso para ejecutarse en segundo plano, abrir otra aplicación puede detener la sincronización en curso"), "messageMobile": MessageLookupByLibrary.simpleMessage("Móvil"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "Esta función no está disponible mientras se está moviendo una entrada."), "messageNATOnWikipedia": @@ -590,7 +585,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageNATType": MessageLookupByLibrary.simpleMessage("Tipo de NAT"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("Red no disponible"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "La nueva contraseña fue copiada en el portapapeles"), @@ -616,7 +611,7 @@ class MessageLookup extends MessageLookupByLibrary { "Todos los archivos y carpetas agregados a Ouisync son cifrados de manera segura de forma predeterminada, tanto en reposo como en tránsito."), "messageOnlyAvailableFiles": MessageLookupByLibrary.simpleMessage( "Solo disponible para archivos"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("O..."), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -636,7 +631,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Par eliminado"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("Este permiso es requerido"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "Esta sección se utiliza para informar a los visitantes sobre nuestras políticas con la recopilación, uso y divulgación de Información personal si alguien decide utilizar nuestro servicio"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( @@ -646,7 +641,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageReadReplicaExplanation": MessageLookupByLibrary.simpleMessage( "No puede ser modificado, sólo acceder sus contenidos"), "messageRememberSavePasswordAlert": MessageLookupByLibrary.simpleMessage( - "Recuerda guardar la contraseña de forma segura; si la olvidas, no hay forma de recuperarla."), + "Recuerda guardar la contraseña de forma segura. No hay forma de recuperarla si se pierde o se olvida."), "messageRemoveBiometricValidation": MessageLookupByLibrary.simpleMessage( "Remover validación biométrica"), @@ -672,14 +667,14 @@ class MessageLookup extends MessageLookupByLibrary { "Reemplazar carpeta existente"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage( "Fallo en la autentificación del repositorio"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( "El borrado del repositorio falló"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage( "El repositorio ya no está allí"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("La contraseña actual"), "messageRepositoryIsNotOpen": MessageLookupByLibrary.simpleMessage( @@ -694,7 +689,7 @@ class MessageLookup extends MessageLookupByLibrary { "El repositorio no se ha montado. "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("Contraseña"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("Pegue el link aquí"), "messageResetLocalSecret": @@ -728,11 +723,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Seleccione el lugar"), "messageSettingsRuntimeID": MessageLookupByLibrary.simpleMessage( "Identificador del tiempo de ejecución"), + "messageSettingsVersionNewerThanCurrent": + MessageLookupByLibrary.simpleMessage( + "Los ajustes de este dispositivo se crearón con una versión más reciente de Ouisync y no se pueden migrar."), "messageShareActionDisabled": MessageLookupByLibrary.simpleMessage( "Necesitas seleccionar un permiso primero para crear un link de repository"), "messageShareWithWR": MessageLookupByLibrary.simpleMessage("Comparte con Código QR"), - "messageSortBy": m23, + "messageSortBy": m25, "messageStorage": MessageLookupByLibrary.simpleMessage("Almacenamiento"), "messageStoragePermission": MessageLookupByLibrary.simpleMessage( @@ -742,7 +740,7 @@ class MessageLookup extends MessageLookupByLibrary { "Sincronizar con datos móviles"), "messageSyncingIsDisabledOnMobileInternet": MessageLookupByLibrary.simpleMessage( - "La sincronización está desactivada cuando usas los datos móviles"), + "La sincronización a través de Internet está desactivada cuando se utilizan datos móviles"), "messageTapForTermsPrivacy": MessageLookupByLibrary.simpleMessage( "Pulse aquí para leer nuestros Términos de Uso y Notas de Privacidad"), "messageTapForValues": MessageLookupByLibrary.simpleMessage( @@ -771,12 +769,12 @@ class MessageLookup extends MessageLookupByLibrary { "Extensión de archivo desconocida"), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( "La contraseña no desbloqueó el repositorio"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage("Abrir usando biométricos"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( - "Tienes cambios sin guardar.\n\n¿Desea descartarlos?"), + "Tienes cambios sin guardar.\n\n¿Te gustaría descartarlos?"), "messageUpdateLocalPasswordConfirmation": MessageLookupByLibrary.simpleMessage( "¿Actualizar la contraseña local de este repositorio?"), @@ -798,10 +796,8 @@ class MessageLookup extends MessageLookupByLibrary { "messageWiFi": MessageLookupByLibrary.simpleMessage("Wifi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( "Acceso total. Tu par puede leer y modificar"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Cambiar la contraseña"), "popupMenuItemCopyPassword": @@ -884,8 +880,6 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Añadir"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Detalles de directorio"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( - "Libertad de expresión y acceso a la información"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Rastreador de los problemas"), "titleJustLegalSociety": diff --git a/lib/generated/intl/messages_fa.dart b/lib/generated/intl/messages_fa.dart index b09ffc1c1..0b4069a00 100644 --- a/lib/generated/intl/messages_fa.dart +++ b/lib/generated/intl/messages_fa.dart @@ -21,7 +21,7 @@ class MessageLookup extends MessageLookupByLibrary { String get localeName => 'fa'; static String m0(access) => - "مجوز موردنظر نمی تواند بیشتر از حالت دسترسی فعلی مخزن باشد: ${access}"; + "مجوز مورد نظر نمی‌تواند بالاتر از حالت دسترسی فعلی مخزن باشد: ${access}"; static String m1(path) => "فایل دانلود شد در ${path}"; @@ -42,51 +42,47 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} خالی نیست"; - static String m10(reason) => - "دسترسی به مخازن از طریق بخش جستجوگر فایل در دسترس نیست: ${reason}"; + static String m12(reason) => + "دسترسی به مخازن از طریق بخش جست‌وجوگر فایل در دسترس نیست: ${reason}"; - static String m11(name) => - "${name} از قبل در این‌جا وجود دارد.\n\nچه‌کاری قصد دارید انجام دهید؟"; + static String m13(name) => + "${name} از قبل در این‌جا وجود دارد.\n\nمی‌خواهید چه کاری بکنید؟"; - static String m12(name) => "پوشه با موفقیت حذف شد: ${name}"; + static String m14(name) => "پوشه با موفقیت حذف شد: ${name}"; - static String m13(number) => - "آیا می‌خواهید تمام مخازنی که باز هستند را قفل کنید؟\n\n(${number} باز)"; + static String m15(number) => + "آیا می‌خواهید تمام مخازنی را که باز هستند قفل کنید؟\n\n(${number} باز)"; - static String m14(path) => "از ${path}"; + static String m16(path) => "از ${path}"; - static String m15(name) => "خطا در ایجاد فایل ${name}"; + static String m17(name) => "خطا در ایجاد فایل ${name}"; - static String m16(name) => "خطا در بازکردن فایل ${name}"; + static String m18(name) => "خطا در باز کردن فایل ${name}"; - static String m17(path) => "فرآیند پیش‌نمایش فایل ${path} انجام نشد"; + static String m19(path) => "فرآیند پیش‌نمایش فایل ${path} انجام نشد"; - static String m18(name) => "ما نتوانستیم مخزن را حذف کنیم \"${name}\""; - - static String m19(name) => - "ما نتوانستیم مخزن را در مکانی که معمولا هست، پیدا کنیم \"${name}\""; - - static String m20(access) => "اجازه «دسترسی» داده شد: ${access}"; + static String m20(name) => "نتوانستیم این مخزن را حذف کنیم: \"${name}\""; static String m21(name) => - "این مخزن از قبل در برنامه با این نام وجود دارد \"${name}\"."; + "نتوانستیم این مخزن را در مکانی که معمولا هست، بیابیم: \"${name}\""; - static String m22(name) => - "پیشنهاد: ${name}\n(برای استفاده از این نام این‌جا ضربه بزنید)"; + static String m22(access) => "اجازه دسترسی داده شد: ${access}"; - static String m23(name) => "‌مرتب‌سازی بر اساس:${name}"; + static String m23(name) => + "این مخزن از قبل در برنامه با نامِ \"${name}\" وجود دارد."; - static String m24(access) => "به‌عنوان کپی ${access} باز شد"; + static String m24(name) => + "پیشنهاد: ${name}\n(برای استفاده از این نام این‌جا ضربه بزنید)"; - static String m25(name) => "رمز عبور را برای باز کردن قفل وارد کنید. ${name}"; + static String m25(name) => "‌مرتب‌سازی بر اساس:${name}"; - static String m26(name) => "${name} نوشتن لغو شد"; + static String m26(access) => "به‌عنوان یک کپیِ ${access} باز شد"; - static String m27(name) => "${name} - ناموفق در نوشتن"; + static String m27(name) => "رمز عبور را برای باز کردن قفل وارد کنید. ${name}"; - static String m28(name) => "خطا در واردکردن مخزن ${name}"; + static String m28(name) => "${name} نوشتن لغو شد"; - static String m29(name) => "ایجاد مخزن ناموفق بود ${name}"; + static String m29(name) => "${name} - ناموفق در نوشتن"; static String m30(access) => "[دسترسی]"; @@ -104,7 +100,7 @@ class MessageLookup extends MessageLookupByLibrary { static String m37(status) => "${status}"; - static String m38(name) => "به‌اشتراک‌گذاری مخزن \"${name}\""; + static String m38(name) => "اشتراک‌گذاری مخزن \"${name}\""; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -145,9 +141,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("وارد کردن مخزن"), "actionInstallDokan": MessageLookupByLibrary.simpleMessage("نصب رابط کاربری Dokan"), + "actionLocateRepo": MessageLookupByLibrary.simpleMessage("یافتن مخزن"), "actionLockCapital": MessageLookupByLibrary.simpleMessage("قفل کردن"), - "actionMove": - MessageLookupByLibrary.simpleMessage("حرکت دادن (انتقال)"), + "actionMove": MessageLookupByLibrary.simpleMessage("انتقال"), "actionNewFile": MessageLookupByLibrary.simpleMessage("فایل"), "actionNewFolder": MessageLookupByLibrary.simpleMessage("پوشه"), "actionNewMediaFile": MessageLookupByLibrary.simpleMessage("رسانه"), @@ -167,74 +163,75 @@ class MessageLookup extends MessageLookupByLibrary { "actionRemoveRepo": MessageLookupByLibrary.simpleMessage("حذف مخزن"), "actionRename": MessageLookupByLibrary.simpleMessage("تغییر نام"), "actionRetry": MessageLookupByLibrary.simpleMessage("دوباره سعی کنید"), - "actionSave": MessageLookupByLibrary.simpleMessage("ذخیره کردن"), + "actionSave": MessageLookupByLibrary.simpleMessage("ذخیره"), "actionSaveChanges": MessageLookupByLibrary.simpleMessage("ذخیره تغییرات"), "actionScanQR": MessageLookupByLibrary.simpleMessage("یک کد QR اسکن کنید"), - "actionShare": MessageLookupByLibrary.simpleMessage("به‌اشتراک‌گذاری"), + "actionShare": MessageLookupByLibrary.simpleMessage("اشتراک‌گذاری‌"), "actionShareFile": MessageLookupByLibrary.simpleMessage("به‌اشتراک‌گذاری فایل"), "actionShow": MessageLookupByLibrary.simpleMessage("نمایش"), - "actionSkip": MessageLookupByLibrary.simpleMessage("پرش"), - "actionUndo": MessageLookupByLibrary.simpleMessage("واگرد"), - "actionUnlock": MessageLookupByLibrary.simpleMessage("بازکردن قفل"), + "actionSkip": MessageLookupByLibrary.simpleMessage("صرف نظر"), + "actionUndo": MessageLookupByLibrary.simpleMessage("بازگرداندن"), + "actionUnlock": MessageLookupByLibrary.simpleMessage("باز کردن قفل"), "actionUpdate": MessageLookupByLibrary.simpleMessage("به‌روزرسانی"), "actionUpdateDokan": MessageLookupByLibrary.simpleMessage("به‌روزرسانی Dokan"), "actionYes": MessageLookupByLibrary.simpleMessage("بله"), "buttonLocateRepository": - MessageLookupByLibrary.simpleMessage("مکان‌یابی"), + MessageLookupByLibrary.simpleMessage("موقعیت‌یابی"), "iconAccessMode": MessageLookupByLibrary.simpleMessage("حالت دسترسی"), "iconAddExistingRepository": MessageLookupByLibrary.simpleMessage("وارد کردن یک مخزن"), "iconCreateRepository": - MessageLookupByLibrary.simpleMessage("ایجاد یک مخزن جدید"), + MessageLookupByLibrary.simpleMessage("ایجاد مخزن جدید"), "iconDelete": MessageLookupByLibrary.simpleMessage("حذف"), "iconDownload": MessageLookupByLibrary.simpleMessage("دانلود"), "iconInformation": MessageLookupByLibrary.simpleMessage("اطلاعات"), - "iconMove": MessageLookupByLibrary.simpleMessage("حرکت دادن (انتقال)"), + "iconMove": MessageLookupByLibrary.simpleMessage("انتقال"), "iconPreview": MessageLookupByLibrary.simpleMessage("پیش‌نمایش"), "iconRename": MessageLookupByLibrary.simpleMessage("تغییر نام"), - "iconShare": MessageLookupByLibrary.simpleMessage("به‌اشتراک‌گذاری"), + "iconShare": MessageLookupByLibrary.simpleMessage("اشتراک‌گذاری‌"), "iconShareTokenWithPeer": MessageLookupByLibrary.simpleMessage( - "این را با همتایان خود به‌‌اشتراک بگذارید"), + "این را با همتاهای خود به‌‌اشتراک بگذارید"), "labelAppVersion": MessageLookupByLibrary.simpleMessage("نسخه اپلیکیشن"), "labelAttachLogs": - MessageLookupByLibrary.simpleMessage("ضمیمه فایل ثبت رویدادها"), + MessageLookupByLibrary.simpleMessage("ضمیمه کردن فایل گزارش‌ها"), "labelBitTorrentDHT": MessageLookupByLibrary.simpleMessage( "جدول درهم‌سازی توزیع‌شده (DHT) بیت‌تورنت"), "labelConnectionType": MessageLookupByLibrary.simpleMessage("نوع اتصال"), - "labelCopyLink": - MessageLookupByLibrary.simpleMessage("لینک را کپی کنید"), + "labelCopyLink": MessageLookupByLibrary.simpleMessage("کپی کردن لینک"), "labelDestination": MessageLookupByLibrary.simpleMessage("مقصد"), "labelDownloadedTo": MessageLookupByLibrary.simpleMessage("دانلود شده در:"), "labelEndpoint": MessageLookupByLibrary.simpleMessage("گرهِ انتهایی "), - "labelExternalIPv4": MessageLookupByLibrary.simpleMessage("IPv4 خارجی"), - "labelExternalIPv6": MessageLookupByLibrary.simpleMessage("IPv6 خارجی"), - "labelLocalIPv4": MessageLookupByLibrary.simpleMessage("IPv4 محلی"), - "labelLocalIPv6": MessageLookupByLibrary.simpleMessage("IPv6 محلی"), + "labelExternalIPv4": + MessageLookupByLibrary.simpleMessage("External IPv4‌"), + "labelExternalIPv6": + MessageLookupByLibrary.simpleMessage("External IPv6‌"), + "labelLocalIPv4": MessageLookupByLibrary.simpleMessage("Local IPv4‌"), + "labelLocalIPv6": MessageLookupByLibrary.simpleMessage("Local IPv6‌"), "labelLocation": MessageLookupByLibrary.simpleMessage("موقعیت مکانی: "), "labelLockAllRepos": - MessageLookupByLibrary.simpleMessage("قفل‌کردن تمام مخزن‌ها"), + MessageLookupByLibrary.simpleMessage("قفل‌ کردن همگی"), "labelName": MessageLookupByLibrary.simpleMessage("نام: "), "labelNewName": MessageLookupByLibrary.simpleMessage("نام جدید "), "labelPassword": MessageLookupByLibrary.simpleMessage("رمز عبور: "), "labelPeers": MessageLookupByLibrary.simpleMessage("همتاها"), "labelQRCode": MessageLookupByLibrary.simpleMessage("کد QR"), "labelQuicListenerEndpointV4": - MessageLookupByLibrary.simpleMessage("گوش‌دادن به QUIC/UDP IPv4"), + MessageLookupByLibrary.simpleMessage("Listening on QUIC/UDP IPv4‌"), "labelQuicListenerEndpointV6": - MessageLookupByLibrary.simpleMessage("گوش‌دادن به QUIC/UDP IPv6"), + MessageLookupByLibrary.simpleMessage("Listening on QUIC/UDP IPv6‌"), "labelRememberPassword": - MessageLookupByLibrary.simpleMessage("رمزعبور را به خاطر بسپار"), + MessageLookupByLibrary.simpleMessage("به‌خاطر سپردن رمز عبور"), "labelRenameRepository": MessageLookupByLibrary.simpleMessage("نام جدید را وارد کنید: "), "labelRepositoryCurrentPassword": - MessageLookupByLibrary.simpleMessage("رمز عبور حال حاضر"), + MessageLookupByLibrary.simpleMessage("رمز عبور فعلی"), "labelRepositoryLink": MessageLookupByLibrary.simpleMessage("لینک مخزن: "), "labelRetypePassword": @@ -244,69 +241,69 @@ class MessageLookup extends MessageLookupByLibrary { "labelSetPermission": MessageLookupByLibrary.simpleMessage("تنظیم مجوز"), "labelShareLink": - MessageLookupByLibrary.simpleMessage("لینک را به‌اشتراک‌ بگذارید"), + MessageLookupByLibrary.simpleMessage("اشتراک‌گذاری لینک"), "labelSize": MessageLookupByLibrary.simpleMessage("سایز: "), "labelSyncStatus": MessageLookupByLibrary.simpleMessage("وضعیت همگام‌سازی: "), "labelTcpListenerEndpointV4": - MessageLookupByLibrary.simpleMessage("گوش‌دادن به TCP IPv4"), + MessageLookupByLibrary.simpleMessage("Listening on TCP IPv4‌"), "labelTcpListenerEndpointV6": - MessageLookupByLibrary.simpleMessage("گوش‌دادن به TCP IPv6"), + MessageLookupByLibrary.simpleMessage("Listening on TCP IPv6‌"), "labelTokenLink": - MessageLookupByLibrary.simpleMessage("لینک به‌اشتراک‌گذاری مخزن"), + MessageLookupByLibrary.simpleMessage("لینک اشتراک‌گذاری مخزن"), "labelTypePassword": MessageLookupByLibrary.simpleMessage("رمز عبور را بنویسید: "), "labelUseExternalStorage": MessageLookupByLibrary.simpleMessage("استفاده از حافظه خارجی"), + "languageIsNotAvailable": + MessageLookupByLibrary.simpleMessage("در دسترس نیست"), + "languageOfTheDevice": + MessageLookupByLibrary.simpleMessage("زبان دستگاه"), "menuItemAbout": MessageLookupByLibrary.simpleMessage("درباره ما"), - "menuItemLogs": - MessageLookupByLibrary.simpleMessage("ثبت رویدادها (لاگ)"), + "menuItemLogs": MessageLookupByLibrary.simpleMessage("گزارش‌ها"), "menuItemNetwork": MessageLookupByLibrary.simpleMessage("شبکه"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("مخزن"), - "mesageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("هیچ رسانه‌ای وجود ندارد."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "دسترسی به فضای ذخیره‌سازی امن"), - "messageAck": MessageLookupByLibrary.simpleMessage( - "زمانی استفاده خواهد شد که مشکلی بروز کند. سورپرایز شدن یا واکنش منفی به چیزی که طبق انتظار عمل نمی‌کند.\nدر گفتگوی مرتبط با خطاها استفاده می‌شود."), + "messageAck": MessageLookupByLibrary.simpleMessage("ای بابا!"), "messageActionNotAvailable": MessageLookupByLibrary.simpleMessage( - "این گزینه در مخازنی که فقط قابل هستند، موجود نیست"), + "این گزینه در مخازن فقط خواندنی موجود نیست"), "messageAddRepoDb": MessageLookupByLibrary.simpleMessage( "وارد کردن مخزن از فایل سیستم"), "messageAddRepoLink": MessageLookupByLibrary.simpleMessage( - "یک مخزن را با استفاده از پیوند (لینک) توکن وارد کنید"), + "یک مخزن را با استفاده از لینک توکن وارد کنید"), "messageAddRepoQR": MessageLookupByLibrary.simpleMessage( "یک مخزن را با استفاده از یک کد QR وارد کنید"), "messageAddingFileToLockedRepository": MessageLookupByLibrary.simpleMessage( - "این مخزن قفل شده یا یک مدل کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید."), + "این مخزن قفل شده یا دارای مجوز کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید."), "messageAddingFileToReadRepository": MessageLookupByLibrary.simpleMessage( - "این مخزن یک کپی فقط قابل خواندن است."), + "این مخزن یک کپی فقط خواندنی است."), "messageAuthenticate": MessageLookupByLibrary.simpleMessage("احراز هویت"), "messageAutomaticUnlockRepositoryFailed": MessageLookupByLibrary.simpleMessage( - "ما نتوانستیم قفل مخزن را باز کنیم"), + "نتوانستیم قفل مخزن را باز کنیم"), "messageAvailableOnMobile": - MessageLookupByLibrary.simpleMessage("در تلفن همراه در دسترس است"), + MessageLookupByLibrary.simpleMessage("در موبایل در دسترس است"), "messageAwaitingResult": MessageLookupByLibrary.simpleMessage("در انتظار نتیجه..."), "messageBackgroundAndroidPermissions": MessageLookupByLibrary.simpleMessage( - "به زودی سیستم عامل از شما مجوز اجرای این اپلیکیشن را در پس‌زمینه درخواست می‌کند.\n\nاین (مجوز) برای ادامه همگام‌سازی لازم است در حالتی که اپلیکیشن در پیش‌زمینه اجرا نمی‌شود"), + "به‌زودی سیستم‌عامل از شما اجازه می‌خواهد تا این برنامه را در پس‌زمینه اجرا کند.\n\nاین کار برای ادامه همگام‌سازی هنگامی که برنامه در پیش‌زمینه فعال نیست، ضروری است"), "messageBackgroundNotificationAndroid": MessageLookupByLibrary.simpleMessage("در حال اجرا"), "messageBioAuthFailed": MessageLookupByLibrary.simpleMessage( "ناموفق در احراز هویت بیومتریک"), "messageBiometricUnlockRepositoryFailed": MessageLookupByLibrary.simpleMessage( - "بازکردن قفل بیومتریک ناموفق بود"), + "باز کردن قفل بیومتریک ناموفق بود"), "messageBlindReplicaExplanation": MessageLookupByLibrary.simpleMessage( "همتای شما نمی‌تواند محتواها را بنویسد و بخواند"), "messageBlindRepository": MessageLookupByLibrary.simpleMessage( - "این مخزن یک کپی با مدل [کور] است."), + "این مخزن یک کپی با مجوز کور است."), "messageBlindRepositoryContent": MessageLookupByLibrary.simpleMessage( - "رمز عبور ارائه‌شده به شما امکان دسترسی برای مشاهده محتوای این مخزن را نمی‌دهد."), + "رمز عبور ارائه‌شده امکان مشاهده محتوای این مخزن را به شما نمی‌دهد."), "messageBluetooth": MessageLookupByLibrary.simpleMessage("بلوتوث"), "messageBy": MessageLookupByLibrary.simpleMessage("توسط"), "messageCamera": MessageLookupByLibrary.simpleMessage("دوربین"), @@ -321,64 +318,65 @@ class MessageLookup extends MessageLookupByLibrary { "messageChangesToTermsP2": MessageLookupByLibrary.simpleMessage( "این سیاست (خط مشی) از تاریخ ۹ مارس ۲۰۲۲ میلادی قابل اجراست"), "messageChildrensPolicyP1": MessageLookupByLibrary.simpleMessage( - "ما آگاهانه اطلاعات قابل شناسایی شخصی از کودکان جمع آوری نمی‌کنیم. ما همه کودکان را تشویق می‌کنیم که هرگز اطلاعات شناسایی شخصی را از طریق اپلیکیشن و/یا خدمات ارائه نکنند. ما والدین و سرپرستان قانونی کودکان را تشویق می‌کنیم که بر استفاده فرزندان خود از اینترنت نظارت داشته باشند و به اجرای این خط‌مشی کمک کنند و به فرزندان خود آموزش دهند که هرگز اطلاعات قابل شناسایی شخصی را از طریق برنامه و/یا خدمات بدون اجازه آن‌ها ارائه نکنند. اگر دلیلی مبنی بر ارائه اطلاعات هویتی شخصی توسط کودکی به برنامه و/یا خدمات به ما دارید، لطفاً با ما تماس بگیرید.\nهمچنین باید حداقل ۱۶ سال سن داشته باشید تا با پردازش اطلاعات شناسایی شخصی خودتان در کشور خود موافقت کنید (در برخی کشورها ممکن است به والدین یا قیم شما اجازه دهیم از طرف شما این کار را انجام دهند)."), + "ما به طور آگاهانه اطلاعات شخصی قابل شناسایی از کودکان جمع‌آوری نمی‌کنیم. از تمامی کودکان می‌خواهیم که هیچ‌گاه اطلاعات شخصی قابل شناسایی خود را از طریق برنامه و/یا خدمات ارسال نکنند. همچنین به والدین و سرپرستان قانونی توصیه می‌کنیم تا بر استفاده فرزندانشان از اینترنت نظارت کنند و با راهنمایی فرزندانشان در این زمینه که بدون اجازه آن‌ها هیچ‌گونه اطلاعات شخصی قابل شناسایی را از طریق برنامه و/یا خدمات ارائه ندهند، به اجرای این سیاست کمک کنند. اگر دلیلی دارید که باور کنید کودکی از طریق برنامه و/یا خدمات اطلاعات شخصی قابل شناسایی را برای ما ارسال کرده است، لطفا با ما تماس بگیرید. همچنین شما باید حداقل ۱۶ سال سن داشته باشید تا بتوانید با پردازش اطلاعات شخصی قابل شناسایی خود در کشور خود موافقت کنید (در برخی کشورها ممکن است والدین یا سرپرستان قانونی شما بتوانند این کار را از طرف شما انجام دهند)"), "messageConfirmFileDeletion": MessageLookupByLibrary.simpleMessage( - "آیا اطمینان دارید که می خواهید این فایل را حذف کنید؟"), + "مطمئنید که می‌خواهید این فایل را حذف کنید؟"), "messageConfirmFolderDeletion": MessageLookupByLibrary.simpleMessage( - "آیا اطمینان دارید که می‌خواهید این پوشه را حذف کنید؟"), - "messageConfirmIrreversibleChange": MessageLookupByLibrary.simpleMessage( - "این اقدام غیر قابل بازگشت خواهد بود، آیا تمایل دارید ادامه دهید؟"), + "مطمئنید که می‌خواهید این پوشه را حذف کنید؟"), + "messageConfirmIrreversibleChange": + MessageLookupByLibrary.simpleMessage( + "این اقدام بازگشت‌ناپذیر خواهد بود، مایلید ادامه دهید؟"), "messageConfirmNotEmptyFolderDeletion": MessageLookupByLibrary.simpleMessage( - "این پوشه خالی نیست\n\nآیا هنوز می‌خواهید آن را حذف کنید؟ (با این کار تمام محتویات آن حذف می‌شود)"), + "این پوشه خالی نیست\n\nهنوز می‌خواهید حذفش کنید؟ (با این کار تمام محتویاتش حذف می‌شود)"), "messageConfirmRepositoryDeletion": MessageLookupByLibrary.simpleMessage( - "آیا اطمینان دارید که می خواهید این مخزن را حذف کنید؟"), + "مطمئنید که می‌خواهید این مخزن را حذف کنید؟"), "messageContatUsP1": MessageLookupByLibrary.simpleMessage( "در صورتی که در مورد خط مشی حفظ حریم خصوصی ما سؤال یا پیشنهادی دارید، حتما با ما تماس بگیرید"), "messageCookiesP1": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync از کوکی‌ها استفاده نمی‌کند"), - "messageCopiedToClipboard": MessageLookupByLibrary.simpleMessage( - "در کلیپ‌بورد(ذخیره موقت) کپی شد."), + "اپلیکیشن وی‌سینک از کوکی‌ها استفاده نمی‌کند"), + "messageCopiedToClipboard": + MessageLookupByLibrary.simpleMessage("در کلیپ‌بورد کپی شد."), "messageCreateAddNewItem": MessageLookupByLibrary.simpleMessage( - "با استفاده از ... یک پوشه جدید ایجاد کنید، یا یک فایل اضافه کنید،"), + "با استفاده از یک پوشه جدید ایجاد کنید، یا یک فایل اضافه کنید"), "messageCreateNewRepo": MessageLookupByLibrary.simpleMessage( - "یک مخزن ایجاد کنید یا با استفاده از توکن مخزن به یکی از دوستان‌تان لینک شوید"), + "یک مخزن ایجاد کنید یا با استفاده از توکن مخزن به یکی از دوستان‌تان لینک شوید"), "messageCreatingToken": MessageLookupByLibrary.simpleMessage("در حال ایجاد توکن اشتراکی…"), "messageDataCollectionP1": MessageLookupByLibrary.simpleMessage( - "تیم Ouisync برای حریم خصوصی کاربر ارزش قائل است و بنابراین هیچ اطلاعات کاربری را جمع آوری نمی‌کند."), + "تیم وی‌سینک برای حریم خصوصی کاربر ارزش قائل است و بنابراین هیچ اطلاعات کاربری را جمع آوری نمی‌کند"), "messageDataCollectionP2": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام، نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد"), + "اپلیکیشن وی‌سینک به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام، نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد"), "messageDataSharingP1": MessageLookupByLibrary.simpleMessage( - "Ouisync (و eQualit.ie) هیچ اطلاعاتی را با طرف‌های شخص ثالث به‌اشتراک نمی‌گذارد"), + "وی‌سینک (و eQualit.ie) هیچ اطلاعاتی را با طرف‌های ثالث به‌اشتراک نمی‌گذارد"), "messageDeclarationDOS": MessageLookupByLibrary.simpleMessage( "اعلامیه خدمات آنلاین توزیع‌شده"), "messageDeletionDataServerNote": MessageLookupByLibrary.simpleMessage( - "تیم Ouisync نمی تواند فایل‌های شخصی را از مخازن حذف کند، زیرا شناسایی آن‌ها به علت رمزنگاری ممکن نیست. اگر پیوند(لینک) مخزنی که باید حذف شود را برای ما ارسال کنید، می توانیم کل مخازن را حذف کنیم."), + "تیم وی‌سینک نمی تواند فایل‌های شخصی را از مخازن حذف کند، زیرا شناسایی آن‌ها به علت رمزنگاری ممکن نیست. اگر لینک مخزنی که باید حذف شود را برای ما ارسال کنید، می توانیم کل مخازن را حذف کنیم"), "messageDeletionDataServerP1": MessageLookupByLibrary.simpleMessage( - "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هرگونه حذف فایل به همه همتایان شما اطلاع‌رسانی خواهد شد(منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتایان شما و همچنین از همتای همیشه فعال ما Always-On-Peer حذف خواهند شد. \nاگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفاً با آدرس زیر با ما تماس بگیرید."), + "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هرگونه حذف فایل به همه همتایان شما اطلاع‌رسانی خواهد شد(منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتایان شما و همچنین از همتای همیشه فعال ما حذف خواهند شد. اگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفا با آدرس زیر با ما تماس بگیرید"), "messageDistributedHashTables": MessageLookupByLibrary.simpleMessage("جداول هش توزیع‌شده"), "messageDokan": MessageLookupByLibrary.simpleMessage( "رابط نرم‌افزاری دکان (Dokan)"), "messageDokanDifferentMayorP1": - MessageLookupByLibrary.simpleMessage("نصب شده"), + MessageLookupByLibrary.simpleMessage("نصب‌شده"), "messageDokanDifferentMayorP2": MessageLookupByLibrary.simpleMessage( - "قدیمی شده است. لطفا آن را به آخرین نسخه به‌روزرسانی کنید."), + "قدیمی است. لطفا آن را به آخرین نسخه به‌روزرسانی کنید."), "messageDokanInstallationFailed": MessageLookupByLibrary.simpleMessage( "نصب رابط کاربری Dokan موفقیت‌آمیز نبود."), "messageDokanOlderVersionP2": MessageLookupByLibrary.simpleMessage( - "قدیمی است.\n\nلطفاً نسخه موجود رابط کاربری Dokan را حذف کنید، سیستم را مجدد راه‌اندازی و وی‌سینک را دوباره اجرا کنید."), + "قدیمی است.\n\nلطفا نسخه موجود رابط کاربری Dokan را حذف کنید، سیستم را مجدد راه‌اندازی و وی‌سینک را دوباره اجرا کنید."), "messageDownloadFileCanceled": MessageLookupByLibrary.simpleMessage("دانلود فایل لغو شد"), "messageDownloadFileLocation": m1, "messageDownloadingFileCanceled": m2, "messageDownloadingFileError": m3, - "messageEmptyFolder": - MessageLookupByLibrary.simpleMessage("این پوشه خالی است"), - "messageEmptyRepo": - MessageLookupByLibrary.simpleMessage("این مخزن خالی است"), + "messageEmptyFolder": MessageLookupByLibrary.simpleMessage( + "این پوشه خالی است"), + "messageEmptyRepo": MessageLookupByLibrary.simpleMessage( + "این مخزن خالی است"), "messageEnterDifferentName": MessageLookupByLibrary.simpleMessage("لطفا نام دیگری وارد کنید"), "messageEntryAlreadyExist": m4, @@ -388,19 +386,19 @@ class MessageLookup extends MessageLookupByLibrary { "messageEntryTypeFolder": MessageLookupByLibrary.simpleMessage("یک پوشه"), "messageEqValuesP1": MessageLookupByLibrary.simpleMessage( - "حقوق اساسی و آزادی‌های اساسی، ذاتی، غیرقابل انکار و به‌طور یکسان برای همگان اعمال می‌شود. حقوق بشر امری جهانی است؛ در حقوق بین‌الملل حمایت‌شده و تصریح‌شده در: "), + "حقوق اساسی و آزادی‌های اساسی ذاتی و سلب‌نشدنی‌اند و به‌طور برابر برای همگان اعمال می‌شوند. حقوق بشر جهانی است؛ در قوانین بین‌الملل محافظت شده و در: "), "messageEqValuesP10": MessageLookupByLibrary.simpleMessage( "به عنوان یک سازمان، ما به دنبال شفافیت در سیاست‌ها و رویه‌های خود هستیم. تا آنجا که ممکن است، کد منبع ما باز و آزادانه در دسترس است، و توسط مجوزهایی محافظت می‌شود که توسعه جامعه‌محور، به‌اشتراک‌گذاری و انتشار این اصول و ارزش‌ها را ترغیب و تشویق می‌کنند"), "messageEqValuesP11": MessageLookupByLibrary.simpleMessage( "توانایی بیان و اظهارنظر آزادانه و دسترسی به اطلاعات عمومی، ستون فقرات یک دموکراسی واقعی است. اطلاعات عمومی باید در حوزه عمومی باشد. آزادی بیان شامل بحث‌های فعال و داغ است، حتی بحث و استدلال‌هایی که به‌طور نامطلوب بیان شده‌اند، ساختار ضعیفی دارند و ممکن است برای برخی توهین‌آمیز تلقی شوند. اما آزادی بیان یک حق مطلق نیست. ما قاطعانه برابر خشونت و تحریک برای نقض حقوق دیگران، به‌ویژه ترویج خشونت، نفرت، تبعیض و سلب حق رای از هر گروه قومی یا گروه اجتماعی قابل شناسایی، ایستاده‌ایم"), "messageEqValuesP12": MessageLookupByLibrary.simpleMessage( - "ما از داخل کشورهای مختلف فعالیت می‌کنیم و از زمینه‌ها و گروه‌های متفاوت اجتماعی گردهم جمع شده‌ایم. ما به همراه هم برای جامعه‌ای فعالیت می‌کنیم که به حقوق دیگران در دنیای فیزیکی و دیجیتالی احترام بگذارد و از آن دفاع کند. اعلامیه جهانی حقوق بشر مجموعه ای از حقوق انسان را بیان می‌کند که الهام‌بخش کار ماست. ما معتقدیم که مردم حق و وظیفه دارند از این حقوق حمایت کنند."), + "ما از داخل کشورهای مختلف فعالیت می‌کنیم و از زمینه‌ها و گروه‌های متفاوت اجتماعی گردهم جمع شده‌ایم. ما به همراه هم برای جامعه‌ای فعالیت می‌کنیم که به حقوق دیگران در دنیای فیزیکی و دیجیتالی احترام بگذارد و از آن دفاع کند. اعلامیه جهانی حقوق بشر مجموعه ای از حقوق انسان را بیان می‌کند که الهام‌بخش کار ماست. ما معتقدیم که مردم حق و وظیفه دارند از این حقوق حمایت کنند"), "messageEqValuesP13": MessageLookupByLibrary.simpleMessage( - "ما درک می‌کنیم که ابزارها و خدمات ما می‌توانند برای نقض این اصول و ارزش‌ها و شرایط خدمات ما مورد سوء‌استفاده قرار گیرند، و قاطعانه و فعالانه چنین استفاده‌ای را محکوم و منع می‌کنیم. ما نه اجازه استفاده از نرم‌افزار و خدمات خود را برای پیشبرد فعالیت‌های غیرقانونی می‌دهیم و نه به تبلیغ سخنانی که مشوق نفرت‌پراکنی هستند یا ترویج خشونت می‌کنند، از طریق اینترنت، کمک می‌کنیم."), + "ما درک می‌کنیم که ابزارها و خدمات ما می‌توانند برای نقض این اصول و ارزش‌ها و شرایط خدمات ما مورد سوء‌استفاده قرار گیرند، و قاطعانه و فعالانه چنین استفاده‌ای را محکوم و منع می‌کنیم. ما نه اجازه استفاده از نرم‌افزار و خدمات خود را برای پیشبرد فعالیت‌های غیرقانونی می‌دهیم و نه به تبلیغ سخنانی که مشوق نفرت‌پراکنی هستند یا ترویج خشونت می‌کنند، از طریق اینترنت، کمک می‌کنیم"), "messageEqValuesP14": MessageLookupByLibrary.simpleMessage( - "ما تدابیری را برای کاهش سوء‌استفاده از محصولات و خدمات خود در نظر گرفته‌ایم. وقتی از هرگونه استفاده‌ای که اصول یا شرایط خدمات ما را نقض می‌کند، آگاه می‌شویم، برای جلوگیری از آن اقدام می‌کنیم. با تکیه بر سیاست‌های داخلی خود، ما به دقت در مورد اقداماتی که ممکن است اصول ما را به خطر بیندازند، بررسی لازم را انجام می‌دهیم. رویه‌های ما بر اساس تجربه و بهترین شیوه‌ها به تکامل خود ادامه خواهند داد تا بتوانیم به تعادل مناسب بین امکان دسترسی آزاد به محصولات و خدمات خود و رعایت اصول و ارزش‌های خود دست یابیم."), + "ما تدابیری را برای کاهش سوء‌استفاده از محصولات و خدمات خود در نظر گرفته‌ایم. وقتی از هرگونه استفاده‌ای که اصول یا شرایط خدمات ما را نقض می‌کند، آگاه می‌شویم، برای جلوگیری از آن اقدام می‌کنیم. با تکیه بر سیاست‌های داخلی خود، ما به دقت در مورد اقداماتی که ممکن است اصول ما را به خطر بیندازند، بررسی لازم را انجام می‌دهیم. رویه‌های ما بر اساس تجربه و بهترین شیوه‌ها به تکامل خود ادامه خواهند داد تا بتوانیم به تعادل مناسب بین امکان دسترسی آزاد به محصولات و خدمات خود و رعایت اصول و ارزش‌های خود دست یابیم"), "messageEqValuesP2": MessageLookupByLibrary.simpleMessage( - "افراد شجاع زندگی و آزادی خود را برای دفاع از حقوق بشر، برای بسیج افکار عمومی، برای انتفاد و برای افشای عاملان فساد و سواستفاده، به خطر می‌اندازند. افراد شجاع از دیگران و ایده‌ها حمایت‌ می‌کنند و نگرانی‌های خود را با دنیا به‌اشتراک می‌گذارند. این افراد شجاع حقوق بشر را به‌طور آنلاین نیز به نمایش می‌گذارند"), + "افراد شجاع زندگی و آزادی خود را برای دفاع از حقوق بشر، برای بسیج افکار عمومی، برای انتفاد و برای افشای عاملان فساد و سوءاستفاده، به خطر می‌اندازند. افراد شجاع از دیگران و ایده‌ها حمایت‌ می‌کنند و نگرانی‌های خود را با دنیا به‌اشتراک می‌گذارند. این افراد شجاع حقوق بشر را به‌طور آنلاین نیز به نمایش می‌گذارند"), "messageEqValuesP3": MessageLookupByLibrary.simpleMessage( "اینترنت بستری برای بیان آزاد و تعیین سرنوشت به دست خود است. مانند هر ابزار ارتباطی، اینترنت از سانسور، نظارت، حمله‌ها و تلاش‌های بازیگران دولتی و گروه‌های جنایتکار برای خاموش‌کردن صدای مخالفان مصون نیست. هنگامی که ارائه نظر و بیان دموکراتیک جرم‌انگاری شود، زمانی که تبعیض قومی و سیاسی وجود داشته باشد، اینترنت به میدان جنگ دیگری برای مقاومت غیرخشونت‌آمیز تبدیل می‌شود"), "messageEqValuesP4": MessageLookupByLibrary.simpleMessage( @@ -412,7 +410,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageEqValuesP7": MessageLookupByLibrary.simpleMessage( "با الهام از اعلامیه جهانی حقوق بشر، اصول و ارزش‌های ما برای هر فرد، گروه و نهادی از جامعه که با آ‌ن‌ها همکاری می‌کنیم، از جمله ذی‌نفعان نرم‌افزار و خدماتی که منتشر می‌کنیم، اعمال می‌شود. تمام پروژه‌های ما با در نظر گرفتن اصول و ارزش‌های ما طراحی شده‌اند. دانش، ابزار و خدمات ما تا زمانی که اصول و شرایط‌‌مان رعایت شود، در دسترس این گروه‌ها و افراد است"), "messageEqValuesP8": MessageLookupByLibrary.simpleMessage( - "حق «حریم خصوصی» یک حق اساسی است که هدف ما حفظ آن است در هر زمان و هر کجا که امکان دارد. حریم خصوصی ذی‌نفعان مستقیم ما در فعالیتی که می‌کنیم، ارزشمند و مقدس است. ابزارها، خدمات و سیاست‌های داخلی ما به همین منظور طراحی شده‌اند. ما از تمامی منابع فنی و قانونی که در اختیار داریم، برای حفظ حریم خصوصی ذی‌نفعان خود استفاده خواهیم کرد. لطفاً به سند حریم خصوصی ما مراجعه کنید. "), + "حق «حریم خصوصی» یک حق اساسی است که هدف ما حفظ آن است در هر زمان و هر کجا که امکان دارد. حریم خصوصی ذی‌نفعان مستقیم ما در فعالیتی که می‌کنیم، ارزشمند و مقدس است. ابزارها، خدمات و سیاست‌های داخلی ما به همین منظور طراحی شده‌اند. ما از تمامی منابع فنی و قانونی که در اختیار داریم، برای حفظ حریم خصوصی ذی‌نفعان خود استفاده خواهیم کرد. لطفا به سند حریم خصوصی ما مراجعه کنید. "), "messageEqValuesP9": MessageLookupByLibrary.simpleMessage( "امنیت یک موضوع ثابت در تمام پروژه‌های توسعه نرم‌افزار، ارائه خدمات و ظرفیت‌سازی ما است. ما سیستم‌ها و فرآیندهای خود را برای بهبود امنیت اطلاعات در فضای اینترنت و افزایش شاخص‌های امنیتی و تجربه کاربر طراحی می‌کنیم. ما سعی می‌کنیم ویژگی‌های امنیتی یک ابزار یا سیستم را به خاطر سرعت، قابلیت استفاده یا هزینه، به خطر نیاندازیم. ما به امنیت مبهم اعتقادی نداریم و از طریق دسترسی آزاد به کدهای منبع ابزارها شفافیت را حفظ می‌کنیم. ما همیشه جانب احتیاط را رعایت می‌کنیم و سعی داریم تا امنیت عملیات‌های داخلی نرم‌افزارها را به‌خوبی اعمال کنیم"), "messageEqualitieValues": MessageLookupByLibrary.simpleMessage( @@ -420,9 +418,9 @@ class MessageLookup extends MessageLookupByLibrary { "messageError": MessageLookupByLibrary.simpleMessage("خطا!"), "messageErrorAuthenticatingBiometrics": MessageLookupByLibrary.simpleMessage( - "خطایی در احراز‌هویت با استفاده از روش‌های بیومتریک وجود داشت. لطفا دوباره تلاش کنید"), + "خطایی در احراز‌هویت با روش بیومتریک پیش آمد. لطفا دوباره تلاش کنید"), "messageErrorChangingPassword": MessageLookupByLibrary.simpleMessage( - "در تغییر رمز عبور مشکلی وجود داشت. لطفا دوباره تلاش کنید"), + "در تغییر رمز عبور مشکلی پیش آمد. لطفا دوباره تلاش کنید"), "messageErrorCharactersNotAllowed": MessageLookupByLibrary.simpleMessage( "استفاده از / یا \\ مجاز نیست"), @@ -432,7 +430,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("خطا در ایجاد توکن اشتراکی."), "messageErrorCurrentPathMissing": m5, "messageErrorDefault": MessageLookupByLibrary.simpleMessage( - "اشکالی پیش آمد. لطفا دوباره تلاش کنید."), + "اشکالی پیش آمده. لطفا دوباره تلاش کنید."), "messageErrorDefaultShort": MessageLookupByLibrary.simpleMessage("ناموفق."), "messageErrorDetail": m6, @@ -443,7 +441,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "لطفا یک نام معتبر وارد کنید."), "messageErrorLoadingContents": MessageLookupByLibrary.simpleMessage( - "ما نتوانستیم محتوای این پوشه را بارگذاری کنیم. لطفا دوباره تلاش کنید."), + "نتوانستیم محتوای این پوشه را بارگذاری کنیم. لطفا دوباره تلاش کنید."), "messageErrorNewPasswordSameOldPassword": MessageLookupByLibrary.simpleMessage( "رمز عبور جدید همان رمز عبور قدیمی است"), @@ -451,8 +449,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("خطا در باز کردن مخزن"), "messageErrorOpeningRepoDescription": m8, "messageErrorPathNotEmpty": m9, - "messageErrorRepositoryNameExist": MessageLookupByLibrary.simpleMessage( - "یک مخزن با این نام وجود دارد"), + "messageErrorRepositoryNameExist": + MessageLookupByLibrary.simpleMessage("مخزنی با این نام وجود دارد"), "messageErrorRepositoryPasswordValidation": MessageLookupByLibrary.simpleMessage("لطفا یک رمز عبور وارد کنید."), "messageErrorRetypePassword": MessageLookupByLibrary.simpleMessage( @@ -462,17 +460,17 @@ class MessageLookup extends MessageLookupByLibrary { "messageErrorTokenInvalid": MessageLookupByLibrary.simpleMessage("این توکن معتبر نیست."), "messageErrorTokenValidator": MessageLookupByLibrary.simpleMessage( - "لطفاً یک توکن معتبر وارد کنید."), + "لطفا یک توکن معتبر وارد کنید."), "messageErrorUnhandledState": - MessageLookupByLibrary.simpleMessage("خطا: حالت کنترل‌نشده"), + MessageLookupByLibrary.simpleMessage("خطا: وضعیت غیر قابل کنترل"), "messageEthernet": MessageLookupByLibrary.simpleMessage("شبکه محلی کابلی"), "messageExitOuiSync": MessageLookupByLibrary.simpleMessage( - "برای خروج، دوباره دکمه بازگشت را فشار دهید."), + "برای خروج، دوباره دکمه بازگشت را بزنید."), "messageFAQ": MessageLookupByLibrary.simpleMessage("پرسش‌های متداول"), - "messageFailedToMount": m10, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("فایل"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage( "فایل از قبل در حال آپلود است"), "messageFileName": MessageLookupByLibrary.simpleMessage("نام فایل"), @@ -481,7 +479,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "پیش‌نمایش فایل هنوز در دسترس نیست"), "messageFiles": MessageLookupByLibrary.simpleMessage("فایل‌ها"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("نام پوشه"), "messageGeneratePassword": MessageLookupByLibrary.simpleMessage("ایجاد رمز عبور"), @@ -490,36 +488,38 @@ class MessageLookup extends MessageLookupByLibrary { "messageGoToPeers": MessageLookupByLibrary.simpleMessage("به (بخش) همتاها بروید"), "messageGood": MessageLookupByLibrary.simpleMessage("خوب"), - "messageGranted": MessageLookupByLibrary.simpleMessage("اعطا شد"), + "messageGranted": + MessageLookupByLibrary.simpleMessage("دسترسی داده شد"), "messageGrantingRequiresSettings": MessageLookupByLibrary.simpleMessage( - "اعطای این مجوز نیاز به رفتن به بخش تنظیمات دارد:\n\nتنظیمات»»»اپ‌ها و اعلان‌ها"), + "برای دسترسی این مجوز باید به تنظیمات بروید:\n\nتنظیمات > اپ‌ها و اعلان‌ها"), "messageIgnoreBatteryOptimizationsPermission": MessageLookupByLibrary.simpleMessage( "به اپلیکیشن اجازه می‌دهد به همگام‌سازی در پس‌زمینه ادامه دهد"), "messageInfoBittorrentDHT": MessageLookupByLibrary.simpleMessage( - "ابزاری است که به همتایان اجازه می‌دهد بدون سرور متمرکز یکدیگر را در شبکه همتابه‌همتا P2P پیدا کنند"), + "ابزاری است که به همتاها اجازه می‌دهد بدون سرور متمرکز، یکدیگر را در شبکه همتابه‌همتا (P2P) پیدا کنند"), "messageInfoLocalDiscovery": MessageLookupByLibrary.simpleMessage( - "سیستم کشف محلی همتا (Local Peer Discovery) به اپلیکیشن‌های Ouisync شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتایان خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد"), + "سیستم شناسایی محلی همتا (Local Peer Discovery) به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتایان خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد"), "messageInfoNATType": MessageLookupByLibrary.simpleMessage( - "این مقدار توسط ارائه‌دهنده خدمات اینترنت شما تنظیم شده است.\n\nوقتی این تنظیمات غیرمتقارن باشد، ارتباط با همتایان خود در بهترین وجه امکان‌پذیر می‌شود"), + "این مقدار به روتر شما و/یا ارائه‌دهنده خدمات اینترنتی شما بستگی دارد.\n\nاتصال با همتایان شما به بهترین شکل زمانی حاصل می‌شود که مستقل از نقطه انتهایی باشد"), "messageInfoPeerExchange": MessageLookupByLibrary.simpleMessage( "ابزاری است که برای تبادل لیست همتایان با همتاهایی که به آن‌ها متصل هستید، استفاده می‌شود"), "messageInfoRuntimeID": MessageLookupByLibrary.simpleMessage( - "یک شناسه منحصر‌به‌فرد است که هربار هنگام شروع توسط Ouisync تولید می‌شود.\n\nمی‌توانید از آن برای تأیید ارتباط خود با دیگران در بخش مرتبط با همتای (Peer) اپلیکیشن، استفاده کنید"), + "یک شناسه منحصر‌به‌فرد است که هربار هنگام شروع توسط وی‌سینک تولید می‌شود.\n\nمی‌توانید از آن برای تایید ارتباط خود با دیگران در بخش مرتبط با همتای (Peer) اپلیکیشن، استفاده کنید"), "messageInfoSyncMobileData": MessageLookupByLibrary.simpleMessage( - "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای (انتقال) داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتایان خود به اشتراک می‌گذارید، از شما هزینه دریافت کند"), + "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای انتقال داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتایان خود به اشتراک می‌گذارید، از شما هزینه دریافت کند"), "messageInfoUPnP": MessageLookupByLibrary.simpleMessage( - "مجموعه‌ای از پروتکل‌های شبکه است که به اپلیکیشن‌های Ouisync شما اجازه می‌دهد تا یکدیگر را کشف کرده و با یکدیگر ارتباط برقرار کنند.\n\nبرای بهترین اتصال، توصیه می‌کنیم این تنظیمات روشن باشد"), + "مجموعه‌ای از پروتکل‌های شبکه است که به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا یکدیگر را کشف کرده و با یکدیگر ارتباط برقرار کنند.\n\nبرای بهترین اتصال، توصیه می‌کنیم این تنظیمات روشن باشد"), "messageInitializing": MessageLookupByLibrary.simpleMessage("در حال راه‌اندازی…"), "messageInputPasswordToUnlock": MessageLookupByLibrary.simpleMessage( - "روی دکمه باز کردن قفل ضربه بزنید و رمز عبور را برای دسترسی به محتوای این مخزن وارد کنید."), + "روی دکمه باز کردن قفل ضربه بزنید و رمز عبور را برای دسترسی به محتوای این مخزن وارد کنید."), "messageInstallDokanForOuisyncP1": MessageLookupByLibrary.simpleMessage("موارد استفاده از وی‌سینک"), "messageInstallDokanForOuisyncP2": MessageLookupByLibrary.simpleMessage( - "برای دسترسی به مخازن از طریق بخش جستجوگر فایل.\nلطفاً رابط نرم‌افزاری Dokan را برای بهبود تجربه وی‌سینک خود نصب کنید."), + "برای دسترسی به مخازن از طریق بخش جست‌وجوگر فایل.\nلطفا رابط نرم‌افزاری Dokan را برای بهبود تجربه وی‌سینک خود نصب کنید."), "messageInternationalBillHumanRights": - MessageLookupByLibrary.simpleMessage("اعلامیه جهانی حقوق بشر"), + MessageLookupByLibrary.simpleMessage( + "اعلامیه جهانی حقوق بشر به رسمیت شناخته شده است"), "messageKeepBothFiles": MessageLookupByLibrary.simpleMessage("هر دو فایل را نگه دارید"), "messageKeepBothFolders": @@ -529,14 +529,14 @@ class MessageLookup extends MessageLookupByLibrary { "messageLibraryPanic": MessageLookupByLibrary.simpleMessage("یک مشکل داخلی شناسایی شد."), "messageLinksOtherSitesP1": MessageLookupByLibrary.simpleMessage( - "این سرویس ممکن است حاوی پیوندهایی (لینک‌هایی) به وب‌سایت‌های دیگر باشد. اگر روی پیوند شخص ثالث کلیک کنید، به آن سایت هدایت خواهید شد. توجه داشته باشید که این وب‌سایت‌های خارجی توسط ما اداره نمی‌شوند. بنابراین، ما قویاً به شما توصیه می‌کنیم که سند حریم خصوصی این وب سایت‌ها را بررسی کنید. ما هیچ کنترلی بر آن نداریم و هیچ مسئولیتی در قبال محتوا، خط‌مشی‌های حفظ حریم خصوصی، یا عملکرد وب‌سایت‌ها یا خدمات شخص ثالث نداریم."), + "این سرویس ممکن است حاوی لینک‌هایی به وب‌سایت‌های دیگر باشد. اگر روی لینک شخص ثالث کلیک کنید، به آن سایت هدایت خواهید شد. توجه داشته باشید که این وب‌سایت‌های خارجی توسط ما اداره نمی‌شوند. بنابراین، ما قویا به شما توصیه می‌کنیم که سند حریم خصوصی این وب سایت‌ها را بررسی کنید. ما هیچ کنترلی بر آن نداریم و هیچ مسئولیتی در قبال محتوا، خط‌مشی‌های حفظ حریم خصوصی، یا عملکرد وب‌سایت‌ها یا خدمات شخص ثالث نداریم"), "messageLoadingDefault": MessageLookupByLibrary.simpleMessage("در حال بارگذاری…"), "messageLocalDiscovery": - MessageLookupByLibrary.simpleMessage("کشف محلی"), - "messageLockOpenRepos": m13, - "messageLockedRepository": - MessageLookupByLibrary.simpleMessage("این مخزن قفل شده است."), + MessageLookupByLibrary.simpleMessage("شناسایی شبکه محلی"), + "messageLockOpenRepos": m15, + "messageLockedRepository": MessageLookupByLibrary.simpleMessage( + "این مخزن قفل شده است."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( "در حال قفل کردن تمام مخازنی که باز هستند…"), "messageLogData1": MessageLookupByLibrary.simpleMessage( @@ -546,93 +546,92 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogData3": MessageLookupByLibrary.simpleMessage( "آدرس آی‌پی کاربر - به منظور ارائه پشتیبانی فنی"), "messageLogDataP1": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync فایل‌های مرتبط با ثبت رویدادها (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتایان خود یا در موارد دیگر در استفاده از Ouisync با مشکل مواجه شود. فایل ثبت رویدادها (لاگ) در دستگاه کاربر باقی می‌ماند، مگر اینکه کاربر تصمیم بگیرد، آن‌را برای اهداف پشتیبانی برای ما ارسال کند."), + "اپلیکیشن وی‌سینک فایل‌های مرتبط با ثبت گزارش (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتایان خود یا در موارد دیگر در استفاده از وی‌سینک با مشکل مواجه شود. فایل گزارش (لاگ) در دستگاه کاربر باقی می‌ماند، مگر این که کاربر تصمیم بگیرد آن‌را برای اهداف پشتیبانی برای ما ارسال کند"), "messageLogDataP2": MessageLookupByLibrary.simpleMessage( "اگر کاربر تصمیم بگیرد با ما تماس بگیرد، اطلاعات غیرقابل شناسایی شخصی که ممکن است جمع‌آوری کنیم عبارتند از:"), "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "هیچ‌یک از این اطلاعات با هیچ طرف شخص ثالثی به‌اشتراک گذاشته نمی‌شود"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("همه"), - "messageLogLevelErroWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "خطا، هشدار، اطلاعات و رفع اشکال"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("فقط خطا"), "messageLogLevelErrorWarn": MessageLookupByLibrary.simpleMessage("خطا و هشدار"), "messageLogLevelErrorWarnInfo": MessageLookupByLibrary.simpleMessage("خطا، هشدار و اطلاعات"), "messageLogViewer": - MessageLookupByLibrary.simpleMessage("نمایشگر ثبت رویدادها"), + MessageLookupByLibrary.simpleMessage("نمایشگر ثبت گزارش"), "messageMedium": MessageLookupByLibrary.simpleMessage("متوسط"), "messageMissingBackgroundServicePermission": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync مجوز اجراشدن در پس‌زمینه را ندارد، باز کردن یک اپلیکیشن دیگر ممکن است، روند همگام‌سازی را متوقف کند"), + "اپلیکیشن وی‌سینک مجوز اجرا در پس‌زمینه را ندارد، باز کردن یک اپلیکیشن دیگر ممکن است روند همگام‌سازی را متوقف کند"), "messageMobile": MessageLookupByLibrary.simpleMessage("موبایل"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( - "این ویژگی هنگام جابجایی «ورودی» در دسترس نیست."), + "این ویژگی هنگام انتقال «ورودی» در دسترس نیست."), "messageNATOnWikipedia": MessageLookupByLibrary.simpleMessage( "ترجمه آدرس شبکه (NAT) در ویکی‌پدیا"), - "messageNATType": MessageLookupByLibrary.simpleMessage("نوع NAT"), + "messageNATType": MessageLookupByLibrary.simpleMessage("NAT type‌"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("شبکه در دسترس نیست"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( - "رمز عبور جدید در حافظه کوتاه‌مدت کپی شد"), + "رمز عبور جدید در کلیپ‌بورد کپی شد"), "messageNewVersionIsAvailable": - MessageLookupByLibrary.simpleMessage("یک نسخه جدید در دسترس است."), + MessageLookupByLibrary.simpleMessage("نسخه جدید موجود است."), "messageNoAppsForThisAction": MessageLookupByLibrary.simpleMessage( "هیچ اپلیکیشنی نمی‌تواند این عمل را انجام دهد"), + "messageNoMediaPresent": + MessageLookupByLibrary.simpleMessage("هیچ رسانه‌ای وجود ندارد."), "messageNoRepo": MessageLookupByLibrary.simpleMessage( - "قبل از اضافه‌کردن فایل ها، باید یک مخزن ایجاد کنید"), + "قبل از اضافه‌ کردن فایل‌ها، باید یک مخزن ایجاد کنید"), "messageNoRepoIsSelected": - MessageLookupByLibrary.simpleMessage("هیچ مخزنی انتخاب نشده‌ است"), + MessageLookupByLibrary.simpleMessage("هیچ مخزنی انتخاب نشده‌"), "messageNoRepos": MessageLookupByLibrary.simpleMessage("هیچ مخزنی یافت نشد"), - "messageNone": MessageLookupByLibrary.simpleMessage("هیچ‌کدام"), + "messageNone": MessageLookupByLibrary.simpleMessage("هیچ کدام"), "messageNote": MessageLookupByLibrary.simpleMessage("توجه"), "messageNothingHereYet": - MessageLookupByLibrary.simpleMessage("اینجا هنوز چیزی وجود ندارد!"), + MessageLookupByLibrary.simpleMessage("هنوز چیزی این‌جا نیست!"), "messageOnboardingAccess": MessageLookupByLibrary.simpleMessage( - "فایل‌ها را در همه دستگاه‌های خود یا با دیگران به اشتراک بگذارید و فضای ذخیره سازی ابری امن خود را بسازید!"), + "فایل‌ها را با تمامی دستگاه‌های خود یا با دیگران به اشتراک بگذارید و فضای ذخیره‌سازی ابری امن خود را بسازید!"), "messageOnboardingPermissions": MessageLookupByLibrary.simpleMessage( - "مخازن را می‌توان به صورت خواندنی-نوشتنی، فقط خواندنی یا «کور» (شما فایل‌ها را برای دیگران ذخیره می‌کنید، اما نمی‌توانید به آن‌ها دسترسی داشته باشید) به اشتراک گذاشت"), + "مخازن می‌توانند به صورت خواندنی-نوشتنی، فقط خواندنی یا کور به اشتراک گذاشته شوند (در این حالت فایل‌ها را برای دیگران ذخیره می‌کنید، اما به آن‌ها دسترسی ندارید)"), "messageOnboardingShare": MessageLookupByLibrary.simpleMessage( - "همه فایل‌ها و پوشه‌های اضافه‌شده به Ouisync به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت استراحت، به‌صورت امن رمزنگاری شده‌اند."), + "همه فایل‌ها و پوشه‌های اضافه‌شده به وی‌سینک به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت استراحت، به‌صورت امن رمزنگاری شده‌اند."), "messageOnlyAvailableFiles": MessageLookupByLibrary.simpleMessage( "فقط برای فایل‌ها در دسترس است"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("یا"), "messageOuiSyncDesktopTitle": - MessageLookupByLibrary.simpleMessage("Ouisync"), + MessageLookupByLibrary.simpleMessage("وی‌سینک"), "messagePIPEDA": MessageLookupByLibrary.simpleMessage( "قانون حفاظت اطلاعات شخصی و اسناد الکترونیکی (PIPEDA)"), "messagePassword": MessageLookupByLibrary.simpleMessage("رمز عبور"), "messagePasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( - "رمز عبور در حافظه کوتاه‌مدت کپی شد"), + "رمز عبور در کلیپ‌بورد کپی شد"), "messagePasswordStrength": - MessageLookupByLibrary.simpleMessage("میزان قدرتمندی رمز عبور"), + MessageLookupByLibrary.simpleMessage("قدرت رمز عبور"), "messagePeerAdded": MessageLookupByLibrary.simpleMessage("یک همتا افزوده شد"), "messagePeerExchange": - MessageLookupByLibrary.simpleMessage("تبادل همتا"), + MessageLookupByLibrary.simpleMessage("تبادل با همتا"), "messagePeerExchangeWikipedia": MessageLookupByLibrary.simpleMessage("تبادل همتا در ویکی‌پدیا"), "messagePeerRemoved": MessageLookupByLibrary.simpleMessage("یک همتا حذف شد"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("این مجوز لازم است"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "این بخش برای اطلاع رسانی به بازدیدکنندگان در مورد سیاست‌های ما در مورد جمع‌آوری، استفاده و افشای اطلاعات شخصی در صورتی که کسی تصمیم به استفاده از سرویس ما داشته باشد، استفاده می شود"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( - "«انسان آزاد به دنیا می‌آید و همه‌جا در زنجیر است»"), + "«انسان آزاد زاده می‌شود، اما همه جا در زنجیر است.»"), "messageReadOnlyContents": MessageLookupByLibrary.simpleMessage( - "در این مخزن فقط مجوز خواندن وجود دارد"), + "این مخزن فقط خواندنی است."), "messageReadReplicaExplanation": MessageLookupByLibrary.simpleMessage( "امکان تغییر وجود ندارد، فقط دسترسی به محتوا مجاز است"), "messageRememberSavePasswordAlert": MessageLookupByLibrary.simpleMessage( - "به‌یاد داشته باشید که رمز عبور را به‌طور ایمن ذخیره کنید. اگر آن را فراموش کردید، راهی برای بازیابی آن وجود ندارد."), + "به‌یاد داشته باشید که رمز عبور را به‌طور ایمن ذخیره کنید. در صورت فراموشی، راهی برای بازیابی وجود ندارد."), "messageRemoveBiometricValidation": MessageLookupByLibrary.simpleMessage("حذف اعتبارسنجی بیومتریکی"), "messageRemoveBiometrics": @@ -642,7 +641,7 @@ class MessageLookup extends MessageLookupByLibrary { "با این عمل رمز مخزن حذف می‌شود و از اعتبارسنجی بیومتریک برای باز‌کردن قفل استفاده می‌شود"), "messageRemoveLocalPasswordConfirmation": MessageLookupByLibrary.simpleMessage( - "این رمز عبور محلی مخزن حذف شود؟\n\nمخزن به‌طور خودکار باز می‌شود، مگر اینکه یک رمز عبور محلی مجدد اضافه شود"), + "این رمز عبور محلی مخزن حذف شود؟\n\nمخزن به‌طور خودکار باز می‌شود، مگر این که یک رمز عبور محلی مجدد اضافه شود"), "messageRemovedInBrackets": MessageLookupByLibrary.simpleMessage("حذف شد"), "messageRenameFile": @@ -657,20 +656,20 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("پوشه موجود را جایگزین کنید"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage("خطا در احراز هویت مخزن"), - "messageRepoDeletionErrorDescription": m18, - "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( - "(درخواست) حذف مخزن ناموفق بود"), + "messageRepoDeletionErrorDescription": m20, + "messageRepoDeletionFailed": + MessageLookupByLibrary.simpleMessage("حذف مخزن ناموفق بود"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage( - "مخزن موردنظر دیگر آن‌جا نیست"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "مخزن مورد نظر دیگر آن‌جا نیست"), + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("رمز عبور کنونی"), "messageRepositoryIsNotOpen": MessageLookupByLibrary.simpleMessage("هیچ مخزنی باز نیست"), "messageRepositoryName": - MessageLookupByLibrary.simpleMessage("به مخزن یک نام اختصاص دهید"), + MessageLookupByLibrary.simpleMessage("نامی برای مخزن انتخاب کنید"), "messageRepositoryNewName": MessageLookupByLibrary.simpleMessage("نام جدید مخزن"), "messageRepositoryNewPassword": @@ -679,61 +678,67 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("مخرن موردنظر نصب نشده است "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("رمز عبور"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("لینک را این‌جا قرار دهید"), "messageResetLocalSecret": MessageLookupByLibrary.simpleMessage("بازنشانی رمز محلی"), "messageRousseau": MessageLookupByLibrary.simpleMessage("ژان ژاک روسو"), - "messageSaveLogFile": MessageLookupByLibrary.simpleMessage( - "ذخیره‌سازی فایل مرتبط با ثبت رویدادها"), + "messageSaveLogFile": + MessageLookupByLibrary.simpleMessage("ذخیره فایل گزارش"), "messageSaveToLocation": MessageLookupByLibrary.simpleMessage( - "فایل موردنظر را در این پوشه ذخیره کنید"), + "فایل مورد نظر را در این پوشه ذخیره کنید"), "messageSavingChanges": MessageLookupByLibrary.simpleMessage( - "آیا می‌خواهید تغییرات فعلی را ذخیره کنید؟"), + "می‌خواهید تغییرات فعلی را ذخیره کنید؟"), "messageScanQROrShare": MessageLookupByLibrary.simpleMessage( - "این (کد QR) را با دستگاه دیگر خود اسکن کنید یا با همتایان خود به اشتراک بگذارید"), + "این کد را با دستگاه دیگر خود اسکن کنید یا با همتاهای خود به اشتراک بگذارید"), "messageSecureUsingBiometrics": MessageLookupByLibrary.simpleMessage( - "با استفاده از بیومتریک ایمن شوید"), + "محافظت با استفاده از بیومتریک"), + "messageSecurityOptionsNotAvailableBlind": + MessageLookupByLibrary.simpleMessage( + "گزینه‌های امنیت برای مخازن کور در دسترس نیستند"), "messageSecurityPracticesP1": MessageLookupByLibrary.simpleMessage( - "داده‌هایی که کاربر در مخازن Ouisync آپلود می‌کند، در حین انتقال و همچنین در حالت استراحت رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در Ouisync، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است."), + "داده‌هایی که کاربر در مخازن وی‌سینک آپلود می‌کند، در حین انتقال و همچنین در حالت استراحت رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در وی‌سینک، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است"), "messageSecurityPracticesP2": MessageLookupByLibrary.simpleMessage( "درباره تکنیک‌های رمزنگاری مورد استفاده در اسناد ما می‌توانید اطلاعات بیشتری کسب کنید"), "messageSecurityPracticesP3": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفاً پر کردن شکاف بین همتایان خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتایان را تسهیل می‌کند."), + "اپلیکیشن وی‌سینک داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفاً پر کردن شکاف بین همتایان خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتایان را تسهیل می‌کند"), "messageSecurityPracticesP4": MessageLookupByLibrary.simpleMessage( - "اگر دلیلی مبنی بر به‌اشتراک‌گذاری و نشت اطلاعات شخصی خودتان به‌طور غیرقانونی توسط سایر کاربران Ouisync دارید، لطفاً با آدرس زیر با ما تماس بگیرید."), + "اگر دلیلی مبنی بر به‌اشتراک‌گذاری و نشت اطلاعات شخصی خودتان به‌طور غیرقانونی توسط سایر کاربران وی‌سینک دارید، لطفا با آدرس زیر با ما تماس بگیرید"), "messageSelectAccessMode": MessageLookupByLibrary.simpleMessage( - "یک مجوز برای ایجاد پیوند (لینک) به‌اشتراک‌گذاری انتخاب کنید"), + "یک مجوز برای ایجاد لینک اشتراک‌گذاری انتخاب کنید"), "messageSelectLocation": MessageLookupByLibrary.simpleMessage("مکان را انتخاب کنید"), - "messageSettingsRuntimeID": - MessageLookupByLibrary.simpleMessage("شناسه زمان اجرا"), + "messageSettingsRuntimeID": MessageLookupByLibrary.simpleMessage( + "شناسه زمان اجرا (Runtime ID)"), + "messageSettingsVersionNewerThanCurrent": + MessageLookupByLibrary.simpleMessage( + "تنظیمات موجود در این دستگاه با نسخه جدیدتری از وی‌سینک ایجاد شده‌اند و قابل انتقال نیستند."), "messageShareActionDisabled": MessageLookupByLibrary.simpleMessage( - "برای ایجاد پیوند مخزن ابتدا باید یک مجوز انتخاب کنید"), + "برای ایجاد لینک مخزن ابتدا باید یک مجوز انتخاب کنید"), "messageShareWithWR": MessageLookupByLibrary.simpleMessage("کد QR را به‌ اشتراک بگذارید"), - "messageSortBy": m23, + "messageSortBy": m25, "messageStorage": MessageLookupByLibrary.simpleMessage("فضای ذخیره‌سازی"), "messageStoragePermission": MessageLookupByLibrary.simpleMessage( "برای دسترسی به فایل‌ها مورد نیاز است"), "messageStrong": MessageLookupByLibrary.simpleMessage("قوی"), "messageSyncMobileData": MessageLookupByLibrary.simpleMessage( - "همگام‌سازی هنگام استفاده از اینترنت همراه"), + "همگام‌سازی هنگام استفاده از دیتای موبایل"), "messageSyncingIsDisabledOnMobileInternet": MessageLookupByLibrary.simpleMessage( - "هنگام استفاده از اینترنت همراه، همگام‌سازی غیرفعال است"), + "هنگام استفاده از دیتای موبایل، همگام‌سازی اینترنتی غیرفعال است"), "messageTapForTermsPrivacy": MessageLookupByLibrary.simpleMessage( "برای خواندن شرایط استفاده و سند حریم خصوصی، این‌جا ضربه بزنید"), "messageTapForValues": MessageLookupByLibrary.simpleMessage( - "برای خواندن اصول (ارزش‌ها) ما این‌جا ضربه بزنید"), + "برای خواندن ارزش‌های ما این‌جا ضربه بزنید"), "messageTerms1_1": MessageLookupByLibrary.simpleMessage( - "حقوق مرتبط با حفاظت از اطلاعات شخصی، از جمله اصول و ارزش‌های اساسی یا قانون: [] را نقض می‌کنند "), + "حقوق حفاظت از اطلاعات شخصی را نقض می‌کند، از جمله ارزش‌های بنیادین یا مفاد "), "messageTerms1_2": MessageLookupByLibrary.simpleMessage( "(قانون حفاظت از اطلاعات شخصی و اسناد الکترونیکی)"), "messageTerms2": MessageLookupByLibrary.simpleMessage( - "شامل مطالب استثمار جنسی کودکان (از جمله مطالبی که ممکن است موارد مرتبط با سوءاستفاده جنسی غیرقانونی از کودکان نباشد، اما با این وجود سوءاستفاده جنسی از خردسالان را ترویج می کند)، پورنوگرافی غیرقانونی یا در غیر این‌صورت ناشایست هستند."), + "شامل محتوای استثمار جنسی کودکان (از جمله محتوایی که ممکن است به لحاظ قانونی سوءاستفاده جنسی از کودکان محسوب نشود اما همچنان استثمار جنسی کودکان را ترویج می‌کند)، پورنوگرافی غیرقانونی، یا هرگونه محتوای غیر اخلاقی باشد"), "messageTerms3": MessageLookupByLibrary.simpleMessage( "حاوی یا ترویج‌کننده اعمال شدید خشونت‌آمیز یا فعالیت های تروریستی، از جمله ترور یا تبلیغات خشونت‌آمیز افراطی"), "messageTerms4": MessageLookupByLibrary.simpleMessage( @@ -741,23 +746,23 @@ class MessageLookup extends MessageLookupByLibrary { "messageTerms5": MessageLookupByLibrary.simpleMessage( "فایل‌هایی که حاوی ویروس‌ها، تروجان‌ها، کرم‌ها، بمب‌های منطقی یا موارد دیگری که مخرب یا از نظر فناوری مضر هستند"), "messageTermsPrivacyP1": MessageLookupByLibrary.simpleMessage( - "این شرایط استفاده از Ouisync «توافقنامه»، همراه با سند حریم خصوصی ما (مجموعاً «شرایط»)، بر استفاده شما از Ouisync - یک پروتکل و نرم‌افزار همگام‌سازی فایل به‌طور آنلاین، حاکم است."), + "این شرایط استفاده از وی‌سینک (که از این پس «توافق‌نامه» نامیده می‌شود)، به همراه اطلاعیه حریم خصوصی ما (که مجموعا «شرایط» نامیده می‌شوند)، استفاده شما از وی‌سینک - یک پروتکل و نرم‌افزار همگام‌سازی فایل آنلاین - را تعیین می‌کنند."), "messageTermsPrivacyP2": MessageLookupByLibrary.simpleMessage( - "با نصب و اجرای اپلیکیشن Ouisync، موافقت خود را برای تعهد و رعایت این توافق‌نامه میان شما و eQualitie inc اعلام می‌کنید. («eQualitie»، «ما» یا «ما»). استفاده از اپلیکیشن Ouisync و شبکه Ouisync (خدمات) توسط eQualitie بدون هیچ هزینه‌ای ارائه می‌شود و برای استفاده همانطور که هست، در نظر گرفته شده است."), + "با نصب و اجرای برنامه وی‌سینک، شما موافقت خود را با این توافق‌نامه بین خود و شرکت eQualitie inc. («eQualitie» یا «ما») اعلام می‌کنید و متعهد به رعایت آن می‌شوید. استفاده از برنامه وی‌سینک و شبکه وی‌سینک (که از این پس «سرویس» نامیده می‌شود) توسط eQualitie به صورت رایگان ارائه می‌شود و برای استفاده به همان شکل که هست، در نظر گرفته شده است"), "messageTermsPrivacyP3": MessageLookupByLibrary.simpleMessage( - "اپلیکیشن Ouisync مطابق با اصول و ارزش‌های eQuality ساخته شده است. با استفاده از این نرم‌افزار، موافقت می‌کنید که از Ouisync برای انتشار، به‌اشتراک‌گذاری یا ذخیره مطالبی که مغایر با ارزش‌های اساسی یا قوانین ایالت کبک یا کشور کانادا یا اعلامیه جهانی حقوق بشر است، از جمله محتوایی که:"), + "برنامه وی‌سینک با توجه به ارزش‌های eQualitie ساخته شده است. با استفاده از این نرم‌افزار، شما موافقت می‌کنید که از وی‌سینک برای انتشار، اشتراک‌گذاری یا ذخیره مطالبی که با ارزش‌های بنیادین آن، قوانین استان کبک یا کانادا، یا منشور بین‌المللی حقوق بشر در تضاد باشد، استفاده نخواهید کرد، از جمله محتوایی که:"), "messageTokenCopiedToClipboard": MessageLookupByLibrary.simpleMessage( "توکن مخزن در حافظه موقت کپی شد."), "messageUnknownFileExtension": MessageLookupByLibrary.simpleMessage("فرمت فایل ناشناخته است"), - "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( - "رمز عبور موردنظر مخزن را باز نکرد"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoFailed": + MessageLookupByLibrary.simpleMessage("رمز عبور، مخزن را باز نکرد"), + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage( "با استفاده از بیومتریک قفل را باز کنید"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( - "شما تغییرات ذخیره‌نشده‌ای دارید\n\nآیا می خواهید آن‌ها را نادیده بگیرید؟"), + "تغییرات ذخیره‌نشده‌ای دارید\n\nمی‌خواهید آن‌ها را نادیده بگیرید؟"), "messageUpdateLocalPasswordConfirmation": MessageLookupByLibrary.simpleMessage( "رمز عبور محلی این مخزن به‌روز شود؟"), @@ -773,16 +778,14 @@ class MessageLookup extends MessageLookupByLibrary { "messageValidateLocalPassword": MessageLookupByLibrary.simpleMessage("تایید رمز عبور محلی"), "messageVerbosity": - MessageLookupByLibrary.simpleMessage("درازنویسی ثبت رویدادها"), - "messageView": MessageLookupByLibrary.simpleMessage("بازدید"), + MessageLookupByLibrary.simpleMessage("سطح جزئیات گزارش"), + "messageView": MessageLookupByLibrary.simpleMessage("مشاهده"), "messageWeak": MessageLookupByLibrary.simpleMessage("ضعیف"), "messageWiFi": MessageLookupByLibrary.simpleMessage("وای‌فای"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( - "دسترسی کامل. همتاهای شما امکان خواندن و نوشتن دارند"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messsageFailedAddRepository": m28, - "messsageFailedCreateRepository": m29, + "دسترسی کامل. همتای شما امکان خواندن و نوشتن دارد"), + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("تغییر رمز عبور"), "popupMenuItemCopyPassword": @@ -796,17 +799,19 @@ class MessageLookup extends MessageLookupByLibrary { "replacementPath": m36, "replacementStatus": m37, "repositoryIsAlreadyImported": - MessageLookupByLibrary.simpleMessage("مخزن قبلا وارد شده است"), + MessageLookupByLibrary.simpleMessage("مخزن قبلا وارد شده"), "statusSync": MessageLookupByLibrary.simpleMessage("همگام‌سازی شد"), "statusUnspecified": MessageLookupByLibrary.simpleMessage("نامشخص"), "titleAbout": MessageLookupByLibrary.simpleMessage("درباره ما"), "titleAddFile": - MessageLookupByLibrary.simpleMessage("اضافه‌کردن فایل به Ouisync"), + MessageLookupByLibrary.simpleMessage("اضافه‌ کردن فایل به وی‌سینک"), "titleAddRepoToken": - MessageLookupByLibrary.simpleMessage("واردکردن یک مخزن با توکن"), + MessageLookupByLibrary.simpleMessage("وارد کردن یک مخزن با توکن"), "titleAddRepository": - MessageLookupByLibrary.simpleMessage("وارد‌کردن یک مخزن"), - "titleAppTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), + MessageLookupByLibrary.simpleMessage("وارد‌ کردن مخزن"), + "titleAppTitle": MessageLookupByLibrary.simpleMessage("وی‌سینک"), + "titleApplicationLanguage": + MessageLookupByLibrary.simpleMessage("زبان برنامه"), "titleBackgroundAndroidPermissionsTitle": MessageLookupByLibrary.simpleMessage("مجوزهای مورد نیاز"), "titleChangePassword": @@ -817,14 +822,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("حریم خصوصی کودکان"), "titleContactUs": MessageLookupByLibrary.simpleMessage("تماس با ما"), "titleCookies": MessageLookupByLibrary.simpleMessage("کوکی‌ها"), - "titleCreateFolder": - MessageLookupByLibrary.simpleMessage("ایجاد یک پوشه"), + "titleCreateFolder": MessageLookupByLibrary.simpleMessage("ایجاد پوشه"), "titleCreateRepository": - MessageLookupByLibrary.simpleMessage("ایجاد یک مخزن جدید"), + MessageLookupByLibrary.simpleMessage("ایجاد مخزن جدید"), "titleDataCollection": - MessageLookupByLibrary.simpleMessage("۳.۱ جمع‌آوری اطلاعات"), - "titleDataSharing": - MessageLookupByLibrary.simpleMessage("۳.۲ به‌اشتراک‌گذاری اطلاعات"), + MessageLookupByLibrary.simpleMessage("۳.۱. جمع‌آوری اطلاعات"), + "titleDataSharing": MessageLookupByLibrary.simpleMessage( + "۳.۲. به‌اشتراک‌گذاری اطلاعات"), "titleDeleteFile": MessageLookupByLibrary.simpleMessage("حذف فایل"), "titleDeleteFolder": MessageLookupByLibrary.simpleMessage("حذف پوشه"), "titleDeleteNotEmptyFolder": @@ -832,7 +836,7 @@ class MessageLookup extends MessageLookupByLibrary { "titleDeleteRepository": MessageLookupByLibrary.simpleMessage("حذف مخزن"), "titleDeletionDataServer": MessageLookupByLibrary.simpleMessage( - "۳.۴ حذف اطلاعات شما از سرور [Always-On-Peer] ما"), + "۳.۴. حذف اطلاعات شما از سرورِ همیشه همتابه‌همتای ما"), "titleDigitalSecurity": MessageLookupByLibrary.simpleMessage("امنیت دیجیتال"), "titleDokanInstallation": @@ -861,8 +865,6 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("اضافه‌ کردن"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("جزییات پوشه"), - "titleFreedomExpresionAccessInfo": MessageLookupByLibrary.simpleMessage( - "آزادی بیان و دسترسی به اطلاعات"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("ردیاب اشکالات"), "titleJustLegalSociety": @@ -870,16 +872,16 @@ class MessageLookup extends MessageLookupByLibrary { "titleLinksOtherSites": MessageLookupByLibrary.simpleMessage("لینک به سایت‌های دیگر"), "titleLockAllRepos": - MessageLookupByLibrary.simpleMessage("قفل‌کردن تمام مخزن‌ها"), + MessageLookupByLibrary.simpleMessage("قفل‌ کردن تمام مخزن‌ها"), "titleLogData": MessageLookupByLibrary.simpleMessage("ثبت اطلاعات"), - "titleLogs": MessageLookupByLibrary.simpleMessage("ثبت رویدادها"), + "titleLogs": MessageLookupByLibrary.simpleMessage("گزارش‌ها"), "titleMovingEntry": - MessageLookupByLibrary.simpleMessage("(مقدار) ورودی در حال انتقال"), + MessageLookupByLibrary.simpleMessage("در حال انتقال (مقدار) ورودی"), "titleNetwork": MessageLookupByLibrary.simpleMessage("شبکه"), "titleOnboardingAccess": MessageLookupByLibrary.simpleMessage( "دسترسی به فایل‌ها از دستگاه‌های مختلف"), "titleOnboardingPermissions": MessageLookupByLibrary.simpleMessage( - "تنظیم مجوزهایی برای همکاری، پخش و ذخیره‌سازی به‌طور ساده"), + "تنظیم مجوزها برای همکاری، پخش یا صرفا ذخیره‌سازی"), "titleOnboardingShare": MessageLookupByLibrary.simpleMessage( "ارسال و دریافت فایل‌ها به‌طور امن"), "titleOpennessTransparency": @@ -910,7 +912,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("اسکن کد QR مخزن"), "titleSecurity": MessageLookupByLibrary.simpleMessage("امنیت"), "titleSecurityPractices": - MessageLookupByLibrary.simpleMessage("۳.۳ تمرینات امنیتی"), + MessageLookupByLibrary.simpleMessage("۳.۳. تمرینات امنیتی"), "titleSendFeedback": MessageLookupByLibrary.simpleMessage("ارسال نظرات"), "titleSetPasswordFor": @@ -924,13 +926,13 @@ class MessageLookup extends MessageLookupByLibrary { "titleTermsOfUse": MessageLookupByLibrary.simpleMessage("۲. شرایط استفاده"), "titleTermsPrivacy": MessageLookupByLibrary.simpleMessage( - "شرایط استفاده و سند حریم خصوصی Ouisync"), - "titleUPnP": - MessageLookupByLibrary.simpleMessage("معیار اجرا و اتصال همگانی"), + "شرایط استفاده و سند حریم خصوصی وی‌سینک"), + "titleUPnP": MessageLookupByLibrary.simpleMessage( + "معیار اجرا و اتصال همگانی (UPnP)"), "titleUnlockRepository": - MessageLookupByLibrary.simpleMessage("بازکردن قفل مخزن"), + MessageLookupByLibrary.simpleMessage("باز کردن قفل مخزن"), "titleUnsavedChanges": - MessageLookupByLibrary.simpleMessage("تغییرات ذخیره‌ نشده"), + MessageLookupByLibrary.simpleMessage("تغییرات ذخیره‌‌نشده"), "titleUserProvidedPeers": MessageLookupByLibrary.simpleMessage( "همتا‌های ارائه‌شده توسط کاربر"), "titleWeAreEq": diff --git a/lib/generated/intl/messages_fr.dart b/lib/generated/intl/messages_fr.dart index 5ab7ba011..72a17d5fe 100644 --- a/lib/generated/intl/messages_fr.dart +++ b/lib/generated/intl/messages_fr.dart @@ -36,46 +36,42 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} n\'est pas vide"; - static String m11(name) => + static String m13(name) => "${name} existent déjà à cet endroit.\n\nQue voulez-vous faire ?"; - static String m12(name) => "Le dossier a bien été supprimé : ${name}"; + static String m14(name) => "Le dossier a bien été supprimé : ${name}"; - static String m13(number) => + static String m15(number) => "Voulez-vous verrouiller tous les dépôts ouverts ?\n\n(${number} ouverts)"; - static String m14(path) => "de ${path}"; + static String m16(path) => "de ${path}"; - static String m15(name) => "Erreur lors de la création du fichier ${name}"; + static String m17(name) => "Erreur lors de la création du fichier ${name}"; - static String m16(name) => "Erreur d\'ouverture du fichier ${name}"; + static String m18(name) => "Erreur d\'ouverture du fichier ${name}"; - static String m18(name) => + static String m20(name) => "Nous n\'avons pas pu supprimer le dépôt « ${name} »"; - static String m19(name) => + static String m21(name) => "Nous n\'avons pas pu trouver le dépôt « ${name} » à l\'emplacement habituel"; - static String m20(access) => "Mode d\'accès accordé : ${access}"; + static String m22(access) => "Mode d\'accès accordé : ${access}"; - static String m21(name) => + static String m23(name) => "Ce dépôt existe déjà dans l\'application avec le nom « ${name} »."; - static String m22(name) => + static String m24(name) => "Suggéré : ${name}\n(appuyez ici pour utiliser ce nom)"; - static String m24(access) => + static String m26(access) => "Déverrouillé sous la forme d\'une réplique de ${access}"; - static String m25(name) => "Entrez le mot de passe pour déverrouiller"; - - static String m26(name) => "Écriture de ${name} annulée"; + static String m27(name) => "Entrez le mot de passe pour déverrouiller"; - static String m27(name) => "${name} - échec de l\'écriture"; + static String m28(name) => "Écriture de ${name} annulée"; - static String m28(name) => "Échec de l\'import du dépôt ${name}"; - - static String m29(name) => "Échec de la création du dépôt ${name}"; + static String m29(name) => "${name} - échec de l\'écriture"; static String m30(access) => "${access}"; @@ -218,8 +214,6 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemLogs": MessageLookupByLibrary.simpleMessage("Journaux"), "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Réseau"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Dépôt"), - "mesageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("Il n\'y a aucun média."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "Accéder au stockage sécurisé"), @@ -333,7 +327,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageExitOuiSync": MessageLookupByLibrary.simpleMessage( "Appuyez à nouveau sur retour pour quitter."), "messageFile": MessageLookupByLibrary.simpleMessage("fichier"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage( "Le fichier est déjà en cours d\'envoi"), "messageFileName": @@ -341,7 +335,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "L\'aperçu du fichier n\'est pas encore disponible"), "messageFiles": MessageLookupByLibrary.simpleMessage("fichiers"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("Nom du dossier"), "messageGeneratePassword": @@ -364,15 +358,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Chargement…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage("Découverte locale"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "Ce dépôt est verrouillé."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( "Verrouillage de tous les dépôts ouverts…"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Tout"), - "messageLogLevelErroWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "Erreurs, avertissements, informations et débogage"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Erreurs uniquement"), "messageLogLevelErrorWarn": @@ -382,13 +373,13 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogViewer": MessageLookupByLibrary.simpleMessage("Visionneuse de journaux"), "messageMobile": MessageLookupByLibrary.simpleMessage("Mobile"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "Cette fonction n\'est pas disponible lors du déplacement d\'une entrée."), "messageNATType": MessageLookupByLibrary.simpleMessage("Type NAT"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("Réseau indisponible"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "Nouveau mot de passe copié dans le presse-papiers"), @@ -403,7 +394,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageNone": MessageLookupByLibrary.simpleMessage("Aucun"), "messageNothingHereYet": MessageLookupByLibrary.simpleMessage( "Il n\'y a rien ici pour l\'instant !"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("Ou"), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -437,14 +428,14 @@ class MessageLookup extends MessageLookupByLibrary { "Remplacer le fichier existant"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage( "L\'authentification du dépôt a échoué"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( "La suppression du dépôt a échoué"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage( "Le dépôt ne se trouve plus ici"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("Le mot de passe actuel"), "messageRepositoryIsNotOpen": @@ -457,7 +448,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Nouveau mot de passe"), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("Mot de passe"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("Collez le lien ici"), "messageSaveLogFile": MessageLookupByLibrary.simpleMessage( @@ -492,8 +483,8 @@ class MessageLookup extends MessageLookupByLibrary { "Le jeton du dépôt a été copié dans le presse-papiers."), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( "Le mot de passe n\'a pas déverrouillé le dépôt"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage( "Déverrouiller en utilisant la biométrie"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( @@ -506,11 +497,9 @@ class MessageLookup extends MessageLookupByLibrary { "messageView": MessageLookupByLibrary.simpleMessage("Voir"), "messageWiFi": MessageLookupByLibrary.simpleMessage("Wi-Fi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( - "Accès complete. Votre pair peut lire et écrire"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "Accès complet. Votre pair peut lire et écrire"), + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Modifier le mot de passe"), "popupMenuItemCopyPassword": diff --git a/lib/generated/intl/messages_my.dart b/lib/generated/intl/messages_my.dart index 1b1a1efa7..f5e2aefc5 100644 --- a/lib/generated/intl/messages_my.dart +++ b/lib/generated/intl/messages_my.dart @@ -42,52 +42,52 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} သည် လစ်လပ်မနေပါ"; - static String m10(reason) => + static String m10(name) => "repository ${name} ကို ထည့်သွင်းမှု မအောင်မြင်ပါ"; + + static String m11(name) => "repository ${name} ကို တည်ဆောက်မှု မအောင်မြင်ပါ"; + + static String m12(reason) => "File Explorer မှတစ်ဆင့် သိုလှောင်ခန်းသို့ မဝင်ရောက်နိုင်ပါ - ${reason}"; - static String m11(name) => + static String m13(name) => "${name} သည် ထိုနေရာတွင် ရှိပြီးဖြစ်သည်။\n\nသင် မည်သို့ပြုလုပ်လိုသနည်း။"; - static String m12(name) => "ဖိုဒါကို အောင်မြင်စွာ ဖျက်လိုက်ပါပြီ - ${name}"; + static String m14(name) => "ဖိုဒါကို အောင်မြင်စွာ ဖျက်လိုက်ပါပြီ - ${name}"; - static String m13(number) => + static String m15(number) => "ပွင့်လင်း repositories အားလုံးကို လော့ခ်ချလိုပါသလား။\n\n(${number} ခု ဖွင့်မည်)"; - static String m14(path) => "${path} မှ"; + static String m16(path) => "${path} မှ"; - static String m15(name) => "${name} ဖိုင်ကို တည်ဆောက်မှု မအောင်မြင်ပါ"; + static String m17(name) => "${name} ဖိုင်ကို တည်ဆောက်မှု မအောင်မြင်ပါ"; - static String m16(name) => "${name} ဖိုင်ကို ဖွင့်လှစ်မှု မအောင်မြင်ပါ"; + static String m18(name) => "${name} ဖိုင်ကို ဖွင့်လှစ်မှု မအောင်မြင်ပါ"; - static String m17(path) => "${path} ဖိုင်ကို အစမ်းကြည့်ရှုခြင်း မအောင်မြင်ပါ"; + static String m19(path) => "${path} ဖိုင်ကို အစမ်းကြည့်ရှုခြင်း မအောင်မြင်ပါ"; - static String m18(name) => "repository \"${name}\" ကို ဖျက်၍ မရနိုင်ပါ"; + static String m20(name) => "repository \"${name}\" ကို ဖျက်၍ မရနိုင်ပါ"; - static String m19(name) => + static String m21(name) => "သိုလှောင်ခန်း \"${name}\" ကို ပုံမှန်နေရာတွင် ရှာမတွေ့ပါ"; - static String m20(access) => "ဝင်ရောက်ခွင့်ပြုပြီးဖြစ်သည် - ${access}"; + static String m22(access) => "ဝင်ရောက်ခွင့်ပြုပြီးဖြစ်သည် - ${access}"; - static String m21(name) => + static String m23(name) => "ထို repository သည် \"${name}\" ဟူသော အမည်ဖြင့် အက်ပ်တွင် ရှိပြီးဖြစ်သည်။"; - static String m22(name) => + static String m24(name) => "အကြံပြုချက်: ${name}\n(ထိုအမည်ကို အသုံးပြုရန် ဤနေရာကို နှိပ်ပါ)"; - static String m23(name) => "အမျိုးအစား- ${name}"; + static String m25(name) => "အမျိုးအစား- ${name}"; - static String m24(access) => "${access} ပုံစံတူအဖြစ် လော့ခ်ဖွင့်ပြီးဖြစ်သည်"; + static String m26(access) => "${access} ပုံစံတူအဖြစ် လော့ခ်ဖွင့်ပြီးဖြစ်သည်"; - static String m25(name) => + static String m27(name) => "\"${name}\" ကို လော့ခ်ဖြည်ရန် စကားဝှက်ထည့်သွင်းပါ"; - static String m26(name) => "${name} ကို ရေးသားခြင်းအား ပယ်ဖျက်လိုက်ပါသည်"; - - static String m27(name) => "${name} - ပြင်ဆင်မှု မအောင်မြင်ပါ"; + static String m28(name) => "${name} ကို ရေးသားခြင်းအား ပယ်ဖျက်လိုက်ပါသည်"; - static String m28(name) => "repository ${name} ကို ထည့်သွင်းမှု မအောင်မြင်ပါ"; - - static String m29(name) => "repository ${name} ကို တည်ဆောက်မှု မအောင်မြင်ပါ"; + static String m29(name) => "${name} - ပြင်ဆင်မှု မအောင်မြင်ပါ"; static String m30(access) => ""; @@ -279,8 +279,6 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("ကွန်ရက်"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("သိုလှောင်ခန်း"), - "messageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("တင်ဆက်နေသော မီဒီယာ မရှိပါ။"), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "လုံခြုံသော သိုလှောင်ခန်းသို့ ဝင်ရောက်ခြင်း"), @@ -486,9 +484,11 @@ class MessageLookup extends MessageLookupByLibrary { "အပြင်သို့ ထွက်လိုပါက နောက်သို့ခလုတ်ကို နောက်တစ်ကြိမ်နှိပ်ပါ။"), "messageFAQ": MessageLookupByLibrary.simpleMessage("အမေးများသော မေးခွန်းများ"), - "messageFailedToMount": m10, + "messageFailedAddRepository": m10, + "messageFailedCreateRepository": m11, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("ဖိုင်"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage("ဖိုင်ကို တင်ပြီးဖြစ်သည်"), "messageFileName": MessageLookupByLibrary.simpleMessage("ဖိုင်အမည်"), @@ -497,7 +497,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "ဖိုင်ကို အစမ်းကြည့်ရှုရန် မဖြစ်နိုင်သေးပါ"), "messageFiles": MessageLookupByLibrary.simpleMessage("ဖိုင်များ"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("ဖိုဒါအမည်"), "messageGeneratePassword": MessageLookupByLibrary.simpleMessage("စကားဝှက်ကို ဖန်တီးမည်"), @@ -549,7 +549,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ခေတ္တစောင့်ဆိုင်းပါ…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage("စက်တွင်း ရှာဖွေတွေ့ရှိမှု"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "ထို repository သည် လော့ကျနေပါသည်။"), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( @@ -567,15 +567,15 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "ဤဒေတာကို မည်သည့်ပြင်ပအဖွဲ့အစည်းနှင့်မျှ မျှဝေခြင်းမပြုပါ"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("အားလုံး"), - "messageLogLevelErrorWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "မှားယွင်းမှု၊ သတိပေးမှု၊ အချက်အလက်နှင့် အမှားအယွင်းများ"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("မှားယွင်းမှုများသာ"), "messageLogLevelErrorWarn": MessageLookupByLibrary.simpleMessage("မှားယွင်းမှုနှင့် သတိပေးမှု"), "messageLogLevelErrorWarnInfo": MessageLookupByLibrary.simpleMessage( "မှားယွင်းမှု၊ သတိပေးမှုနှင့် အချက်အလက်များ"), + "messageLogLevelErrorWarnInfoDebug": + MessageLookupByLibrary.simpleMessage( + "မှားယွင်းမှု၊ သတိပေးမှု၊ အချက်အလက်နှင့် အမှားအယွင်းများ"), "messageLogViewer": MessageLookupByLibrary.simpleMessage("စာရင်းကြည့်ရှုသူ"), "messageMedium": MessageLookupByLibrary.simpleMessage("အသင့်အတင့်"), @@ -583,7 +583,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "Ouisync သည် နောက်ကွယ်တွင် အလုပ်လုပ်ရန် ခွင့်ပြုချက် မရရှိသေးသောကြောင့် အခြားအက်ပလီကေးရှင်းကို ဖွင့်လိုက်ပါက လုပ်ဆောင်ဆဲ Ouisync သည် ရပ်တန့်သွားနိုင်ပါသည်"), "messageMobile": MessageLookupByLibrary.simpleMessage("မိုဘိုင်း"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "ထိုနည်းပညာသည် အကြောင်းအရာတစ်ခုကို ရွှေ့ပြောင်းသောအခါ အသုံးပြု၍မရပါ။"), "messageNATOnWikipedia": @@ -592,7 +592,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("NAT အမျိုးအစား"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("ကွန်ရက်မရရှိနိုင်ပါ"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "စကားဝှက်အသစ်ကို ကလစ်ဘုတ်သို့ ကူးယူထားသည်"), @@ -600,6 +600,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ဗားရှင်းအသစ် ရပါပြီ။"), "messageNoAppsForThisAction": MessageLookupByLibrary.simpleMessage( "အက်ပ်သည် ဤလုပ်ဆောင်ချက်ကို မလုပ်ဆောင်နိုင်ပါ"), + "messageNoMediaPresent": + MessageLookupByLibrary.simpleMessage("တင်ဆက်နေသော မီဒီယာ မရှိပါ။"), "messageNoRepo": MessageLookupByLibrary.simpleMessage( "ဖိုင်များကို မထည့်သွင်းခင် repository တစ်ခုကို တည်ဆောက်ရန် လိုအပ်သည်"), "messageNoRepoIsSelected": MessageLookupByLibrary.simpleMessage( @@ -616,7 +618,7 @@ class MessageLookup extends MessageLookupByLibrary { "သိုလှောင်ခန်းများကို ဖတ်ရှုပြင်ဆင်ခွင့်၊ ဖတ်ရှုရန်သီးသန့် သို့မဟုတ် ဘလိုင်း (သင့်ဖိုင်များကို အခြားသူများအတွက် ထိန်းသိမ်းထားသော်လည်း ၎င်းတို့ကို ဝင်ရောက်၍ မရပါ) အဖြစ် မျှဝေနိုင်သည်"), "messageOnboardingShare": MessageLookupByLibrary.simpleMessage( "Ouisync တွင် ထည့်သွင်းထားသော ဖိုင်များနှင့် ဖိုဒါများအားလုံးသည် အကူးအပြောင်းနှင့် အချိန်အများစုတွင် ပုံမှန်အတိုင်း လုံခြုံစွာ ကုဒ်ဝှက်ထားသည်။"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("သို့မဟုတ်"), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -636,7 +638,7 @@ class MessageLookup extends MessageLookupByLibrary { "လုပ်ဖော်ကိုင်ဖက်ကို ဖယ်ထုတ်ပြီးပါပြီ"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("ခွင့်ပြုချက်လိုအပ်သည်"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "မည်သူမဆို ကျွန်ုပ်တို့၏ ဝန်ဆောင်မှုအား အသုံးပြုရန် ဆုံးဖြတ်ပါက ကိုယ်ရေးလုံခြုံမှုအချက်အလက်များကို စုဆောင်းခြင်း၊ အသုံးပြုခြင်းနှင့် ထုတ်ဖော်ခြင်းနှင့် သက်ဆိုင်သည့် ကျွန်ုပ်တို့၏ မူဝါဒများကို ဝင်ရောက်အသုံးပြုသူများအား အသိပေးရန်အတွက် ဤကဏ္ဍအား အသုံးပြုသည်"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( @@ -670,14 +672,14 @@ class MessageLookup extends MessageLookupByLibrary { "ရှိပြီးသားဖိုင်ကို အစားထိုးမည်"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage( "Repository ကို စစ်ဆေးမှု မအောင်မြင်ပါ"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( "repository ကို ဖျက်ခြင်း မအောင်မြင်ပါ"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage("သိုလှောင်ခန်း မရှိတော့ပါ"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("လက်ရှိစကားဝှက်"), "messageRepositoryIsNotOpen": @@ -692,7 +694,7 @@ class MessageLookup extends MessageLookupByLibrary { "သိုလှောင်ခန်းကို တပ်ဆင်ထားခြင်း မရှိပါ။ "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("စကားဝှက်"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage( "လင့်ခ်ကို ဤနေရာတွင် ကူးယူနေရာချထားပါ"), "messageResetLocalSecret": MessageLookupByLibrary.simpleMessage( @@ -726,7 +728,7 @@ class MessageLookup extends MessageLookupByLibrary { "repository တစ်ခုကို တည်ဆောက်ရန် ခွင့်ပြုချက်တစ်ခုကို ဦးစွာရွေးချယ်ရန် လိုအပ်သည်"), "messageShareWithWR": MessageLookupByLibrary.simpleMessage("QR ကုဒ်နှင့် မျှဝေမည်"), - "messageSortBy": m23, + "messageSortBy": m25, "messageStorage": MessageLookupByLibrary.simpleMessage("သိုလှောင်မှု"), "messageStoragePermission": MessageLookupByLibrary.simpleMessage( "ဖိုင်များသို့ ဝင်ရောက်ခွင့်ရရှိရန် လိုအပ်ပါသည်"), @@ -765,8 +767,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("အမည်မသိ ဖိုင်အဆက်"), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( "စကားဝှက်သည် သိုလှောင်ခန်းကို မဖွင့်ခဲ့ပါ"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage( "ဇီဝအချက်အလက်များကို သုံး၍ လော့ခ်ဖွင့်မည်"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( @@ -792,10 +794,8 @@ class MessageLookup extends MessageLookupByLibrary { "messageWiFi": MessageLookupByLibrary.simpleMessage("ဝိုင်ဖိုင်"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( "အပြည့်အဝ ခွင့်ပြုသည်။ သင်တို့အချင်းချင်း ရေးသားဖတ်ရှုနိုင်ပါသည်"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("စကားဝှက်ကို ပြောင်းလဲပါ"), "popupMenuItemCopyPassword": @@ -872,8 +872,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ပေါင်းထည့်မည်"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage( "ဖိုဒါ၏ အသေးစိတ်အချက်အလက်များ"), - "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( - "လွတ်လပ်စွာ ထုတ်ဖော်ပြောဆိုခွင့်နှင့် သတင်းအချက်အလက်ရယူခွင့်"), + "titleFreedomExpressionAccessInfo": + MessageLookupByLibrary.simpleMessage( + "လွတ်လပ်စွာ ထုတ်ဖော်ပြောဆိုခွင့်နှင့် သတင်းအချက်အလက်ရယူခွင့်"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("ပြဿနာခြေရာခံသူ"), "titleJustLegalSociety": diff --git a/lib/generated/intl/messages_ru.dart b/lib/generated/intl/messages_ru.dart index f9b093f48..751788708 100644 --- a/lib/generated/intl/messages_ru.dart +++ b/lib/generated/intl/messages_ru.dart @@ -39,48 +39,48 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} не пустой"; - static String m10(reason) => "Не удалось смонтировать: ${reason}"; + static String m10(name) => "Ошибка импортирования хранилища ${name}"; - static String m11(name) => + static String m11(name) => "Ошибка создания хранилища ${name}"; + + static String m12(reason) => "Не удалось смонтировать: ${reason}"; + + static String m13(name) => "${name} уже существует в этой локации\n\nЧто вы хотите делать?"; - static String m12(name) => "Папка успешно удалена: ${name}"; + static String m14(name) => "Папка успешно удалена: ${name}"; - static String m13(number) => + static String m15(number) => "Хотите закрыть все открытые хранилища?\n\n(${number}открыто)"; - static String m14(path) => "от ${path}"; + static String m16(path) => "от ${path}"; - static String m15(name) => "Ошибка при создании файла ${name}"; + static String m17(name) => "Ошибка при создании файла ${name}"; - static String m16(name) => "Ошибка при открытии файла ${name}"; + static String m18(name) => "Ошибка при открытии файла ${name}"; - static String m17(path) => "Ошибка предварительного просмотра файла ${path}"; + static String m19(path) => "Ошибка предварительного просмотра файла ${path}"; - static String m18(name) => "Мы не смогли удалить хранилище \"${name}\""; + static String m20(name) => "Мы не смогли удалить хранилище \"${name}\""; - static String m19(name) => + static String m21(name) => "Хранилище \"${name}\" не найдено в привычной локации"; - static String m20(access) => "Доступ дан: ${access}"; + static String m22(access) => "Доступ дан: ${access}"; - static String m21(name) => + static String m23(name) => "Это хранилище уже существует в приложеним под именем \"${name}\"."; - static String m22(name) => + static String m24(name) => "Рекомендация: ${name}\n(нажмите сюда чтобы использовать это имя)"; - static String m24(access) => "Открыт в качестве ${access} копии"; - - static String m25(name) => "Введите пароль чтобы разблокировать"; + static String m26(access) => "Открыт в качестве ${access} копии"; - static String m26(name) => "Запись ${name} отменена"; + static String m27(name) => "Введите пароль чтобы разблокировать"; - static String m27(name) => "${name} - ошибка записи"; + static String m28(name) => "Запись ${name} отменена"; - static String m28(name) => "Ошибка импортирования хранилища ${name}"; - - static String m29(name) => "Ошибка создания хранилища ${name}"; + static String m29(name) => "${name} - ошибка записи"; static String m30(access) => "${access}"; @@ -257,8 +257,6 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemLogs": MessageLookupByLibrary.simpleMessage("Логи"), "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Сеть"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Хранилище"), - "messageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("Медиафайлов не обнаружено."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "Получить доступ к безопасному хранилищу"), @@ -440,9 +438,11 @@ class MessageLookup extends MessageLookupByLibrary { "messageExitOuiSync": MessageLookupByLibrary.simpleMessage("Нажмите снова чтобы выйти."), "messageFAQ": MessageLookupByLibrary.simpleMessage("FAQ"), - "messageFailedToMount": m10, + "messageFailedAddRepository": m10, + "messageFailedCreateRepository": m11, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("файл"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage( "Файл уже в процессе загрузки"), "messageFileName": MessageLookupByLibrary.simpleMessage("Имя файла"), @@ -451,7 +451,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "Предпросмотр файла ещё не доступен"), "messageFiles": MessageLookupByLibrary.simpleMessage("файлы"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("Имя папки"), "messageGeneratePassword": MessageLookupByLibrary.simpleMessage("Сгенерировать пароль"), @@ -499,7 +499,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Загрузка…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage( "Обнаружение по локальной сети"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "Это хранилище заблокировано."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( @@ -517,15 +517,15 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "Никакие из этих данных не передаются третьим лицам"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Всё"), - "messageLogLevelErrorWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "Ошибки, предупреждения, информация и отладка"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Только ошибки"), "messageLogLevelErrorWarn": MessageLookupByLibrary.simpleMessage("Ошибки и предупреждения"), "messageLogLevelErrorWarnInfo": MessageLookupByLibrary.simpleMessage( "Ошибки, предупреждения и информация"), + "messageLogLevelErrorWarnInfoDebug": + MessageLookupByLibrary.simpleMessage( + "Ошибки, предупреждения, информация и отладка"), "messageLogViewer": MessageLookupByLibrary.simpleMessage("Просмотр логов"), "messageMedium": MessageLookupByLibrary.simpleMessage("Нормально"), @@ -533,7 +533,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "Ouisync не имеет авторизации на работу в фоновом режиме, если вы запустите другое приложение, это может помешать синхронизации"), "messageMobile": MessageLookupByLibrary.simpleMessage("Мобильный"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "Эта функция недоступна при перемещении файла."), "messageNATOnWikipedia": @@ -541,7 +541,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageNATType": MessageLookupByLibrary.simpleMessage("Тип NAT"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("Сеть недоступна"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "Новый пароль сохранен в буфер обмена"), @@ -549,6 +549,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Доступна новая версия."), "messageNoAppsForThisAction": MessageLookupByLibrary.simpleMessage( "Не найдено установленных приложений для этого действия"), + "messageNoMediaPresent": + MessageLookupByLibrary.simpleMessage("Медиафайлов не обнаружено."), "messageNoRepo": MessageLookupByLibrary.simpleMessage( "Перед добавлением файлов вам нужно создать хранилище"), "messageNoRepoIsSelected": @@ -565,7 +567,7 @@ class MessageLookup extends MessageLookupByLibrary { "Репозиториями можно делится как на чтение-запись, только чтения, или слепо (вы можете добавить файлы для других, но не можете их просматривать)"), "messageOnboardingShare": MessageLookupByLibrary.simpleMessage( "Все файлы и папки, добавленные в Ouisync, зашифрованны по умолчанию - и при передаче, и при хранении."), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("Или"), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -581,7 +583,7 @@ class MessageLookup extends MessageLookupByLibrary { "Пиринговый обмен в Википедии"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("Это разрешение необходимо"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "Этот раздел используется для информирования посетителей о нашей политике в отношении сбора, использования и раскрытия личной информации, если кто-либо решит использовать наш Сервис"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( @@ -614,14 +616,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Заменить существующий файл"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage("Ошибка входа в хранилище"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage("Ошибка удаления хранилища"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage( "Хранилище тут больше не находится"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("Текущий пароль"), "messageRepositoryIsNotOpen": @@ -636,7 +638,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Хранилище не смонтировано "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("Пароль"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("Скопируйте ссылку сюда"), "messageRousseau": @@ -706,8 +708,8 @@ class MessageLookup extends MessageLookupByLibrary { "Неизвестное расширение файла"), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage("Пароль не открыл хранилище"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage("Открыть с помощью биометрии"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( @@ -725,10 +727,8 @@ class MessageLookup extends MessageLookupByLibrary { "messageWiFi": MessageLookupByLibrary.simpleMessage("Wi-Fi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( "Полный доступ. Вашр пиры могут и просматривать, и изменять содержимое"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Изменить пароль"), "popupMenuItemCopyPassword": @@ -804,8 +804,9 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Добавить"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Информация о папке"), - "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( - "Свобода выражения и доступа к информации"), + "titleFreedomExpressionAccessInfo": + MessageLookupByLibrary.simpleMessage( + "Свобода выражения и доступа к информации"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Трекер проблем"), "titleJustLegalSociety": MessageLookupByLibrary.simpleMessage( diff --git a/lib/generated/intl/messages_uk.dart b/lib/generated/intl/messages_uk.dart index 687157e65..b21bc9ea3 100644 --- a/lib/generated/intl/messages_uk.dart +++ b/lib/generated/intl/messages_uk.dart @@ -39,48 +39,48 @@ class MessageLookup extends MessageLookupByLibrary { static String m9(path) => "${path} не порожній"; - static String m10(reason) => "Не вдалося встановити: ${reason}"; + static String m10(name) => "Не вдалося імпортувати репозиторій ${name}"; - static String m11(name) => + static String m11(name) => "Не вдалося створити репозиторій ${name}"; + + static String m12(reason) => "Не вдалося встановити: ${reason}"; + + static String m13(name) => "${name} вже існують у цій локації.\n\nЩо ви хочете зробити?"; - static String m12(name) => "Теку успішно видалено: ${name}"; + static String m14(name) => "Теку успішно видалено: ${name}"; - static String m13(number) => + static String m15(number) => "Ви хочете заблокувати всі відкриті репозиторії?\n\n(${number} відкритих)"; - static String m14(path) => "з ${path}"; + static String m16(path) => "з ${path}"; - static String m15(name) => "Помилка створення файлу ${name}"; + static String m17(name) => "Помилка створення файлу ${name}"; - static String m16(name) => "Помилка відкриття файлу ${name}"; + static String m18(name) => "Помилка відкриття файлу ${name}"; - static String m17(path) => "Перегляд файлу ${path} не вдалося"; + static String m19(path) => "Перегляд файлу ${path} не вдалося"; - static String m18(name) => "Ми не змогли видалити репозиторій \"${name}\""; + static String m20(name) => "Ми не змогли видалити репозиторій \"${name}\""; - static String m19(name) => + static String m21(name) => "Не вдалося знайти репозиторій \"${name}\" за звичним місцем розташування"; - static String m20(access) => "Режим доступу: ${access}"; + static String m22(access) => "Режим доступу: ${access}"; - static String m21(name) => + static String m23(name) => "Цей репозиторій вже існує в застосунку під назвою \"${name}\"."; - static String m22(name) => + static String m24(name) => "Запропоновано: ${name}\n(натисніть тут, щоб використовувати цю назву)"; - static String m24(access) => "Розблоковано як ${access} копія"; - - static String m25(name) => "Введіть пароль для розблокування \"${name}\""; + static String m26(access) => "Розблоковано як ${access} копія"; - static String m26(name) => "${name} запис скасовано"; + static String m27(name) => "Введіть пароль для розблокування \"${name}\""; - static String m27(name) => "${name} - не вдалося записати"; + static String m28(name) => "${name} запис скасовано"; - static String m28(name) => "Не вдалося імпортувати репозиторій ${name}"; - - static String m29(name) => "Не вдалося створити репозиторій ${name}"; + static String m29(name) => "${name} - не вдалося записати"; static String m30(access) => "${access}"; @@ -261,8 +261,6 @@ class MessageLookup extends MessageLookupByLibrary { "menuItemNetwork": MessageLookupByLibrary.simpleMessage("Мережа"), "menuItemRepository": MessageLookupByLibrary.simpleMessage("Репозиторій"), - "messageNoMediaPresent": - MessageLookupByLibrary.simpleMessage("Не маж медіа файлів."), "messageAccessModeDisabled": m0, "messageAccessingSecureStorage": MessageLookupByLibrary.simpleMessage( "Доступ до захищеного сховища"), @@ -448,9 +446,11 @@ class MessageLookup extends MessageLookupByLibrary { "Натисніть ще раз, щоб вийти."), "messageFAQ": MessageLookupByLibrary.simpleMessage("Поширені запитання"), - "messageFailedToMount": m10, + "messageFailedAddRepository": m10, + "messageFailedCreateRepository": m11, + "messageFailedToMount": m12, "messageFile": MessageLookupByLibrary.simpleMessage("файл"), - "messageFileAlreadyExist": m11, + "messageFileAlreadyExist": m13, "messageFileIsDownloading": MessageLookupByLibrary.simpleMessage("Файл завантажується"), "messageFileName": MessageLookupByLibrary.simpleMessage("Назва файлу"), @@ -459,7 +459,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageFilePreviewNotAvailable": MessageLookupByLibrary.simpleMessage( "Попередній перегляд файлу ще не доступний"), "messageFiles": MessageLookupByLibrary.simpleMessage("файли"), - "messageFolderDeleted": m12, + "messageFolderDeleted": m14, "messageFolderName": MessageLookupByLibrary.simpleMessage("Назва папки"), "messageGeneratePassword": @@ -510,7 +510,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Завантаження…"), "messageLocalDiscovery": MessageLookupByLibrary.simpleMessage("Локальне відкриття"), - "messageLockOpenRepos": m13, + "messageLockOpenRepos": m15, "messageLockedRepository": MessageLookupByLibrary.simpleMessage( "Цей репозиторій заблоковано."), "messageLockingAllRepos": MessageLookupByLibrary.simpleMessage( @@ -528,15 +528,15 @@ class MessageLookup extends MessageLookupByLibrary { "messageLogDataP3": MessageLookupByLibrary.simpleMessage( "Жодні з цих даних не передаються третім особам"), "messageLogLevelAll": MessageLookupByLibrary.simpleMessage("Все"), - "messageLogLevelErrorWarnInfoDebug": - MessageLookupByLibrary.simpleMessage( - "Помилки, попередження, інформація та дебаг"), "messageLogLevelError": MessageLookupByLibrary.simpleMessage("Тільки помилки"), "messageLogLevelErrorWarn": MessageLookupByLibrary.simpleMessage("Помилки та попередження"), "messageLogLevelErrorWarnInfo": MessageLookupByLibrary.simpleMessage( "Помилки, попередження та інформація"), + "messageLogLevelErrorWarnInfoDebug": + MessageLookupByLibrary.simpleMessage( + "Помилки, попередження, інформація та дебаг"), "messageLogViewer": MessageLookupByLibrary.simpleMessage("Перегляд логів"), "messageMedium": @@ -545,7 +545,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "Ouisync не має дозволу на роботу у фоновому режимі, відкриття іншої програми може зупинити поточну синхронізацію"), "messageMobile": MessageLookupByLibrary.simpleMessage("Телефон"), - "messageMoveEntryOrigin": m14, + "messageMoveEntryOrigin": m16, "messageMovingEntry": MessageLookupByLibrary.simpleMessage( "Ця функція недоступна при переміщенні запису."), "messageNATOnWikipedia": MessageLookupByLibrary.simpleMessage( @@ -553,7 +553,7 @@ class MessageLookup extends MessageLookupByLibrary { "messageNATType": MessageLookupByLibrary.simpleMessage("Тип NAT"), "messageNetworkIsUnavailable": MessageLookupByLibrary.simpleMessage("Мережа недоступна"), - "messageNewFileError": m15, + "messageNewFileError": m17, "messageNewPasswordCopiedClipboard": MessageLookupByLibrary.simpleMessage( "Новий пароль скопійовано до буфера обміну"), @@ -561,6 +561,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Доступна нова версія."), "messageNoAppsForThisAction": MessageLookupByLibrary.simpleMessage( "Не всі застосунки можуть виконувати цю дію"), + "messageNoMediaPresent": + MessageLookupByLibrary.simpleMessage("Не маж медіа файлів."), "messageNoRepo": MessageLookupByLibrary.simpleMessage( "Перед додаванням файлів, вам необхідно створити репозиторій"), "messageNoRepoIsSelected": MessageLookupByLibrary.simpleMessage( @@ -579,7 +581,7 @@ class MessageLookup extends MessageLookupByLibrary { "Усі файли та папки, додані до Ouisync, за замовчуванням надійно зашифровані, як під час передачі, так і в режимі очікування."), "messageOnlyAvailableFiles": MessageLookupByLibrary.simpleMessage("Доступно тільки для файлів"), - "messageOpenFileError": m16, + "messageOpenFileError": m18, "messageOr": MessageLookupByLibrary.simpleMessage("Або"), "messageOuiSyncDesktopTitle": MessageLookupByLibrary.simpleMessage("Ouisync"), @@ -596,7 +598,7 @@ class MessageLookup extends MessageLookupByLibrary { "Пірінговий обмін у Вікіпедії"), "messagePermissionRequired": MessageLookupByLibrary.simpleMessage("Цей дозвіл є обов\'язковим"), - "messagePreviewingFileFailed": m17, + "messagePreviewingFileFailed": m19, "messagePrivacyIntro": MessageLookupByLibrary.simpleMessage( "Цей розділ призначений для інформування відвідувачів про нашу політику щодо збору, використання та розкриття персональних даних під час використання нашого Сервісу"), "messageQuoteMainIsFree": MessageLookupByLibrary.simpleMessage( @@ -632,14 +634,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Замінити наявну папку"), "messageRepoAuthFailed": MessageLookupByLibrary.simpleMessage( "Не вдалося виконати аутентифікацію сховища"), - "messageRepoDeletionErrorDescription": m18, + "messageRepoDeletionErrorDescription": m20, "messageRepoDeletionFailed": MessageLookupByLibrary.simpleMessage( "Видалення сховища не вдалося"), "messageRepoMissing": MessageLookupByLibrary.simpleMessage("Сховища більше не існує"), - "messageRepoMissingErrorDescription": m19, - "messageRepositoryAccessMode": m20, - "messageRepositoryAlreadyExist": m21, + "messageRepoMissingErrorDescription": m21, + "messageRepositoryAccessMode": m22, + "messageRepositoryAlreadyExist": m23, "messageRepositoryCurrentPassword": MessageLookupByLibrary.simpleMessage("Поточний пароль"), "messageRepositoryIsNotOpen": @@ -654,7 +656,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Репозиторій не змонтовано "), "messageRepositoryPassword": MessageLookupByLibrary.simpleMessage("Пароль"), - "messageRepositorySuggestedName": m22, + "messageRepositorySuggestedName": m24, "messageRepositoryToken": MessageLookupByLibrary.simpleMessage("Вставте посилання сюди"), "messageRousseau": @@ -724,8 +726,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Невідоме розширення файлу"), "messageUnlockRepoFailed": MessageLookupByLibrary.simpleMessage( "Пароль не розблокував репозиторій"), - "messageUnlockRepoOk": m24, - "messageUnlockRepository": m25, + "messageUnlockRepoOk": m26, + "messageUnlockRepository": m27, "messageUnlockUsingBiometrics": MessageLookupByLibrary.simpleMessage( "Розблокувати за допомогою біометричних даних"), "messageUnsavedChanges": MessageLookupByLibrary.simpleMessage( @@ -749,10 +751,8 @@ class MessageLookup extends MessageLookupByLibrary { "messageWiFi": MessageLookupByLibrary.simpleMessage("Wi-Fi"), "messageWriteReplicaExplanation": MessageLookupByLibrary.simpleMessage( "Повний доступ. Ваш вузол може читати і писати"), - "messageWritingFileCanceled": m26, - "messageWritingFileError": m27, - "messageFailedAddRepository": m28, - "messageFailedCreateRepository": m29, + "messageWritingFileCanceled": m28, + "messageWritingFileError": m29, "popupMenuItemChangePassword": MessageLookupByLibrary.simpleMessage("Змінити пароль"), "popupMenuItemCopyPassword": @@ -833,8 +833,9 @@ class MessageLookup extends MessageLookupByLibrary { "titleFolderActions": MessageLookupByLibrary.simpleMessage("Додати"), "titleFolderDetails": MessageLookupByLibrary.simpleMessage("Подробиці папки"), - "titleFreedomExpressionAccessInfo": MessageLookupByLibrary.simpleMessage( - "Свобода вираження та доступ до інформації"), + "titleFreedomExpressionAccessInfo": + MessageLookupByLibrary.simpleMessage( + "Свобода вираження та доступ до інформації"), "titleIssueTracker": MessageLookupByLibrary.simpleMessage("Відстеження проблем"), "titleJustLegalSociety": MessageLookupByLibrary.simpleMessage( diff --git a/lib/generated/intl/messages_zh-CN.dart b/lib/generated/intl/messages_zh-CN.dart index 0d100e50f..7956300bf 100644 --- a/lib/generated/intl/messages_zh-CN.dart +++ b/lib/generated/intl/messages_zh-CN.dart @@ -21,5 +21,7 @@ class MessageLookup extends MessageLookupByLibrary { String get localeName => 'zh_CN'; final messages = _notInlinedMessages(_notInlinedMessages); - static Map _notInlinedMessages(_) => {}; + static Map _notInlinedMessages(_) => { + "titleAbout": MessageLookupByLibrary.simpleMessage("关于") + }; } From 31d2a75f7f772b40ea70ed4180eda8eac0e66490 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Pab=C3=B3n?= Date: Tue, 5 Nov 2024 18:46:07 +0800 Subject: [PATCH 09/22] Fix imports conflict --- lib/app/utils/settings/v0/biometric_secure.dart | 6 +++--- lib/app/utils/settings/v0/flutter_secure.dart | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/app/utils/settings/v0/biometric_secure.dart b/lib/app/utils/settings/v0/biometric_secure.dart index 5e0bc9faf..6c722d3c3 100644 --- a/lib/app/utils/settings/v0/biometric_secure.dart +++ b/lib/app/utils/settings/v0/biometric_secure.dart @@ -1,9 +1,9 @@ import 'dart:io' show Platform; import 'package:biometric_storage/biometric_storage.dart'; -import 'package:result_type/result_type.dart'; -import './v0.dart'; -import '../../utils.dart'; +import 'package:result_type/result_type.dart' show Result, Success, Failure; +import 'v0.dart'; +import '../../utils.dart' show DatabaseId; BiometricStorage _chooseStorageByPlatform() { if (Platform.isAndroid || diff --git a/lib/app/utils/settings/v0/flutter_secure.dart b/lib/app/utils/settings/v0/flutter_secure.dart index 710e0014b..970c5870f 100644 --- a/lib/app/utils/settings/v0/flutter_secure.dart +++ b/lib/app/utils/settings/v0/flutter_secure.dart @@ -1,7 +1,7 @@ import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:result_type/result_type.dart'; +import 'package:result_type/result_type.dart' show Result, Success, Failure; -import '../../utils.dart'; +import '../../utils.dart' show DatabaseId; import 'secure_storage.dart'; class FlutterSecure { From d1bfe9c27347aebed2ddf3c6a27f14ca472f4132 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Tue, 5 Nov 2024 11:57:02 +0000 Subject: [PATCH 10/22] Translated using Weblate (Spanish) Currently translated at 99.3% (485 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index ae0fac9d8..06ce6b9a4 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1033,5 +1033,13 @@ "languageIsNotAvailable": "no disponible", "@languageIsNotAvailable": {}, "messageSettingsVersionNewerThanCurrent": "Los ajustes de este dispositivo se crearón con una versión más reciente de Ouisync y no se pueden migrar.", - "@messageSettingsVersionNewerThanCurrent": {} + "@messageSettingsVersionNewerThanCurrent": {}, + "messageFailedCreateRepository": "No se pudo crear el repositorio {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "Error al importar el repositorio {name}", + "@messageFailedAddRepository": {}, + "messageNoMediaPresent": "No hay medios presentes.", + "@messageNoMediaPresent": {}, + "messageLogLevelErrorWarnInfoDebug": "Errores, advertencias, información y depuración", + "@messageLogLevelErrorWarnInfoDebug": {} } From 203e95fd88005e88bf35f862b5e18808a1030393 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Fri, 8 Nov 2024 13:25:36 +0000 Subject: [PATCH 11/22] Translated using Weblate (Spanish) Currently translated at 100.0% (488 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index 06ce6b9a4..e6c4b869e 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1041,5 +1041,7 @@ "messageNoMediaPresent": "No hay medios presentes.", "@messageNoMediaPresent": {}, "messageLogLevelErrorWarnInfoDebug": "Errores, advertencias, información y depuración", - "@messageLogLevelErrorWarnInfoDebug": {} + "@messageLogLevelErrorWarnInfoDebug": {}, + "titleFreedomExpressionAccessInfo": "Libertad de expresión y acceso a la información", + "@titleFreedomExpressionAccessInfo": {} } From 833db00eac340032e5f12080737ac3f7b78d0bfd Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Mon, 11 Nov 2024 10:22:41 +0000 Subject: [PATCH 12/22] Translated using Weblate (Persian) Currently translated at 98.7% (482 of 488 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 392c97d31..1d085d631 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -312,7 +312,7 @@ "@replacementAccess": {}, "replacementNumber": "[شماره]", "@replacementNumber": {}, - "statusSync": "همگام‌سازی شد", + "statusSync": "همگام‌سازی", "@statusSync": {}, "statusUnspecified": "نامشخص", "@statusUnspecified": {}, @@ -392,7 +392,7 @@ "@actionExit": {}, "actionOK": "اوکی", "@actionOK": {}, - "actionScanQR": "یک کد QR اسکن کنید", + "actionScanQR": "کد QR را اسکن کنید", "@actionScanQR": {}, "actionAcceptCapital": "تایید", "@actionAcceptCapital": {}, @@ -964,7 +964,7 @@ "@messageUpdateLocalSecretFailed": {}, "messageUpdateLocalSecretOk": "شاخص‌های امنیتی مخزن به‌روزرسانی شده است.", "@messageUpdateLocalSecretOk": {}, - "messageUseLocalPassword": "از رمز عبور محلی استفاده کنید", + "messageUseLocalPassword": "استفاده از رمز عبور محلی", "@messageUseLocalPassword": {}, "messageConfirmIrreversibleChange": "این اقدام بازگشت‌ناپذیر خواهد بود، مایلید ادامه دهید؟", "@messageConfirmIrreversibleChange": {}, From f6ee9b1860fc7d9b5f9c1308898880e9618db3f9 Mon Sep 17 00:00:00 2001 From: Jorge Pabon Date: Wed, 13 Nov 2024 05:39:25 +0000 Subject: [PATCH 13/22] Translated using Weblate (Persian) Currently translated at 98.7% (488 of 494 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 1d085d631..343b5f23c 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -1025,5 +1025,17 @@ "languageOfTheDevice": "زبان دستگاه", "@languageOfTheDevice": {}, "messageSettingsVersionNewerThanCurrent": "تنظیمات موجود در این دستگاه با نسخه جدیدتری از وی‌سینک ایجاد شده‌اند و قابل انتقال نیستند.", - "@messageSettingsVersionNewerThanCurrent": {} + "@messageSettingsVersionNewerThanCurrent": {}, + "sortBySizeLabel": "سایز", + "@sortBySizeLabel": {}, + "accessModeWriteLabel": "خواندنی", + "@accessModeWriteLabel": {}, + "sortByNameLabel": "نام", + "@sortByNameLabel": {}, + "accessModeBlindLabel": "کور", + "@accessModeBlindLabel": {}, + "accessModeReadLabel": "نوشتنی", + "@accessModeReadLabel": {}, + "sortByTypeLabel": "نوع", + "@sortByTypeLabel": {} } From 62c80cd5a1cb300742598a9a96c3c42ed7e11ac8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=20=D0=93=D0=BE=D1=80?= =?UTF-8?q?=D0=BF=D0=B8=D0=BD=D1=96=D1=87?= Date: Wed, 13 Nov 2024 06:31:32 +0000 Subject: [PATCH 14/22] Translated using Weblate (Ukrainian) Currently translated at 96.3% (476 of 494 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/uk/ --- lib/l10n/intl_uk.arb | 66 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 52 insertions(+), 14 deletions(-) diff --git a/lib/l10n/intl_uk.arb b/lib/l10n/intl_uk.arb index d514fb1d6..b037c09eb 100644 --- a/lib/l10n/intl_uk.arb +++ b/lib/l10n/intl_uk.arb @@ -116,7 +116,7 @@ "@messageLoadingDefault": {}, "messageLibraryPanic": "Виявлено внутрішній збій.", "@messageLibraryPanic": {}, - "messageSyncingIsDisabledOnMobileInternet": "Синхронізація вимкнена під час користування мобільним інтернетом", + "messageSyncingIsDisabledOnMobileInternet": "Синхронізація Інтернету вимкнено при використанні мобільних даних", "@messageSyncingIsDisabledOnMobileInternet": {}, "messageNetworkIsUnavailable": "Мережа недоступна", "@messageNetworkIsUnavailable": {}, @@ -126,7 +126,7 @@ "@messageErrorDefault": {}, "messageErrorDefaultShort": "Невдало.", "@messageErrorDefaultShort": {}, - "messageErrorLoadingContents": "Не вдалося завантажити вміст цієї папки. Будь ласка, спробуйте ще раз.", + "messageErrorLoadingContents": "Ми не можемо завантажувати вміст цієї папки. Будь ласка, спробуйте знову.", "@messageErrorLoadingContents": {}, "messageErrorFormValidatorNameDefault": "Будь ласка, введіть дійсну назву.", "@messageErrorFormValidatorNameDefault": {}, @@ -488,7 +488,7 @@ "@messageLogLevelAll": {}, "messageUnlockRepoOk": "Розблоковано як {access} копія", "@messageUnlockRepoOk": {}, - "messageRememberSavePasswordAlert": "Не забувайте надійно зберігати пароль, адже якщо ви його забудете, відновити його буде неможливо.", + "messageRememberSavePasswordAlert": "Пам'ятайте, що надійно зберігати пароль. Немає способу, щоб отримати його, якщо втратили або забули.", "@messageRememberSavePasswordAlert": {}, "messageAlertSaveCopyPassword": "Якщо ви знімете біометричну перевірку, після виходу з цього екрану ви більше не зможете побачити або скопіювати пароль; будь ласка, збережіть його в надійному місці.", "@messageAlertSaveCopyPassword": {}, @@ -524,7 +524,7 @@ "@messageRemoveBiometrics": {}, "messageErrorChangingPassword": "Виникла проблема зі зміною пароля. Будь ласка, спробуйте ще раз", "@messageErrorChangingPassword": {}, - "messageUnsavedChanges": "У вас є незбережені зміни.\n\nВи хочете їх скасувати?", + "messageUnsavedChanges": "У вас немає змін.\n\nБажаєте відкинути їх?", "@messageUnsavedChanges": {}, "messageSavingChanges": "Ви хочете зберегти поточні зміни?", "@messageSavingChanges": {}, @@ -728,11 +728,11 @@ "@messageTapForTermsPrivacy": {}, "messageRousseau": "Жан-Жак Руссо", "@messageRousseau": {}, - "messageDataCollectionP2": "Застосунок Ouisync розроблений таким чином, щоб надавати послуги обміну файлами без ідентифікатора користувача, імені, псевдоніма, облікового запису користувача або будь-якої іншої форми даних користувача. Ми не знаємо, хто саме користується нашим застосунком і з ким вони синхронізуються або обмінюються своїми даними", + "messageDataCollectionP2": "Додаток Ouisync призначений для надання послуг з спільного доступу до файлів без ідентифікатора користувача, імені, прізвища, облікового запису користувача або іншої форми даних користувачів. Ми не знаємо, хто використовує наш додаток, і з ким вони синхронізація або поділитися своїми даними", "@messageDataCollectionP2": {}, "messageDataSharingP1": "Ouisync (та eQualit.ie) не передають жодних даних третім особам", "@messageDataSharingP1": {}, - "messageLogDataP2": "Якщо користувач вирішить зв'язатися з нами, ми можемо збирати персональні дані, які не можуть бути визначені:", + "messageLogDataP2": "Якщо користувач вирішить зв'язатися з нами, ми можемо збирати персональні дані:", "@messageLogDataP2": {}, "messageLogData1": "Адреса електронної пошти - якщо користувач вирішив зв'язатися з нами електронною поштою", "@messageLogData1": {}, @@ -762,19 +762,19 @@ "@messageEqValuesP7": {}, "messageEqValuesP8": "Право на недоторканність приватного життя є основоположним правом, яке ми прагнемо захищати завжди і всюди. Конфіденційність даних наших безпосередніх бенефіціарів є основою нашої діяльності. Наші інструменти, послуги та внутрішні політики розроблені з урахуванням принципу конфідеційності даних. Ми використовуємо всі технічні та юридичні ресурси, які є в нашому розпорядженні, аби захистити конфіденційность даних наших бенефіціарів. Будь ласка, ознайомтеся з нашою Політикою конфіденційності та нашими ", "@messageEqValuesP8": {}, - "messageSecurityPracticesP3": "Додаток Ouisync зберігає дані користувачів на \"Always-On Peer\" - сервері, розташованому в Канаді. Всі дані зберігаються у зашифрованому вигляді і не можуть бути прочитані ні сервером, ні його операторами. Мета цього сервера - просто подолати розриви між одноранговими користувачами, які не перебувають в мережі одночасно. Всі дані періодично видаляються з цього сервера - його метою не є забезпечення постійного зберігання даних, а лише полегшення синхронізації даних між користувачами", + "messageSecurityPracticesP3": "Додаток Ouisync зберігає дані користувачів на \"Always-On Peer\", який знаходиться в Канаді. Всі дані зберігаються як зашифровані шматки і не прочитаються сервером або його операторами. Мета цього сервера - просто перемістити проміжки між однолітками, які не онлайн одночасно. Всі дані періодично очищаються від цього сервера - його мета не забезпечити постійного зберігання даних, але просто полегшення синхронізації даних однолітками", "@messageSecurityPracticesP3": {}, - "messageDeletionDataServerP1": "Найпростіший спосіб видалити дані - це видалити файли або сховища зі свого пристрою. Будь-яке видалення файлів буде поширене на всіх ваших колег - тобто, якщо ви маєте доступ на запис до сховища, ви можете видалити будь-які файли в ньому, і ті ж самі файли будуть видалені зі сховищ ваших колег, а також з нашого серверу Always-On-Peer. Якщо вам потрібно видалити лише репозиторії з нашого сервера Always-On-Peer (але зберегти їх у вашому власному репозиторії на вашому пристрої), будь ласка, зв'яжіться з нами за вказаною нижче адресою", + "messageDeletionDataServerP1": "Найпростіший спосіб видалити ваші дані можна шляхом видалення файлів або репозицій з власного пристрою. Будь-яке видалення файлів буде пропаговано для всіх ваших однолітків - тобто, якщо у вас є доступ до репозиторій, ви можете видалити будь-які файли в ньому, і ті ж файли будуть видалені з репозиторіїв ваших однолітків, а також від нашого Завжди-On-Peer. Якщо вам необхідно видалити тільки репозиторії з нашого Завжди-On-Peer (але все ще тримати їх у власній репозиторії на вашому пристрої), будь ласка, зв'яжіться з нами за адресою нижче", "@messageDeletionDataServerP1": {}, - "messageLogDataP1": "Застосунок Ouisync створює лог-файли на пристроях користувачів. Їхньою метою є лише реєстрація активності пристрою для полегшення процесу налагодження (дебагінг), якщо у користувача виникнуть труднощі з підключенням до мережі або інші проблеми з використанням програми Ouisync. Лог-файл залишається на пристрої користувача, якщо користувач не вирішить надіслати його нам для цілей технічної підтримки", + "messageLogDataP1": "Додаток Ouisync створює логфайли на пристроях користувачів. Мета роботи полягає в тому, щоб полегшити процес відключення у разі виникнення труднощів користувачів, пов’язаних з ними або іншим чином за допомогою програми Ouisync. Файл журналу залишається на пристрої користувача, якщо користувач вирішить надсилати його нам для цілей підтримки", "@messageLogDataP1": {}, "messageLogData2": "Інформація, яку користувач може надати електронною поштою, через тікети допомоги або через наш веб-сайт, а також пов'язані з ним метаданими – з метою надання технічної підтримки", "@messageLogData2": {}, - "messageSecurityPracticesP4": "Якщо у вас є підстави вважати, що ваші персональні дані були незаконно отримані та передані іншим користувачам Ouisync, будь ласка, зв'яжіться з нами за вказаною нижче адресою", + "messageSecurityPracticesP4": "Якщо у вас є підстави вважати, що ваші персональні дані були незаконно отримані і поділені іншими користувачами Ouisync, будь ласка, зв'яжіться з нами за адресою нижче", "@messageSecurityPracticesP4": {}, "messageDeletionDataServerNote": "Команда Ouisync не може видаляти окремі файли зі сховищ, оскільки їх неможливо ідентифікувати, оскільки вони зашифровані. Ми можемо видаляти цілі сховища, якщо ви надішлете нам посилання на сховище, яке потрібно видалити", "@messageDeletionDataServerNote": {}, - "messageChildrensPolicyP1": "Ми свідомо не збираємо особисту інформацію від дітей. Ми закликаємо всіх дітей ніколи не надавати будь-яку особисту інформацію через Застосунок та/або Сервіси. Ми закликаємо батьків та законних опікунів контролювати використання інтернету їхніми дітьми та сприяти дотриманню цієї Політики, проінструктувавши своїх дітей ніколи не надавати особисту інформацію через Застосунок та/або Сервіси без їхнього дозволу. Якщо у вас є підстави вважати, що дитина надала нам особисту інформацію через Застосунок та/або Сервіси, будь ласка, зв'яжіться з нами. Ви також повинні бути не молодше 16 років, щоб дати згоду на обробку вашої особистої інформації у вашій країні (у деяких країнах ми можемо дозволити вашим батькам або опікунам зробити це від вашого імені)", + "messageChildrensPolicyP1": "Ми не знаємо, щоб зібрати особисту інформацію від дітей. Ми заохочуємо всіх дітей, які ніколи не подають особистої інформації через додаток та/або Послуги. Ми заохочуємо батьків та правоохоронців контролювати дітей Інтернет-користування та забезпечення дотримання цієї Політики, що перешкоджають їх дітям, ніколи не надавати особисту інформацію через додаток та/або Послуги без дозволу. Якщо ви хочете вірити, що дитина надавалася особистою ідентифікованою інформацією для нас через додаток та/або Послуги, будь ласка, зв'яжіться з нами. Ви також повинні бути принаймні 16 років згоди на обробку вашої особистої інформації в країні (в деяких країнах, які ми можемо дозволити вашому батькові або опікуну таким чином від імені)", "@messageChildrensPolicyP1": {}, "messageOnboardingAccess": "Діліться файлами на всіх своїх пристроях або з іншими користувачами та створіть власну захищену хмару!", "@messageOnboardingAccess": {}, @@ -920,7 +920,7 @@ "@actionSkip": {}, "messagePreviewingFileFailed": "Перегляд файлу {path} не вдалося", "@messagePreviewingFileFailed": {}, - "messageFilePreviewFailed": "Не вдалося запустити попередній перегляд файлу", + "messageFilePreviewFailed": "Ми не можемо запустити попередній перегляд файлів", "@messageFilePreviewFailed": {}, "labelExternalIPv6": "Зовнішня IPv6", "@labelExternalIPv6": {}, @@ -928,7 +928,7 @@ "@messageUnknownFileExtension": {}, "messageDownloadFileCanceled": "Завантаження файлу скасовано", "@messageDownloadFileCanceled": {}, - "messageAutomaticUnlockRepositoryFailed": "Ми не змогли розблокувати репозиторій", + "messageAutomaticUnlockRepositoryFailed": "Ми не можемо розблокувати репозиторію", "@messageAutomaticUnlockRepositoryFailed": {}, "messageBiometricUnlockRepositoryFailed": "Біометричне розблокування не відбулося", "@messageBiometricUnlockRepositoryFailed": {}, @@ -969,5 +969,43 @@ "messageOnlyAvailableFiles": "Доступно тільки для файлів", "@messageOnlyAvailableFiles": {}, "repositoryIsAlreadyImported": "Репозиторій вже імпортовано", - "@repositoryIsAlreadyImported": {} + "@repositoryIsAlreadyImported": {}, + "messagePeerRemoved": "Пірс видалений", + "@messagePeerRemoved": {}, + "messageSortBy": "Сортувати за: {name}", + "@messageSortBy": {}, + "messageDownloadFileLocation": "Завантаження файлу в {path}", + "@messageDownloadFileLocation": {}, + "messagePeerAdded": "П'є додано", + "@messagePeerAdded": {}, + "messageAwaitingResult": "Важкий результат ...", + "@messageAwaitingResult": {}, + "messageAuthenticate": "Автентицид", + "@messageAuthenticate": {}, + "messageInstallDokanForOuisyncP2": "для репозиторіїв доступу за допомогою Провідника File Explorer.\nБудь ласка, встановіть Dokan для підвищення досвіду Ouisync.", + "@messageInstallDokanForOuisyncP2": {}, + "messageErrorDetail": "Помилка: {error}", + "@messageErrorDetail": {}, + "messageDokanInstallationFailed": "Встановлення Dokan не вдалося.", + "@messageDokanInstallationFailed": {}, + "replacementError": "{error}", + "@replacementError": {}, + "messageUseCacheServers": "Використання кеш-серверів", + "@messageUseCacheServers": {}, + "messageDokanDifferentMayorP1": "Встановити", + "@messageDokanDifferentMayorP1": {}, + "messageSecurityOptionsNotAvailableBlind": "Опції безпеки не доступні для сліпих репозицій", + "@messageSecurityOptionsNotAvailableBlind": {}, + "messageConfirmIrreversibleChange": "Ця дія незворотна, б ви хотіли б продовжити?", + "@messageConfirmIrreversibleChange": {}, + "messageInstallDokanForOuisyncP1": "Ouisync використовує", + "@messageInstallDokanForOuisyncP1": {}, + "messageDokanDifferentMayorP2": "з дати. Будь ласка, поновіть його в останню версію.", + "@messageDokanDifferentMayorP2": {}, + "messageDokan": "Докан", + "@messageDokan": {}, + "messageDokanOlderVersionP2": "з дати.\n\nБудь ласка, встановіть існуючу версію Dokan, перезавантажте систему і запустіть Ouisync знову.", + "@messageDokanOlderVersionP2": {}, + "messageResetLocalSecret": "Відновити місцевий секрет", + "@messageResetLocalSecret": {} } From fcfbc2da65d9a9af3bcd712d7335e3f7dcf51929 Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Wed, 13 Nov 2024 14:43:53 +0000 Subject: [PATCH 15/22] Translated using Weblate (Persian) Currently translated at 98.9% (489 of 494 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 343b5f23c..90bb712d0 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -1016,7 +1016,7 @@ "@messageInstallDokanForOuisyncP1": {}, "messageSecurityOptionsNotAvailableBlind": "گزینه‌های امنیت برای مخازن کور در دسترس نیستند", "@messageSecurityOptionsNotAvailableBlind": {}, - "actionLocateRepo": "یافتن مخزن", + "actionLocateRepo": "موقعیت‌یابی مخزن", "@actionLocateRepo": {}, "titleApplicationLanguage": "زبان برنامه", "@titleApplicationLanguage": {}, @@ -1037,5 +1037,7 @@ "accessModeReadLabel": "نوشتنی", "@accessModeReadLabel": {}, "sortByTypeLabel": "نوع", - "@sortByTypeLabel": {} + "@sortByTypeLabel": {}, + "titleFreedomExpressionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", + "@titleFreedomExpressionAccessInfo": {} } From 6225c62dd7cc92d09ac1983ca108b9faed93ba31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=20=D0=93=D0=BE=D1=80?= =?UTF-8?q?=D0=BF=D0=B8=D0=BD=D1=96=D1=87?= Date: Wed, 13 Nov 2024 09:43:59 +0000 Subject: [PATCH 16/22] Translated using Weblate (Ukrainian) Currently translated at 100.0% (494 of 494 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/uk/ --- lib/l10n/intl_uk.arb | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/lib/l10n/intl_uk.arb b/lib/l10n/intl_uk.arb index b037c09eb..7bdf6dda4 100644 --- a/lib/l10n/intl_uk.arb +++ b/lib/l10n/intl_uk.arb @@ -800,7 +800,7 @@ "@messagePIPEDA": {}, "messageNote": "Примітка", "@messageNote": {}, - "messageErrorDokanNotInstalled": "Відсутня інсталяція Dokan. Будь ласка, встановіть його з {dokanUrl}", + "messageErrorDokanNotInstalled": "Докан відсутній {dokanUrl}", "@messageErrorDokanNotInstalled": { "placeholders": { "dokanUrl": {} @@ -908,7 +908,7 @@ "@actionDone": {}, "actionNext": "Наступний", "@actionNext": {}, - "messageFailedToMount": "Не вдалося встановити: {reason}", + "messageFailedToMount": "Доступ до репозицій через File Explorer не доступний: {reason}", "@messageFailedToMount": { "placeholders": { "reason": {} @@ -988,7 +988,7 @@ "@messageErrorDetail": {}, "messageDokanInstallationFailed": "Встановлення Dokan не вдалося.", "@messageDokanInstallationFailed": {}, - "replacementError": "{error}", + "replacementError": "{error} і", "@replacementError": {}, "messageUseCacheServers": "Використання кеш-серверів", "@messageUseCacheServers": {}, @@ -1007,5 +1007,35 @@ "messageDokanOlderVersionP2": "з дати.\n\nБудь ласка, встановіть існуючу версію Dokan, перезавантажте систему і запустіть Ouisync знову.", "@messageDokanOlderVersionP2": {}, "messageResetLocalSecret": "Відновити місцевий секрет", - "@messageResetLocalSecret": {} + "@messageResetLocalSecret": {}, + "actionNewMediaFile": "Медіа", + "@actionNewMediaFile": {}, + "actionInstallDokan": "Встановити Dokan", + "@actionInstallDokan": {}, + "actionUpdateDokan": "Оновлення Dokan", + "@actionUpdateDokan": {}, + "actionLocateRepo": "Репозиторій локації", + "@actionLocateRepo": {}, + "actionEject": "Вилучити", + "@actionEject": {}, + "sortByNameLabel": "Назва", + "@sortByNameLabel": {}, + "sortBySizeLabel": "Розмiр", + "@sortBySizeLabel": {}, + "sortByTypeLabel": "Вид одягу", + "@sortByTypeLabel": {}, + "accessModeBlindLabel": "сліпий", + "@accessModeBlindLabel": {}, + "accessModeReadLabel": "читати", + "@accessModeReadLabel": {}, + "accessModeWriteLabel": "писати", + "@accessModeWriteLabel": {}, + "titleApplicationLanguage": "Мова застосунку", + "@titleApplicationLanguage": {}, + "languageOfTheDevice": "мова пристрою", + "@languageOfTheDevice": {}, + "languageIsNotAvailable": "недоступно", + "@languageIsNotAvailable": {}, + "messageSettingsVersionNewerThanCurrent": "У налаштуваннях, знайдені на цьому пристрої були створені з новою версією Ouisync і не можуть бути мігровані.", + "@messageSettingsVersionNewerThanCurrent": {} } From 2ca409562e2e848d577779e479bf8258dd929a39 Mon Sep 17 00:00:00 2001 From: Jorge Pabon Date: Wed, 13 Nov 2024 15:11:23 +0000 Subject: [PATCH 17/22] Translated using Weblate (Persian) Currently translated at 98.9% (490 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 90bb712d0..0f1851d8e 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -1039,5 +1039,7 @@ "sortByTypeLabel": "نوع", "@sortByTypeLabel": {}, "titleFreedomExpressionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", - "@titleFreedomExpressionAccessInfo": {} + "@titleFreedomExpressionAccessInfo": {}, + "labelSynced": "همگام‌سازی‌شده", + "@labelSynced": {} } From d0c3b040e0ba8792caaa9528407223593192c170 Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Thu, 14 Nov 2024 12:24:17 +0000 Subject: [PATCH 18/22] Translated using Weblate (Spanish) Currently translated at 100.0% (495 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/es/ --- lib/l10n/intl_es.arb | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index e6c4b869e..2a0e358fe 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1043,5 +1043,19 @@ "messageLogLevelErrorWarnInfoDebug": "Errores, advertencias, información y depuración", "@messageLogLevelErrorWarnInfoDebug": {}, "titleFreedomExpressionAccessInfo": "Libertad de expresión y acceso a la información", - "@titleFreedomExpressionAccessInfo": {} + "@titleFreedomExpressionAccessInfo": {}, + "sortByNameLabel": "Nombre", + "@sortByNameLabel": {}, + "sortBySizeLabel": "Tamaño", + "@sortBySizeLabel": {}, + "sortByTypeLabel": "Tipo", + "@sortByTypeLabel": {}, + "accessModeReadLabel": "lectura", + "@accessModeReadLabel": {}, + "accessModeWriteLabel": "escritura", + "@accessModeWriteLabel": {}, + "accessModeBlindLabel": "oculto", + "@accessModeBlindLabel": {}, + "labelSynced": "Sincronizado", + "@labelSynced": {} } From d527b8d9b13a8de92ff2b5aedbcb44462f192cb2 Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Wed, 13 Nov 2024 17:16:14 +0000 Subject: [PATCH 19/22] Translated using Weblate (Persian) Currently translated at 99.5% (493 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 0f1851d8e..691d2abdf 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -1041,5 +1041,11 @@ "titleFreedomExpressionAccessInfo": "آزادی بیان و دسترسی به اطلاعات", "@titleFreedomExpressionAccessInfo": {}, "labelSynced": "همگام‌سازی‌شده", - "@labelSynced": {} + "@labelSynced": {}, + "messageFailedCreateRepository": "ناموفق در ایجاد مخزن {name}", + "@messageFailedCreateRepository": {}, + "messageFailedAddRepository": "ناموفق در وارد کردن مخزن {name}", + "@messageFailedAddRepository": {}, + "messageLogLevelErrorWarnInfoDebug": "خطا، هشدار، اطلاعات و اشکال‌زدایی", + "@messageLogLevelErrorWarnInfoDebug": {} } From 358102af8f2a1af40f1c5f5f690acb549fd49ad3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=20=D0=93=D0=BE=D1=80?= =?UTF-8?q?=D0=BF=D0=B8=D0=BD=D1=96=D1=87?= Date: Thu, 14 Nov 2024 14:31:45 +0000 Subject: [PATCH 20/22] Translated using Weblate (Ukrainian) Currently translated at 100.0% (495 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/uk/ --- lib/l10n/intl_uk.arb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/l10n/intl_uk.arb b/lib/l10n/intl_uk.arb index 7bdf6dda4..ff339fafa 100644 --- a/lib/l10n/intl_uk.arb +++ b/lib/l10n/intl_uk.arb @@ -1037,5 +1037,7 @@ "languageIsNotAvailable": "недоступно", "@languageIsNotAvailable": {}, "messageSettingsVersionNewerThanCurrent": "У налаштуваннях, знайдені на цьому пристрої були створені з новою версією Ouisync і не можуть бути мігровані.", - "@messageSettingsVersionNewerThanCurrent": {} + "@messageSettingsVersionNewerThanCurrent": {}, + "labelSynced": "Синхронізовано", + "@labelSynced": {} } From 36e4ad2abe85f5e6b270a09b67bdfc7e88ab4edb Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Thu, 28 Nov 2024 15:14:36 +0000 Subject: [PATCH 21/22] Translated using Weblate (Persian) Currently translated at 100.0% (495 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 691d2abdf..2bc5c579f 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -900,7 +900,7 @@ "@messageGoToMailApp": {}, "messageUnlockUsingBiometricsConfirmation": "قفل این مخزن را با استفاده از بیومتریک باز کنید؟", "@messageUnlockUsingBiometricsConfirmation": {}, - "messageLogDataP2": "اگر کاربر تصمیم بگیرد با ما تماس بگیرد، اطلاعات غیرقابل شناسایی شخصی که ممکن است جمع‌آوری کنیم عبارتند از:", + "messageLogDataP2": "اگر کاربر تصمیم بگیرد با ما تماس بگیرد، اطلاعات قابل شناسایی شخصی که ممکن است جمع‌آوری کنیم عبارتند از:", "@messageLogDataP2": {}, "messageGoToPeers": "به (بخش) همتاها بروید", "@messageGoToPeers": {}, From 8927f13197e0df7e27e0e9ffaa56e82c4c09cd93 Mon Sep 17 00:00:00 2001 From: Mehdi Oloomi Date: Wed, 11 Dec 2024 15:28:12 +0000 Subject: [PATCH 22/22] Translated using Weblate (Persian) Currently translated at 100.0% (495 of 495 strings) Translation: Ouisync/Android Strings Translate-URL: https://hosted.weblate.org/projects/ouisync/android-strings/fa/ --- lib/l10n/intl_fa.arb | 48 ++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb index 2bc5c579f..7e9972243 100644 --- a/lib/l10n/intl_fa.arb +++ b/lib/l10n/intl_fa.arb @@ -48,7 +48,7 @@ "@titleDownloadToDevice": {}, "titleDownloadLocation": "محل دانلود", "@titleDownloadLocation": {}, - "titleBackgroundAndroidPermissionsTitle": "مجوزهای مورد نیاز", + "titleBackgroundAndroidPermissionsTitle": "دسترسی‌های مورد نیاز", "@titleBackgroundAndroidPermissionsTitle": {}, "titleLockAllRepos": "قفل‌ کردن تمام مخزن‌ها", "@titleLockAllRepos": {}, @@ -100,7 +100,7 @@ "@labelUseExternalStorage": {}, "labelDownloadedTo": "دانلود شده در:", "@labelDownloadedTo": {}, - "labelSetPermission": "تنظیم مجوز", + "labelSetPermission": "تنظیم دسترسی", "@labelSetPermission": {}, "labelTokenLink": "لینک اشتراک‌گذاری مخزن", "@labelTokenLink": {}, @@ -174,7 +174,7 @@ "@messageReadOnlyContents": {}, "messageLockedRepository": "این مخزن قفل شده است.", "@messageLockedRepository": {}, - "messageBlindRepository": "این مخزن یک کپی با مجوز کور است.", + "messageBlindRepository": "این مخزن یک کپی با دسترسی کور است.", "@messageBlindRepository": {}, "messageBlindRepositoryContent": "رمز عبور ارائه‌شده امکان مشاهده محتوای این مخزن را به شما نمی‌دهد.", "@messageBlindRepositoryContent": {}, @@ -256,7 +256,7 @@ "@messageExitOuiSync": {}, "messageInitializing": "در حال راه‌اندازی…", "@messageInitializing": {}, - "messageAddingFileToLockedRepository": "این مخزن قفل شده یا دارای مجوز کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید.", + "messageAddingFileToLockedRepository": "این مخزن قفل شده یا دارای دسترسی کور است.\n\nاگر رمز عبور را دارید، قفل آن را باز کنید و دوباره امتحان کنید.", "@messageAddingFileToLockedRepository": {}, "messageAddingFileToReadRepository": "این مخزن یک کپی فقط خواندنی است.", "@messageAddingFileToReadRepository": {}, @@ -274,7 +274,7 @@ "@messageBackgroundNotificationAndroid": {}, "messageBackgroundAndroidPermissions": "به‌زودی سیستم‌عامل از شما اجازه می‌خواهد تا این برنامه را در پس‌زمینه اجرا کند.\n\nاین کار برای ادامه همگام‌سازی هنگامی که برنامه در پیش‌زمینه فعال نیست، ضروری است", "@messageBackgroundAndroidPermissions": {}, - "messageSelectAccessMode": "یک مجوز برای ایجاد لینک اشتراک‌گذاری انتخاب کنید", + "messageSelectAccessMode": "نوع دسترسی برای ایجاد لینک اشتراک‌گذاری را انتخاب کنید", "@messageSelectAccessMode": {}, "messageNothingHereYet": "هنوز چیزی این‌جا نیست!", "@messageNothingHereYet": {}, @@ -294,9 +294,9 @@ "@messageAddRepoLink": {}, "messageActionNotAvailable": "این گزینه در مخازن فقط خواندنی موجود نیست", "@messageActionNotAvailable": {}, - "messageAccessModeDisabled": "مجوز مورد نظر نمی‌تواند بالاتر از حالت دسترسی فعلی مخزن باشد: {access}", + "messageAccessModeDisabled": "دسترسی مورد نظر نمی‌تواند بالاتر از حالت دسترسی فعلی مخزن باشد: {access}", "@messageAccessModeDisabled": {}, - "messageShareActionDisabled": "برای ایجاد لینک مخزن ابتدا باید یک مجوز انتخاب کنید", + "messageShareActionDisabled": "برای ایجاد لینک مخزن ابتدا باید نوع دسترسی را انتخاب کنید", "@messageShareActionDisabled": {}, "messageChangeExtensionAlert": "تغییر پسوند یک فایل می تواند آن‌را غیرقابل استفاده کند", "@messageChangeExtensionAlert": {}, @@ -440,7 +440,7 @@ "@titleSortBy": {}, "messageStrong": "قوی", "@messageStrong": {}, - "messageOnboardingShare": "همه فایل‌ها و پوشه‌های اضافه‌شده به وی‌سینک به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت استراحت، به‌صورت امن رمزنگاری شده‌اند.", + "messageOnboardingShare": "همه فایل‌ها و پوشه‌های اضافه‌شده به وی‌سینک به‌طور پیش‌فرض هم در حالت انتقال و هم در حالت ذخیره‌سازی، به‌صورت امن رمزنگاری شده‌اند.", "@messageOnboardingShare": {}, "messageRepositoryNewPassword": "رمز عبور جدید", "@messageRepositoryNewPassword": {}, @@ -526,7 +526,7 @@ "@messageRepoMissingErrorDescription": {}, "messagePassword": "رمز عبور", "@messagePassword": {}, - "titleOnboardingPermissions": "تنظیم مجوزها برای همکاری، پخش یا صرفا ذخیره‌سازی", + "titleOnboardingPermissions": "تنظیم دسترسی‌ها برای همکاری، پخش یا صرفا ذخیره‌سازی", "@titleOnboardingPermissions": {}, "messageRepoDeletionErrorDescription": "نتوانستیم این مخزن را حذف کنیم: \"{name}\"", "@messageRepoDeletionErrorDescription": {}, @@ -594,7 +594,7 @@ "@messageUnlockUsingBiometrics": {}, "titlePrivacyNotice": "۳. سند حریم خصوصی", "@titlePrivacyNotice": {}, - "messageCameraPermission": "برای استفاده از دوربین و خواندن کد QR به این مجوز نیاز داریم", + "messageCameraPermission": "برای استفاده از دوربین و خواندن کد QR به این دسترسی نیاز داریم", "@messageCameraPermission": {}, "messageTerms3": "حاوی یا ترویج‌کننده اعمال شدید خشونت‌آمیز یا فعالیت های تروریستی، از جمله ترور یا تبلیغات خشونت‌آمیز افراطی", "@messageTerms3": {}, @@ -608,7 +608,7 @@ "@messageErrorAuthenticatingBiometrics": {}, "messageTapForTermsPrivacy": "برای خواندن شرایط استفاده و سند حریم خصوصی، این‌جا ضربه بزنید", "@messageTapForTermsPrivacy": {}, - "messageGrantingRequiresSettings": "برای دسترسی این مجوز باید به تنظیمات بروید:\n\nتنظیمات > اپ‌ها و اعلان‌ها", + "messageGrantingRequiresSettings": "برای دادن این دسترسی باید به تنظیمات بروید:\n\nتنظیمات > اپ‌ها و اعلان‌ها", "@messageGrantingRequiresSettings": {}, "messageErrorUnhandledState": "خطا: وضعیت غیر قابل کنترل", "@messageErrorUnhandledState": {}, @@ -616,7 +616,7 @@ "@messageStoragePermission": {}, "messageCamera": "دوربین", "@messageCamera": {}, - "titleRequiredPermission": "مجوز مورد نیاز", + "titleRequiredPermission": "دسترسی مورد نیاز", "@titleRequiredPermission": {}, "titleContactUs": "تماس با ما", "@titleContactUs": {}, @@ -688,7 +688,7 @@ "@messageErrorAddingSecureStorge": {}, "labelQuicListenerEndpointV4": "Listening on QUIC/UDP IPv4‌", "@labelQuicListenerEndpointV4": {}, - "messagePermissionRequired": "این مجوز لازم است", + "messagePermissionRequired": "این دسترسی ضروری است", "@messagePermissionRequired": {}, "titleOnboardingAccess": "دسترسی به فایل‌ها از دستگاه‌های مختلف", "@titleOnboardingAccess": {}, @@ -754,7 +754,7 @@ "@messageErrorAddingLocalPassword": {}, "messageEqValuesP10": "به عنوان یک سازمان، ما به دنبال شفافیت در سیاست‌ها و رویه‌های خود هستیم. تا آنجا که ممکن است، کد منبع ما باز و آزادانه در دسترس است، و توسط مجوزهایی محافظت می‌شود که توسعه جامعه‌محور، به‌اشتراک‌گذاری و انتشار این اصول و ارزش‌ها را ترغیب و تشویق می‌کنند", "@messageEqValuesP10": {}, - "messageDataCollectionP2": "اپلیکیشن وی‌سینک به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام، نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد", + "messageDataCollectionP2": "اپلیکیشن وی‌سینک به گونه‌ای طراحی شده که می‌تواند خدمات اشتراک فایل را بدون شناسه کاربر، نام یا نام مستعار، حساب کاربری یا هر شکل دیگری از اطلاعات کاربر ارائه دهد. ما نمی‌دانیم چه کسی از برنامه ما استفاده می‌کند و با چه کسی داده‌های خود را همگام‌سازی می‌کند یا به‌اشتراک می‌گذارد", "@messageDataCollectionP2": {}, "labelLocalIPv4": "Local IPv4‌", "@labelLocalIPv4": {}, @@ -780,13 +780,13 @@ "reason": {} } }, - "messageDeletionDataServerP1": "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هرگونه حذف فایل به همه همتایان شما اطلاع‌رسانی خواهد شد(منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتایان شما و همچنین از همتای همیشه فعال ما حذف خواهند شد. اگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفا با آدرس زیر با ما تماس بگیرید", + "messageDeletionDataServerP1": "ساده‌ترین راه برای حذف داده‌های خود، حذف فایل‌ها یا مخازن از دستگاه خودتان است. هر گونه حذف فایل به همه همتاهای شما اطلاع‌رسانی خواهد شد (منتشر خواهد شد) - به عنوان مثال، اگر به یک مخزن دسترسی نوشتنی دارید، می توانید فایل‌های موجود در آن را حذف کنید و همان فایل‌ها از مخازن همتاهای شما و همچنین از همتای همیشه فعال ما حذف خواهند شد. اگر نیاز دارید که فقط مخازن را از سرور همتای همیشه فعال Always-On-Peer ما حذف کنید (اما همچنان آن‌ها را در مخزن خود در دستگاه خود نگه دارید)، لطفا با آدرس زیر با ما تماس بگیرید", "@messageDeletionDataServerP1": {}, "messageSecurityPracticesP2": "درباره تکنیک‌های رمزنگاری مورد استفاده در اسناد ما می‌توانید اطلاعات بیشتری کسب کنید", "@messageSecurityPracticesP2": {}, "messageSecurityPracticesP4": "اگر دلیلی مبنی بر به‌اشتراک‌گذاری و نشت اطلاعات شخصی خودتان به‌طور غیرقانونی توسط سایر کاربران وی‌سینک دارید، لطفا با آدرس زیر با ما تماس بگیرید", "@messageSecurityPracticesP4": {}, - "messageInfoPeerExchange": "ابزاری است که برای تبادل لیست همتایان با همتاهایی که به آن‌ها متصل هستید، استفاده می‌شود", + "messageInfoPeerExchange": "ابزاری است که برای تبادل لیست همتاها با همتاهایی که به آن‌ها متصل هستید، استفاده می‌شود", "@messageInfoPeerExchange": {}, "messageChangesToTermsP2": "این سیاست (خط مشی) از تاریخ ۹ مارس ۲۰۲۲ میلادی قابل اجراست", "@messageChangesToTermsP2": {}, @@ -798,7 +798,7 @@ "@actionBack": {}, "menuItemRepository": "مخزن", "@menuItemRepository": {}, - "messageInfoNATType": "این مقدار به روتر شما و/یا ارائه‌دهنده خدمات اینترنتی شما بستگی دارد.\n\nاتصال با همتایان شما به بهترین شکل زمانی حاصل می‌شود که مستقل از نقطه انتهایی باشد", + "messageInfoNATType": "این مقدار به روتر شما و/یا ارائه‌دهنده خدمات اینترنتی شما بستگی دارد.\n\nاتصال با همتاهای شما به بهترین شکل زمانی حاصل می‌شود که مستقل از نقطه انتهایی باشد", "@messageInfoNATType": {}, "messageInfoBittorrentDHT": "ابزاری است که به همتاها اجازه می‌دهد بدون سرور متمرکز، یکدیگر را در شبکه همتابه‌همتا (P2P) پیدا کنند", "@messageInfoBittorrentDHT": {}, @@ -856,11 +856,11 @@ "@actionSkip": {}, "menuItemAbout": "درباره ما", "@menuItemAbout": {}, - "messageInfoLocalDiscovery": "سیستم شناسایی محلی همتا (Local Peer Discovery) به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتایان خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد", + "messageInfoLocalDiscovery": "سیستم شناسایی محلی همتا (Local Peer Discovery) به اپلیکیشن‌های وی‌سینک شما اجازه می‌دهد تا فایل‌ها را بدون مراجعه به ارائه‌دهندگان خدمات اینترنتی، جایی که یک وای‌فای محلی یا شبکه دیگری در دسترس است، با همتاهای خود به اشتراک بگذارند.\n\nبرای اتصال محلی، این تنظیمات باید روشن باشد", "@messageInfoLocalDiscovery": {}, "actionIDontAgree": "موافق نیستم", "@actionIDontAgree": {}, - "messageInfoSyncMobileData": "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای انتقال داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتایان خود به اشتراک می‌گذارید، از شما هزینه دریافت کند", + "messageInfoSyncMobileData": "وقتی این تنظیمات روشن است، ارائه‌دهنده خدمات تلفن همراه شما ممکن است برای انتقال داده‌هایی که هنگام همگام‌سازی مخزن‌هایی که با همتاهای خود به اشتراک می‌گذارید، از شما هزینه دریافت کند", "@messageInfoSyncMobileData": {}, "actionUndo": "بازگرداندن", "@actionUndo": {}, @@ -868,7 +868,7 @@ "@messageUpdateLocalPasswordConfirmation": {}, "actionRemoveLocalPassword": "حذف رمز عبور محلی", "@actionRemoveLocalPassword": {}, - "messageSecurityPracticesP3": "اپلیکیشن وی‌سینک داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفاً پر کردن شکاف بین همتایان خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتایان را تسهیل می‌کند", + "messageSecurityPracticesP3": "اپلیکیشن وی‌سینک داده‌های کاربران را روی یک همتای همیشه فعال [Always-On Peer] که سروری در کشور کانادا است، ذخیره می‌کند. همه داده‌ها به صورت تکه‌های رمزنگاری‌شده ذخیره می‌شوند و توسط سرور یا اپراتورهای آن قابل خواندن نیستند. هدف این سرور صرفا پر کردن شکاف بین همتاهای خود است که هم‌زمان آنلاین نیستند. تمام داده‌ها به صورت دوره‌ای از این سرور پاک می شوند - هدف آن ارائه ذخیره‌سازی دائمی داده نیست، بلکه همگام‌سازی داده‌ها توسط همتاها را تسهیل می‌کند", "@messageSecurityPracticesP3": {}, "menuItemLogs": "گزارش‌ها", "@menuItemLogs": {}, @@ -878,7 +878,7 @@ "@messageChildrensPolicyP1": {}, "popupMenuItemCopyPassword": "کپی‌کردن رمز عبور", "@popupMenuItemCopyPassword": {}, - "messageSecurityPracticesP1": "داده‌هایی که کاربر در مخازن وی‌سینک آپلود می‌کند، در حین انتقال و همچنین در حالت استراحت رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در وی‌سینک، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است", + "messageSecurityPracticesP1": "داده‌هایی که کاربر در مخازن وی‌سینک آپلود می‌کند، در حین انتقال و همچنین در حالت ذخیره‌سازی رمزنگاری شده‌اند. این شامل ابرداده‌هایی مانند نام فایل، اندازه، ساختار پوشه و غیره می‌شود. در وی‌سینک، داده‌ها فقط توسط شخصی که داده‌ها را آپلود کرده و افرادی که مخازن خود را با آن‌ها به اشتراک گذاشته‌اند، قابل خواندن است", "@messageSecurityPracticesP1": {}, "actionClear": "پاک‌ کردن", "@actionClear": {}, @@ -892,7 +892,7 @@ "@messageCookiesP1": {}, "messageLinksOtherSitesP1": "این سرویس ممکن است حاوی لینک‌هایی به وب‌سایت‌های دیگر باشد. اگر روی لینک شخص ثالث کلیک کنید، به آن سایت هدایت خواهید شد. توجه داشته باشید که این وب‌سایت‌های خارجی توسط ما اداره نمی‌شوند. بنابراین، ما قویا به شما توصیه می‌کنیم که سند حریم خصوصی این وب سایت‌ها را بررسی کنید. ما هیچ کنترلی بر آن نداریم و هیچ مسئولیتی در قبال محتوا، خط‌مشی‌های حفظ حریم خصوصی، یا عملکرد وب‌سایت‌ها یا خدمات شخص ثالث نداریم", "@messageLinksOtherSitesP1": {}, - "messageLogDataP1": "اپلیکیشن وی‌سینک فایل‌های مرتبط با ثبت گزارش (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتایان خود یا در موارد دیگر در استفاده از وی‌سینک با مشکل مواجه شود. فایل گزارش (لاگ) در دستگاه کاربر باقی می‌ماند، مگر این که کاربر تصمیم بگیرد آن‌را برای اهداف پشتیبانی برای ما ارسال کند", + "messageLogDataP1": "اپلیکیشن وی‌سینک فایل‌های مرتبط با ثبت گزارش (لاگ) را در دستگاه‌های کاربران ایجاد می‌کند. هدف آن‌ها فقط ثبت فعالیت دستگاه برای تسهیل فرآیند رفع اشکال در صورتی است که کاربر در برقراری ارتباط با همتاهای خود یا در موارد دیگر در استفاده از وی‌سینک با مشکل مواجه شود. فایل گزارش (لاگ) در دستگاه کاربر باقی می‌ماند، مگر این که کاربر تصمیم بگیرد آن‌را برای اهداف پشتیبانی برای ما ارسال کند", "@messageLogDataP1": {}, "actionGoToSettings": "به بخش تنظیمات بروید", "@actionGoToSettings": {}, @@ -984,7 +984,7 @@ "@titleDokanInstallationFound": {}, "messageAddRepoDb": "وارد کردن مخزن از فایل سیستم", "@messageAddRepoDb": {}, - "actionEject": "خروج", + "actionEject": "خروج‌", "@actionEject": {}, "actionInstallDokan": "نصب رابط کاربری Dokan", "@actionInstallDokan": {}, @@ -1000,7 +1000,7 @@ "@messageDownloadFileLocation": {}, "messagePeerRemoved": "یک همتا حذف شد", "@messagePeerRemoved": {}, - "messageUseCacheServers": "از سرورهای حافظه پنهان (کش) استفاده کنید", + "messageUseCacheServers": "استفاده از سرورهای کش", "@messageUseCacheServers": {}, "messageSortBy": "‌مرتب‌سازی بر اساس:{name}", "@messageSortBy": {},