1
0
mirror of https://github.com/bitwarden/mobile.git synced 2024-11-26 12:16:07 +01:00

i18n resource strings for lock and settings pages

This commit is contained in:
Kyle Spearrin 2016-11-25 13:22:11 -05:00
parent c0a532a0fe
commit 071ec61683
14 changed files with 838 additions and 89 deletions

View File

@ -41,7 +41,7 @@ namespace Bit.App.Pages
var fingerprintButton = new ExtendedButton
{
Text = "Use Fingerprint to Unlock",
Text = AppResources.UseFingerprintToUnlock,
Command = new Command(async () => await CheckFingerprintAsync()),
VerticalOptions = LayoutOptions.EndAndExpand,
Style = (Style)Application.Current.Resources["btn-primary"]
@ -64,7 +64,7 @@ namespace Bit.App.Pages
Children = { fingerprintIcon, fingerprintButton, logoutButton }
};
Title = "Verify Fingerprint";
Title = AppResources.VerifyFingerprint;
Content = stackLayout;
}
@ -85,7 +85,7 @@ namespace Bit.App.Pages
public async Task LogoutAsync()
{
if(!await _userDialogs.ConfirmAsync("Are you sure you want to log out?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.LogoutConfirmation, null, AppResources.Yes, AppResources.Cancel))
{
return;
}
@ -95,7 +95,7 @@ namespace Bit.App.Pages
public async Task CheckFingerprintAsync()
{
var result = await _fingerprint.AuthenticateAsync("Use your fingerprint to verify.");
var result = await _fingerprint.AuthenticateAsync(AppResources.FingerprintDirection);
if(result.Authenticated)
{
_settings.AddOrUpdateValue(Constants.Locked, false);

View File

@ -85,13 +85,13 @@ namespace Bit.App.Pages
table.EstimatedRowHeight = 70;
}
var loginToolbarItem = new ToolbarItem("Submit", null, async () =>
var loginToolbarItem = new ToolbarItem(AppResources.Submit, null, async () =>
{
await CheckPasswordAsync();
}, ToolbarItemOrder.Default, 0);
ToolbarItems.Add(loginToolbarItem);
Title = "Verify Master Password";
Title = AppResources.VerifyMasterPassword;
Content = scrollView;
}
@ -129,7 +129,7 @@ namespace Bit.App.Pages
{
// TODO: keep track of invalid attempts and logout?
_userDialogs.Alert("Invalid Master Password. Try again.");
_userDialogs.Alert(AppResources.InvalidMasterPassword);
PasswordCell.Entry.Text = string.Empty;
PasswordCell.Entry.Focus();
}
@ -137,7 +137,7 @@ namespace Bit.App.Pages
private async Task LogoutAsync()
{
if(!await _userDialogs.ConfirmAsync("Are you sure you want to log out?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.LogoutConfirmation, null, AppResources.Yes, AppResources.Cancel))
{
return;
}

View File

@ -34,7 +34,7 @@ namespace Bit.App.Pages
{
var instructionLabel = new Label
{
Text = "Enter your PIN code.",
Text = AppResources.EnterPIN,
LineBreakMode = LineBreakMode.WordWrap,
FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)),
HorizontalTextAlignment = TextAlignment.Center,
@ -68,7 +68,7 @@ namespace Bit.App.Pages
PinControl.Label.GestureRecognizers.Add(tgr);
instructionLabel.GestureRecognizers.Add(tgr);
Title = "Verify PIN";
Title = AppResources.VerifyPIN;
Content = stackLayout;
Content.GestureRecognizers.Add(tgr);
BindingContext = Model;
@ -102,7 +102,7 @@ namespace Bit.App.Pages
{
// TODO: keep track of invalid attempts and logout?
_userDialogs.Alert("Invalid PIN. Try again.");
_userDialogs.Alert(AppResources.InvalidPIN);
Model.PIN = string.Empty;
PinControl.Entry.Focus();
}
@ -110,7 +110,7 @@ namespace Bit.App.Pages
private async Task LogoutAsync()
{
if(!await _userDialogs.ConfirmAsync("Are you sure you want to log out?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.LogoutConfirmation, null, AppResources.Yes, AppResources.Cancel))
{
return;
}

View File

@ -3,6 +3,7 @@ using Bit.App.Controls;
using Xamarin.Forms;
using Bit.App.Abstractions;
using XLabs.Ioc;
using Bit.App.Resources;
namespace Bit.App.Pages
{
@ -27,7 +28,7 @@ namespace Bit.App.Pages
var versionLabel = new Label
{
FontSize = Device.GetNamedSize(NamedSize.Medium, typeof(Label)),
Text = $@"Version {_appInfoService.Version} ({_appInfoService.Build})
Text = $@"{AppResources.Version} {_appInfoService.Version} ({_appInfoService.Build})
© 8bit Solutions LLC 2015-{DateTime.Now.Year}",
HorizontalTextAlignment = TextAlignment.Center
};
@ -41,7 +42,7 @@ namespace Bit.App.Pages
var creditsCell = new ExtendedTextCell
{
Text = "Credits",
Text = AppResources.Credits,
ShowDisclousure = true
};
creditsCell.Tapped += RateCell_Tapped;
@ -73,7 +74,7 @@ namespace Bit.App.Pages
Spacing = 0
};
Title = "About";
Title = AppResources.About;
Content = new ScrollView { Content = stackLayout };
}

View File

@ -72,7 +72,7 @@ namespace Bit.App.Pages
Name = nameCell.Entry.Text.Encrypt()
};
_userDialogs.ShowLoading("Saving...", MaskType.Black);
_userDialogs.ShowLoading(AppResources.Saving, MaskType.Black);
var saveResult = await _folderService.SaveAsync(folder);
_userDialogs.HideLoading();
@ -80,7 +80,7 @@ namespace Bit.App.Pages
if(saveResult.Succeeded)
{
await Navigation.PopForDeviceAsync();
_userDialogs.Toast("New folder created.");
_userDialogs.Toast(AppResources.FolderCreated);
_googleAnalyticsService.TrackAppEvent("CreatedFolder");
}
else if(saveResult.Errors.Count() > 0)
@ -93,12 +93,12 @@ namespace Bit.App.Pages
}
}, ToolbarItemOrder.Default, 0);
Title = "Add Folder";
Title = AppResources.AddFolder;
Content = table;
ToolbarItems.Add(saveToolBarItem);
if(Device.OS == TargetPlatform.iOS)
{
ToolbarItems.Add(new DismissModalToolBarItem(this, "Cancel"));
ToolbarItems.Add(new DismissModalToolBarItem(this, AppResources.Cancel));
}
}

View File

@ -1,6 +1,7 @@
using System;
using Bit.App.Controls;
using Xamarin.Forms;
using Bit.App.Resources;
namespace Bit.App.Pages
{
@ -35,7 +36,7 @@ Fingerprint by masterpage.com from the Noun Project")
table.EstimatedRowHeight = 100;
}
Title = "Thank You";
Title = AppResources.ThankYou;
Content = table;
}

View File

@ -86,7 +86,7 @@ namespace Bit.App.Pages
folder.Name = nameCell.Entry.Text.Encrypt();
_userDialogs.ShowLoading("Saving...", MaskType.Black);
_userDialogs.ShowLoading(AppResources.Saving, MaskType.Black);
var saveResult = await _folderService.SaveAsync(folder);
_userDialogs.HideLoading();
@ -94,7 +94,7 @@ namespace Bit.App.Pages
if(saveResult.Succeeded)
{
await Navigation.PopForDeviceAsync();
_userDialogs.Toast("Folder updated.");
_userDialogs.Toast(AppResources.FolderUpdated);
_googleAnalyticsService.TrackAppEvent("EditedFolder");
}
else if(saveResult.Errors.Count() > 0)
@ -107,12 +107,12 @@ namespace Bit.App.Pages
}
}, ToolbarItemOrder.Default, 0);
Title = "Edit Folder";
Title = AppResources.EditFolder;
Content = mainTable;
ToolbarItems.Add(saveToolBarItem);
if(Device.OS == TargetPlatform.iOS)
{
ToolbarItems.Add(new DismissModalToolBarItem(this, "Cancel"));
ToolbarItems.Add(new DismissModalToolBarItem(this, AppResources.Cancel));
}
}
@ -141,14 +141,14 @@ namespace Bit.App.Pages
}
_userDialogs.ShowLoading("Deleting...", MaskType.Black);
_userDialogs.ShowLoading(AppResources.Deleting, MaskType.Black);
var deleteTask = await _folderService.DeleteAsync(_folderId);
_userDialogs.HideLoading();
if(deleteTask.Succeeded)
{
await Navigation.PopForDeviceAsync();
_userDialogs.Toast("Folder deleted.");
_userDialogs.Toast(AppResources.FolderDeleted);
}
else if(deleteTask.Errors.Count() > 0)
{

View File

@ -3,6 +3,7 @@ using Bit.App.Controls;
using Xamarin.Forms;
using Bit.App.Abstractions;
using XLabs.Ioc;
using Bit.App.Resources;
namespace Bit.App.Pages
{
@ -21,7 +22,7 @@ namespace Bit.App.Pages
{
var emailCell = new ExtendedTextCell
{
Text = "Email Us",
Text = AppResources.EmailUs,
ShowDisclousure = true
};
emailCell.Tapped += EmailCell_Tapped;
@ -39,12 +40,12 @@ namespace Bit.App.Pages
var emailLabel = new CustomLabel(this)
{
Text = "Email us directly to get help or leave feedback."
Text = AppResources.EmailUsDescription
};
var websiteCell = new ExtendedTextCell
{
Text = "Visit Our Website",
Text = AppResources.VisitOurWebsite,
ShowDisclousure = true
};
websiteCell.Tapped += WebsiteCell_Tapped;
@ -63,12 +64,12 @@ namespace Bit.App.Pages
var websiteLabel = new CustomLabel(this)
{
Text = "Visit our website to get help, news, email us, and/or learn more about how to use bitwarden."
Text = AppResources.VisitOurWebsiteDescription
};
var bugCell = new ExtendedTextCell
{
Text = "File a Bug Report",
Text = AppResources.FileBugReport,
ShowDisclousure = true
};
bugCell.Tapped += BugCell_Tapped;
@ -87,7 +88,7 @@ namespace Bit.App.Pages
var bugLabel = new CustomLabel(this)
{
Text = "Open an issue at our GitHub repository."
Text = AppResources.FileBugReportDescription
};
var stackLayout = new StackLayout
@ -103,7 +104,7 @@ namespace Bit.App.Pages
bugLabel.WidthRequest = stackLayout.Bounds.Width - bugLabel.Bounds.Left * 2;
};
Title = "Help and Feedback";
Title = AppResources.HelpAndFeedback;
Content = new ScrollView { Content = stackLayout };
}

View File

@ -38,7 +38,7 @@ namespace Bit.App.Pages
listView.ItemSelected += FolderSelected;
listView.ItemTemplate = new DataTemplate(() => new SettingsFolderListViewCell(this));
Title = "Folders";
Title = AppResources.Folders;
Content = listView;
}

View File

@ -43,14 +43,14 @@ namespace Bit.App.Pages
{
PinCell = new ExtendedSwitchCell
{
Text = "Unlock with PIN Code",
Text = AppResources.UnlockWithPIN,
On = _settings.GetValueOrDefault(Constants.SettingPinUnlockOn, false)
};
PinCell.OnChanged += PinCell_Changed;
LockOptionsCell = new ExtendedTextCell
{
Text = "Lock Options",
Text = AppResources.LockOptions,
Detail = GetLockOptionsDetailsText(),
ShowDisclousure = true
};
@ -58,12 +58,12 @@ namespace Bit.App.Pages
var twoStepCell = new ExtendedTextCell
{
Text = "Two-step Login",
Text = AppResources.TwoStepLogin,
ShowDisclousure = true
};
twoStepCell.Tapped += TwoStepCell_Tapped; ;
var securitySecion = new TableSection("Security")
var securitySecion = new TableSection(AppResources.Security)
{
LockOptionsCell,
PinCell,
@ -72,10 +72,11 @@ namespace Bit.App.Pages
if(_fingerprint.IsAvailable)
{
var fingerprintName = Device.OnPlatform(iOS: "Touch ID", Android: "Fingerprint", WinPhone: "Fingerprint");
var fingerprintName = Device.OnPlatform(iOS: AppResources.TouchID, Android: AppResources.Fingerprint,
WinPhone: AppResources.Fingerprint);
FingerprintCell = new ExtendedSwitchCell
{
Text = "Unlock with " + fingerprintName,
Text = string.Format(AppResources.UnlockWith, fingerprintName),
On = _settings.GetValueOrDefault(Constants.SettingFingerprintUnlockOn, false),
IsEnabled = _fingerprint.IsAvailable
};
@ -85,59 +86,59 @@ namespace Bit.App.Pages
var changeMasterPasswordCell = new ExtendedTextCell
{
Text = "Change Master Password",
Text = AppResources.ChangeMasterPassword,
ShowDisclousure = true
};
changeMasterPasswordCell.Tapped += ChangeMasterPasswordCell_Tapped;
var changeEmailCell = new ExtendedTextCell
{
Text = "Change Email",
Text = AppResources.ChangeEmail,
ShowDisclousure = true
};
changeEmailCell.Tapped += ChangeEmailCell_Tapped;
var foldersCell = new ExtendedTextCell
{
Text = "Folders",
Text = AppResources.Folders,
ShowDisclousure = true
};
foldersCell.Tapped += FoldersCell_Tapped;
var syncCell = new ExtendedTextCell
{
Text = "Sync",
Text = AppResources.Sync,
ShowDisclousure = true
};
syncCell.Tapped += SyncCell_Tapped;
var lockCell = new ExtendedTextCell
{
Text = "Lock"
Text = AppResources.Lock
};
lockCell.Tapped += LockCell_Tapped;
var logOutCell = new ExtendedTextCell
{
Text = "Log Out"
Text = AppResources.LogOut
};
logOutCell.Tapped += LogOutCell_Tapped;
var aboutCell = new ExtendedTextCell
{
Text = "About",
Text = AppResources.About,
ShowDisclousure = true
};
aboutCell.Tapped += AboutCell_Tapped;
var helpCell = new ExtendedTextCell
{
Text = "Help and Feedback",
Text = AppResources.HelpAndFeedback,
ShowDisclousure = true
};
helpCell.Tapped += HelpCell_Tapped;
var otherSection = new TableSection("Other")
var otherSection = new TableSection(AppResources.Other)
{
aboutCell,
helpCell
@ -145,9 +146,7 @@ namespace Bit.App.Pages
if(Device.OS == TargetPlatform.iOS)
{
var rateCell = new LongDetailViewCell("Rate the App",
"App Store ratings are reset with every new version of bitwarden."
+ " Please consider helping us out with a good review!");
var rateCell = new LongDetailViewCell(AppResources.RateTheApp, AppResources.RateTheAppDescriptionAppStore);
rateCell.Tapped += RateCell_Tapped;
otherSection.Add(rateCell);
}
@ -155,8 +154,8 @@ namespace Bit.App.Pages
{
var rateCell = new ExtendedTextCell
{
Text = "Rate the App",
Detail = "Please consider helping us out with a good review!",
Text = AppResources.RateTheApp,
Detail = AppResources.RateTheAppDescription,
ShowDisclousure = true,
DetailLineBreakMode = LineBreakMode.WordWrap
};
@ -169,17 +168,17 @@ namespace Bit.App.Pages
Root = new TableRoot
{
securitySecion,
new TableSection("Account")
new TableSection(AppResources.Account)
{
changeMasterPasswordCell,
changeEmailCell
},
new TableSection("Manage")
new TableSection(AppResources.Manage)
{
foldersCell,
syncCell
},
new TableSection("Current Session")
new TableSection(AppResources.CurrentSession)
{
lockCell,
logOutCell
@ -194,10 +193,8 @@ namespace Bit.App.Pages
private async void TwoStepCell_Tapped(object sender, EventArgs e)
{
if(!await _userDialogs.ConfirmAsync("Two-step login makes your account more secure by requiring you to enter"
+ " a security code from an authenticator app whenever you log in. Two-step login can be enabled on the"
+ " bitwarden.com web vault. Do you want to visit the website now?",
null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.TwoStepLoginConfirmation, null, AppResources.Yes,
AppResources.Cancel))
{
return;
}
@ -208,35 +205,36 @@ namespace Bit.App.Pages
private async void LockOptionsCell_Tapped(object sender, EventArgs e)
{
var selection = await DisplayActionSheet("Lock Options", AppResources.Cancel, null,
"Immediately", "1 minute", "15 minutes", "1 hour", "4 hours", "Never");
var selection = await DisplayActionSheet(AppResources.LockOptions, AppResources.Cancel, null,
AppResources.LockOptionImmediately, AppResources.LockOption1Minute, AppResources.LockOption15Minutes,
AppResources.LockOption1Hour, AppResources.LockOption4Hours, AppResources.Never);
if(selection == AppResources.Cancel)
{
return;
}
if(selection == "Immediately")
if(selection == AppResources.LockOptionImmediately)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, 0);
}
else if(selection == "1 minute")
else if(selection == AppResources.LockOption1Minute)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, 60);
}
else if(selection == "15 minutes")
else if(selection == AppResources.LockOption15Minutes)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, 60 * 15);
}
else if(selection == "1 hour")
else if(selection == AppResources.LockOption1Hour)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, 60 * 60);
}
else if(selection == "4 hours")
else if(selection == AppResources.LockOption4Hours)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, 60 * 60 * 4);
}
else if(selection == "Never")
else if(selection == AppResources.Never)
{
_settings.AddOrUpdateValue(Constants.SettingLockSeconds, -1);
}
@ -282,8 +280,7 @@ namespace Bit.App.Pages
private async void LogOutCell_Tapped(object sender, EventArgs e)
{
if(!await _userDialogs.ConfirmAsync(
"Are you sure you want to log out?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.LogoutConfirmation, null, AppResources.Yes, AppResources.Cancel))
{
return;
}
@ -293,8 +290,8 @@ namespace Bit.App.Pages
private async void ChangeMasterPasswordCell_Tapped(object sender, EventArgs e)
{
if(!await _userDialogs.ConfirmAsync("You can change your master password on the bitwarden.com web vault."
+ "Do you want to visit the website now?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.ChangePasswordConfirmation, null, AppResources.Yes,
AppResources.Cancel))
{
return;
}
@ -305,8 +302,8 @@ namespace Bit.App.Pages
private async void ChangeEmailCell_Tapped(object sender, EventArgs e)
{
if(!await _userDialogs.ConfirmAsync("You can change your email address on the bitwarden.com web vault."
+ " Do you want to visit the website now?", null, AppResources.Yes, AppResources.Cancel))
if(!await _userDialogs.ConfirmAsync(AppResources.ChangeEmailConfirmation, null, AppResources.Yes,
AppResources.Cancel))
{
return;
}
@ -380,27 +377,27 @@ namespace Bit.App.Pages
var lockSeconds = _settings.GetValueOrDefault(Constants.SettingLockSeconds, 60 * 15);
if(lockSeconds == -1)
{
return "Never";
return AppResources.Never;
}
else if(lockSeconds == 60)
{
return "1 minute";
return AppResources.LockOption1Minute;
}
else if(lockSeconds == 60 * 15)
{
return "15 minutes";
return AppResources.LockOption15Minutes;
}
else if(lockSeconds == 60 * 60)
{
return "1 hour";
return AppResources.LockOption1Hour;
}
else if(lockSeconds == 60 * 60 * 4)
{
return "4 hours";
return AppResources.LockOption4Hours;
}
else
{
return "Immediately";
return AppResources.LockOptionImmediately;
}
}

View File

@ -32,7 +32,7 @@ namespace Bit.App.Pages
{
var instructionLabel = new Label
{
Text = "Enter a 4 digit PIN code to unlock the app with.",
Text = AppResources.SetPINDirection,
LineBreakMode = LineBreakMode.WordWrap,
FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)),
HorizontalTextAlignment = TextAlignment.Center,
@ -56,7 +56,7 @@ namespace Bit.App.Pages
PinControl.Label.GestureRecognizers.Add(tgr);
instructionLabel.GestureRecognizers.Add(tgr);
Title = "Set PIN";
Title = AppResources.SetPIN;
Content = stackLayout;
Content.GestureRecognizers.Add(tgr);
BindingContext = Model;

View File

@ -36,7 +36,7 @@ namespace Bit.App.Pages
{
var syncButton = new ExtendedButton
{
Text = "Sync Vault Now",
Text = AppResources.SyncVaultNow,
Command = new Command(async () => await SyncAsync()),
Style = (Style)Application.Current.Resources["btn-primaryAccent"]
};
@ -57,7 +57,7 @@ namespace Bit.App.Pages
Padding = new Thickness(15, 0)
};
Title = "Sync";
Title = AppResources.Sync;
Content = stackLayout;
}
@ -75,7 +75,7 @@ namespace Bit.App.Pages
var lastSyncDate = _settings.GetValueOrDefault<DateTime?>(Constants.LastSync, null);
try
{
LastSyncLabel.Text = "Last Sync: " + lastSyncDate?.ToLocalTime().ToString() ?? "Never";
LastSyncLabel.Text = AppResources.LastSync + " " + lastSyncDate?.ToLocalTime().ToString() ?? AppResources.Never;
}
catch
{
@ -93,17 +93,17 @@ namespace Bit.App.Pages
return;
}
_userDialogs.ShowLoading("Syncing...", MaskType.Black);
_userDialogs.ShowLoading(AppResources.Syncing, MaskType.Black);
var succeeded = await _syncService.FullSyncAsync();
_userDialogs.HideLoading();
if(succeeded)
{
_userDialogs.Toast("Syncing complete.");
_userDialogs.Toast(AppResources.SyncingComplete);
_googleAnalyticsService.TrackAppEvent("Synced");
}
else
{
_userDialogs.Toast("Syncing failed.");
_userDialogs.Toast(AppResources.SyncingFailed);
}
SetLastSync();

View File

@ -61,6 +61,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to About.
/// </summary>
public static string About {
get {
return ResourceManager.GetString("About", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Account.
/// </summary>
public static string Account {
get {
return ResourceManager.GetString("Account", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Add.
/// </summary>
@ -70,6 +88,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Add Folder.
/// </summary>
public static string AddFolder {
get {
return ResourceManager.GetString("AddFolder", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Add Site.
/// </summary>
@ -115,6 +142,42 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Change Email.
/// </summary>
public static string ChangeEmail {
get {
return ResourceManager.GetString("ChangeEmail", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to You can change your email address on the bitwarden.com web vault. Do you want to visit the website now?.
/// </summary>
public static string ChangeEmailConfirmation {
get {
return ResourceManager.GetString("ChangeEmailConfirmation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Change Master Password.
/// </summary>
public static string ChangeMasterPassword {
get {
return ResourceManager.GetString("ChangeMasterPassword", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to You can change your master password on the bitwarden.com web vault. Do you want to visit the website now?.
/// </summary>
public static string ChangePasswordConfirmation {
get {
return ResourceManager.GetString("ChangePasswordConfirmation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Copy.
/// </summary>
@ -142,6 +205,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Credits.
/// </summary>
public static string Credits {
get {
return ResourceManager.GetString("Credits", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Current Session.
/// </summary>
public static string CurrentSession {
get {
return ResourceManager.GetString("CurrentSession", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Delete.
/// </summary>
@ -151,6 +232,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Deleting....
/// </summary>
public static string Deleting {
get {
return ResourceManager.GetString("Deleting", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Do you really want to delete? This cannot be undone..
/// </summary>
@ -169,6 +259,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Edit Folder.
/// </summary>
public static string EditFolder {
get {
return ResourceManager.GetString("EditFolder", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Email.
/// </summary>
@ -187,6 +286,33 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Email Us.
/// </summary>
public static string EmailUs {
get {
return ResourceManager.GetString("EmailUs", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Email us directly to get help or leave feedback..
/// </summary>
public static string EmailUsDescription {
get {
return ResourceManager.GetString("EmailUsDescription", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Enter your PIN code..
/// </summary>
public static string EnterPIN {
get {
return ResourceManager.GetString("EnterPIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Favorites.
/// </summary>
@ -196,6 +322,42 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to File a Bug Report.
/// </summary>
public static string FileBugReport {
get {
return ResourceManager.GetString("FileBugReport", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Open an issue at our GitHub repository..
/// </summary>
public static string FileBugReportDescription {
get {
return ResourceManager.GetString("FileBugReportDescription", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fingerprint.
/// </summary>
public static string Fingerprint {
get {
return ResourceManager.GetString("Fingerprint", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Use your fingerprint to verify..
/// </summary>
public static string FingerprintDirection {
get {
return ResourceManager.GetString("FingerprintDirection", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Folder.
/// </summary>
@ -205,6 +367,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to New folder created..
/// </summary>
public static string FolderCreated {
get {
return ResourceManager.GetString("FolderCreated", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Folder deleted..
/// </summary>
public static string FolderDeleted {
get {
return ResourceManager.GetString("FolderDeleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to (none).
/// </summary>
@ -214,6 +394,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Folders.
/// </summary>
public static string Folders {
get {
return ResourceManager.GetString("Folders", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Folder updated..
/// </summary>
public static string FolderUpdated {
get {
return ResourceManager.GetString("FolderUpdated", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Go To Website.
/// </summary>
@ -223,6 +421,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Help and Feedback.
/// </summary>
public static string HelpAndFeedback {
get {
return ResourceManager.GetString("HelpAndFeedback", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Hide.
/// </summary>
@ -250,6 +457,33 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Invalid Master Password. Try again..
/// </summary>
public static string InvalidMasterPassword {
get {
return ResourceManager.GetString("InvalidMasterPassword", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Invalid PIN. Try again..
/// </summary>
public static string InvalidPIN {
get {
return ResourceManager.GetString("InvalidPIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Last Sync:.
/// </summary>
public static string LastSync {
get {
return ResourceManager.GetString("LastSync", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Launch.
/// </summary>
@ -259,6 +493,69 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Lock.
/// </summary>
public static string Lock {
get {
return ResourceManager.GetString("Lock", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to 15 minutes.
/// </summary>
public static string LockOption15Minutes {
get {
return ResourceManager.GetString("LockOption15Minutes", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to 1 hour.
/// </summary>
public static string LockOption1Hour {
get {
return ResourceManager.GetString("LockOption1Hour", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to 1 minute.
/// </summary>
public static string LockOption1Minute {
get {
return ResourceManager.GetString("LockOption1Minute", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to 4 hours.
/// </summary>
public static string LockOption4Hours {
get {
return ResourceManager.GetString("LockOption4Hours", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Immediately.
/// </summary>
public static string LockOptionImmediately {
get {
return ResourceManager.GetString("LockOptionImmediately", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Lock Options.
/// </summary>
public static string LockOptions {
get {
return ResourceManager.GetString("LockOptions", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Log In.
/// </summary>
@ -286,6 +583,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Are you sure you want to log out?.
/// </summary>
public static string LogoutConfirmation {
get {
return ResourceManager.GetString("LogoutConfirmation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Manage.
/// </summary>
public static string Manage {
get {
return ResourceManager.GetString("Manage", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Master Password.
/// </summary>
@ -322,6 +637,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Never.
/// </summary>
public static string Never {
get {
return ResourceManager.GetString("Never", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to No.
/// </summary>
@ -349,6 +673,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Other.
/// </summary>
public static string Other {
get {
return ResourceManager.GetString("Other", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Password.
/// </summary>
@ -358,6 +691,33 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Rate the App.
/// </summary>
public static string RateTheApp {
get {
return ResourceManager.GetString("RateTheApp", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Please consider helping us out with a good review!.
/// </summary>
public static string RateTheAppDescription {
get {
return ResourceManager.GetString("RateTheAppDescription", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to App Store ratings are reset with every new version of bitwarden. Please consider helping us out with a good review!.
/// </summary>
public static string RateTheAppDescriptionAppStore {
get {
return ResourceManager.GetString("RateTheAppDescriptionAppStore", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Save.
/// </summary>
@ -367,6 +727,42 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Saving....
/// </summary>
public static string Saving {
get {
return ResourceManager.GetString("Saving", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Security.
/// </summary>
public static string Security {
get {
return ResourceManager.GetString("Security", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Set PIN.
/// </summary>
public static string SetPIN {
get {
return ResourceManager.GetString("SetPIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Enter a 4 digit PIN code to unlock the app with..
/// </summary>
public static string SetPINDirection {
get {
return ResourceManager.GetString("SetPINDirection", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Settings.
/// </summary>
@ -403,6 +799,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Submit.
/// </summary>
public static string Submit {
get {
return ResourceManager.GetString("Submit", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Sync.
/// </summary>
@ -412,6 +817,51 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Syncing....
/// </summary>
public static string Syncing {
get {
return ResourceManager.GetString("Syncing", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Syncing complete..
/// </summary>
public static string SyncingComplete {
get {
return ResourceManager.GetString("SyncingComplete", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Syncing failed..
/// </summary>
public static string SyncingFailed {
get {
return ResourceManager.GetString("SyncingFailed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Sync Vault Now.
/// </summary>
public static string SyncVaultNow {
get {
return ResourceManager.GetString("SyncVaultNow", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thank You.
/// </summary>
public static string ThankYou {
get {
return ResourceManager.GetString("ThankYou", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Tools.
/// </summary>
@ -421,6 +871,51 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Touch ID.
/// </summary>
public static string TouchID {
get {
return ResourceManager.GetString("TouchID", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Two-step Login.
/// </summary>
public static string TwoStepLogin {
get {
return ResourceManager.GetString("TwoStepLogin", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Two-step login makes your account more secure by requiring you to enter a security code from an authenticator app whenever you log in. Two-step login can be enabled on the bitwarden.com web vault. Do you want to visit the website now?.
/// </summary>
public static string TwoStepLoginConfirmation {
get {
return ResourceManager.GetString("TwoStepLoginConfirmation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Unlock with {0}.
/// </summary>
public static string UnlockWith {
get {
return ResourceManager.GetString("UnlockWith", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Unlock with PIN Code.
/// </summary>
public static string UnlockWithPIN {
get {
return ResourceManager.GetString("UnlockWithPIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to URI.
/// </summary>
@ -430,6 +925,15 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Use Fingerprint to Unlock.
/// </summary>
public static string UseFingerprintToUnlock {
get {
return ResourceManager.GetString("UseFingerprintToUnlock", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Username.
/// </summary>
@ -457,6 +961,42 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Verify Fingerprint.
/// </summary>
public static string VerifyFingerprint {
get {
return ResourceManager.GetString("VerifyFingerprint", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Verify Master Password.
/// </summary>
public static string VerifyMasterPassword {
get {
return ResourceManager.GetString("VerifyMasterPassword", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Verify PIN.
/// </summary>
public static string VerifyPIN {
get {
return ResourceManager.GetString("VerifyPIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Version.
/// </summary>
public static string Version {
get {
return ResourceManager.GetString("Version", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to View.
/// </summary>
@ -466,6 +1006,24 @@ namespace Bit.App.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Visit Our Website.
/// </summary>
public static string VisitOurWebsite {
get {
return ResourceManager.GetString("VisitOurWebsite", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Visit our website to get help, news, email us, and/or learn more about how to use bitwarden..
/// </summary>
public static string VisitOurWebsiteDescription {
get {
return ResourceManager.GetString("VisitOurWebsiteDescription", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Website.
/// </summary>

View File

@ -117,10 +117,16 @@
<resheader name="writer">
<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>About</value>
</data>
<data name="Add" xml:space="preserve">
<value>Add</value>
<comment>Add/create a new entity (verb).</comment>
</data>
<data name="AddFolder" xml:space="preserve">
<value>Add Folder</value>
</data>
<data name="AddSite" xml:space="preserve">
<value>Add Site</value>
<comment>The title for the add site page.</comment>
@ -153,10 +159,18 @@
<value>Copy Username</value>
<comment>The button text that allows a user to copy the site's username to their clipboard.</comment>
</data>
<data name="Credits" xml:space="preserve">
<value>Credits</value>
<comment>Title for page that we use to give credit to resources that we use.</comment>
</data>
<data name="Delete" xml:space="preserve">
<value>Delete</value>
<comment>Delete an entity (verb).</comment>
</data>
<data name="Deleting" xml:space="preserve">
<value>Deleting...</value>
<comment>Message shown when interacting with the server</comment>
</data>
<data name="DoYouReallyWantToDelete" xml:space="preserve">
<value>Do you really want to delete? This cannot be undone.</value>
<comment>Confirmation alert message when deleteing something.</comment>
@ -164,6 +178,9 @@
<data name="Edit" xml:space="preserve">
<value>Edit</value>
</data>
<data name="EditFolder" xml:space="preserve">
<value>Edit Folder</value>
</data>
<data name="Email" xml:space="preserve">
<value>Email</value>
<comment>Short label for an email address.</comment>
@ -172,22 +189,55 @@
<value>Email Address</value>
<comment>Full label for a email address.</comment>
</data>
<data name="EmailUs" xml:space="preserve">
<value>Email Us</value>
</data>
<data name="EmailUsDescription" xml:space="preserve">
<value>Email us directly to get help or leave feedback.</value>
</data>
<data name="EnterPIN" xml:space="preserve">
<value>Enter your PIN code.</value>
</data>
<data name="Favorites" xml:space="preserve">
<value>Favorites</value>
<comment>Title for your favorite items in the vault.</comment>
</data>
<data name="FileBugReport" xml:space="preserve">
<value>File a Bug Report</value>
</data>
<data name="FileBugReportDescription" xml:space="preserve">
<value>Open an issue at our GitHub repository.</value>
</data>
<data name="FingerprintDirection" xml:space="preserve">
<value>Use your fingerprint to verify.</value>
</data>
<data name="Folder" xml:space="preserve">
<value>Folder</value>
<comment>Label for a folder.</comment>
</data>
<data name="FolderCreated" xml:space="preserve">
<value>New folder created.</value>
</data>
<data name="FolderDeleted" xml:space="preserve">
<value>Folder deleted.</value>
</data>
<data name="FolderNone" xml:space="preserve">
<value>(none)</value>
<comment>Sites that have no folder specified go in this special "catch-all" folder.</comment>
</data>
<data name="Folders" xml:space="preserve">
<value>Folders</value>
</data>
<data name="FolderUpdated" xml:space="preserve">
<value>Folder updated.</value>
</data>
<data name="GoToWebsite" xml:space="preserve">
<value>Go To Website</value>
<comment>The button text that allows user to launch the website to their web browser.</comment>
</data>
<data name="HelpAndFeedback" xml:space="preserve">
<value>Help and Feedback</value>
</data>
<data name="Hide" xml:space="preserve">
<value>Hide</value>
<comment>Hide a secret value that is currently shown (password).</comment>
@ -200,6 +250,12 @@
<value>Internet Connection Required</value>
<comment>Title for the alert when internet connection is required to continue.</comment>
</data>
<data name="InvalidMasterPassword" xml:space="preserve">
<value>Invalid Master Password. Try again.</value>
</data>
<data name="InvalidPIN" xml:space="preserve">
<value>Invalid PIN. Try again.</value>
</data>
<data name="Launch" xml:space="preserve">
<value>Launch</value>
<comment>The button text that allows user to launch the website to their web browser.</comment>
@ -216,6 +272,9 @@
<value>Log Out</value>
<comment>The log out button text (verb).</comment>
</data>
<data name="LogoutConfirmation" xml:space="preserve">
<value>Are you sure you want to log out?</value>
</data>
<data name="MasterPassword" xml:space="preserve">
<value>Master Password</value>
<comment>Label for a master password.</comment>
@ -251,6 +310,10 @@
<value>Save</value>
<comment>Button text for a save operation (verb).</comment>
</data>
<data name="Saving" xml:space="preserve">
<value>Saving...</value>
<comment>Message shown when interacting with the server</comment>
</data>
<data name="Settings" xml:space="preserve">
<value>Settings</value>
<comment>The title for the settings page.</comment>
@ -267,10 +330,16 @@
<value>No Name</value>
<comment>Title text to display when there is no name given for a site.</comment>
</data>
<data name="Submit" xml:space="preserve">
<value>Submit</value>
</data>
<data name="Sync" xml:space="preserve">
<value>Sync</value>
<comment>The title for the sync page.</comment>
</data>
<data name="ThankYou" xml:space="preserve">
<value>Thank You</value>
</data>
<data name="Tools" xml:space="preserve">
<value>Tools</value>
<comment>The title for the tools page.</comment>
@ -279,6 +348,9 @@
<value>URI</value>
<comment>Label for a uri/url.</comment>
</data>
<data name="UseFingerprintToUnlock" xml:space="preserve">
<value>Use Fingerprint to Unlock</value>
</data>
<data name="Username" xml:space="preserve">
<value>Username</value>
<comment>Label for a username.</comment>
@ -291,9 +363,27 @@
<value>{0} has been copied.</value>
<comment>Confirmation message after suceessfully copying a value to the clipboard.</comment>
</data>
<data name="VerifyFingerprint" xml:space="preserve">
<value>Verify Fingerprint</value>
</data>
<data name="VerifyMasterPassword" xml:space="preserve">
<value>Verify Master Password</value>
</data>
<data name="VerifyPIN" xml:space="preserve">
<value>Verify PIN</value>
</data>
<data name="Version" xml:space="preserve">
<value>Version</value>
</data>
<data name="View" xml:space="preserve">
<value>View</value>
</data>
<data name="VisitOurWebsite" xml:space="preserve">
<value>Visit Our Website</value>
</data>
<data name="VisitOurWebsiteDescription" xml:space="preserve">
<value>Visit our website to get help, news, email us, and/or learn more about how to use bitwarden.</value>
</data>
<data name="Website" xml:space="preserve">
<value>Website</value>
<comment>Label for a website.</comment>
@ -301,4 +391,105 @@
<data name="Yes" xml:space="preserve">
<value>Yes</value>
</data>
<data name="Account" xml:space="preserve">
<value>Account</value>
</data>
<data name="ChangeEmail" xml:space="preserve">
<value>Change Email</value>
</data>
<data name="ChangeEmailConfirmation" xml:space="preserve">
<value>You can change your email address on the bitwarden.com web vault. Do you want to visit the website now?</value>
</data>
<data name="ChangeMasterPassword" xml:space="preserve">
<value>Change Master Password</value>
</data>
<data name="ChangePasswordConfirmation" xml:space="preserve">
<value>You can change your master password on the bitwarden.com web vault. Do you want to visit the website now?</value>
</data>
<data name="CurrentSession" xml:space="preserve">
<value>Current Session</value>
</data>
<data name="Fingerprint" xml:space="preserve">
<value>Fingerprint</value>
</data>
<data name="LastSync" xml:space="preserve">
<value>Last Sync:</value>
</data>
<data name="Lock" xml:space="preserve">
<value>Lock</value>
</data>
<data name="LockOption15Minutes" xml:space="preserve">
<value>15 minutes</value>
</data>
<data name="LockOption1Hour" xml:space="preserve">
<value>1 hour</value>
</data>
<data name="LockOption1Minute" xml:space="preserve">
<value>1 minute</value>
</data>
<data name="LockOption4Hours" xml:space="preserve">
<value>4 hours</value>
</data>
<data name="LockOptionImmediately" xml:space="preserve">
<value>Immediately</value>
</data>
<data name="LockOptions" xml:space="preserve">
<value>Lock Options</value>
</data>
<data name="Manage" xml:space="preserve">
<value>Manage</value>
</data>
<data name="Never" xml:space="preserve">
<value>Never</value>
</data>
<data name="Other" xml:space="preserve">
<value>Other</value>
</data>
<data name="RateTheApp" xml:space="preserve">
<value>Rate the App</value>
</data>
<data name="RateTheAppDescription" xml:space="preserve">
<value>Please consider helping us out with a good review!</value>
</data>
<data name="RateTheAppDescriptionAppStore" xml:space="preserve">
<value>App Store ratings are reset with every new version of bitwarden. Please consider helping us out with a good review!</value>
</data>
<data name="Security" xml:space="preserve">
<value>Security</value>
</data>
<data name="SetPIN" xml:space="preserve">
<value>Set PIN</value>
</data>
<data name="SetPINDirection" xml:space="preserve">
<value>Enter a 4 digit PIN code to unlock the app with.</value>
</data>
<data name="Syncing" xml:space="preserve">
<value>Syncing...</value>
<comment>Message shown when interacting with the server</comment>
</data>
<data name="SyncingComplete" xml:space="preserve">
<value>Syncing complete.</value>
</data>
<data name="SyncingFailed" xml:space="preserve">
<value>Syncing failed.</value>
</data>
<data name="SyncVaultNow" xml:space="preserve">
<value>Sync Vault Now</value>
</data>
<data name="TouchID" xml:space="preserve">
<value>Touch ID</value>
<comment>What Apple calls their fingerprint reader.</comment>
</data>
<data name="TwoStepLogin" xml:space="preserve">
<value>Two-step Login</value>
</data>
<data name="TwoStepLoginConfirmation" xml:space="preserve">
<value>Two-step login makes your account more secure by requiring you to enter a security code from an authenticator app whenever you log in. Two-step login can be enabled on the bitwarden.com web vault. Do you want to visit the website now?</value>
</data>
<data name="UnlockWith" xml:space="preserve">
<value>Unlock with {0}</value>
</data>
<data name="UnlockWithPIN" xml:space="preserve">
<value>Unlock with PIN Code</value>
</data>
</root>