1
0
mirror of https://github.com/bitwarden/mobile synced 2025-12-05 23:53:33 +00:00

Compare commits

..

25 Commits

Author SHA1 Message Date
Hinton
4bdbc30873 Dylib 2023-04-27 14:38:32 +02:00
Hinton
39bfda0a24 Add linking instruction everywhere 2023-04-24 15:44:41 +02:00
Hinton
3172b0d571 Use aarch64-apple-ios instead 2023-04-24 15:17:52 +02:00
Hinton
464d1f8a9a test 2023-04-24 14:57:12 +02:00
Federico Maccaroni
1823efa0e5 [PM-1576] Fix Race condition AccountsManager registration (#2434)
* PM-1576 Moved registration of AccountsManager to avoid race conditions with the app start. To do so, added ConditionedAwaiterManager so that it handles a task to be awaited or completed depending on the callers.

* PM-1576 Fix format

* PM-1576 Fix throw to preserve StackTrace
2023-04-07 13:24:54 -04:00
github-actions[bot]
e5ce1760a6 Autosync the updated translations (#2465)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-07 07:52:59 +02:00
Michał Chęciński
e77a971519 Fix Mobile Release workflow to properly upload SHA256 hashes (#2459)
* List files

* Cat files

* Fix
2023-04-04 09:19:48 +02:00
github-actions[bot]
d7715c90f0 Autosync the updated translations (#2457)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-03 20:25:08 +02:00
Federico Maccaroni
8fe9bd7347 PM-1615 Fix cipher options not working in lists due to binding failing due to type mismatch. Updated GroupingsPageViewModel to new way of calling as well (#2460) 2023-04-03 20:02:16 +02:00
Michał Chęciński
11d3d71c32 Fix version auto bump workflow (#2439)
* Fix verion autobump workflow

* Fix

* Update .github/workflows/version-auto-bump.yml

Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>

* Update .github/workflows/version-auto-bump.yml

Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>

---------

Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>
2023-04-03 10:13:52 +02:00
Federico Maccaroni
0462f4db63 Revert "PM-1615 Fix cipher options not working in lists due to binding failing due to type mismatch. Updated GroupingsPageViewModel to new way of calling as well (#2456)" (#2458)
This reverts commit 120f1d6859.
2023-03-31 18:09:32 +02:00
Federico Maccaroni
120f1d6859 PM-1615 Fix cipher options not working in lists due to binding failing due to type mismatch. Updated GroupingsPageViewModel to new way of calling as well (#2456) 2023-03-30 22:47:25 +02:00
mp-bw
99ceb8dbc1 [PM-1646] Add thread safety to migration process (#2453)
* Make migration process thread safe

* tweaks
2023-03-28 17:22:09 -04:00
github-actions[bot]
d7d044f717 Bumped version to 2023.3.3 (#2451)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-27 20:39:10 -04:00
Ilya Nikitenkov
53d892a0ba [PS-2328] Added RuPay card brand (#2314)
* Added Mir and RuPay card brands

* Remove Mir because of https://github.com/bitwarden/clients/pull/5011

---------

Co-authored-by: Daniel James Smith <djsmith@web.de>
2023-03-27 11:26:36 +02:00
mp-bw
80e38f8669 [PM-1567] Fix for vault timeout 'never' not persisting (#2440) 2023-03-24 20:34:48 +00:00
github-actions[bot]
3e76f6b054 Autosync the updated translations (#2438)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-24 01:31:59 +01:00
github-actions[bot]
55a3b76f45 Bumped version to 2023.3.2 (#2436)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-23 18:01:39 -04:00
github-actions[bot]
bd9b767339 Bumped version to 2023.3.1 (#2432)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-23 18:07:08 +01:00
mp-bw
276a93c497 Fix migration crash (#2430) 2023-03-23 11:35:08 -04:00
github-actions[bot]
c6bdb67981 Bumped version to 2023.3.0 (#2423)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-22 10:45:02 -04:00
André Bispo
a6bb089633 [PM-1497] Known device api error (#2418)
* [PM-1497] Ignore know device api error.
2023-03-17 15:07:41 +00:00
github-actions[bot]
606b00142f Autosync the updated translations (#2419)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-03-17 01:24:09 +01:00
André Bispo
151ecf83e7 [PM-1431] [Defect] [Android] New accounts are not able to log in (#2417)
* [PM-1431] Do not clear Master password  if login is ongoing.
2023-03-16 12:48:40 +00:00
André Bispo
ccd71202de [PM-1078] Login with Device - Change mobile to not get fingerprint from API (#2390)
* [PM-1078] Fingerprint phrase gets calculated from pub key on AuthService instead of coming as a property from the api.
2023-03-13 15:39:55 +00:00
66 changed files with 3958 additions and 714 deletions

View File

@@ -93,8 +93,8 @@ jobs:
./com.x8bit.bitwarden.apk/com.x8bit.bitwarden.apk,
./com.x8bit.bitwarden-fdroid.apk/com.x8bit.bitwarden-fdroid.apk,
./Bitwarden iOS.zip,
./bw-android-apk-sha256.txt,
./bw-fdroid-apk-sha256.txt"
./bw-android-apk-sha256.txt/bw-android-apk-sha256.txt,
./bw-fdroid-apk-sha256.txt/bw-fdroid-apk-sha256.txt"
commit: ${{ github.sha }}
tag: v${{ steps.version.outputs.version }}
name: Version ${{ steps.version.outputs.version }}

View File

@@ -32,32 +32,14 @@ jobs:
echo "new-version=$NEW_VER" >> $GITHUB_OUTPUT
trigger_version_bump:
name: "Trigger version bump workflow"
name: "Version bump"
runs-on: ubuntu-22.04
needs:
- setup
steps:
- name: Login to Azure
uses: Azure/login@ec3c14589bd3e9312b3cc8c41e6860e258df9010
- name: Bump version to ${{ needs.setup.outputs.version_number }}
uses: ./.github/workflows/version-bump.yml
secrets:
AZURE_PROD_KV_CREDENTIALS: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }}
with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }}
- name: Retrieve secrets
id: retrieve-secrets
uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af
with:
keyvault: "bitwarden-prod-kv"
secrets: "github-pat-bitwarden-devops-bot-repo-scope"
- name: Call GitHub API to trigger workflow bump
env:
TOKEN: ${{ steps.retrieve-secrets.outputs.github-pat-bitwarden-devops-bot-repo-scope }}
VERSION: ${{ needs.setup.outputs.version_number}}
run: |
JSON_STRING=$(printf '{"ref":"master", "inputs": { "version_number":"%s"}}' "$VERSION")
curl \
-X POST \
-i -u bitwarden-devops-bot:$TOKEN \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/bitwarden/mobile/actions/workflows/version-bump.yml/dispatches \
-d $JSON_STRING
version_number: ${{ needs.setup.outputs.version_number }}

View File

@@ -7,6 +7,13 @@ on:
version_number:
description: "New Version"
required: true
workflow_call:
inputs:
version_number:
required: true
secrets:
AZURE_PROD_KV_CREDENTIALS:
required: true
jobs:
bump_version:

BIN
lib/ios/libbitwarden_c.a Normal file

Binary file not shown.

View File

@@ -81,7 +81,8 @@ namespace Bit.Droid
ServiceContainer.Resolve<IAuthService>("authService"),
ServiceContainer.Resolve<ILogger>("logger"),
ServiceContainer.Resolve<IMessagingService>("messagingService"),
ServiceContainer.Resolve<IWatchDeviceService>());
ServiceContainer.Resolve<IWatchDeviceService>(),
ServiceContainer.Resolve<IConditionedAwaiterManager>());
ServiceContainer.Register<IAccountsManager>("accountsManager", accountsManager);
}
#if !FDROID

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:versionCode="1" android:versionName="2023.3.2" android:installLocation="internalOnly" package="com.x8bit.bitwarden">
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:versionCode="1" android:versionName="2023.3.3" android:installLocation="internalOnly" package="com.x8bit.bitwarden">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="33" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.NFC" />

View File

@@ -1,4 +1,5 @@
using System;
using System.Windows.Input;
using Bit.App.Abstractions;
using Bit.Core.Models.View;
using Bit.Core.Utilities;
@@ -18,7 +19,7 @@ namespace Bit.App.Controls
nameof(WebsiteIconsEnabled), typeof(bool?), typeof(CipherViewCell));
public static readonly BindableProperty ButtonCommandProperty = BindableProperty.Create(
nameof(ButtonCommand), typeof(Command<CipherView>), typeof(CipherViewCell));
nameof(ButtonCommand), typeof(ICommand), typeof(CipherViewCell));
public CipherViewCell()
{
@@ -42,9 +43,9 @@ namespace Bit.App.Controls
set => SetValue(CipherProperty, value);
}
public Command<CipherView> ButtonCommand
public ICommand ButtonCommand
{
get => GetValue(ButtonCommandProperty) as Command<CipherView>;
get => GetValue(ButtonCommandProperty) as ICommand;
set => SetValue(ButtonCommandProperty, value);
}

View File

@@ -121,6 +121,7 @@ namespace Bit.App.Pages
new KeyValuePair<string, string>("JCB", "JCB"),
new KeyValuePair<string, string>("Maestro", "Maestro"),
new KeyValuePair<string, string>("UnionPay", "UnionPay"),
new KeyValuePair<string, string>("RuPay", "RuPay"),
new KeyValuePair<string, string>(AppResources.Other, "Other")
};
CardExpMonthOptions = new List<KeyValuePair<string, string>>

View File

@@ -78,7 +78,9 @@ namespace Bit.App.Pages
Refreshing = true;
await LoadAsync();
});
CipherOptionsCommand = new Command<CipherView>(CipherOptionsAsync);
CipherOptionsCommand = new AsyncCommand<CipherView>(cipher => AppHelpers.CipherListOptions(Page, cipher, _passwordRepromptService),
onException: ex => _logger.Exception(ex),
allowsMultipleExecutions: false);
VaultFilterCommand = new AsyncCommand(VaultFilterOptionsAsync,
onException: ex => _logger.Exception(ex),
allowsMultipleExecutions: false);
@@ -168,7 +170,7 @@ namespace Bit.App.Pages
public AccountSwitchingOverlayViewModel AccountSwitchingOverlayViewModel { get; }
public ObservableRangeCollection<IGroupingsPageListItem> GroupedItems { get; set; }
public Command RefreshCommand { get; set; }
public Command<CipherView> CipherOptionsCommand { get; set; }
public ICommand CipherOptionsCommand { get; }
public bool LoadedOnce { get; set; }
public async Task LoadAsync()
@@ -709,13 +711,5 @@ namespace Bit.App.Pages
var folders = decFolders.Where(f => _allCiphers.Any(c => c.FolderId == f.Id)).ToList();
return folders.Any() ? folders : null;
}
private async void CipherOptionsAsync(CipherView cipher)
{
if ((Page as BaseContentPage).DoOnce())
{
await AppHelpers.CipherListOptions(Page, cipher, _passwordRepromptService);
}
}
}
}

View File

@@ -2542,16 +2542,16 @@
<value>تمكين إذن الكاميرا لاستخدام الماسح الضوئي</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>اللّغة</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>تم تغيير اللغة إلى {0}. الرجاء إعادة تشغيل التطبيق لرؤية التغيير</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>تغيير اللّغة يتطلب إعادة تشغيل التطبيق</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>الافتراضي (النظام)</value>
</data>
<data name="Important" xml:space="preserve">
<value>مهم</value>
@@ -2590,18 +2590,18 @@
<value>كلمة مرور ضعيفة محددة وموجودة في خرق البيانات. استخدم كلمة مرور قوية وفريدة لحماية حسابك. هل أنت متأكد من أنك تريد استخدام كلمة المرور هذه؟</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>معرف الـSSO للمنظمة مطلوب.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>إضافة المفتاح إلى عنصر موجود أو جديد</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>لا توجد عناصر في خزانتك تتطابق مع "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>البحث عن عنصر أو إضافة عنصر جديد</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>لا توجد عناصر تطابق البحث</value>
</data>
</root>

View File

@@ -2592,15 +2592,15 @@
<value>Неабходны ідэнтыфікатар SSO арганізацыі.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Дадаць ключ да існуючага або новага элемента</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>У вашым сховішчы адсутнічаюць элементы, якія адпавядаюць "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Пошук або дабаўленне новага элемента</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Адсутнічаюць элементы, якія адпавядаюць пошуку</value>
</data>
</root>

View File

@@ -2140,7 +2140,7 @@ L'escaneig es farà automàticament.</value>
<value>Aquesta organització té una política empresarial que us inscriurà automàticament al restabliment de la contrasenya. La inscripció permetrà als administradors de lorganització canviar la vostra contrasenya mestra.</value>
</data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Les polítiques de la vostra organització afecten el temps d'espera de la vostra caixa forta. El temps d'espera màxim permès de la caixa forta és de {0} hores i {1} minuts</value>
<value>Les polítiques de l'organització afecten el temps d'espera de la caixa forta. El temps d'espera màxim permès de la caixa forta és de {0} hores i {1} minuts</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve">
<value>El temps d'espera de la caixa forta supera les restriccions establertes per la vostra organització.</value>

View File

@@ -1252,10 +1252,10 @@ Das Scannen erfolgt automatisch.</value>
<value>Beginnt mit</value>
</data>
<data name="URIMatchDetection" xml:space="preserve">
<value>URI Match-Erkennung</value>
<value>URI-Übereinstimmungserkennung</value>
</data>
<data name="MatchDetection" xml:space="preserve">
<value>Match-Erkennung</value>
<value>Übereinstimmungserkennung</value>
<comment>URI match detection for auto-fill.</comment>
</data>
<data name="YesAndSave" xml:space="preserve">
@@ -1536,7 +1536,7 @@ Das Scannen erfolgt automatisch.</value>
<comment>Clipboard is the operating system thing where you copy/paste data to on your device.</comment>
</data>
<data name="DefaultUriMatchDetection" xml:space="preserve">
<value>Standard-URI-Match-Erkennung</value>
<value>Standard URI-Übereinstimmungserkennung</value>
<comment>Default URI match detection for auto-fill.</comment>
</data>
<data name="DefaultUriMatchDetectionDescription" xml:space="preserve">
@@ -1556,8 +1556,7 @@ Das Scannen erfolgt automatisch.</value>
<value>Dunkles Standard-Design</value>
</data>
<data name="DefaultDarkThemeDescription" xml:space="preserve">
<value>Wähle das zu verwendende dunkle Design aus, das bei der Auswahl vom Standard-(System)-Design verwendet werden soll, während der Dark
Mode deines Geräts aktiviert ist.</value>
<value>Wähle das zu verwendende dunkle Design aus, das bei der Auswahl vom Standard-(System)-Design verwendet werden soll, während der Dark Mode deines Geräts aktiviert ist.</value>
</data>
<data name="CopyNotes" xml:space="preserve">
<value>Notiz kopieren</value>
@@ -1769,7 +1768,7 @@ Mode deines Geräts aktiviert ist.</value>
<value>Enterprise Single-Sign-On</value>
</data>
<data name="LogInSsoSummary" xml:space="preserve">
<value>Schnell über den Single Sign-on deiner Organisation anmelden. Bitte gib deine Organisations-ID an, um zu beginnen.</value>
<value>Melde dich schnell über das Single Sign-on-Portal deiner Organisation an. Bitte gib die Organisationskennung ein, um zu beginnen.</value>
</data>
<data name="OrgIdentifier" xml:space="preserve">
<value>Organisationskennung</value>
@@ -2387,7 +2386,7 @@ Mode deines Geräts aktiviert ist.</value>
<value>Benutzernamenstyp</value>
</data>
<data name="PlusAddressedEmail" xml:space="preserve">
<value>Mit Plus adressierte E-Mail-Adresse</value>
<value>Plus-adressierte E-Mail-Adresse</value>
</data>
<data name="CatchAllEmail" xml:space="preserve">
<value>Catch-All E-Mail-Adresse</value>
@@ -2589,10 +2588,10 @@ Möchtest du zu diesem Konto wechseln?</value>
<value>Schwaches Passwort erkannt und in einem Datendiebstahl gefunden. Verwende ein starkes und einzigartiges Passwort, um dein Konto zu schützen. Bist du sicher, dass du dieses Passwort verwenden möchtest?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>SSO-ID der Organisation erforderlich.</value>
<value>SSO-Kennung der Organisation erforderlich.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Schlüssel zu einem bestehenden oder neuen Eintrag hinzufügen</value>
<value>Den Schlüssel zu einem bestehenden oder neuen Eintrag hinzufügen</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>Es gibt keine Einträge in deinem Tresor, die mit "{0}" übereinstimmen</value>

View File

@@ -2541,16 +2541,16 @@
<value>Ενεργοποιήστε την άδεια της κάμερας για χρήση του σαρωτή</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>Γλώσσα</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>Η γλώσσα έχει αλλάξει σε {0}. Παρακαλούμε επανεκκινήστε την εφαρμογή για να δείτε την αλλαγή</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>Η αλλαγή γλώσσας απαιτεί επανεκκίνηση της εφαρμογής</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>Προεπιλογή (σύστημα)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Σημαντικό</value>
@@ -2592,15 +2592,15 @@
<value>Απαιτείται αναγνωριστικό οργανισμού SSO.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Προσθέστε το κλειδί σε ένα υπάρχον ή νέο στοιχείο</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Δεν υπάρχουν αντικείμενα στη κρύπτη σας που ταιριάζουν με "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Αναζητήστε ένα στοιχείο ή προσθέστε ένα νέο</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Δεν υπάρχουν στοιχεία που να ταιριάζουν με την αναζήτηση</value>
</data>
</root>

View File

@@ -2589,7 +2589,7 @@ Do you want to switch to this account?</value>
<value>Weak password identified and found in a data breach. Use a strong and unique password to protect your account. Are you sure you want to use this password?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>Organisation SSO identifier required.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>

View File

@@ -2593,15 +2593,15 @@ seleccione Agregar TOTP para almacenar la clave de forma segura</value>
<value>Se requiere un inicio de sesión único de la organización.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Añadir la clave a un elemento existente o nuevo</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>No hay artículos en su caja fuerte que coincidan con "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Buscar un elemento o añadir uno nuevo</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>No hay elementos que coincidan con la búsqueda</value>
</data>
</root>

View File

@@ -584,7 +584,7 @@
<value>Vihje võib abiks olla olukorras, kui oled ülemparooli unustanud.</value>
</data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value>
<value>Ülemparool peab olema vähemalt {0} tähemärgi pikkune.</value>
</data>
<data name="MinNumbers" xml:space="preserve">
<value>Vähim arv numbreid</value>
@@ -2595,12 +2595,12 @@ Soovid selle konto peale lülituda?</value>
<value>Lisa võti olemasolevale või uuele kirjele</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Hoidlas puuduvad kirjed, mis sobituksid sõnaga "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Otsi kirjet või lisa uus kirje</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Otsingusõnale ei vasta kirjeid</value>
</data>
</root>

View File

@@ -2542,16 +2542,16 @@
<value>اجازه دوربین را برای استفاده از اسکنر فعال کنید</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>زبان</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>زبان به {0} تغییر کرده است. لطفاً برنامه را مجدداً راه اندازی کنید تا تغییرات را مشاهده کنید</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>تغییر زبان نیاز به راه اندازی مجدد برنامه دارد</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>پیش‌فرض (سیستم)</value>
</data>
<data name="Important" xml:space="preserve">
<value>مهم</value>
@@ -2593,15 +2593,15 @@
<value>شناسه سازمان SSO مورد نیاز است.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>کلید را به یک مورد موجود یا جدید اضافه کنید</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>هیچ موردی در گاوصندوق شما وجود ندارد که با "{0}" مطابقت داشته باشد</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>یک مورد را جستجو کنید یا یک مورد جدید اضافه کنید</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>هیچ موردی وجود ندارد که با جستجو مطابقت داشته باشد</value>
</data>
</root>

View File

@@ -2141,7 +2141,7 @@ Koodi luetaan automaattisesti.</value>
<value>Organisaatiolla on käytäntö, joka liittää tilisi automaattisesti salasanan palautusapuun. Liitos sallii organisaation ylläpitäjien vaihtaa pääsalasanasi.</value>
</data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Organisaatiokäytännöt vaikuttavat holvin aikakatkaisuun. Suurin sallittu aika on {0} tunti(a) ja {1} minuutti(a)</value>
<value>Organisaatiokäytännöt vaikuttavat holvisi aikakatkaisuun. Suurin sallittu aika on {0} tunti(a) ja {1} minuutti(a).</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Holvisi aikakatkaisu ylittää organisaatiosi asettamat rajoitukset.</value>

View File

@@ -391,7 +391,7 @@
<value>Bersyon</value>
</data>
<data name="View" xml:space="preserve">
<value>Pagtingin</value>
<value>Tingnan</value>
</data>
<data name="VisitOurWebsite" xml:space="preserve">
<value>Bisitahin ang website namin</value>
@@ -1668,7 +1668,7 @@ Awtomatikong itong magsa-scan.</value>
<value>Kumpirmahin ang pagkakakilanlan mo para tumuloy.</value>
</data>
<data name="ExportVaultWarning" xml:space="preserve">
<value>Naglalaman ng unencrypted vault data mo ang export na ito. Hindi mo dapat ilagay o ipadala ang file gamit ang hindi ligtas na mga paraan (tulad ng email). I-delete ito kaagad pagkagamit.</value>
<value>Naglalaman ng unencrypted vault data mo ang export na ito. Hindi mo dapat ilagay o ipadala ang file gamit ang hindi ligtas na mga paraan (tulad ng email). Burahin ito kaagad pagkagamit.</value>
</data>
<data name="EncExportKeyWarning" xml:space="preserve">
<value>Ine-encrypt ng export na ito ang data mo gamit ang encryption key ng iyong account. Kung iro-rotate mo man ang encryption key ng iyong account, kailangan mong mag-export ulit dahil hindi mo na made-decrypt ang file na ito.</value>
@@ -2593,15 +2593,15 @@ Gusto mo bang pumunta sa account na ito?</value>
<value>Kinakailangan ang Organization SSO identifier.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Idagdag ang key sa kasalukuyan o bagong item</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Walang mga item sa vault mo na tumutugma sa "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Hanapin ang isang item o gumawa ng bagong item</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Walang mga item na tumutugma sa paghahanap</value>
</data>
</root>

View File

@@ -1694,7 +1694,7 @@ La numérisation se fera automatiquement.</value>
<comment>Clone an entity (verb).</comment>
</data>
<data name="PasswordGeneratorPolicyInEffect" xml:space="preserve">
<value>Une ou plusieurs politiques d'organisation affectent les paramètres de votre générateur</value>
<value>Une ou plusieurs politiques de sécurité de l'organisation affectent les paramètres de votre générateur</value>
</data>
<data name="Open" xml:space="preserve">
<value>Ouvrir</value>
@@ -1783,7 +1783,7 @@ La numérisation se fera automatiquement.</value>
<value>Afin de finaliser la connexion avec SSO, veuillez définir un mot de passe principal pour accéder et protéger votre coffre.</value>
</data>
<data name="MasterPasswordPolicyInEffect" xml:space="preserve">
<value>Une ou plusieurs politiques de l'organisation exigent que votre mot de passe principal réponde aux exigences suivantes :</value>
<value>Une ou plusieurs politiques de sécurité de l'organisation exigent que votre mot de passe principal réponde aux exigences suivantes :</value>
</data>
<data name="PolicyInEffectMinComplexity" xml:space="preserve">
<value>Score de complexité minimum de {0}</value>
@@ -1813,7 +1813,8 @@ La numérisation se fera automatiquement.</value>
<value>Chargement</value>
</data>
<data name="AcceptPolicies" xml:space="preserve">
<value>En cochant cette case, vous acceptez les éléments suivants :</value>
<value>En cochant cette case vous acceptez ce qui suit :
</value>
</data>
<data name="AcceptPoliciesError" xml:space="preserve">
<value>Les conditions d'utilisation et la politique de confidentialité n'ont pas été acceptées.</value>
@@ -2062,7 +2063,7 @@ La numérisation se fera automatiquement.</value>
<value>Masquer mon adresse électronique aux destinataires</value>
</data>
<data name="SendOptionsPolicyInEffect" xml:space="preserve">
<value>Une ou plusieurs politiques d'organisation affectent vos options Send.</value>
<value>Une ou plusieurs politiques de sécurité de l'organisation affectent vos options Send.</value>
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data>
<data name="SendFilePremiumRequired" xml:space="preserve">
@@ -2140,13 +2141,13 @@ La numérisation se fera automatiquement.</value>
<value>Cette organisation dispose d'une politique d'entreprise qui vous inscrira automatiquement à la réinitialisation du mot de passe. L'inscription permettra aux administrateurs de l'organisation de changer votre mot de passe principal.</value>
</data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Les politiques de votre organisation affectent le délai d'expiration de votre coffre-fort. Le délai d'expiration maximal autorisé est de {0} heure(s) et {1} minute(s)</value>
<value>Les politiques de sécurité de votre organisation affectent le délai d'expiration de votre coffre. Le délai d'expiration autorisé du coffre est de {0} heure(s) et {1} minute(s) maximum</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Le délai d'expiration de votre coffre dépasse les restrictions définies par votre organisation.</value>
</data>
<data name="DisablePersonalVaultExportPolicyInEffect" xml:space="preserve">
<value>Une ou plusieurs politiques d'organisation vous empêchent d'exporter votre coffre personnel.</value>
<value>Une ou plusieurs politiques de sécurité de l'organisation vous empêchent d'exporter votre coffre individuel.</value>
</data>
<data name="AddAccount" xml:space="preserve">
<value>Ajouter un compte</value>

View File

@@ -118,7 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="About" xml:space="preserve">
<value>हमारे बारे में</value>
<value>बारे में</value>
</data>
<data name="Add" xml:space="preserve">
<value>जोड़ें</value>

View File

@@ -584,7 +584,7 @@
<value>Podsjetnik glavne lozinke ti može pomoći da se prisjetiš svoje lozinke ako ju zaboraviš.</value>
</data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value>
<value>Glavna lozinka mora imati najmanje {0} znakova.</value>
</data>
<data name="MinNumbers" xml:space="preserve">
<value>Najmanje brojeva</value>
@@ -2459,7 +2459,7 @@
<value>Nasumično</value>
</data>
<data name="ConnectToWatch" xml:space="preserve">
<value>Connect to Watch</value>
<value>Spoji se na Watch</value>
</data>
<data name="AccessibilityServiceDisclosure" xml:space="preserve">
<value>Odobrenje servisa pristupačnosti</value>
@@ -2482,7 +2482,7 @@
Želiš li se prebaciti na ovaj račun?</value>
</data>
<data name="NewAroundHere" xml:space="preserve">
<value>New around here?</value>
<value>Novi korisnik?</value>
</data>
<data name="GetMasterPasswordwordHint" xml:space="preserve">
<value>Slanje podsjetnika glavne lozinke</value>
@@ -2521,84 +2521,84 @@
<value>Ovaj zahtjev više nije valjan</value>
</data>
<data name="PendingLogInRequests" xml:space="preserve">
<value>Pending login requests</value>
<value>Zahtjevi za prijavu na čekanju</value>
</data>
<data name="DeclineAllRequests" xml:space="preserve">
<value>Decline all requests</value>
<value>Odbij sve zahtjeve</value>
</data>
<data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve">
<value>Are you sure you want to decline all pending login requests?</value>
<value>Sigurno želiš odbiti sve zahtjeve na čekanju?</value>
</data>
<data name="RequestsDeclined" xml:space="preserve">
<value>Requests declined</value>
<value>Zahtjevi odbijeni</value>
</data>
<data name="NoPendingRequests" xml:space="preserve">
<value>No pending requests</value>
<value>Nema zahtjeva na čekanju</value>
</data>
<data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve">
<value>Enable camera permission to use the scanner</value>
<value>Za skeniranje, odobri korištenje kamere</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>Jezik</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>Jezik je promijenjen u {0}. Ponovno pokreni aplikaciju za primjenu.</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>Promjena jezika zahtijeva ponovno pokretanje aplikacije</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>Zadano (sustav)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Important</value>
<value>Važno</value>
</data>
<data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve">
<value>Your master password cannot be recovered if you forget it! {0} characters minimum.</value>
<value>Glavnu lozinku nije moguće vratiti ako ju zaboraviš! Najmanje {0} znakova.</value>
</data>
<data name="WeakMasterPassword" xml:space="preserve">
<value>Weak Master Password</value>
<value>Slaba glavna lozinka</value>
</data>
<data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve">
<value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value>
<value>Prepoznata je slaba lozinka. Za zaštitu računa, preporučuje se da koristiš jake lozinke. Želiš li svejedno koristiti slabu lozinku?</value>
</data>
<data name="Weak" xml:space="preserve">
<value>Weak</value>
<value>Slaba</value>
</data>
<data name="Good" xml:space="preserve">
<value>Good</value>
<value>Dobra</value>
</data>
<data name="Strong" xml:space="preserve">
<value>Strong</value>
<value>Jaka</value>
</data>
<data name="CheckKnownDataBreachesForThisPassword" xml:space="preserve">
<value>Check known data breaches for this password</value>
<value>Provjeri je li lozinka ukradena prilikom krađe podataka</value>
</data>
<data name="ExposedMasterPassword" xml:space="preserve">
<value>Exposed Master Password</value>
<value>Ugrožena glavna lozinka</value>
</data>
<data name="PasswordFoundInADataBreachAlertDescription" xml:space="preserve">
<value>Password found in a data breach. Use a unique password to protect your account. Are you sure you want to use an exposed password?</value>
<value>Lozinka je nađena među ukradenima tijekom krađa podataka. Za zaštitu svog računa koristi jedinstvenu lozinku. Želiš li svejedno korisiti ukradenu lozinku?</value>
</data>
<data name="WeakAndExposedMasterPassword" xml:space="preserve">
<value>Weak and Exposed Master Password</value>
<value>Slaba i ugrožena glavna lozinka</value>
</data>
<data name="WeakPasswordIdentifiedAndFoundInADataBreachAlertDescription" xml:space="preserve">
<value>Weak password identified and found in a data breach. Use a strong and unique password to protect your account. Are you sure you want to use this password?</value>
<value>Slaba lozinka je nađena među ukradenima tijekom krađa podataka. Za zaštitu svog računa koristi jaku i jedinstvenu lozinku. Želiš li svejedno korisiti slabu, ukradenu lozinku?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>Potreban SSO identifikator organizacije.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Dodaj ključ postojećoj ili novoj stavci</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>U tvom trezoru nema stavki za ”{0}</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Potraži ili dodaj novu stavku</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Nema stavki koje odgovaraju pretrazi</value>
</data>
</root>

View File

@@ -186,7 +186,7 @@
<comment>Short label for an email address.</comment>
</data>
<data name="EmailAddress" xml:space="preserve">
<value>E-mail-cím</value>
<value>Email cím</value>
<comment>Full label for a email address.</comment>
</data>
<data name="EmailUs" xml:space="preserve">
@@ -232,7 +232,7 @@
<value>A mappa mentésre került.</value>
</data>
<data name="GoToWebsite" xml:space="preserve">
<value>Weboldal megnyitása</value>
<value>Ugrás a webhelyre</value>
<comment>The button text that allows user to launch the website to their web browser.</comment>
</data>
<data name="HelpAndFeedback" xml:space="preserve">
@@ -251,7 +251,7 @@
<comment>Title for the alert when internet connection is required to continue.</comment>
</data>
<data name="InvalidMasterPassword" xml:space="preserve">
<value>A mesterjelszó érvénytelen. Próbálkozz újra.</value>
<value>A mesterjelszó érvénytelen. Próbáljuk újra.</value>
</data>
<data name="InvalidPIN" xml:space="preserve">
<value>A pinkód érvénytelen. Próbáljuk újra.</value>
@@ -553,10 +553,10 @@
<value>Azonnal</value>
</data>
<data name="VaultTimeout" xml:space="preserve">
<value>Széf időkorlátja</value>
<value>Széf időkifutás</value>
</data>
<data name="VaultTimeoutAction" xml:space="preserve">
<value>Művelet a széf időkorlátjának túllépésekor</value>
<value>Széf időkifutás művelet</value>
</data>
<data name="VaultTimeoutLogOutConfirmation" xml:space="preserve">
<value>Kijelentkezve az összes széf elérés eltávolításra kerül és webes hitelesítésre van szükség az időkifutás után. Biztosan szeretnénk használni ezt a beállítást?</value>
@@ -578,7 +578,7 @@
<value>A mesterjelszó az a jelszó amit a széfed eléréséhez fogsz használni. Nagyon fontos, hogy ne felejtsd el a mesterjelszavad, mert nincs lehetőséged visszaállítani ha elfelejtetted.</value>
</data>
<data name="MasterPasswordHint" xml:space="preserve">
<value>Mesterjelszó-emlékeztető (nem kötelező)</value>
<value>Mesterjelszó emlékeztető (nem kötelező)</value>
</data>
<data name="MasterPasswordHintDescription" xml:space="preserve">
<value>A mesterjelszó emlékeztető segíthet emlékezni a jelszavadra ha elfejetetted volna.</value>
@@ -632,13 +632,13 @@
<value>Egyéb</value>
</data>
<data name="PasswordGenerated" xml:space="preserve">
<value>Jelszó generálva.</value>
<value>A jelszó generálásra került.</value>
</data>
<data name="PasswordGenerator" xml:space="preserve">
<value>Jelszógenerátor</value>
</data>
<data name="PasswordHint" xml:space="preserve">
<value>Jelszó-emlékeztető</value>
<value>Jelszó emlékeztető</value>
</data>
<data name="PasswordHintAlert" xml:space="preserve">
<value>Elküldtünk neked egy E-mailt mely tartalmazza a mesterjelszó emlékeztetődet.</value>
@@ -647,7 +647,7 @@
<value>Biztosan felül akarod írni a jelenlegi jelszót?</value>
</data>
<data name="PushNotificationAlert" xml:space="preserve">
<value>A Bitwarden push-értesítések használatával gondoskodik a széfed automatikus szinkronizálásáról. A funkció előnyeinek kihasználásához a push-értesítések engedélyezésére vonatkozó kérdés megjelenésekor válaszd az Engedélyezés lehetőséget.</value>
<value>A Bitwarden push-értesítések használatával gondoskodik a széf automatikus szinkronizálásáról. A funkció előnyeinek kihasználásához a push-értesítések engedélyezésére vonatkozó kérdés megjelenésekor válasszuk az "Engedélyezés" lehetőséget.</value>
<comment>Push notifications for apple products</comment>
</data>
<data name="RateTheApp" xml:space="preserve">
@@ -660,7 +660,7 @@
<value>Jelszó újragenerálása</value>
</data>
<data name="RetypeMasterPassword" xml:space="preserve">
<value>Írd be újra a mesterjelszavad</value>
<value>Mesterjelszó ismételt beírása</value>
</data>
<data name="SearchVault" xml:space="preserve">
<value>Keresés a széfben</value>
@@ -678,7 +678,7 @@
<value>Egy 4 számjegyű PIN-kód beállítása az alkalmazás kinyitásához.</value>
</data>
<data name="ItemInformation" xml:space="preserve">
<value>Elem adatai</value>
<value>Elem információ</value>
</data>
<data name="ItemUpdated" xml:space="preserve">
<value>Az elem frissítésre került.</value>
@@ -708,7 +708,7 @@
<value>Kétlépcsős bejelentkezés</value>
</data>
<data name="TwoStepLoginConfirmation" xml:space="preserve">
<value>A kétlépcsős bejelentkezés biztonságosabbá teszi a fiókodat, mert egy másik eszközzel, például biztonsági kulccsal, hitelesítőalkalmazással, sms-sel, telefonhívással vagy e-maillel is jóvá kell hagynod a bejelentkezést. A kétlépcsős bejelentkezést a bitwarden.com webes széfjében kapcsolhatod be. Megnyitod most a weboldalt?</value>
<value>A kétlépcsős bejelentkezés biztonságosabbá teszi a fiókot, mert egy másik eszközzel, például biztonsági kulccsal, hitelesítőalkalmazással, sms- segítségével, telefonhívással vagy emaillel is jóvá kell hagyni a bejelentkezést. A kétlépcsős bejelentkezés a bitwarden.com webes széfjében kapcsolható be. Megnyitásra kerüljön a webhely most?</value>
</data>
<data name="UnlockWith" xml:space="preserve">
<value>Kinyitás ezzel: {0}</value>
@@ -737,7 +737,7 @@
<comment>Screen title</comment>
</data>
<data name="ExtensionActivated" xml:space="preserve">
<value>A kiegészítő aktiválva.</value>
<value>A kiegészítő bekapcsolásra került.</value>
</data>
<data name="Icons" xml:space="preserve">
<value>Ikonok</value>
@@ -796,10 +796,10 @@
<value>Biztos, hogy automatikusan kitöltésre kerüljön ez az elem? Nem teljesen egyezik: {0}.</value>
</data>
<data name="MatchingItems" xml:space="preserve">
<value>Talált elemek</value>
<value>Megegyező elemek</value>
</data>
<data name="PossibleMatchingItems" xml:space="preserve">
<value>Lehetséges találatok</value>
<value>Lehetséges megfelelő elemek</value>
</data>
<data name="Search" xml:space="preserve">
<value>Keresés</value>
@@ -815,7 +815,7 @@
<comment>Message shown when trying to launch an app that does not exist on the user's device.</comment>
</data>
<data name="AuthenticatorAppTitle" xml:space="preserve">
<value>Hitelesítőalkalmazás</value>
<value>Hitelesítő alkalmazás</value>
<comment>For 2FA</comment>
</data>
<data name="EnterVerificationCodeApp" xml:space="preserve">
@@ -827,11 +827,11 @@
<comment>For 2FA</comment>
</data>
<data name="LoginUnavailable" xml:space="preserve">
<value>Nem érhető el bejelentkezés</value>
<value>A bejelentkezés nem érhető el.</value>
<comment>For 2FA whenever there are no available providers on this device.</comment>
</data>
<data name="NoTwoStepAvailable" xml:space="preserve">
<value>Ennél a fióknál engedélyezett a kétlépcsős bejelentkezés, de a beállított kétlépcsős bejelentkezési szolgáltatók egyike sem támogatott ezen az eszközön. Használj támogatott eszközt és/vagy olyan szolgáltatókat, amelyek jobban támogatják a több eszközzel történő használatot (ilyenek például a hitelesítőalkalmazások).</value>
<value>Ennél a fióknál engedélyezett a kétlépcsős bejelentkezés, de a beállított kétlépcsős bejelentkezési szolgáltatók egyike sem támogatott ezen az eszközön. Használjunk támogatott eszközt és/vagy olyan szolgáltatókat, amelyek jobban támogatják a több eszközzel történő használatot (ilyenek például a hitelesítőalkalmazások).</value>
</data>
<data name="RecoveryCodeTitle" xml:space="preserve">
<value>Helyreállító kód</value>
@@ -856,7 +856,7 @@
<comment>For 2FA</comment>
</data>
<data name="VerificationEmailSent" xml:space="preserve">
<value>Az ellenőrzőkódot tartalmazó e-mail elküldve.</value>
<value>Az ellenőrző kódot tartalmazó email elküldésre került.</value>
<comment>For 2FA</comment>
</data>
<data name="YubiKeyInstruction" xml:space="preserve">
@@ -900,7 +900,7 @@
<value>Nem lehet olvasni a hitelesítő kulcsot.</value>
</data>
<data name="PointYourCameraAtTheQRCode" xml:space="preserve">
<value>Irányítsa a kamerát a QR-kódra.</value>
<value>Irányítsuk a kamerát a QR-kódra.</value>
</data>
<data name="ScanQrTitle" xml:space="preserve">
<value>QR kód beolvasása</value>
@@ -945,7 +945,7 @@
<value>Fájl forrás</value>
</data>
<data name="FeatureUnavailable" xml:space="preserve">
<value>Ez a funkció nem érhető el</value>
<value>Ez a funkció nem érhető el.</value>
</data>
<data name="MaxFileSize" xml:space="preserve">
<value>Maximális fájl méret 100 MB.</value>
@@ -957,10 +957,10 @@
<value>További információ</value>
</data>
<data name="ApiUrl" xml:space="preserve">
<value>API-szerver URL-címe</value>
<value>API szerver webcím</value>
</data>
<data name="CustomEnvironment" xml:space="preserve">
<value>Egyéni környezet</value>
<value>Egyedi környezet</value>
</data>
<data name="CustomEnvironmentFooter" xml:space="preserve">
<value>Haladó felhasználóknak. Minden egyes szolgáltatásnak külön megadhatod az alap URL-t.</value>
@@ -973,7 +973,7 @@
<comment>Validation error when something is not formatted correctly, such as a URL or email address.</comment>
</data>
<data name="IdentityUrl" xml:space="preserve">
<value>Identitásszerver URL-címe</value>
<value>Azonosító szerver webcím</value>
<comment>"Identity" refers to an identity server. See more context here https://en.wikipedia.org/wiki/Identity_management</comment>
</data>
<data name="SelfHostedEnvironment" xml:space="preserve">
@@ -986,13 +986,13 @@
<value>Szerver URL</value>
</data>
<data name="WebVaultUrl" xml:space="preserve">
<value>Webes széf szerverének URL-címe</value>
<value>Webes széf szerver webcím</value>
</data>
<data name="BitwardenAutofillServiceNotificationContentOld" xml:space="preserve">
<value>Koppintunk erre az értesítésre a széfben tárolt elemek megtekintéséhez.</value>
</data>
<data name="CustomFields" xml:space="preserve">
<value>Egyéni mezők</value>
<value>Egyedi mezők</value>
</data>
<data name="CopyNumber" xml:space="preserve">
<value>Szám másolása</value>
@@ -1004,7 +1004,7 @@
<value>Szám</value>
</data>
<data name="SecurityCode" xml:space="preserve">
<value>Biztonsági kód</value>
<value>Biztonsági Kód</value>
</data>
<data name="TypeCard" xml:space="preserve">
<value>Kártya</value>
@@ -1064,7 +1064,7 @@
<value>február</value>
</data>
<data name="FirstName" xml:space="preserve">
<value>Utónév</value>
<value>Személynév</value>
</data>
<data name="January" xml:space="preserve">
<value>január</value>
@@ -1200,7 +1200,7 @@
<value>Nem sikerült automatikusan megnyitni az Android automatikus kitöltés beállításai menüt. A beállítás megnyitásához nyitssuk meg a Beállítások &gt; Rendszer &gt; Nyelv és bevitel &gt; Speciális &gt; Automatikus kitöltés menüpontot.</value>
</data>
<data name="CustomFieldName" xml:space="preserve">
<value>Egyéni mezőnév</value>
<value>Egyedi mezőnév</value>
</data>
<data name="FieldTypeBoolean" xml:space="preserve">
<value>Logikai</value>
@@ -1215,7 +1215,7 @@
<value>Szöveg</value>
</data>
<data name="NewCustomField" xml:space="preserve">
<value>Új egyéni mező</value>
<value>Új egyedi mező</value>
</data>
<data name="SelectTypeField" xml:space="preserve">
<value>Milyen típusú egyéni mező legyen hozzáadva?</value>
@@ -1280,7 +1280,7 @@
<value>A kisegítő szolgáltatás használata hasznos lehet, ha az alkalmazások nem támogatják a szabványos automatikus kitöltési szolgáltatást.</value>
</data>
<data name="DatePasswordUpdated" xml:space="preserve">
<value>A jelszó frissítve</value>
<value>A jelszó frissítésre került.</value>
<comment>ex. Date this password was updated</comment>
</data>
<data name="DateUpdated" xml:space="preserve">
@@ -1288,7 +1288,7 @@
<comment>ex. Date this item was updated</comment>
</data>
<data name="AutofillActivated" xml:space="preserve">
<value>Az automatikus kitöltés aktiválva.</value>
<value>Az automatikus kitöltés bekapcsolásra került.</value>
</data>
<data name="MustLogInMainAppAutofill" xml:space="preserve">
<value>Az automatikus kitöltő szolgáltatás használata előtt be kell jelentkezni a fő Bitwarden alkalmazásba.</value>
@@ -1303,13 +1303,13 @@
<value>A széf közvetlenül a billentyűzetről érhető el a jelszavak gyors kitöltéséhez.</value>
</data>
<data name="AutofillTurnOn" xml:space="preserve">
<value>A következő lépésekkel engedélyezheted a jelszó automatikus kitöltését:</value>
<value>A jelszó automatikus kitöltés szolgáltatás engedélyezéséhez kövessük az alábbi utasításokat:</value>
</data>
<data name="AutofillTurnOn1" xml:space="preserve">
<value>1. Lépjünk be az iOS "Beállítások" alkalmazásba</value>
</data>
<data name="AutofillTurnOn2" xml:space="preserve">
<value>2. Válasszuk a "Jelszavak és Fiókok" lehetőséget</value>
<value>2. Válasszuk a "Jelszavak" lehetőséget</value>
</data>
<data name="AutofillTurnOn3" xml:space="preserve">
<value>3. Válasszuk ki az "Jelszavak automatikus kitöltése" lehetőséget</value>
@@ -1342,7 +1342,7 @@
<value>Védett jegyzetek</value>
</data>
<data name="AllItems" xml:space="preserve">
<value>Minden elem</value>
<value>Összes elem</value>
</data>
<data name="URIs" xml:space="preserve">
<value>URI elemek</value>
@@ -1362,13 +1362,13 @@
<value>Ez a jelszó nem érintett egyetlen ismert adatszivárgásban sem. Biztonságos a használata.</value>
</data>
<data name="IdentityName" xml:space="preserve">
<value>Identitásnév</value>
<value>Azonosság név</value>
</data>
<data name="Value" xml:space="preserve">
<value>Érték</value>
</data>
<data name="PasswordHistory" xml:space="preserve">
<value>Korábbi jelszavak</value>
<value>Jelszó előzmények</value>
</data>
<data name="Types" xml:space="preserve">
<value>Típusok</value>
@@ -1383,7 +1383,7 @@
<value>Gyűjtemény keresése</value>
</data>
<data name="SearchFileSends" xml:space="preserve">
<value>Fájl Sends elemek keresése</value>
<value>Sends fájl elemek keresése</value>
</data>
<data name="SearchTextSends" xml:space="preserve">
<value>Szöveges Sends elemek keresése</value>
@@ -1396,7 +1396,7 @@
<value>Típus</value>
</data>
<data name="MoveDown" xml:space="preserve">
<value>Lejjebb</value>
<value>Lefelé mozgatás</value>
</data>
<data name="MoveUp" xml:space="preserve">
<value>Felfelé mozgatás</value>
@@ -1459,7 +1459,7 @@
<value>Nincsenek megjeleníthető mappák.</value>
</data>
<data name="FingerprintPhrase" xml:space="preserve">
<value>Ujjlenyomat-kifejezés</value>
<value>Ujjlenyomat mondat</value>
<comment>A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing.</comment>
</data>
<data name="YourAccountsFingerprint" xml:space="preserve">
@@ -1558,7 +1558,7 @@
<value>A sötét téma választása használatra, ha az Alapértelmezett (Rendszer) témát használjuk az eszköz bekapcsolt sötét módja mellett.</value>
</data>
<data name="CopyNotes" xml:space="preserve">
<value>Jegyzetek másolása</value>
<value>Jegyzet másolása</value>
</data>
<data name="Exit" xml:space="preserve">
<value>Kilépés</value>
@@ -1597,7 +1597,7 @@
<value>Újraindításkor</value>
</data>
<data name="AutofillServiceNotEnabled" xml:space="preserve">
<value>Az automatikus kitöltés megkönnyíti a Bitwarden széf biztonságos elérését más webhelyekről és alkalmazásokból. Úgy tűnik, hogy nem engedélyezett az automatikus kitöltés a Bitwardenl. Az automatikus kitöltést a Beállítások képernyőn engedélyezheted.</value>
<value>Az automatikus kitöltés megkönnyíti a Bitwarden széf biztonságos elérését más webhelyekről és alkalmazásokból. Úgy tűnik, hogy nem engedélyezett az automatikus kitöltés a Bitwardenl. Az automatikus kitöltés a Bitwardennél a "Beállítások" képernyőn engedélyezhető.</value>
</data>
<data name="ThemeAppliedOnRestart" xml:space="preserve">
<value>A témaváltás az alkalmazás újraindítása után lép életbe.</value>
@@ -1616,7 +1616,7 @@
<value>Megosztott</value>
</data>
<data name="ToggleVisibility" xml:space="preserve">
<value>Láthatóság váltása</value>
<value>Láthatóság váltás</value>
</data>
<data name="LoginExpired" xml:space="preserve">
<value>A bejelentkezési munkamenet lejárt.</value>
@@ -1631,10 +1631,10 @@
<value>Biometria használata a feloldáshoz</value>
</data>
<data name="AccessibilityOverlayPermissionAlert" xml:space="preserve">
<value>A Bitwarden figyelmet igényel - nyisd meg az "Automatikus kitöltés akadálymentesítő szolgáltatás" szakaszt a Bitwarden beállításaiban</value>
<value>A Bitwarden figyelmet igényel - Információ az "Automatikus kitöltés elérési szolgáltatás" elemnél a Bitwarden beállításaiban</value>
</data>
<data name="BitwardenAutofillServiceOverlayPermission" xml:space="preserve">
<value>3. Az Android Alkalmazásbeállítások képernyőjén nyisd meg a "Megjelenítés más alkalmazások felett" szakaszt (a Speciális alatt), és a kapcsolóval engedélyezd az átfedéstámogatást.</value>
<value>3. Az Android Alkalmazás beállítások képernyőn a "Megjelenítés más alkalmazások felett" opcióknál (a Bővített alatt) koppintsunk az átfedés támogatást engedélyező váltóra.</value>
</data>
<data name="OverlayPermission" xml:space="preserve">
<value>Jogosultság</value>
@@ -1676,7 +1676,7 @@
<value>A fiók titkosítási kulcsai minden Bitwarden felhasználói fiókhoz egyediek, ezért nem importálhatunk titkosított exportálást egy másik fiókba.</value>
</data>
<data name="ExportVaultConfirmationTitle" xml:space="preserve">
<value>Széfexportálás megerősítése</value>
<value>Széf export megerősítése</value>
<comment>Title for the alert to confirm vault exports.</comment>
</data>
<data name="Warning" xml:space="preserve">
@@ -1706,7 +1706,7 @@
<value>A melléklet sikeresen mentésre került.</value>
</data>
<data name="AutofillTileAccessibilityRequired" xml:space="preserve">
<value>Az Automatikus kitöltés csempe használatához engedélyezd az "Automatikus kitöltés akadálymentesítő szolgáltatás" funkciót a Bitwarden beállításaiban.</value>
<value>Engedélyezzük az "Automatikus kitöltés elérés szolgáltatás" lehetőséget a Bitwarden beállításainál az automatikus kitöltés engedélyezéséhez.</value>
</data>
<data name="AutofillTileUriNotFound" xml:space="preserve">
<value>Nincs érzékelt jelszó mező.</value>
@@ -1728,7 +1728,7 @@
<comment>Message shown when interacting with the server</comment>
</data>
<data name="ItemRestored" xml:space="preserve">
<value>Az elem visszaállítva.</value>
<value>Az elem visszaállításra került.</value>
<comment>Confirmation message after successfully restoring a soft-deleted item</comment>
</data>
<data name="Trash" xml:space="preserve">
@@ -1803,7 +1803,7 @@
<value>{0} speciális karakterekből egyet vagy többet tartalmaz</value>
</data>
<data name="MasterPasswordPolicyValidationTitle" xml:space="preserve">
<value>Érvénytelen jelszó</value>
<value>Érvénytelen jelszó.</value>
</data>
<data name="MasterPasswordPolicyValidationMessage" xml:space="preserve">
<value>A jelszó nem egyezik a szervezeti követelményekhez. Ellenőrizzük a szabály információt és próbáljuk újra.</value>
@@ -1824,46 +1824,46 @@
<value>Adatvédelmi Irányelvek</value>
</data>
<data name="AccessibilityDrawOverPermissionAlert" xml:space="preserve">
<value>A Bitwarden figyelmet igényel - engedélyezd az Átfedő megjelenítés beállítást a Bitwarden beállításainak "Automatikus kitöltési szolgáltatások" szakaszában.</value>
<value>A Bitwarden figyelmet igényel - Engedélyezzük Bitwarden beállításokban a "Felülrajzolás" opciót az "Automatikus kitöltési szolgáltatások" résznél.</value>
</data>
<data name="AutofillServices" xml:space="preserve">
<value>Automatikus kitöltési szolgáltatások</value>
<value>Automatikus kitöltés</value>
</data>
<data name="InlineAutofill" xml:space="preserve">
<value>Szövegközi automatikus kitöltés használata</value>
</data>
<data name="InlineAutofillDescription" xml:space="preserve">
<value>Akkor használhatod a szövegközi automatikus kitöltést, ha a kiválasztott IME (billentyűzet) támogatja. Ha a konfiguráció nem támogatott (vagy ez a beállítás nincs engedélyezve), akkor az alapértelmezett automatikus kitöltési átfedőréteg lesz alkalmazva.</value>
<value>Használjuk a szövegközi automatikus kitöltést, ha azt a kiválasztott IME (billentyűzet) támogatja. Ha a konfiguráció nem támogatott (vagy ez az opció le van tiltva), akkor az alapértelmezett automatikus kitöltési átfedőréteg kerül használatba.</value>
</data>
<data name="Accessibility" xml:space="preserve">
<value>Akadálymentes használat</value>
</data>
<data name="AccessibilityDescription" xml:space="preserve">
<value>A Bitwarden akadálymentesítő szolgáltatásával automatikus kitöltheted a bejelentkezési adataidat az alkalmazásokban és a weben. Ha engedélyezett, akkor előugró ablak fog megjelenni, amikor egy bejelentkezési mezőre lépsz.</value>
<value>Használjuk a Bitwarden Kisegítő Szolgáltatást a bejelentkezések automatikus kitöltéséhez az alkalmazásokban és az interneten. Ha engedélyezve van, akkor a bejelentkezési mezők kiválasztásakor megjelenik egy felbukkanó ablak.</value>
</data>
<data name="AccessibilityDescription2" xml:space="preserve">
<value>A Bitwarden akadálymentesítő szolgáltatásával automatikus kitöltheted a bejelentkezési adataidat az alkalmazásokban és a weben. (Ehhez engedélyezni kell az Átfedő megjelenítés beállítást is.)</value>
<value>Használjuk a Bitwarden Kisegítő Szolgáltatást a bejelentkezések automatikus kitöltéséhez az alkalmazásokban és az interneten. (Megköveteli a Felülrajzolás engedélyezését is)</value>
</data>
<data name="AccessibilityDescription3" xml:space="preserve">
<value>A Bitwarden akadálymentesítő szolgáltatásával használhatod az Automatikus kitöltés gyorsműveleti csempt, és/vagy egy előugró ablakot jeleníthetsz meg az Átfedő megjelenítés használatával (ha engedélyezve van).</value>
<value>Használjuk a Bitwarden Kisegítő Szolgáltatást az Automatikus kitöltés gyorsműveleti csempe használatához és/vagy egy felugró ablak megjelenítéséhez a Felülrajzolás használatával (ha engedélyezve van).</value>
</data>
<data name="AccessibilityDescription4" xml:space="preserve">
<value>Szükséges az Automatikus kitöltés gyorsműveleti csempe használatához, vagy az automatikus kitöltési szolgáltatás kiterjesztéséhez az Átfedő megjelenítés használatával (ha engedélyezve van).</value>
<value>Szükséges az Automatikus kitöltés gyorsműveleti csempe használatához, vagy az automatikus kitöltési szolgáltatás bővítéséhez a Felülrajzolás használatával (ha engedélyezve van).</value>
</data>
<data name="DrawOver" xml:space="preserve">
<value>Átfedő megjelenítés használata</value>
<value>Felülrajzolás használata</value>
</data>
<data name="DrawOverDescription" xml:space="preserve">
<value>Ha engedélyezett, akkor a Bitwarden akadálymentesítő szolgáltatása előugró ablakot jelenít meg, amikor bejelentkezési mezőre lépsz.</value>
<value>Engedélyezve a Bitwarden Akadálymentes Szolgáltatás egy felbukkanó ablakot jelenít meg, amikor a bejelentkezési mezők kiválasztottak.</value>
</data>
<data name="DrawOverDescription2" xml:space="preserve">
<value>Ha engedélyezett, akkor a Bitwarden akadálymentesítő szolgáltatása előugró ablakot jelenít meg, amikor bejelentkezési mezőre lépsz, hogy segítsen az adatok automatikus kitöltésében.</value>
<value>Engedélyezve a Bitwarden Kisegítő Szolgáltatás egy felbukkanó ablakot jelenít meg a bejelentkezések automatikus kitöltéséhez, amikor a bejelentkezési mezők kiválasztottak.</value>
</data>
<data name="DrawOverDescription3" xml:space="preserve">
<value>Ha engedélyezett, akkor az akadálymentesítő szolgáltatás előugró ablakot jelenít meg, hogy olyan régebbi alkalmazásokban is használhasd az automatikus kiegészítési szolgáltatást, ami nem támogatja az Android automatikus kitöltési keretrendszerét.</value>
<value>Engedélyezve a a Kisegítő felbukkanó ablakot jelenít meg az Automatikus Kitöltési Szolgáltatás kibővítéséhez olyan régebbi alkalmazások számára, amelyek nem támogatják az Android automatikus kitöltés keretrendszerét.</value>
</data>
<data name="PersonalOwnershipSubmitError" xml:space="preserve">
<value>A vállalat szabályai korlátozzák a személyes széfbe menthető elemeket. Adj meg egy szervezetet a Tulajdonjog beállításban, és válassz az elérhető gyűjtemények közül.</value>
<value>Egy vállalati házirend miatt korlátozható az elemek személyes tárolóba történő mentése. Módosítsuk a Tulajdon opciót egy szervezetre és válasszunk az elérhető gyűjtemények közül.</value>
</data>
<data name="PersonalOwnershipPolicyInEffect" xml:space="preserve">
<value>Egy szervezeti házirend befolyásolja a tulajdonjog beállításait.</value>
@@ -1919,7 +1919,7 @@
<value>Törlési dátum</value>
</data>
<data name="DeletionTime" xml:space="preserve">
<value>Törlési dátum</value>
<value>Törlési időpont</value>
</data>
<data name="DeletionDateInfo" xml:space="preserve">
<value>A Send véglegesen törlésre kerül a meghatározott időpontban.</value>
@@ -1932,7 +1932,7 @@
<value>Lejárati dátum</value>
</data>
<data name="ExpirationTime" xml:space="preserve">
<value>Lejárati idő</value>
<value>Lejárati időpont</value>
</data>
<data name="ExpirationDateInfo" xml:space="preserve">
<value>Beállítva a hozzáférés ehhez a Send elemhez lejár a meghatározott időpontban.</value>
@@ -2106,10 +2106,10 @@
<value>Mesterjelszó eltávolítása</value>
</data>
<data name="RemoveMasterPasswordWarning" xml:space="preserve">
<value>A(z) {0} SSO-t használ ügyfél által kezelt titkosítással. Ha folytatod, akkor eltávolítod a mesterjelszót a fiókodból, és SSO-ra lesz szükség a bejelentkezéshez.</value>
<value>{0} SSO szolgáltatást használ ügyfél által kezelt titkosítással. A folytatással eltávolító a mesterjelszó a fiókból és egyszeri bejelentkezés szükséges a bejelentkezéshez.</value>
</data>
<data name="RemoveMasterPasswordWarning2" xml:space="preserve">
<value>Ha nem szeretnéd eltávolítani a mesterjelszót, kiléphetsz ebből a szervezetből.</value>
<value>Ha nem szeretnénk eltávolítani a mesterjelszót, kiléphetünk ebből a szervezetből.</value>
</data>
<data name="LeaveOrganization" xml:space="preserve">
<value>Kilépés a szervezetből</value>
@@ -2187,7 +2187,7 @@
<value>A fiók véglegesen törlésre került.</value>
</data>
<data name="InvalidVerificationCode" xml:space="preserve">
<value>Az ellenőrzőkód érvénytelen.</value>
<value>A hitelesítő kód érvénytelen.</value>
</data>
<data name="RequestOTP" xml:space="preserve">
<value>Egyszeri jelszó kérése</value>
@@ -2268,7 +2268,7 @@
<value>Összes</value>
</data>
<data name="Totp" xml:space="preserve">
<value>Idő alapú egyszer használatos jelszó (TOTP)</value>
<value>TOTP</value>
</data>
<data name="VerificationCodes" xml:space="preserve">
<value>Hitelesítő kód</value>

File diff suppressed because it is too large Load Diff

View File

@@ -584,7 +584,7 @@
<value>마스터 비밀번호 힌트는 마스터 비밀번호를 잊었을 때 도움이 될 수 있습니다.</value>
</data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value>
<value>마스터 비밀번호는 최소 {0}자 이상이어야 합니다.</value>
</data>
<data name="MinNumbers" xml:space="preserve">
<value>숫자 최소 개수</value>
@@ -1143,7 +1143,7 @@
<value>웹사이트 아이콘 표시하기</value>
</data>
<data name="ShowWebsiteIconsDescription" xml:space="preserve">
<value>로그인 후 식별 가능한 이미지 표시</value>
<value>로그인 정보 옆에 식별용 이미지 표시합니다.</value>
</data>
<data name="IconsUrl" xml:space="preserve">
<value>아이콘 서버 URL</value>
@@ -2357,34 +2357,34 @@
<value>로그인 거부됨</value>
</data>
<data name="ApproveLoginRequests" xml:space="preserve">
<value>Approve login requests</value>
<value>로그인 요청 승인</value>
</data>
<data name="UseThisDeviceToApproveLoginRequestsMadeFromOtherDevices" xml:space="preserve">
<value>Use this device to approve login requests made from other devices.</value>
<value>다른 기기에서 발생하는 로그인 요청을 이 기기에서 승인할 수 있습니다.</value>
</data>
<data name="AllowNotifications" xml:space="preserve">
<value>Allow notifications</value>
<value>알림 허용</value>
</data>
<data name="ReceivePushNotificationsForNewLoginRequests" xml:space="preserve">
<value>Receive push notifications for new login requests</value>
<value>새 로그인 요청 푸시 알림 받기</value>
</data>
<data name="NoThanks" xml:space="preserve">
<value>No thanks</value>
<value>아니요, 괜찮습니다</value>
</data>
<data name="ConfimLogInAttempForX" xml:space="preserve">
<value>Confirm login attempt for {0}</value>
<value>{0}(으)로의 로그인 시도 확인</value>
</data>
<data name="AllNotifications" xml:space="preserve">
<value>All notifications</value>
</data>
<data name="PasswordType" xml:space="preserve">
<value>Password type</value>
<value>비밀번호 유형</value>
</data>
<data name="WhatWouldYouLikeToGenerate" xml:space="preserve">
<value>What would you like to generate?</value>
<value>무엇을 생성하실 건가요?</value>
</data>
<data name="UsernameType" xml:space="preserve">
<value>Username type</value>
<value>사용자 이름 유형</value>
</data>
<data name="PlusAddressedEmail" xml:space="preserve">
<value>Plus addressed email</value>
@@ -2396,19 +2396,19 @@
<value>Forwarded email alias</value>
</data>
<data name="RandomWord" xml:space="preserve">
<value>Random word</value>
<value>무작위 단어</value>
</data>
<data name="EmailRequiredParenthesis" xml:space="preserve">
<value>Email (required)</value>
<value>이메일 (필수)</value>
</data>
<data name="DomainNameRequiredParenthesis" xml:space="preserve">
<value>Domain name (required)</value>
<value>도메인 이름 (필수)</value>
</data>
<data name="APIKeyRequiredParenthesis" xml:space="preserve">
<value>API key (required)</value>
<value>API 키 (필수)</value>
</data>
<data name="Service" xml:space="preserve">
<value>Service</value>
<value>서비스</value>
</data>
<data name="AnonAddy" xml:space="preserve">
<value>AnonAddy</value>
@@ -2431,22 +2431,22 @@
<comment>"Fastmail" is the product name and should not be translated.</comment>
</data>
<data name="APIAccessToken" xml:space="preserve">
<value>API access token</value>
<value>API 액세스 토큰</value>
</data>
<data name="AreYouSureYouWantToOverwriteTheCurrentUsername" xml:space="preserve">
<value>Are you sure you want to overwrite the current username?</value>
<value>정말 현재 사용자 이름을 덮어쓰시겠습니까?</value>
</data>
<data name="GenerateUsername" xml:space="preserve">
<value>Generate username</value>
<value>사용자 이름 생성</value>
</data>
<data name="EmailType" xml:space="preserve">
<value>Email Type</value>
<value>이메일 유형</value>
</data>
<data name="WebsiteRequired" xml:space="preserve">
<value>Website (required)</value>
</data>
<data name="UnknownXErrorMessage" xml:space="preserve">
<value>Unknown {0} error occurred.</value>
<value>알 수 없는 {0} 오류가 발생했습니다.</value>
</data>
<data name="PlusAddressedEmailDescription" xml:space="preserve">
<value>Use your email provider's subaddress capabilities</value>
@@ -2458,16 +2458,16 @@
<value>Generate an email alias with an external forwarding service.</value>
</data>
<data name="Random" xml:space="preserve">
<value>Random</value>
<value>무작위</value>
</data>
<data name="ConnectToWatch" xml:space="preserve">
<value>Connect to Watch</value>
<value>Watch에 연결</value>
</data>
<data name="AccessibilityServiceDisclosure" xml:space="preserve">
<value>Accessibility Service Disclosure</value>
</data>
<data name="AccessibilityDisclosureText" xml:space="preserve">
<value>Bitwarden uses the Accessibility Service to search for login fields in apps and websites, then establish the appropriate field IDs for entering a username &amp; password when a match for the app or site is found. We do not store any of the information presented to us by the service, nor do we make any attempt to control any on-screen elements beyond text entry of credentials.</value>
<value>Bitwarden은 접근성 서비스를 사용하여 앱 및 웹사이트에서 로그인 필드를 찾아내고 일치하는 항목이 발견되면 사용자 이름과 비밀번호를 입력합니다. Bitwarden은 서비스에서 제공하는 어떠한 정보도 저장하지 않으며, 자격 증명 이외의 화면 요소를 제어하려고 시도하지 않습니다.</value>
</data>
<data name="Accept" xml:space="preserve">
<value>Accept</value>
@@ -2476,7 +2476,7 @@
<value>Decline</value>
</data>
<data name="LoginRequestHasAlreadyExpired" xml:space="preserve">
<value>Login request has already expired.</value>
<value>이미 만료된 로그인 요청입니다.</value>
</data>
<data name="LoginAttemptFromXDoYouWantToSwitchToThisAccount" xml:space="preserve">
<value>Login attempt from:
@@ -2484,94 +2484,94 @@
Do you want to switch to this account?</value>
</data>
<data name="NewAroundHere" xml:space="preserve">
<value>New around here?</value>
<value>새로 찾아오셨나요?</value>
</data>
<data name="GetMasterPasswordwordHint" xml:space="preserve">
<value>Get master password hint</value>
<value>마스터 비밀번호 힌트 얻기</value>
</data>
<data name="LoggingInAsX" xml:space="preserve">
<value>Logging in as {0}</value>
<value>{0}(으)로 로그인 중</value>
</data>
<data name="NotYou" xml:space="preserve">
<value>Not you?</value>
<value>본인이 아닌가요?</value>
</data>
<data name="LogInWithMasterPassword" xml:space="preserve">
<value>Log in with master password</value>
<value>마스터 비밀번호로 로그인</value>
</data>
<data name="LogInWithAnotherDevice" xml:space="preserve">
<value>Log in with device</value>
<value>기기로 로그인</value>
</data>
<data name="LogInInitiated" xml:space="preserve">
<value>Log in initiated</value>
</data>
<data name="ANotificationHasBeenSentToYourDevice" xml:space="preserve">
<value>A notification has been sent to your device.</value>
<value>기기에 알림이 전송되었습니다.</value>
</data>
<data name="PleaseMakeSureYourVaultIsUnlockedAndTheFingerprintPhraseMatchesOnTheOtherDevice" xml:space="preserve">
<value>Please make sure your vault is unlocked and the Fingerprint phrase matches on the other device.</value>
<value>보관함이 잠금 해제되어있고 지문 구절이 다른 기기와 일치하는지 확인하세요.</value>
</data>
<data name="ResendNotification" xml:space="preserve">
<value>Resend notification</value>
<value>알림 재전송</value>
</data>
<data name="NeedAnotherOption" xml:space="preserve">
<value>Need another option?</value>
<value>다른 방식이 필요하신가요?</value>
</data>
<data name="ViewAllLoginOptions" xml:space="preserve">
<value>View all log in options</value>
<value>모든 로그인 방식 보기</value>
</data>
<data name="ThisRequestIsNoLongerValid" xml:space="preserve">
<value>더 이상 유효하지 않은 요청입니다</value>
</data>
<data name="PendingLogInRequests" xml:space="preserve">
<value>Pending login requests</value>
<value>대기 중인 로그인 요청</value>
</data>
<data name="DeclineAllRequests" xml:space="preserve">
<value>Decline all requests</value>
<value>모든 요청 거부</value>
</data>
<data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve">
<value>Are you sure you want to decline all pending login requests?</value>
<value>대기 중인 모든 요청을 거부하시겠습니까?</value>
</data>
<data name="RequestsDeclined" xml:space="preserve">
<value>Requests declined</value>
<value>요청 거절됨</value>
</data>
<data name="NoPendingRequests" xml:space="preserve">
<value>No pending requests</value>
<value>대기 중인 요청이 없습니다</value>
</data>
<data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve">
<value>스캐너 기능을 위해 권한을 허용해 주십시오</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>언어</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>언어가 {0}로 변경되었습니다. 적용된 모습을 보려면 앱을 다시 시작하세요.</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>언어 변경은 앱을 다시 시작해야 적용됩니다.</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>기본 (시스템)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Important</value>
<value>중요</value>
</data>
<data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve">
<value>Your master password cannot be recovered if you forget it! {0} characters minimum.</value>
<value>마스터 비밀번호를 잊어버리면 복구할 수 없습니다! 최소 길이는 {0}자입니다.</value>
</data>
<data name="WeakMasterPassword" xml:space="preserve">
<value>Weak Master Password</value>
<value>취약한 마스터 비밀번호</value>
</data>
<data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve">
<value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value>
<value>취약한 비밀번호가 감지되었습니다. 계정을 보호하려면 강력한 비밀번호를 사용하세요. 취약한 비밀번호를 정말로 사용하시겠습니까?</value>
</data>
<data name="Weak" xml:space="preserve">
<value>Weak</value>
<value>약함</value>
</data>
<data name="Good" xml:space="preserve">
<value>Good</value>
<value>좋음</value>
</data>
<data name="Strong" xml:space="preserve">
<value>Strong</value>
<value>강함</value>
</data>
<data name="CheckKnownDataBreachesForThisPassword" xml:space="preserve">
<value>Check known data breaches for this password</value>
@@ -2589,18 +2589,18 @@ Do you want to switch to this account?</value>
<value>Weak password identified and found in a data breach. Use a strong and unique password to protect your account. Are you sure you want to use this password?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>조직 통합 인증(SSO) 식별자가 필요합니다.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>보관함에 '{0}'와(과) 일치하는 항목이 없습니다.</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>항목 검색 혹은 새 항목 추가</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>검색어와 일치하는 항목이 없습니다</value>
</data>
</root>

View File

@@ -2545,13 +2545,13 @@ Ar norite pereiti prie šios paskyros?</value>
<value>Kalba</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>Kalba pakeista į {0}. Iš naujo paleiskite programą, kad pamatytumėte pakeitimą</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>Keičiant kalbą reikia iš naujo paleisti programą</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>Numatyta (System)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Svarbu</value>
@@ -2593,15 +2593,15 @@ Ar norite pereiti prie šios paskyros?</value>
<value>Būtinas organizacijos SSO identifikatorius.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Pridėkite raktą prie esamo ar naujo elemento</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Ieškokite elemento arba pridėkite naują elementą</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Elementų, atitinkančių paiešką, nėra</value>
</data>
</root>

View File

@@ -2592,15 +2592,15 @@ Vai pārslēgties uz šo kontu?</value>
<value>Ir nepieciešams apvienības SSO identifikators.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Pievienot atslēgu esošam vai jaunam vienumam</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Glabātavā nav vienumu, kas atbilstu "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Meklēt vienumu vai pievienot jaunu</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Nav vienumu, kas atbilstu meklējumam</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -2593,15 +2593,15 @@ Você deseja mudar para esta conta?</value>
<value>Identificador SSO da organização necessário.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Adicionar a chave a um item existente ou novo</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Não existem itens no seu cofre que correspondam a "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Procure por um item ou adicione um novo item</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Não há itens que correspondam à pesquisa</value>
</data>
</root>

View File

@@ -584,7 +584,7 @@
<value>Un indiciu pentru parola principală vă poate ajuta să v-o reamintiți dacă o uitați.</value>
</data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value>
<value>Parola principală trebuie să aibă cel puțin {0} caractere.</value>
</data>
<data name="MinNumbers" xml:space="preserve">
<value>Minimum de cifre</value>
@@ -2523,34 +2523,34 @@ Doriți să comutați la acest cont?</value>
<value>Această cerere nu mai este valabilă</value>
</data>
<data name="PendingLogInRequests" xml:space="preserve">
<value>Pending login requests</value>
<value>Cereri de conectare în așteptare</value>
</data>
<data name="DeclineAllRequests" xml:space="preserve">
<value>Decline all requests</value>
<value>Refuză toate cererile</value>
</data>
<data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve">
<value>Are you sure you want to decline all pending login requests?</value>
<value>Sunteţi sigur că doriţi să refuzaţi toate solicitările de conectare în aşteptare?</value>
</data>
<data name="RequestsDeclined" xml:space="preserve">
<value>Requests declined</value>
<value>Cereri respinse</value>
</data>
<data name="NoPendingRequests" xml:space="preserve">
<value>No pending requests</value>
<value>Nicio cerere în așteptare</value>
</data>
<data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve">
<value>Permite accesul camerei foto pentru a utiliza scanerul</value>
</data>
<data name="Language" xml:space="preserve">
<value>Language</value>
<value>Limbă</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>Limba a fost schimbată în {0}. Vă rugăm să reporniți aplicația pentru a vedea schimbarea</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>Schimbarea limbii necesită repornirea aplicației</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value>
<value>Implicit (sistem)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Important</value>
@@ -2589,18 +2589,18 @@ Doriți să comutați la acest cont?</value>
<value>Parolă slabă identificată și găsită într-o baza de date expusa. Folosiți o parolă puternică și unică pentru a vă proteja contul. Sigur doriți să utilizați această parolă?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>Necesită identificator Organizație SSO.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Adăugați cheia la un articol existent sau nou</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Nu există elemente în seiful dvs. care se potrivesc "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Căutați un articol sau adăugați un articol nou</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Nu există lucruri care să corespundă căutării</value>
</data>
</root>

View File

@@ -1443,7 +1443,7 @@ Scanning will happen automatically.</value>
<value>Število besed</value>
</data>
<data name="Passphrase" xml:space="preserve">
<value>Šifrirna fraza</value>
<value>Večbesedno geslo</value>
</data>
<data name="WordSeparator" xml:space="preserve">
<value>Ločilo besed</value>
@@ -1460,11 +1460,11 @@ Scanning will happen automatically.</value>
<value>Ni map za prikazat.</value>
</data>
<data name="FingerprintPhrase" xml:space="preserve">
<value>Fraza prstnega odtisa</value>
<value>Identifikacijsko geslo</value>
<comment>A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing.</comment>
</data>
<data name="YourAccountsFingerprint" xml:space="preserve">
<value>Fraza prstnega odtisa vašega računa</value>
<value>Identifikacijsko geslo vašega računa</value>
<comment>A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing.</comment>
</data>
<data name="LearnOrgConfirmation" xml:space="preserve">

View File

@@ -2555,40 +2555,40 @@
<value>Подразумевано (системско)</value>
</data>
<data name="Important" xml:space="preserve">
<value>Important</value>
<value>Важно</value>
</data>
<data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve">
<value>Your master password cannot be recovered if you forget it! {0} characters minimum.</value>
<value>Ваша главна лозинка се не може повратити ако је заборавите! Минимално {0} слова.</value>
</data>
<data name="WeakMasterPassword" xml:space="preserve">
<value>Weak Master Password</value>
<value>Слаба главна лозинка</value>
</data>
<data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve">
<value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value>
<value>Идентификована је слаба лозинка. Користите јаку лозинку да бисте заштитили свој налог. Да ли сте сигурни да желите да користите слабу лозинку?</value>
</data>
<data name="Weak" xml:space="preserve">
<value>Weak</value>
<value>Слабо</value>
</data>
<data name="Good" xml:space="preserve">
<value>Good</value>
<value>Добро</value>
</data>
<data name="Strong" xml:space="preserve">
<value>Strong</value>
<value>Јако</value>
</data>
<data name="CheckKnownDataBreachesForThisPassword" xml:space="preserve">
<value>Check known data breaches for this password</value>
<value>Проверите познате упада података за ову лозинку</value>
</data>
<data name="ExposedMasterPassword" xml:space="preserve">
<value>Exposed Master Password</value>
<value>Изложена главна лозинка</value>
</data>
<data name="PasswordFoundInADataBreachAlertDescription" xml:space="preserve">
<value>Password found in a data breach. Use a unique password to protect your account. Are you sure you want to use an exposed password?</value>
<value>Лозинка је пронађена у случају повреде података. Користите јединствену лозинку да бисте заштитили свој налог. Да ли сте сигурни да желите да користите откривену лозинку?</value>
</data>
<data name="WeakAndExposedMasterPassword" xml:space="preserve">
<value>Weak and Exposed Master Password</value>
<value>Слаба и изложена главна лозинка</value>
</data>
<data name="WeakPasswordIdentifiedAndFoundInADataBreachAlertDescription" xml:space="preserve">
<value>Weak password identified and found in a data breach. Use a strong and unique password to protect your account. Are you sure you want to use this password?</value>
<value>Идентификована је слаба лозинка и пронађена у упаду података. Користите јаку и јединствену лозинку да заштитите свој налог. Да ли сте сигурни да желите да користите ову лозинку?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Потребан је SSO идентификатор организације.</value>

View File

@@ -1105,7 +1105,7 @@ Skanningen sker automatiskt.</value>
<value>Fröken</value>
</data>
<data name="Mx" xml:space="preserve">
<value>Mx</value>
<value>Vederbörande</value>
</data>
<data name="November" xml:space="preserve">
<value>November</value>
@@ -2534,7 +2534,7 @@ Vill du byta till detta konto?</value>
<value>Är du säker på att du vill avvisa alla väntande inloggningsförfrågningar?</value>
</data>
<data name="RequestsDeclined" xml:space="preserve">
<value>Förfågningar avböjdes</value>
<value>Förfrågningar avvisades</value>
</data>
<data name="NoPendingRequests" xml:space="preserve">
<value>Inga väntande förfrågningar</value>
@@ -2546,10 +2546,10 @@ Vill du byta till detta konto?</value>
<value>Språk</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value>
<value>Språket har ändrats till {0}. Starta om appen för att se ändringen</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value>
<value>Ändring av språk kräver att appen startas om</value>
</data>
<data name="DefaultSystem" xml:space="preserve">
<value>Standard (System)</value>
@@ -2591,18 +2591,18 @@ Vill du byta till detta konto?</value>
<value>Lösenordet är svagt och avslöjades vid ett dataintrång. Använd ett starkt och unikt lösenord för att skydda ditt konto. Är det säkert att du vill använda detta lösenord?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>Organization SSO identifier required.</value>
<value>Organisationens SSO-identifierare krävs.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Lägg till nyckeln till ett befintligt eller nytt objekt</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Det finns inga objekt i ditt valv som matchar "{0}"</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Sök efter ett objekt eller lägg till ett nytt objekt</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Det finns inga objekt som matchar sökningen</value>
</data>
</root>

View File

@@ -2591,15 +2591,15 @@ Bu hesaba geçmek ister misiniz?</value>
<value>Kuruluş SSO tanımlayıcısı gereklidir.</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>Anahtarı mevcut veya yeni bir kayda ekle</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>Kasanızda "{0}" ile eşleşen kayıt yok</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>Kayıtlarda ara veya yeni kayıt ekle</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>Aramayla eşleşen kayıt yok</value>
</data>
</root>

View File

@@ -1065,7 +1065,7 @@
<value>Лютий</value>
</data>
<data name="FirstName" xml:space="preserve">
<value>Імя</value>
<value>Ім'я</value>
</data>
<data name="January" xml:space="preserve">
<value>Січень</value>
@@ -1917,7 +1917,7 @@
<value>Тип тексту не вибрано. Торкніться, щоб вибрати.</value>
</data>
<data name="DeletionDate" xml:space="preserve">
<value>Дата видалення</value>
<value>Термін дії</value>
</data>
<data name="DeletionTime" xml:space="preserve">
<value>Час видалення</value>
@@ -1950,7 +1950,7 @@
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data>
<data name="MaximumAccessCountReached" xml:space="preserve">
<value>Досягнуто максимальну кількість доступів</value>
<value>Досягнуто максимальної кількості доступів</value>
</data>
<data name="CurrentAccessCount" xml:space="preserve">
<value>Поточна кількість доступів</value>
@@ -2044,7 +2044,7 @@
<value>30 днів</value>
</data>
<data name="Custom" xml:space="preserve">
<value>Спеціальний</value>
<value>Власний</value>
</data>
<data name="ShareOnSave" xml:space="preserve">
<value>Поділитися цим відправленням після збереження</value>

View File

@@ -199,7 +199,7 @@
<value>请输入您的 PIN 码。</value>
</data>
<data name="Favorites" xml:space="preserve">
<value>收藏</value>
<value>收藏</value>
<comment>Title for your favorite items in the vault.</comment>
</data>
<data name="FileBugReport" xml:space="preserve">
@@ -584,7 +584,7 @@
<value>主密码提示可以在你忘记密码时帮你回忆起来。</value>
</data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>主密码至少需要 {0} 个字符。</value>
<value>主密码必须至少 $VALUE$ 个字符长度。</value>
</data>
<data name="MinNumbers" xml:space="preserve">
<value>数字最少个数</value>
@@ -708,7 +708,7 @@
<value>两步登录</value>
</data>
<data name="TwoStepLoginConfirmation" xml:space="preserve">
<value>两步登录要求您从其他设备(例如安全钥匙、验证器应用、短信、电话或者电子邮件)来验证您的登录,这能使您的账户更加安全。两步登录需要在 bitwarden.com 网页版密码中设置。现在访问这个网站吗?</value>
<value>两步登录要求您从其他设备(例如安全钥匙、验证器应用、短信、电话或者电子邮件)来验证您的登录,这能使您的账户更加安全。两步登录需要在 bitwarden.com 网页版密码中设置。现在访问网站吗?</value>
</data>
<data name="UnlockWith" xml:space="preserve">
<value>使用 {0} 解锁</value>
@@ -1056,10 +1056,10 @@
<value>博士</value>
</data>
<data name="ExpirationMonth" xml:space="preserve">
<value>期月份</value>
<value>期月份</value>
</data>
<data name="ExpirationYear" xml:space="preserve">
<value>期年份</value>
<value>期年份</value>
</data>
<data name="February" xml:space="preserve">
<value>二月</value>
@@ -1137,7 +1137,7 @@
<value>地址</value>
</data>
<data name="Expiration" xml:space="preserve">
<value>到期</value>
<value>过期日</value>
</data>
<data name="ShowWebsiteIcons" xml:space="preserve">
<value>显示网站图标</value>
@@ -1457,7 +1457,7 @@
<comment>Short for "Password Generator"</comment>
</data>
<data name="NoFoldersToList" xml:space="preserve">
<value>没有可显示的文件夹。</value>
<value>没有可列出的文件夹。</value>
</data>
<data name="FingerprintPhrase" xml:space="preserve">
<value>指纹短语</value>
@@ -1674,7 +1674,7 @@
<value>此导出将使用您账户的加密密钥来加密您的数据。如果您曾经轮换过账户的加密密钥,您应将其重新导出,否则您将无法解密导出的文件。</value>
</data>
<data name="EncExportAccountWarning" xml:space="preserve">
<value>账户加密密钥对每个 Bitwarden 用户账户都是唯一的,所以您不能将加密的导出导入到另一个账户。</value>
<value>每个 Bitwarden 用户账户的账户加密密钥都是唯一的,因此您无法将加密的导出导入到另一个账户。</value>
</data>
<data name="ExportVaultConfirmationTitle" xml:space="preserve">
<value>确认密码库导出</value>
@@ -1774,13 +1774,13 @@
<value>组织标识符</value>
</data>
<data name="LoginSsoError" xml:space="preserve">
<value>当前无法使用 SSO 登</value>
<value>当前无法使用 SSO 登</value>
</data>
<data name="SetMasterPassword" xml:space="preserve">
<value>设置主密码</value>
</data>
<data name="SetMasterPasswordSummary" xml:space="preserve">
<value>为使用单点登录SSO功能,请设置一个主密码以访问和保护您的密码库。</value>
<value>要完成 SSO 登录配置,请设置一个主密码以访问和保护您的密码库。</value>
</data>
<data name="MasterPasswordPolicyInEffect" xml:space="preserve">
<value>一个或多个组织策略要求您的主密码满足下列要求:</value>
@@ -1801,7 +1801,7 @@
<value>至少包含一个数字</value>
</data>
<data name="PolicyInEffectSpecial" xml:space="preserve">
<value>包含至少一个下列的特殊字符: {0}</value>
<value>至少包含一个以下特殊字符:{0}</value>
</data>
<data name="MasterPasswordPolicyValidationTitle" xml:space="preserve">
<value>无效的密码</value>
@@ -1930,10 +1930,10 @@
<value>等待删除</value>
</data>
<data name="ExpirationDate" xml:space="preserve">
<value>期日期</value>
<value>期日期</value>
</data>
<data name="ExpirationTime" xml:space="preserve">
<value>期时间</value>
<value>期时间</value>
</data>
<data name="ExpirationDateInfo" xml:space="preserve">
<value>设置后,对此 Send 的访问将在指定的日期和时间后过期。</value>
@@ -2080,7 +2080,7 @@
<value>确认主密码</value>
</data>
<data name="PasswordConfirmationDesc" xml:space="preserve">
<value>此操作受到保护,要继续,请重新输入您的主密码以验证您的身份。</value>
<value>此操作受到保护,要继续,请重新输入主密码以验证您的身份。</value>
</data>
<data name="CaptchaRequired" xml:space="preserve">
<value>请完成 Captcha 验证</value>
@@ -2499,7 +2499,7 @@
<value>使用主密码登录</value>
</data>
<data name="LogInWithAnotherDevice" xml:space="preserve">
<value>使用其他设备登录</value>
<value>设备登录</value>
</data>
<data name="LogInInitiated" xml:space="preserve">
<value>登录已发起</value>
@@ -2523,19 +2523,19 @@
<value>请求已失效</value>
</data>
<data name="PendingLogInRequests" xml:space="preserve">
<value>待登录请求</value>
<value>待处理的登录请求</value>
</data>
<data name="DeclineAllRequests" xml:space="preserve">
<value>拒绝所有请求</value>
</data>
<data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve">
<value>Are you sure you want to decline all pending login requests?</value>
<value>您确定要拒绝所有待处理的登录请求吗?</value>
</data>
<data name="RequestsDeclined" xml:space="preserve">
<value>请求被拒绝</value>
</data>
<data name="NoPendingRequests" xml:space="preserve">
<value>无待处理请求</value>
<value>无待处理请求</value>
</data>
<data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve">
<value>启用相机权限以使用扫描器</value>
@@ -2544,7 +2544,7 @@
<value>语言</value>
</data>
<data name="LanguageChangeXDescription" xml:space="preserve">
<value>语言已更改为 {0}。请重新启动 app 以查看更改</value>
<value>语言已更改为 {0}。请重新启动应用程序以查看更改</value>
</data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>更改语言需要重新启动 app</value>
@@ -2553,16 +2553,16 @@
<value>默认(系统)</value>
</data>
<data name="Important" xml:space="preserve">
<value>重要事项</value>
<value>重要:</value>
</data>
<data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve">
<value>主密码忘记后,将无法恢复!密码不能少于{0}个字符</value>
<value>主密码忘记后,将无法恢复!要求不少于 {0} 个字符</value>
</data>
<data name="WeakMasterPassword" xml:space="preserve">
<value>脆弱的主密码</value>
</data>
<data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve">
<value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value>
<value>识别到弱密码。请使用一个强密码以保护你的账户。确定要使用弱密码吗?</value>
</data>
<data name="Weak" xml:space="preserve">
<value>弱</value>
@@ -2580,27 +2580,27 @@
<value>已暴露的主密码</value>
</data>
<data name="PasswordFoundInADataBreachAlertDescription" xml:space="preserve">
<value>一起数据泄露中存在该密码。使用独特的密码有助保护您的账户。确定要使用曾经暴露的密码吗?</value>
<value>密码在数据泄露中被发现。请使用一个唯一的密码保护您的账户。确定要使用暴露的密码吗?</value>
</data>
<data name="WeakAndExposedMasterPassword" xml:space="preserve">
<value>主密码弱且曾经暴露</value>
</data>
<data name="WeakPasswordIdentifiedAndFoundInADataBreachAlertDescription" xml:space="preserve">
<value>密码太弱并出现在数据泄露。使用强悍且独特的密码有助保护的账户。确定继续使用当前密码吗?</value>
<value>识别到弱密码且其出现在数据泄露中。请使用一个强且唯一的密码保护的账户。确定要使用这个密码吗?</value>
</data>
<data name="OrganizationSsoIdentifierRequired" xml:space="preserve">
<value>必须填写组织 SSO 标识符。</value>
</data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value>
<value>将密钥添加到现有或新的项目</value>
</data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value>
<value>您的密码库中没有匹配 "{0}" 的项目</value>
</data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value>
<value>搜索一个项目或添加一个新的项目</value>
</data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value>
<value>没有匹配搜索条件的项目</value>
</data>
</root>

View File

@@ -22,6 +22,7 @@ namespace Bit.App.Utilities.AccountManagement
private readonly ILogger _logger;
private readonly IMessagingService _messagingService;
private readonly IWatchDeviceService _watchDeviceService;
private readonly IConditionedAwaiterManager _conditionedAwaiterManager;
Func<AppOptions> _getOptionsFunc;
private IAccountsManagerHost _accountsManagerHost;
@@ -34,7 +35,8 @@ namespace Bit.App.Utilities.AccountManagement
IAuthService authService,
ILogger logger,
IMessagingService messagingService,
IWatchDeviceService watchDeviceService)
IWatchDeviceService watchDeviceService,
IConditionedAwaiterManager conditionedAwaiterManager)
{
_broadcasterService = broadcasterService;
_vaultTimeoutService = vaultTimeoutService;
@@ -45,6 +47,7 @@ namespace Bit.App.Utilities.AccountManagement
_logger = logger;
_messagingService = messagingService;
_watchDeviceService = watchDeviceService;
_conditionedAwaiterManager = conditionedAwaiterManager;
}
private AppOptions Options => _getOptionsFunc?.Invoke() ?? new AppOptions { IosExtension = true };
@@ -59,6 +62,8 @@ namespace Bit.App.Utilities.AccountManagement
public async Task StartDefaultNavigationFlowAsync(Action<AppOptions> appOptionsAction)
{
await _conditionedAwaiterManager.GetAwaiterForPrecondition(AwaiterPrecondition.EnvironmentUrlsInited);
appOptionsAction(Options);
await NavigateOnAccountChangeAsync();
@@ -66,6 +71,8 @@ namespace Bit.App.Utilities.AccountManagement
public async Task NavigateOnAccountChangeAsync(bool? isAuthed = null)
{
await _conditionedAwaiterManager.GetAwaiterForPrecondition(AwaiterPrecondition.EnvironmentUrlsInited);
// TODO: this could be improved by doing chain of responsability pattern
// but for now it may be an overkill, if logic gets more complex consider refactoring it
@@ -132,6 +139,8 @@ namespace Bit.App.Utilities.AccountManagement
{
try
{
await _conditionedAwaiterManager.GetAwaiterForPrecondition(AwaiterPrecondition.EnvironmentUrlsInited);
switch (message.Command)
{
case AccountsManagerMessageCommands.LOCKED:
@@ -206,6 +215,8 @@ namespace Bit.App.Utilities.AccountManagement
public async Task LogOutAsync(string userId, bool userInitiated, bool expired)
{
await _conditionedAwaiterManager.GetAwaiterForPrecondition(AwaiterPrecondition.EnvironmentUrlsInited);
await AppHelpers.LogOutAsync(userId, userInitiated);
await NavigateOnAccountChangeAsync();
_authService.LogOut(() =>
@@ -244,6 +255,8 @@ namespace Bit.App.Utilities.AccountManagement
AppResources.AccountAlreadyAdded, AppResources.Yes, AppResources.Cancel);
if (switchToAccount)
{
await _conditionedAwaiterManager.GetAwaiterForPrecondition(AwaiterPrecondition.EnvironmentUrlsInited);
await _stateService.SetActiveUserAsync(userId);
_messagingService.Send("switchedAccount");
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Threading.Tasks;
namespace Bit.Core.Abstractions
{
public enum AwaiterPrecondition
{
EnvironmentUrlsInited
}
public interface IConditionedAwaiterManager
{
Task GetAwaiterForPrecondition(AwaiterPrecondition awaiterPrecondition);
void SetAsCompleted(AwaiterPrecondition awaiterPrecondition);
void SetException(AwaiterPrecondition awaiterPrecondition, Exception ex);
}
}

View File

@@ -4,7 +4,6 @@ namespace Bit.Core.Abstractions
{
public interface IStateMigrationService
{
Task<bool> NeedsMigration();
Task Migrate();
Task MigrateIfNeededAsync();
}
}

View File

@@ -0,0 +1,42 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Threading.Tasks;
using Bit.Core.Abstractions;
namespace Bit.Core.Services
{
public class ConditionedAwaiterManager : IConditionedAwaiterManager
{
private readonly ConcurrentDictionary<AwaiterPrecondition, TaskCompletionSource<bool>> _preconditionsTasks = new ConcurrentDictionary<AwaiterPrecondition, TaskCompletionSource<bool>>
{
[AwaiterPrecondition.EnvironmentUrlsInited] = new TaskCompletionSource<bool>()
};
public Task GetAwaiterForPrecondition(AwaiterPrecondition awaiterPrecondition)
{
if (_preconditionsTasks.TryGetValue(awaiterPrecondition, out var tcs))
{
return tcs.Task;
}
return Task.CompletedTask;
}
public void SetAsCompleted(AwaiterPrecondition awaiterPrecondition)
{
if (_preconditionsTasks.TryGetValue(awaiterPrecondition, out var tcs))
{
tcs.TrySetResult(true);
}
}
public void SetException(AwaiterPrecondition awaiterPrecondition, Exception ex)
{
if (_preconditionsTasks.TryGetValue(awaiterPrecondition, out var tcs))
{
tcs.TrySetException(ex);
}
}
}
}

View File

@@ -3,6 +3,7 @@ using System.Threading.Tasks;
using Bit.Core.Abstractions;
using Bit.Core.Models.Data;
using Bit.Core.Models.Domain;
using Bit.Core.Utilities;
namespace Bit.Core.Services
{
@@ -13,13 +14,16 @@ namespace Bit.Core.Services
private readonly IApiService _apiService;
private readonly IStateService _stateService;
private readonly IConditionedAwaiterManager _conditionedAwaiterManager;
public EnvironmentService(
IApiService apiService,
IStateService stateService)
IStateService stateService,
IConditionedAwaiterManager conditionedAwaiterManager)
{
_apiService = apiService;
_stateService = stateService;
_conditionedAwaiterManager = conditionedAwaiterManager;
}
public string BaseUrl { get; set; }
@@ -52,30 +56,44 @@ namespace Bit.Core.Services
public async Task SetUrlsFromStorageAsync()
{
var urls = await _stateService.GetEnvironmentUrlsAsync();
if (urls == null)
try
{
urls = await _stateService.GetPreAuthEnvironmentUrlsAsync();
}
if (urls == null)
{
urls = new EnvironmentUrlData();
}
var envUrls = new EnvironmentUrls();
if (!string.IsNullOrWhiteSpace(urls.Base))
{
BaseUrl = envUrls.Base = urls.Base;
var urls = await _stateService.GetEnvironmentUrlsAsync();
if (urls == null)
{
urls = await _stateService.GetPreAuthEnvironmentUrlsAsync();
}
if (urls == null)
{
urls = new EnvironmentUrlData();
}
var envUrls = new EnvironmentUrls();
if (!string.IsNullOrWhiteSpace(urls.Base))
{
BaseUrl = envUrls.Base = urls.Base;
_apiService.SetUrls(envUrls);
_conditionedAwaiterManager.SetAsCompleted(AwaiterPrecondition.EnvironmentUrlsInited);
return;
}
BaseUrl = urls.Base;
WebVaultUrl = urls.WebVault;
ApiUrl = envUrls.Api = urls.Api;
IdentityUrl = envUrls.Identity = urls.Identity;
IconsUrl = urls.Icons;
NotificationsUrl = urls.Notifications;
EventsUrl = envUrls.Events = urls.Events;
_apiService.SetUrls(envUrls);
return;
_conditionedAwaiterManager.SetAsCompleted(AwaiterPrecondition.EnvironmentUrlsInited);
}
BaseUrl = urls.Base;
WebVaultUrl = urls.WebVault;
ApiUrl = envUrls.Api = urls.Api;
IdentityUrl = envUrls.Identity = urls.Identity;
IconsUrl = urls.Icons;
NotificationsUrl = urls.Notifications;
EventsUrl = envUrls.Events = urls.Events;
_apiService.SetUrls(envUrls);
catch (System.Exception ex)
{
_conditionedAwaiterManager.SetException(AwaiterPrecondition.EnvironmentUrlsInited, ex);
throw;
}
}
public async Task<EnvironmentUrlData> SetUrlsAsync(EnvironmentUrlData urls)

View File

@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using Bit.Core.Abstractions;
using Bit.Core.Enums;
@@ -17,6 +18,7 @@ namespace Bit.Core.Services
private readonly IStorageService _preferencesStorageService;
private readonly IStorageService _liteDbStorageService;
private readonly IStorageService _secureStorageService;
private readonly SemaphoreSlim _semaphore;
private enum Storage
{
@@ -31,9 +33,27 @@ namespace Bit.Core.Services
_liteDbStorageService = liteDbStorageService;
_preferencesStorageService = preferenceStorageService;
_secureStorageService = secureStorageService;
_semaphore = new SemaphoreSlim(1);
}
public async Task<bool> NeedsMigration()
public async Task MigrateIfNeededAsync()
{
await _semaphore.WaitAsync();
try
{
if (await IsMigrationNeededAsync())
{
await PerformMigrationAsync();
}
}
finally
{
_semaphore.Release();
}
}
private async Task<bool> IsMigrationNeededAsync()
{
var lastVersion = await GetLastStateVersionAsync();
if (lastVersion == 0)
@@ -45,7 +65,7 @@ namespace Bit.Core.Services
return lastVersion < StateVersion;
}
public async Task Migrate()
private async Task PerformMigrationAsync()
{
var lastVersion = await GetLastStateVersionAsync();
switch (lastVersion)

View File

@@ -1537,11 +1537,8 @@ namespace Bit.Core.Services
{
if (!_migrationChecked)
{
var migrationService = ServiceContainer.Resolve<IStateMigrationService>("stateMigrationService");
if (await migrationService.NeedsMigration())
{
await migrationService.Migrate();
}
var migrationService = ServiceContainer.Resolve<IStateMigrationService>();
await migrationService.MigrateIfNeededAsync();
_migrationChecked = true;
}

View File

@@ -33,6 +33,7 @@ namespace Bit.Core.Utilities
SearchService searchService = null;
var conditionedRunner = new ConditionedAwaiterManager();
var tokenService = new TokenService(stateService);
var apiService = new ApiService(tokenService, platformUtilsService, (extras) =>
{
@@ -82,12 +83,13 @@ namespace Bit.Core.Utilities
keyConnectorService, passwordGenerationService);
var exportService = new ExportService(folderService, cipherService, cryptoService);
var auditService = new AuditService(cryptoFunctionService, apiService);
var environmentService = new EnvironmentService(apiService, stateService);
var environmentService = new EnvironmentService(apiService, stateService, conditionedRunner);
var eventService = new EventService(apiService, stateService, organizationService, cipherService);
var userVerificationService = new UserVerificationService(apiService, platformUtilsService, i18nService,
cryptoService);
var usernameGenerationService = new UsernameGenerationService(cryptoService, apiService, stateService);
Register<IConditionedAwaiterManager>(conditionedRunner);
Register<ITokenService>("tokenService", tokenService);
Register<IApiService>("apiService", apiService);
Register<IAppIdService>("appIdService", appIdService);

View File

@@ -11,6 +11,21 @@ namespace Bit.iOS.Autofill
get; set;
}
public override void FinishedLaunching(UIApplication application)
{
var ln = @"libbitwarden_c.framework/libbitwarden_c";
var documentsPath = NSBundle.MainBundle.BundlePath;
var filePath = System.IO.Path.Combine(documentsPath, "Frameworks", ln);
var ptr = ObjCRuntime.Dlfcn.dlopen(filePath, 0);
var sdkClient = new BitwardenClient();
var test = sdkClient.Fingerprint();
base.FinishedLaunching(application);
}
public override void OnResignActivation(UIApplication application)
{
}

View File

@@ -0,0 +1,31 @@
using System;
namespace Bit.iOS
{
public class BitwardenClient : IDisposable
{
private readonly BitwardenClientSafeHandle handle;
public BitwardenClient()
{
handle = BitwardenClientWrapper.init("");
}
public string Fingerprint()
{
return BitwardenClientWrapper.run_command("{}", handle.Ptr);
}
protected virtual void Dispose(bool disposing)
{
if (handle != null && !handle.IsInvalid)
handle.Dispose();
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
}

View File

@@ -0,0 +1,18 @@
using System;
using Microsoft.Win32.SafeHandles;
namespace Bit.iOS
{
internal class BitwardenClientSafeHandle : SafeHandleZeroOrMinusOneIsInvalid
{
public BitwardenClientSafeHandle() : base(true) { }
public IntPtr Ptr => this.handle;
protected override bool ReleaseHandle()
{
BitwardenClientWrapper.free_mem(handle);
return true;
}
}
}

View File

@@ -0,0 +1,23 @@
using System;
using System.Runtime.InteropServices;
namespace Bit.iOS
{
internal static class BitwardenClientWrapper
{
#if Android
const string DllName = "libBitwardenC.so";
#else
const string DllName = "__Internal";
#endif
[DllImport(DllName, EntryPoint = "init")]
internal static extern BitwardenClientSafeHandle init(string settings);
[DllImport(DllName, EntryPoint = "free_mem")]
internal static extern void free_mem(IntPtr clientPtr);
[DllImport(DllName, EntryPoint = "run_command")]
internal static extern string run_command(string loginRequest, IntPtr clientPtr);
}
}

View File

@@ -11,7 +11,7 @@
<key>CFBundleIdentifier</key>
<string>com.8bit.bitwarden.autofill</string>
<key>CFBundleShortVersionString</key>
<string>2023.3.2</string>
<string>2023.3.3</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleLocalizations</key>

View File

@@ -194,6 +194,9 @@
<InterfaceDefinition Include="MainInterface.storyboard" />
<BundleResource Include="Resources\MaterialIcons_Regular.ttf" />
<BundleResource Include="Resources\bwi-font.ttf" />
<Compile Include="BitwardenClient.cs" />
<Compile Include="BitwardenClientSafeHandle.cs" />
<Compile Include="BitwardenClientWrapper.cs" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
@@ -278,5 +281,11 @@
<ItemGroup>
<BundleResource Include="Resources\yubikey%403x.png" />
</ItemGroup>
<ItemGroup>
<NativeReference Include="..\..\..\sdk\libbitwarden_c.framework">
<Kind>Framework</Kind>
<SmartLink>False</SmartLink>
</NativeReference>
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.AppExtension.CSharp.targets" />
</Project>

View File

@@ -156,6 +156,20 @@ namespace Bit.iOS.Core.Utilities
ServiceContainer.Resolve<IAuthService>("authService").Init();
(ServiceContainer.
Resolve<IPlatformUtilsService>("platformUtilsService") as MobilePlatformUtilsService).Init();
var accountsManager = new AccountsManager(
ServiceContainer.Resolve<IBroadcasterService>("broadcasterService"),
ServiceContainer.Resolve<IVaultTimeoutService>("vaultTimeoutService"),
ServiceContainer.Resolve<IStorageService>("secureStorageService"),
ServiceContainer.Resolve<IStateService>("stateService"),
ServiceContainer.Resolve<IPlatformUtilsService>("platformUtilsService"),
ServiceContainer.Resolve<IAuthService>("authService"),
ServiceContainer.Resolve<ILogger>("logger"),
ServiceContainer.Resolve<IMessagingService>("messagingService"),
ServiceContainer.Resolve<IWatchDeviceService>(),
ServiceContainer.Resolve<IConditionedAwaiterManager>());
ServiceContainer.Register<IAccountsManager>("accountsManager", accountsManager);
// Note: This is not awaited
var bootstrapTask = BootstrapAsync(postBootstrapFunc);
}
@@ -235,18 +249,6 @@ namespace Bit.iOS.Core.Utilities
ServiceContainer.Resolve<ICryptoService>("cryptoService"));
ServiceContainer.Register<IVerificationActionsFlowHelper>("verificationActionsFlowHelper", verificationActionsFlowHelper);
var accountsManager = new AccountsManager(
ServiceContainer.Resolve<IBroadcasterService>("broadcasterService"),
ServiceContainer.Resolve<IVaultTimeoutService>("vaultTimeoutService"),
ServiceContainer.Resolve<IStorageService>("secureStorageService"),
ServiceContainer.Resolve<IStateService>("stateService"),
ServiceContainer.Resolve<IPlatformUtilsService>("platformUtilsService"),
ServiceContainer.Resolve<IAuthService>("authService"),
ServiceContainer.Resolve<ILogger>("logger"),
ServiceContainer.Resolve<IMessagingService>("messagingService"),
ServiceContainer.Resolve<IWatchDeviceService>());
ServiceContainer.Register<IAccountsManager>("accountsManager", accountsManager);
if (postBootstrapFunc != null)
{
await postBootstrapFunc.Invoke();

View File

@@ -11,7 +11,7 @@
<key>CFBundleIdentifier</key>
<string>com.8bit.bitwarden.find-login-action-extension</string>
<key>CFBundleShortVersionString</key>
<string>2023.3.2</string>
<string>2023.3.3</string>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>

View File

@@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>XPC!</string>
<key>CFBundleShortVersionString</key>
<string>2023.3.2</string>
<string>2023.3.3</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>MinimumOSVersion</key>

View File

@@ -182,7 +182,15 @@ namespace Bit.iOS
LoggerHelper.LogEvenIfCantBeResolved(ex);
}
});
var ln = @"libbitwarden_c.framework/libbitwarden_c";
var documentsPath = NSBundle.MainBundle.BundlePath;
var filePath = System.IO.Path.Combine(documentsPath, "Frameworks", ln);
var ptr = ObjCRuntime.Dlfcn.dlopen(filePath, 0);
var sdkClient = new BitwardenClient();
var test = sdkClient.Fingerprint();
return base.FinishedLaunching(app, options);
}

View File

@@ -0,0 +1,31 @@
using System;
namespace Bit.iOS
{
public class BitwardenClient : IDisposable
{
private readonly BitwardenClientSafeHandle handle;
public BitwardenClient()
{
handle = BitwardenClientWrapper.init("");
}
public string Fingerprint()
{
return BitwardenClientWrapper.run_command("{}", handle.Ptr);
}
protected virtual void Dispose(bool disposing)
{
if (handle != null && !handle.IsInvalid)
handle.Dispose();
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
}

View File

@@ -0,0 +1,18 @@
using System;
using Microsoft.Win32.SafeHandles;
namespace Bit.iOS
{
internal class BitwardenClientSafeHandle : SafeHandleZeroOrMinusOneIsInvalid
{
public BitwardenClientSafeHandle() : base(true) { }
public IntPtr Ptr => this.handle;
protected override bool ReleaseHandle()
{
BitwardenClientWrapper.free_mem(handle);
return true;
}
}
}

View File

@@ -0,0 +1,23 @@
using System;
using System.Runtime.InteropServices;
namespace Bit.iOS
{
internal static class BitwardenClientWrapper
{
#if Android
const string DllName = "libBitwardenC.so";
#else
const string DllName = "__Internal";
#endif
[DllImport(DllName, EntryPoint = "init")]
internal static extern BitwardenClientSafeHandle init(string settings);
[DllImport(DllName, EntryPoint = "free_mem")]
internal static extern void free_mem(IntPtr clientPtr);
[DllImport(DllName, EntryPoint = "run_command")]
internal static extern string run_command(string loginRequest, IntPtr clientPtr);
}
}

View File

@@ -11,7 +11,7 @@
<key>CFBundleIdentifier</key>
<string>com.8bit.bitwarden</string>
<key>CFBundleShortVersionString</key>
<string>2023.3.2</string>
<string>2023.3.3</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleIconName</key>

View File

@@ -183,6 +183,9 @@
<ImageAsset Include="Resources\Assets.xcassets\empty_items_state.imageset\Empty-items-state-dark.pdf" />
<ImageAsset Include="Resources\Assets.xcassets\empty_items_state.imageset\Empty-items-state.pdf" />
<ImageAsset Include="Resources\Assets.xcassets\empty_items_state.imageset\Contents.json" />
<Compile Include="BitwardenClient.cs" />
<Compile Include="BitwardenClientSafeHandle.cs" />
<Compile Include="BitwardenClientWrapper.cs" />
</ItemGroup>
<ItemGroup>
<InterfaceDefinition Include="LaunchScreen.storyboard" />
@@ -424,6 +427,12 @@
<ItemGroup Condition=" '$(Configuration)' != 'Debug' ">
<_ResolvedWatchAppReferences Include="$(WatchAppBundleFullPath)" />
</ItemGroup>
<ItemGroup>
<NativeReference Include="..\..\..\sdk\libbitwarden_c.framework">
<Kind>Framework</Kind>
<SmartLink>False</SmartLink>
</NativeReference>
</ItemGroup>
<PropertyGroup Condition=" '$(_ResolvedWatchAppReferences)' != '' ">
<CodesignExtraArgs>--deep</CodesignExtraArgs>
</PropertyGroup>

View File

@@ -124,43 +124,44 @@
<data name="Description" xml:space="preserve">
<value>Bitwarden, Inc. è la società madre di 8bit Solutions LLC.
NOMINATO MIGLIOR PASSWORD MANAGER DA THE VERGE, US NEWS &amp; WORLD REPORT, CNET E ALTRO.
NOMINATO MIGLIOR PASSWORD MANAGER DA THE VERGE, U.S. NEWS &amp; WORLD REPORT, CNET, E ALTRO.
Gestisci, archivia, proteggi e condividi password illimitate su dispositivi illimitati da qualsiasi luogo. Bitwarden offre soluzioni di gestione delle password open source a tutti, a casa, al lavoro o in viaggio.
Gestisci, archivia, proteggi, e condividi password illimitate su dispositivi illimitati da qualsiasi luogo. Bitwarden offre soluzioni di gestione delle password open-source a tutti, a casa, al lavoro, o in viaggio.
Genera password complesse, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Genera password forti, uniche, e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Bitwarden Send trasmette rapidamente informazioni cifrate --- file e testo in chiaro - direttamente a chiunque.
Bitwarden Send trasmette rapidamente informazioni criptate - via file e testo in chiaro - direttamente a chiunque.
Bitwarden offre piani Teams ed Enterprise per le aziende in modo da poter condividere le password in modo sicuro con i colleghi.
Bitwarden offre piani Teams ed Enterprise per le aziende così puoi condividere le password in modo sicuro con i tuoi colleghi.
Perché scegliere Bitwarden:
Perché Scegliere Bitwarden:
Crittografia di livello mondiale
Le password sono protette con cifratura end-to-end avanzata (AES-256 bit, hashtag con sale e PBKDF2 SHA-256) in modo che i tuoi dati rimangano al sicuro e privati.
Criptografia Di Livello Mondiale
Le password sono protette con criptografia end-to-end avanzata (AES-256 bit, salted hashing, e PBKDF2 SHA-256) per tenere i tuoi dati al sicuro e privati.
Generatore di password integrato
Genera password complesse, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Generatore Di Password Integrato
Genera password forti, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Traduzioni globali
Le traduzioni di Bitwarden esistono in 40 lingue e sono in crescita, grazie alla nostra comunità globale.
Traduzioni Globali
Le traduzioni di Bitwarden esistono in 40 lingue e sono in crescita grazie alla nostra comunità globale.
Applicazioni multipiattaforma
Proteggi e condividi i dati sensibili all'interno del tuo Bitwarden Vault da qualsiasi browser, dispositivo mobile o sistema operativo desktop e altro ancora.</value>
Applicazioni Multipiattaforma
Proteggi e condividi i dati sensibili all'interno della tua cassaforte di Bitwarden da qualsiasi browser, dispositivo mobile, o sistema operativo desktop, e altro.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="Keywords" xml:space="preserve">
<value>bitwarden,8bit,password,gestore password gratuito,gestore password,gestore login</value>
<value>bit warden,8bit,password,gestore password gratuito,gestore password,gestore login</value>
<comment>Max 100 characters</comment>
</data>
<data name="Screenshot1" xml:space="preserve">
<value>Gestisci tutte le tue password ed i tuoi login da una cassaforte sicura</value>
<value>Gestisci tutte le tue password e i tuoi login da una cassaforte sicura</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Genera automaticamente password complesse, casuali e sicure</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Proteggi la tua cassaforte con Touch ID, codice PIN o password principale</value>
<value>Proteggi la tua cassaforte con Touch ID, Face ID, PIN o password</value>
</data>
<data name="Screenshot4" xml:space="preserve">
<value>Auto-completamento login da Safari, Chrome e centinaia di altre applicazioni</value>

172
store/apple/my/copy.resx Normal file
View File

@@ -0,0 +1,172 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1"/>
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3"/>
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Name" xml:space="preserve">
<value>Bitwarden Password Manager</value>
<comment>Max 30 characters</comment>
</data>
<data name="Description" xml:space="preserve">
<value>Bitwarden, Inc. is the parent company of 8bit Solutions LLC.
NAMED BEST PASSWORD MANAGER BY THE VERGE, U.S. NEWS &amp; WORLD REPORT, CNET, AND MORE.
Manage, store, secure, and share unlimited passwords across unlimited devices from anywhere. Bitwarden delivers open source password management solutions to everyone, whether at home, at work, or on the go.
Generate strong, unique, and random passwords based on security requirements for every website you frequent.
Bitwarden Send quickly transmits encrypted information --- files and plaintext -- directly to anyone.
Bitwarden offers Teams and Enterprise plans for companies so you can securely share passwords with colleagues.
Why Choose Bitwarden:
World-Class Encryption
Passwords are protected with advanced end-to-end encryption (AES-256 bit, salted hashtag, and PBKDF2 SHA-256) so your data stays secure and private.
Built-in Password Generator
Generate strong, unique, and random passwords based on security requirements for every website you frequent.
Global Translations
Bitwarden translations exist in 40 languages and are growing, thanks to our global community.
Cross-Platform Applications
Secure and share sensitive data within your Bitwarden Vault from any browser, mobile device, or desktop OS, and more.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="Keywords" xml:space="preserve">
<value>bit warden,8bit,password,free password manager,password manager,login manager</value>
<comment>Max 100 characters</comment>
</data>
<data name="Screenshot1" xml:space="preserve">
<value>Manage all your logins and passwords from a secure vault</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Automatically generate strong, random, and secure passwords</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Protect your vault with Touch ID, PIN code, or master password</value>
</data>
<data name="Screenshot4" xml:space="preserve">
<value>Auto-fill logins from Safari, Chrome, and hundreds of other apps</value>
</data>
<data name="Screenshot5" xml:space="preserve">
<value>Sync and access your vault from multiple devices</value>
</data>
</root>

View File

@@ -118,7 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Name" xml:space="preserve">
<value>Bitwarden - Менеджер паролів</value>
<value>Bitwarden менеджер паролів</value>
<comment>Max 30 characters</comment>
</data>
<data name="Description" xml:space="preserve">
@@ -128,25 +128,26 @@
Зберігайте, захищайте, керуйте і надавайте доступ до паролів на різних пристроях де завгодно. Bitwarden пропонує рішення для керування паролями на основі відкритого програмного коду особистим та корпоративним користувачам на всіх пристроях.
Генеруйте випадкові, надійні та унікальні паролі, які задовольняють вимоги безпеки, для кожного вебсайту та сервісу.
Генеруйте надійні, випадкові та унікальні паролі, які відповідають вимогам безпеки, для кожного вебсайту та сервісу.
Функція Bitwarden Send швидко та безпосередньо передає зашифровану інформацію будь-кому - файли та звичайний текст.
Швидко відправляйте будь-кому зашифровану інформацію, як-от файли чи звичайний текст, за допомогою функції Bitwarden Send.
Bitwarden пропонує командні та корпоративні тарифні плани для компаній, щоб ви могли безпечно обмінюватися паролями з колегами.
Чому варто обрати Bitwarden:
Шифрування світового рівня
Паролі захищаються з використанням розширеного наскрізного шифрування (AES-256 bit, salted hashtag, та PBKDF2 SHA-256), тому ваші дані завжди захищені та приватні.
Всесвітньо визнані стандарти шифрування
Паролі захищаються з використанням розширеного наскрізного шифрування (AES-256 bit, хешування з сіллю та PBKDF2 SHA-256), тому ваші дані завжди захищені та приватні.
Вбудований генератор паролів
Генеруйте випадкові, надійні та унікальні паролі, які задовольняють вимоги безпеки, для кожного вебсайту та сервісу.
Генеруйте надійні, випадкові та унікальні паролі, які відповідають вимогам безпеки, для кожного вебсайту та сервісу.
Переклад багатьма мовами
Завдяки нашій глобальній спільноті, Bitwarden перекладено 40 мовами, і їх кількість продовжує зростати.
Завдяки нашій глобальній спільноті, Bitwarden перекладено 40 мовами, і їх кількість зростає.
Програми для різних платформ
Зберігайте і діліться важливими даними, а також користуйтеся іншими можливостями у вашому сховищі Bitwarden в будь-якому браузері, мобільному пристрої, чи комп'ютерній операційній системі.</value>
Зберігайте і діліться важливими даними, а також користуйтеся іншими можливостями у вашому сховищі Bitwarden в будь-якому браузері, мобільному пристрої, чи комп'ютерній операційній системі.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="Keywords" xml:space="preserve">
@@ -157,7 +158,7 @@ Bitwarden пропонує командні та корпоративні тар
<value>Керуйте всіма своїми записами в захищеному сховищі</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Автоматично генеруйте стійкі, випадкові та надійні паролі</value>
<value>Автоматично генеруйте надійні, випадкові та унікальні паролі</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Захистіть своє сховище за допомогою Touch ID, PIN-коду, або головного пароля</value>
@@ -166,6 +167,6 @@ Bitwarden пропонує командні та корпоративні тар
<value>Автозаповнення паролів у Safari, Chrome та сотнях інших програм</value>
</data>
<data name="Screenshot5" xml:space="preserve">
<value>Синхронізуйте й отримуйте доступ до вашого сховища на багатьох пристроях</value>
<value>Синхронізуйте й отримуйте доступ до свого сховища на різних пристроях</value>
</data>
</root>

View File

@@ -118,7 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Title" xml:space="preserve">
<value>Bitwarden - Gestore di password</value>
<value>Bitwarden - Gestore di Password</value>
<comment>Max 30 characters</comment>
</data>
<data name="ShortDescription" xml:space="preserve">
@@ -128,42 +128,43 @@
<data name="FullDesciption" xml:space="preserve">
<value>Bitwarden, Inc. è la società madre di 8bit Solutions LLC.
NOMINATO MIGLIOR PASSWORD MANAGER DA THE VERGE, US NEWS &amp; WORLD REPORT, CNET E ALTRO.
NOMINATO MIGLIOR PASSWORD MANAGER DA THE VERGE, U.S. NEWS &amp; WORLD REPORT, CNET, E ALTRO.
Gestisci, archivia, proteggi e condividi password illimitate su dispositivi illimitati da qualsiasi luogo. Bitwarden offre soluzioni di gestione delle password open source a tutti, a casa, al lavoro o in viaggio.
Gestisci, archivia, proteggi, e condividi password illimitate su dispositivi illimitati da qualsiasi luogo. Bitwarden offre soluzioni di gestione delle password open-source a tutti, a casa, al lavoro, o in viaggio.
Genera password complesse, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Genera password forti, uniche, e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Bitwarden Send trasmette rapidamente informazioni cifrate --- file e testo in chiaro - direttamente a chiunque.
Bitwarden Send trasmette rapidamente informazioni criptate - via file e testo in chiaro - direttamente a chiunque.
Bitwarden offre piani Teams ed Enterprise per le aziende in modo da poter condividere le password in modo sicuro con i colleghi.
Bitwarden offre piani Teams ed Enterprise per le aziende così puoi condividere le password in modo sicuro con i tuoi colleghi.
Perché scegliere Bitwarden:
Perché Scegliere Bitwarden:
Crittografia di livello mondiale
Le password sono protette con cifratura end-to-end avanzata (AES-256 bit, hashtag con sale e PBKDF2 SHA-256) in modo che i tuoi dati rimangano al sicuro e privati.
Criptografia Di Livello Mondiale
Le password sono protette con criptografia end-to-end avanzata (AES-256 bit, salted hashing, e PBKDF2 SHA-256) per tenere i tuoi dati al sicuro e privati.
Generatore di password integrato
Genera password complesse, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Generatore Di Password Integrato
Genera password forti, uniche e casuali in base ai requisiti di sicurezza per ogni sito web che frequenti.
Traduzioni globali
Le traduzioni di Bitwarden esistono in 40 lingue e sono in crescita, grazie alla nostra comunità globale.
Traduzioni Globali
Le traduzioni di Bitwarden esistono in 40 lingue e sono in crescita grazie alla nostra comunità globale.
Applicazioni multipiattaforma
Proteggi e condividi i dati sensibili all'interno del tuo Bitwarden Vault da qualsiasi browser, dispositivo mobile o sistema operativo desktop e altro ancora.</value>
Applicazioni Multipiattaforma
Proteggi e condividi i dati sensibili all'interno della tua cassaforte di Bitwarden da qualsiasi browser, dispositivo mobile, o sistema operativo desktop, e altro.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="FeatureGraphic" xml:space="preserve">
<value>Un gestore di password sicuro e gratuito per tutti i tuoi dispositivi</value>
</data>
<data name="Screenshot1" xml:space="preserve">
<value>Gestisci tutte le tue password ed i tuoi login da una cassaforte sicura</value>
<value>Gestisci tutte le tue password e i tuoi login da una cassaforte sicura</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Genera automaticamente password complesse, casuali e sicure</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Proteggi la tua cassaforte tramite impronta digitale, codice PIN o password principale</value>
<value>Proteggi la tua cassaforte con impronta digitale, codice PIN, o password</value>
</data>
<data name="Screenshot4" xml:space="preserve">
<value>Riempi velocemente i login dal tuo browser e da altre app</value>
@@ -174,6 +175,6 @@ Proteggi e condividi i dati sensibili all'interno del tuo Bitwarden Vault da qua
- Telefono
- Tablet
- Desktop
- Web</value>
- Sito web</value>
</data>
</root>

180
store/google/my/copy.resx Normal file
View File

@@ -0,0 +1,180 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1"/>
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3"/>
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Title" xml:space="preserve">
<value>Bitwarden Password Manager</value>
<comment>Max 30 characters</comment>
</data>
<data name="ShortDescription" xml:space="preserve">
<value>Bitwarden is a login and password manager that helps keep you safe while online.</value>
<comment>Max 80 characters</comment>
</data>
<data name="FullDesciption" xml:space="preserve">
<value>Bitwarden, Inc. is the parent company of 8bit Solutions LLC.
NAMED BEST PASSWORD MANAGER BY THE VERGE, U.S. NEWS &amp; WORLD REPORT, CNET, AND MORE.
Manage, store, secure, and share unlimited passwords across unlimited devices from anywhere. Bitwarden delivers open source password management solutions to everyone, whether at home, at work, or on the go.
Generate strong, unique, and random passwords based on security requirements for every website you frequent.
Bitwarden Send quickly transmits encrypted information --- files and plaintext -- directly to anyone.
Bitwarden offers Teams and Enterprise plans for companies so you can securely share passwords with colleagues.
Why Choose Bitwarden:
World-Class Encryption
Passwords are protected with advanced end-to-end encryption (AES-256 bit, salted hashtag, and PBKDF2 SHA-256) so your data stays secure and private.
Built-in Password Generator
Generate strong, unique, and random passwords based on security requirements for every website you frequent.
Global Translations
Bitwarden translations exist in 40 languages and are growing, thanks to our global community.
Cross-Platform Applications
Secure and share sensitive data within your Bitwarden Vault from any browser, mobile device, or desktop OS, and more.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="FeatureGraphic" xml:space="preserve">
<value>A secure and free password manager for all of your devices</value>
</data>
<data name="Screenshot1" xml:space="preserve">
<value>Manage all your logins and passwords from a secure vault</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Automatically generate strong, random, and secure passwords</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Protect your vault with fingerprint, PIN code, or master password</value>
</data>
<data name="Screenshot4" xml:space="preserve">
<value>Quickly auto-fill logins from within your web browser and other apps</value>
</data>
<data name="Screenshot5" xml:space="preserve">
<value>Sync and access your vault from multiple devices
- Phone
- Tablet
- Desktop
- Web</value>
</data>
</root>

View File

@@ -118,11 +118,11 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Title" xml:space="preserve">
<value>Bitwarden - Менеджер паролів</value>
<value>Bitwarden менеджер паролів</value>
<comment>Max 30 characters</comment>
</data>
<data name="ShortDescription" xml:space="preserve">
<value>Bitwarden - менеджер паролів, що допомагає вам бути в безпеці онлайн.</value>
<value>Bitwarden менеджер паролів, що допомагає вам бути в безпеці онлайн.</value>
<comment>Max 80 characters</comment>
</data>
<data name="FullDesciption" xml:space="preserve">
@@ -132,41 +132,42 @@
Зберігайте, захищайте, керуйте і надавайте доступ до паролів на різних пристроях де завгодно. Bitwarden пропонує рішення для керування паролями на основі відкритого програмного коду особистим та корпоративним користувачам на всіх пристроях.
Генеруйте випадкові, надійні та унікальні паролі, які задовольняють вимоги безпеки, для кожного вебсайту та сервісу.
Генеруйте надійні, випадкові та унікальні паролі, які відповідають вимогам безпеки, для кожного вебсайту та сервісу.
Функція Bitwarden Send швидко та безпосередньо передає зашифровану інформацію будь-кому - файли та звичайний текст.
Швидко відправляйте будь-кому зашифровану інформацію, як-от файли чи звичайний текст, за допомогою функції Bitwarden Send.
Bitwarden пропонує командні та корпоративні тарифні плани для компаній, щоб ви могли безпечно обмінюватися паролями з колегами.
Чому варто обрати Bitwarden:
Шифрування світового рівня
Паролі захищаються з використанням розширеного наскрізного шифрування (AES-256 bit, salted hashtag, та PBKDF2 SHA-256), тому ваші дані завжди захищені та приватні.
Всесвітньо визнані стандарти шифрування
Паролі захищаються з використанням розширеного наскрізного шифрування (AES-256 bit, хешування з сіллю та PBKDF2 SHA-256), тому ваші дані завжди захищені та приватні.
Вбудований генератор паролів
Генеруйте випадкові, надійні та унікальні паролі, які задовольняють вимоги безпеки, для кожного вебсайту та сервісу.
Генеруйте надійні, випадкові та унікальні паролі, які відповідають вимогам безпеки, для кожного вебсайту та сервісу.
Переклад багатьма мовами
Завдяки нашій глобальній спільноті, Bitwarden перекладено 40 мовами, і їх кількість продовжує зростати.
Завдяки нашій глобальній спільноті, Bitwarden перекладено 40 мовами, і їх кількість зростає.
Програми для різних платформ
Зберігайте і діліться важливими даними, а також користуйтеся іншими можливостями у вашому сховищі Bitwarden в будь-якому браузері, мобільному пристрої, чи комп'ютерній операційній системі.</value>
Зберігайте і діліться важливими даними, а також користуйтеся іншими можливостями у вашому сховищі Bitwarden в будь-якому браузері, мобільному пристрої, чи комп'ютерній операційній системі.
</value>
<comment>Max 4000 characters</comment>
</data>
<data name="FeatureGraphic" xml:space="preserve">
<value>Захищений і безкоштовний менеджер паролів для всіх ваших пристроїв</value>
<value>Захищений, безплатний менеджер паролів для всіх ваших пристроїв</value>
</data>
<data name="Screenshot1" xml:space="preserve">
<value>Керуйте всіма своїми записами в захищеному сховищі</value>
</data>
<data name="Screenshot2" xml:space="preserve">
<value>Автоматично генеруйте стійкі, випадкові та надійні паролі</value>
<value>Автоматично генеруйте надійні, випадкові та унікальні паролі</value>
</data>
<data name="Screenshot3" xml:space="preserve">
<value>Захистіть своє сховище за допомогою відбитку пальця, PIN-коду, або головного пароля</value>
</data>
<data name="Screenshot4" xml:space="preserve">
<value>Швидке автозаповнення паролів у веб-браузері та інших програмах</value>
<value>Швидко, автоматично заповнюйте паролі у веббраузері та інших програмах</value>
</data>
<data name="Screenshot5" xml:space="preserve">
<value>Синхронізація і доступ до сховища з різних пристроїв
@@ -174,6 +175,6 @@ Bitwarden пропонує командні та корпоративні тар
- Телефон
- Планшет
- Комп'ютер
- Веб-браузер</value>
- Веббраузер</value>
</data>
</root>