diff --git a/.github/workflows/version-bump.yml b/.github/workflows/version-bump.yml index d6a40293f..0b5c86e46 100644 --- a/.github/workflows/version-bump.yml +++ b/.github/workflows/version-bump.yml @@ -44,6 +44,12 @@ jobs: version: ${{ github.event.inputs.version_number }} file_path: "./src/iOS.Extension/Info.plist" + - name: Bump Version - iOS.ShareExtension + uses: bitwarden/gh-actions/version-bump@03ad9a873c39cdc95dd8d77dbbda67f84db43945 + with: + version: ${{ github.event.inputs.version_number }} + file_path: "./src/iOS.ShareExtension/Info.plist" + - name: Bump Version - iOS uses: bitwarden/gh-actions/version-bump@03ad9a873c39cdc95dd8d77dbbda67f84db43945 with: diff --git a/src/Android/Properties/AndroidManifest.xml b/src/Android/Properties/AndroidManifest.xml index b1cf97309..ac94e44cd 100644 --- a/src/Android/Properties/AndroidManifest.xml +++ b/src/Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@ - + diff --git a/src/App/Pages/Accounts/LockPageViewModel.cs b/src/App/Pages/Accounts/LockPageViewModel.cs index 084b045fa..c2e48b771 100644 --- a/src/App/Pages/Accounts/LockPageViewModel.cs +++ b/src/App/Pages/Accounts/LockPageViewModel.cs @@ -10,6 +10,9 @@ using Bit.Core.Models.Domain; using Bit.Core.Models.Request; using Bit.Core.Utilities; using Xamarin.Forms; +#if !FDROID +using Microsoft.AppCenter.Crashes; +#endif namespace Bit.App.Pages { @@ -137,8 +140,17 @@ namespace Bit.App.Pages if (_usingKeyConnector && !(BiometricLock || PinLock)) { await _vaultTimeoutService.LogOutAsync(); + return; } _email = await _userService.GetEmailAsync(); + if (string.IsNullOrWhiteSpace(_email)) + { + await _vaultTimeoutService.LogOutAsync(); +#if !FDROID + Crashes.TrackError(new NullReferenceException("Email not found in storage")); +#endif + return; + } var webVault = _environmentService.GetWebVaultUrl(); if (string.IsNullOrWhiteSpace(webVault)) { diff --git a/src/App/Pages/Accounts/LoginSsoPageViewModel.cs b/src/App/Pages/Accounts/LoginSsoPageViewModel.cs index 319992292..18ed6ad46 100644 --- a/src/App/Pages/Accounts/LoginSsoPageViewModel.cs +++ b/src/App/Pages/Accounts/LoginSsoPageViewModel.cs @@ -116,7 +116,7 @@ namespace Bit.App.Pages var redirectUri = "bitwarden://sso-callback"; var url = _apiService.IdentityBaseUrl + "/connect/authorize?" + - "client_id=" + _platformUtilsService.IdentityClientId + "&" + + "client_id=" + _platformUtilsService.GetClientType().GetString() + "&" + "redirect_uri=" + Uri.EscapeDataString(redirectUri) + "&" + "response_type=code&scope=api%20offline_access&" + "state=" + state + "&code_challenge=" + codeChallenge + "&" + diff --git a/src/App/Pages/Accounts/TwoFactorPageViewModel.cs b/src/App/Pages/Accounts/TwoFactorPageViewModel.cs index f663c4217..c2f1eb6b6 100644 --- a/src/App/Pages/Accounts/TwoFactorPageViewModel.cs +++ b/src/App/Pages/Accounts/TwoFactorPageViewModel.cs @@ -328,7 +328,7 @@ namespace Bit.App.Pages AppResources.Cancel, null, options.ToArray()); if (method == AppResources.RecoveryCodeTitle) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/lost-two-step-device/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/lost-two-step-device/"); } else if (method != AppResources.Cancel && method != null) { diff --git a/src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs b/src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs index ec9121fc5..11f389841 100644 --- a/src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs +++ b/src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs @@ -157,7 +157,7 @@ namespace Bit.App.Pages public void Help() { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/"); } public async Task FingerprintAsync() @@ -177,7 +177,7 @@ namespace Bit.App.Pages AppResources.LearnMore, AppResources.Close); if (learnMore) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/fingerprint-phrase/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/fingerprint-phrase/"); } } @@ -188,7 +188,7 @@ namespace Bit.App.Pages public void Import() { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/import-data/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/import-data/"); } public void WebVault() @@ -207,7 +207,7 @@ namespace Bit.App.Pages AppResources.LearnOrg, AppResources.Yes, AppResources.Cancel); if (confirmed) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/what-is-an-organization/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/about-organizations/"); } } @@ -217,7 +217,7 @@ namespace Bit.App.Pages AppResources.TwoStepLogin, AppResources.Yes, AppResources.Cancel); if (confirmed) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/setup-two-step-login/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/setup-two-step-login/"); } } @@ -227,7 +227,7 @@ namespace Bit.App.Pages AppResources.ChangeMasterPassword, AppResources.Yes, AppResources.Cancel); if (confirmed) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/change-your-master-password/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/master-password/#change-your-master-password"); } } diff --git a/src/App/Pages/Vault/AddEditPageViewModel.cs b/src/App/Pages/Vault/AddEditPageViewModel.cs index 52d648b38..2e8925b00 100644 --- a/src/App/Pages/Vault/AddEditPageViewModel.cs +++ b/src/App/Pages/Vault/AddEditPageViewModel.cs @@ -759,7 +759,7 @@ namespace Bit.App.Pages public void PasswordPromptHelp() { - _platformUtilsService.LaunchUri("https://bitwarden.com/help/article/managing-items/#protect-individual-items"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/managing-items/#protect-individual-items"); } private void TypeChanged() diff --git a/src/App/Pages/Vault/AttachmentsPageViewModel.cs b/src/App/Pages/Vault/AttachmentsPageViewModel.cs index 08f859202..8480221c2 100644 --- a/src/App/Pages/Vault/AttachmentsPageViewModel.cs +++ b/src/App/Pages/Vault/AttachmentsPageViewModel.cs @@ -78,7 +78,7 @@ namespace Bit.App.Pages AppResources.FeatureUnavailable, AppResources.LearnMore, AppResources.Cancel); if (confirmed) { - _platformUtilsService.LaunchUri("https://help.bitwarden.com/article/update-encryption-key/"); + _platformUtilsService.LaunchUri("https://bitwarden.com/help/account-encryption-key/#rotate-your-encryption-key"); } } } diff --git a/src/App/Pages/Vault/GroupingsPage/GroupingsPageListItem.cs b/src/App/Pages/Vault/GroupingsPage/GroupingsPageListItem.cs index d2fa0c46d..11e15677a 100644 --- a/src/App/Pages/Vault/GroupingsPage/GroupingsPageListItem.cs +++ b/src/App/Pages/Vault/GroupingsPage/GroupingsPageListItem.cs @@ -80,7 +80,7 @@ namespace Bit.App.Pages } else if (Collection != null) { - _icon = BitwardenIcons.Globe; + _icon = BitwardenIcons.Collection; } else if (Type != null) { diff --git a/src/App/Pages/Vault/ScanPage.xaml.cs b/src/App/Pages/Vault/ScanPage.xaml.cs index 981bb391c..30d6fb09f 100644 --- a/src/App/Pages/Vault/ScanPage.xaml.cs +++ b/src/App/Pages/Vault/ScanPage.xaml.cs @@ -1,5 +1,8 @@ using System; using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.AppCenter.Crashes; using Xamarin.Forms; namespace Bit.App.Pages @@ -8,8 +11,8 @@ namespace Bit.App.Pages { private readonly Action _callback; - private DateTime? _timerStarted = null; - private TimeSpan _timerMaxLength = TimeSpan.FromMinutes(3); + private CancellationTokenSource _autofocusCts; + private Task _continuousAutofocusTask; public ScanPage(Action callback) { @@ -32,22 +35,46 @@ namespace Bit.App.Pages { base.OnAppearing(); _zxing.IsScanning = true; - _timerStarted = DateTime.Now; - Device.StartTimer(new TimeSpan(0, 0, 2), () => + + // Fix for Autofocus, now it's done every 2 seconds so that the user does't have to do it + // https://github.com/Redth/ZXing.Net.Mobile/issues/414 + _autofocusCts?.Cancel(); + _autofocusCts = new CancellationTokenSource(TimeSpan.FromMinutes(3)); + + var autofocusCts = _autofocusCts; + _continuousAutofocusTask = Task.Run(async () => { - if (_timerStarted == null || (DateTime.Now - _timerStarted) > _timerMaxLength) + try { - return false; + while (!autofocusCts.IsCancellationRequested) + { + await Task.Delay(TimeSpan.FromSeconds(2), autofocusCts.Token); + Device.BeginInvokeOnMainThread(() => + { + if (!autofocusCts.IsCancellationRequested) + { + _zxing.AutoFocus(); + } + }); + } } - _zxing.AutoFocus(); - return true; - }); + catch (TaskCanceledException) { } + catch (Exception ex) + { +#if !FDROID + Crashes.TrackError(ex); +#endif + } + }, autofocusCts.Token); } - protected override void OnDisappearing() + protected override async void OnDisappearing() { - _timerStarted = null; + _autofocusCts?.Cancel(); + + await _continuousAutofocusTask; _zxing.IsScanning = false; + base.OnDisappearing(); } diff --git a/src/App/Resources/AppResources.az.resx b/src/App/Resources/AppResources.az.resx index b4b94c724..1d73a97e1 100644 --- a/src/App/Resources/AppResources.az.resx +++ b/src/App/Resources/AppResources.az.resx @@ -2111,7 +2111,7 @@ Etibarsız təsdiqləmə kodu - Request one-time password + Tək istifadəlik parol tələb et Kod göndər @@ -2120,24 +2120,24 @@ Göndərilir - Copy Send link on save + Send bağlantısını saxlamaq üçün kopyala - Sending code + Kod göndərilir - Verifying + Təsdiqlənir - Resend Code + Kodu təkrar göndər - A verification code was sent to your email + Təsdiqləmə kodu e-poçtunuza göndərildi - An error occurred while sending a verification code to your email. Please try again + E-poçtunuza təsdiqləmə kodu göndərilərkən bir xəta baş verdi. Zəhmət olmasa yenidən sınayın - Enter the verification code that was sent to your email + E-poçtunuza göndərilmiş təsdiqləmə kodunu daxil edin diff --git a/src/App/Resources/AppResources.be.resx b/src/App/Resources/AppResources.be.resx index b6472ec8c..05afd0783 100644 --- a/src/App/Resources/AppResources.be.resx +++ b/src/App/Resources/AppResources.be.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. diff --git a/src/App/Resources/AppResources.bg.resx b/src/App/Resources/AppResources.bg.resx index 233531ec5..1eecdafa7 100644 --- a/src/App/Resources/AppResources.bg.resx +++ b/src/App/Resources/AppResources.bg.resx @@ -140,7 +140,7 @@ Navigate back to the previous screen. - Битуорден + Bitwarden App name. Shouldn't ever change. @@ -182,11 +182,11 @@ Редактиране на папка - Е-поща + Имейл Short label for an email address. - Е-поща + Имейл адрес Full label for a email address. @@ -288,7 +288,7 @@ The title for the vault page. - Наименование + Име Label for an entity name. diff --git a/src/App/Resources/AppResources.bn.resx b/src/App/Resources/AppResources.bn.resx index 93bcd893f..7d4094c9c 100644 --- a/src/App/Resources/AppResources.bn.resx +++ b/src/App/Resources/AppResources.bn.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.cs.resx b/src/App/Resources/AppResources.cs.resx index aaa3a3648..a216c4bf9 100644 --- a/src/App/Resources/AppResources.cs.resx +++ b/src/App/Resources/AppResources.cs.resx @@ -2042,10 +2042,10 @@ Your Master Password was recently changed by an administrator in your organization. In order to access the vault, you must update your Master Password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour. - Updating Password + Aktualizace hesla - Currently unable to update password + Aktuálně nelze aktualizovat heslo Odstranit hlavní heslo @@ -2057,7 +2057,7 @@ If you do not want to remove your Master Password, you may leave this organization. - Leave Organization + Opustit organizaci Leave {0}? @@ -2111,7 +2111,7 @@ Neplatný ověřovací kód. - Request one-time password + Vyžádat jednorázové heslo Poslat kód @@ -2120,19 +2120,19 @@ Odesílání - Copy Send link on save + Při uložení zkopírovat odkaz na Send - Sending code + Odesílání kódu - Verifying + Ověřování - Resend Code + Znovu odeslat kód - A verification code was sent to your email + Ověřovací kód byl odeslán na váš e-mail An error occurred while sending a verification code to your email. Please try again diff --git a/src/App/Resources/AppResources.da.resx b/src/App/Resources/AppResources.da.resx index f7e6b4f97..6af06fb14 100644 --- a/src/App/Resources/AppResources.da.resx +++ b/src/App/Resources/AppResources.da.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Deaktivér denne Send, så ingen kan tilgå den. + Deaktivér denne Send, så ingen kan tilgå den 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1991,7 +1991,7 @@ Tilpasset - Del denne Send, når den gemmes. + Del denne Send, når den gemmes 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2003,7 +2003,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Skjul min e-mailadresse for modtagere. + Skjul min e-mailadresse for modtagere Én eller flere organisationspolitikker påvirker dine Send-valgmuligheder. diff --git a/src/App/Resources/AppResources.en-IN.resx b/src/App/Resources/AppResources.en-IN.resx index ccc2f71a6..102239845 100644 --- a/src/App/Resources/AppResources.en-IN.resx +++ b/src/App/Resources/AppResources.en-IN.resx @@ -1936,7 +1936,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2016,7 +2016,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organisation policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.fa.resx b/src/App/Resources/AppResources.fa.resx index 65d6a91b7..ec81864ac 100644 --- a/src/App/Resources/AppResources.fa.resx +++ b/src/App/Resources/AppResources.fa.resx @@ -2112,7 +2112,7 @@ کد تایید نامعتبر است. - Request one-time password + درخواست رمز یکبار مصرف ارسال کد @@ -2121,7 +2121,7 @@ درحال ارسال - Copy Send link on save + لینک ارسال را در ذخیره کپی کن درحال ارسال کد diff --git a/src/App/Resources/AppResources.fil.resx b/src/App/Resources/AppResources.fil.resx index 072498ff8..a7a073d97 100644 --- a/src/App/Resources/AppResources.fil.resx +++ b/src/App/Resources/AppResources.fil.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.hi.resx b/src/App/Resources/AppResources.hi.resx index 881ccd857..4eb028bc1 100644 --- a/src/App/Resources/AppResources.hi.resx +++ b/src/App/Resources/AppResources.hi.resx @@ -1925,7 +1925,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1993,7 +1993,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2005,7 +2005,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.it.resx b/src/App/Resources/AppResources.it.resx index ce1c968ed..c3986951e 100644 --- a/src/App/Resources/AppResources.it.resx +++ b/src/App/Resources/AppResources.it.resx @@ -1821,7 +1821,7 @@ Se abilitato, il servizio di accessibilità di Bitwarden mostrerà una finestra a comparsa quando i campi login vengono selezionati per aiutarti con l'auto-completamento. - Se abilitato, l'accessibilità mostrerà una finestra a compaesa per aumentare il servizio di auto-completamento per le vecchie applicazioni che non supportano il framework di auto-completamento di Android. + Se abilitato, l'accessibilità mostrerà una finestra a comparsa per aumentare il servizio di auto-completamento per le vecchie applicazioni che non supportano il framework di auto-completamento di Android. A causa di una policy aziendale, non è possibile salvare elementi nella tua cassaforte personale. Cambia l'opzione proprietà in un'organizzazione e scegli tra le raccolte disponibili. diff --git a/src/App/Resources/AppResources.ka.resx b/src/App/Resources/AppResources.ka.resx index 072498ff8..a7a073d97 100644 --- a/src/App/Resources/AppResources.ka.resx +++ b/src/App/Resources/AppResources.ka.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.ml.resx b/src/App/Resources/AppResources.ml.resx index 3500fad2f..faca7a664 100644 --- a/src/App/Resources/AppResources.ml.resx +++ b/src/App/Resources/AppResources.ml.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2003,7 +2003,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.nb.resx b/src/App/Resources/AppResources.nb.resx index 6deee337a..03fb9e3ce 100644 --- a/src/App/Resources/AppResources.nb.resx +++ b/src/App/Resources/AppResources.nb.resx @@ -2034,64 +2034,64 @@ Captcha feilet. Prøv på nytt. - Updated Master Password + Oppdaterte hovedpassordet - Update Master Password + Oppdater hovedpassord - Your Master Password was recently changed by an administrator in your organization. In order to access the vault, you must update your Master Password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour. + Hovedpassordet ditt ble nylig endret av en administrator i organisasjonen din. For å få tilgang til hvelvet, må du oppdatere hovedpassordet ditt nå. Hvis du fortsetter, logges du ut av den nåværende økten, og du må logge på igjen. Aktive økter på andre enheter kan fortsette å være aktive i opptil én time. - Updating Password + Oppdaterer passord - Currently unable to update password + Kan for øyeblikket ikke oppdatere passord - Remove Master Password + Fjern hovedpassord - {0} is using SSO with customer-managed encryption. Continuing will remove your Master Password from your account and require SSO to login. + {0} bruker SSO med kundeadministrert kryptering. Hvis du fortsetter, fjernes hovedpassordet ditt fra kontoen din, og SSO kreves for å logge på. - If you do not want to remove your Master Password, you may leave this organization. + Hvis du ikke vil fjerne hovedpassordet ditt, kan du forlate denne organisasjonen. - Leave Organization + Forlat organisasjonen - Leave {0}? + Vil du forlate {0}? FIDO2 WebAuthn - To continue, have your FIDO2 WebAuthn enabled security key ready, then follow the instructions after clicking 'Authenticate WebAuthn' on the next screen. + For å fortsette, ha din FIDO2 WebAuthn-aktiverte sikkerhetsnøkkel klar, og følg deretter instruksjonene etter å ha klikket på 'Autentiser WebAuthn' på den neste skjermen. - Authentication using FIDO2 WebAuthn, you can authenticate using an external security key. + Autentisering med FIDO2 WebAuthn, du kan autentisere med en ekstern sikkerhetsnøkkel. - Authenticate WebAuthn + Autentiser WebAuthn - Return to App + Gå tilbake til appen - Please make sure your default browser supports WebAuthn and try again. + Sørg for at standardnettleseren din støtter WebAuthn og prøv igjen. - This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password. + Denne organisasjonen har en bedriftsoppsettsregel som automatisk innrullerer deg i tilbakestilling av passord. Registrering vil tillate organisasjonsadministratorer å endre hovedpassordet ditt. - Your organization policies are affecting your vault timeout. Maximum allowed Vault Timeout is {0} hour(s) and {1} minute(s) + Din organisasjons retningslinjer påvirker tidsavbruddet for hvelvet. Maksimalt tillatt tidsavbrudd for hvelv er {0} time(r) og {1} minutt(er) - Your vault timeout exceeds the restrictions set by your organization. + Tidsavbruddet ditt for hvelvet overstiger begrensningene som er satt av organisasjonen din. - One or more organization policies prevents your from exporting your personal vault. + En eller flere organisasjonsoppsettsregler hindrer deg i å eksportere ditt personlige hvelv. Slett konto @@ -2112,7 +2112,7 @@ Ugyldig verifiseringskode. - Request one-time password + Be om éngangspassord Send kode @@ -2121,7 +2121,7 @@ Sender - Copy Send link on save + Kopier Send-lenke ved lagring Sender kode diff --git a/src/App/Resources/AppResources.nn.resx b/src/App/Resources/AppResources.nn.resx index 072498ff8..a7a073d97 100644 --- a/src/App/Resources/AppResources.nn.resx +++ b/src/App/Resources/AppResources.nn.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.pl.resx b/src/App/Resources/AppResources.pl.resx index 9f3519513..458b70cb3 100644 --- a/src/App/Resources/AppResources.pl.resx +++ b/src/App/Resources/AppResources.pl.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Wyłącz wysyłkę, aby nikt nie miał do niej dostępu. + Wyłącz wysyłkę, aby nikt nie miał do niej dostępu 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1991,7 +1991,7 @@ Niestandardowe - Udostępnij wysyłkę po zapisaniu. + Udostępnij wysyłkę po zapisaniu 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2003,7 +2003,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Ukryj mój adres e-mail przed odbiorcami. + Ukryj mój adres e-mail przed odbiorcami Co najmniej jedna zasada organizacji wpływa na ustawienia wysyłek. diff --git a/src/App/Resources/AppResources.pt-BR.resx b/src/App/Resources/AppResources.pt-BR.resx index 790e7e30b..7a7ce3f8d 100644 --- a/src/App/Resources/AppResources.pt-BR.resx +++ b/src/App/Resources/AppResources.pt-BR.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Desative este Send para que ninguém possa acessá-lo. + Desabilite este Send para que ninguém possa acessá-lo. 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. diff --git a/src/App/Resources/AppResources.resx b/src/App/Resources/AppResources.resx index 746658a19..06b132126 100644 --- a/src/App/Resources/AppResources.resx +++ b/src/App/Resources/AppResources.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.ro.resx b/src/App/Resources/AppResources.ro.resx index 3dbb210cc..c618e2324 100644 --- a/src/App/Resources/AppResources.ro.resx +++ b/src/App/Resources/AppResources.ro.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Dezactivați acest Send astfel încât nimeni să nu-l poată accesa. + Dezactivați acest Send pentru ca nimeni să nu-l poată accesa 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1991,7 +1991,7 @@ Personalizat - Partajați această Send după salvare. + Partajați această Send după salvare 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2003,7 +2003,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Ascundeți adresa mea de e-mail de la destinatari. + Ascundeți adresa mea de e-mail de la destinatari Una sau mai multe politici organizaționale vă afectează opțiunile Send-ului. diff --git a/src/App/Resources/AppResources.si.resx b/src/App/Resources/AppResources.si.resx index 91206dde9..ffbf5d0fe 100644 --- a/src/App/Resources/AppResources.si.resx +++ b/src/App/Resources/AppResources.si.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.sl.resx b/src/App/Resources/AppResources.sl.resx index 07b03cd59..2c97e2782 100644 --- a/src/App/Resources/AppResources.sl.resx +++ b/src/App/Resources/AppResources.sl.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. diff --git a/src/App/Resources/AppResources.sv.resx b/src/App/Resources/AppResources.sv.resx index 3ccf53fbb..aa01d9678 100644 --- a/src/App/Resources/AppResources.sv.resx +++ b/src/App/Resources/AppResources.sv.resx @@ -239,7 +239,7 @@ Hjälp & Feedback - Göm + Dölj Hide a secret value that is currently shown (password). @@ -333,7 +333,7 @@ Skicka - Synka + Synkronisering The title for the sync page. @@ -412,7 +412,7 @@ Undvik tvetydiga tecken - Bitwarden apptillägg + Bitwarden Apptillägg Det enklaste sättet att lägga till nya inloggningar i ditt valv är genom apptillägget. Läs mer om Bitwardens apptillägg genom att navigera till fliken "Inställningar". @@ -1582,7 +1582,7 @@ Din inloggningssession har upphört. - Använd biometri för att bekräfta. + Biometrisk verifiering Biometri @@ -1920,7 +1920,7 @@ Lösenordet har tagits bort. - Private notes about this Send. + Privata anteckningar om denna Send. 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2124,21 +2124,21 @@ Copy Send link on save - Sending code + Skickar kod - Verifying + Verifierar Resend Code - A verification code was sent to your email + En verifieringskod skickades till din e-postadress An error occurred while sending a verification code to your email. Please try again - Enter the verification code that was sent to your email + Ange verifieringskoden som skickades till din e-postadress diff --git a/src/App/Resources/AppResources.th.resx b/src/App/Resources/AppResources.th.resx index 9724140f2..6920043a5 100644 --- a/src/App/Resources/AppResources.th.resx +++ b/src/App/Resources/AppResources.th.resx @@ -1924,7 +1924,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1992,7 +1992,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2004,7 +2004,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.vi.resx b/src/App/Resources/AppResources.vi.resx index 945d1d993..661decc8e 100644 --- a/src/App/Resources/AppResources.vi.resx +++ b/src/App/Resources/AppResources.vi.resx @@ -1923,7 +1923,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Disable this Send so that no one can access it. + Disable this Send so that no one can access it 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -1991,7 +1991,7 @@ Custom - Share this Send upon save. + Share this Send upon save 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. @@ -2003,7 +2003,7 @@ 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. - Hide my email address from recipients. + Hide my email address from recipients One or more organization policies are affecting your Send options. diff --git a/src/App/Resources/AppResources.zh-Hant.resx b/src/App/Resources/AppResources.zh-Hant.resx index 680bfaa7c..6b8401acc 100644 --- a/src/App/Resources/AppResources.zh-Hant.resx +++ b/src/App/Resources/AppResources.zh-Hant.resx @@ -884,7 +884,7 @@ 將相機對準 QR code 。 - 掃描 QR Code + 掃描 QR 碼 相機 diff --git a/src/App/Services/MobilePlatformUtilsService.cs b/src/App/Services/MobilePlatformUtilsService.cs index 610b60fcd..f4e98e250 100644 --- a/src/App/Services/MobilePlatformUtilsService.cs +++ b/src/App/Services/MobilePlatformUtilsService.cs @@ -5,6 +5,7 @@ using Bit.App.Abstractions; using Bit.App.Models; using Bit.App.Resources; using Bit.Core.Abstractions; +using Bit.Core.Enums; using Plugin.Fingerprint; using Plugin.Fingerprint.Abstractions; using Xamarin.Essentials; @@ -35,8 +36,6 @@ namespace Bit.App.Services _broadcasterService = broadcasterService; } - public string IdentityClientId => "mobile"; - public void Init() { _broadcasterService.Subscribe(nameof(MobilePlatformUtilsService), (message) => @@ -80,6 +79,11 @@ namespace Bit.App.Services return DeviceInfo.Model; } + public ClientType GetClientType() + { + return ClientType.Mobile; + } + public bool IsViewOpen() { return false; diff --git a/src/Core/Abstractions/IPlatformUtilsService.cs b/src/Core/Abstractions/IPlatformUtilsService.cs index c03f3f87c..ec5b2894f 100644 --- a/src/Core/Abstractions/IPlatformUtilsService.cs +++ b/src/Core/Abstractions/IPlatformUtilsService.cs @@ -7,11 +7,10 @@ namespace Bit.Core.Abstractions { public interface IPlatformUtilsService { - string IdentityClientId { get; } - string GetApplicationVersion(); DeviceType GetDevice(); string GetDeviceString(); + ClientType GetClientType(); bool IsDev(); bool IsSelfHost(); bool IsViewOpen(); diff --git a/src/Core/Enums/ClientType.cs b/src/Core/Enums/ClientType.cs new file mode 100644 index 000000000..f6d3fd9c2 --- /dev/null +++ b/src/Core/Enums/ClientType.cs @@ -0,0 +1,36 @@ +namespace Bit.Core.Enums +{ + public enum ClientType: byte + { + Web = 1, + Browser = 2, + Desktop = 3, + Mobile = 4, + Cli = 5, + DirectoryConnector = 6, + } + + public static class ClientTypeExtensions + { + public static string GetString(this ClientType me) + { + switch (me) + { + case ClientType.Web: + return "web"; + case ClientType.Browser: + return "browser"; + case ClientType.Desktop: + return "desktop"; + case ClientType.Mobile: + return "mobile"; + case ClientType.Cli: + return "cli"; + case ClientType.DirectoryConnector: + return "connector"; + default: + return ""; + } + } + } +} diff --git a/src/Core/Services/ApiService.cs b/src/Core/Services/ApiService.cs index 93092aa93..c0b11a6a1 100644 --- a/src/Core/Services/ApiService.cs +++ b/src/Core/Services/ApiService.cs @@ -1,4 +1,5 @@ using Bit.Core.Abstractions; +using Bit.Core.Enums; using Bit.Core.Exceptions; using Bit.Core.Models.Domain; using Bit.Core.Models.Request; @@ -37,6 +38,8 @@ namespace Bit.Core.Services _logoutCallbackAsync = logoutCallbackAsync; var device = (int)_platformUtilsService.GetDevice(); _httpClient.DefaultRequestHeaders.Add("Device-Type", device.ToString()); + _httpClient.DefaultRequestHeaders.Add("Bitwarden-Client-Name", _platformUtilsService.GetClientType().GetString()); + _httpClient.DefaultRequestHeaders.Add("Bitwarden-Client-Version", _platformUtilsService.GetApplicationVersion()); if (!string.IsNullOrWhiteSpace(customUserAgent)) { _httpClient.DefaultRequestHeaders.UserAgent.ParseAdd(customUserAgent); @@ -87,7 +90,7 @@ namespace Bit.Core.Services Version = new Version(1, 0), RequestUri = new Uri(string.Concat(IdentityBaseUrl, "/connect/token")), Method = HttpMethod.Post, - Content = new FormUrlEncodedContent(request.ToIdentityToken(_platformUtilsService.IdentityClientId)) + Content = new FormUrlEncodedContent(request.ToIdentityToken(_platformUtilsService.GetClientType().GetString())) }; requestMessage.Headers.Add("Accept", "application/json"); request.AlterIdentityTokenHeaders(requestMessage.Headers); diff --git a/src/iOS.Autofill/Info.plist b/src/iOS.Autofill/Info.plist index c59f29b26..580392bfe 100644 --- a/src/iOS.Autofill/Info.plist +++ b/src/iOS.Autofill/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.autofill CFBundleShortVersionString - 2.16.1 + 2.16.2 CFBundleVersion 1 CFBundleLocalizations diff --git a/src/iOS.Core/Renderers/ExtendedDatePickerRenderer.cs b/src/iOS.Core/Renderers/ExtendedDatePickerRenderer.cs index c2e3bcc78..15696fb57 100644 --- a/src/iOS.Core/Renderers/ExtendedDatePickerRenderer.cs +++ b/src/iOS.Core/Renderers/ExtendedDatePickerRenderer.cs @@ -23,19 +23,6 @@ namespace Bit.iOS.Core.Renderers { Control.Text = element.PlaceHolder; } - - // force use of wheel picker on iOS 14+ - // TODO remove this when we upgrade to X.F 5 SR-1 - // https://github.com/xamarin/Xamarin.Forms/issues/12258#issuecomment-700168665 - try - { - if (UIDevice.CurrentDevice.CheckSystemVersion(13, 2)) - { - var picker = (UIDatePicker)Control.InputView; - picker.PreferredDatePickerStyle = UIDatePickerStyle.Wheels; - } - } - catch { } } } diff --git a/src/iOS.Extension/Info.plist b/src/iOS.Extension/Info.plist index c1b8d581f..f5101b359 100644 --- a/src/iOS.Extension/Info.plist +++ b/src/iOS.Extension/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.find-login-action-extension CFBundleShortVersionString - 2.16.1 + 2.16.2 CFBundleLocalizations en diff --git a/src/iOS.ShareExtension/Info.plist b/src/iOS.ShareExtension/Info.plist index 122c4e333..b57b6f7a3 100644 --- a/src/iOS.ShareExtension/Info.plist +++ b/src/iOS.ShareExtension/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 2.16.1 + 2.16.2 CFBundleVersion 1 MinimumOSVersion diff --git a/src/iOS/Info.plist b/src/iOS/Info.plist index 46c564274..b4d0003e7 100644 --- a/src/iOS/Info.plist +++ b/src/iOS/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden CFBundleShortVersionString - 2.16.1 + 2.16.2 CFBundleVersion 1 CFBundleIconName