From 40c77b6f0591d95c89418ea468a698b34913bfed Mon Sep 17 00:00:00 2001 From: Jeffrey Holland <124393578+jholland-livefront@users.noreply.github.com> Date: Thu, 15 May 2025 15:33:20 +0200 Subject: [PATCH] Move modal files to `autofill` and rename dir to `credentials` (#14757) * Show existing login items in the UI * Filter available cipher results (#14399) * Filter available cipher results * Fix linting issues * Update logic for eligible ciphers * Remove unused method to check matching username * PM-20608 update styling for excludedCredentials (#14444) * PM-20608 update styling for excludedCredentials * Have flow correctly move to creation for excluded cipher * Remove duplicate confirmNeCredential call * Revert fido2-authenticator changes and move the excluded check * Create a separate component for excluded cipher view * Display traffic light MacOS buttons when the vault is locked (#14673) * Remove unneccessary filter for excludedCiphers * Remove dead code from the excluded ciphers work * Remove excludedCipher checks from fido2 create and vault * Move modal files to `autofill` and rename dir to `credentials` * Update merge issues --- apps/desktop/src/app/app-routing.module.ts | 6 +++--- .../modal/credentials}/fido2-create.component.html | 0 .../modal/credentials}/fido2-create.component.ts | 4 ++-- .../credentials}/fido2-excluded-ciphers.component.html | 0 .../credentials}/fido2-excluded-ciphers.component.ts | 4 ++-- .../modal/credentials}/fido2-passkey-exists-icon.ts | 0 .../modal/credentials}/fido2-vault.component.html | 0 .../modal/credentials}/fido2-vault.component.ts | 9 ++++++--- 8 files changed, 13 insertions(+), 10 deletions(-) rename apps/desktop/src/{modal/passkeys/create => autofill/modal/credentials}/fido2-create.component.html (100%) rename apps/desktop/src/{modal/passkeys/create => autofill/modal/credentials}/fido2-create.component.ts (98%) rename apps/desktop/src/{modal/passkeys => autofill/modal/credentials}/fido2-excluded-ciphers.component.html (100%) rename apps/desktop/src/{modal/passkeys => autofill/modal/credentials}/fido2-excluded-ciphers.component.ts (92%) rename apps/desktop/src/{modal/passkeys => autofill/modal/credentials}/fido2-passkey-exists-icon.ts (100%) rename apps/desktop/src/{modal/passkeys => autofill/modal/credentials}/fido2-vault.component.html (100%) rename apps/desktop/src/{modal/passkeys => autofill/modal/credentials}/fido2-vault.component.ts (92%) diff --git a/apps/desktop/src/app/app-routing.module.ts b/apps/desktop/src/app/app-routing.module.ts index ca4b391579e..ac8b0661506 100644 --- a/apps/desktop/src/app/app-routing.module.ts +++ b/apps/desktop/src/app/app-routing.module.ts @@ -54,10 +54,10 @@ import { AccessibilityCookieComponent } from "../auth/accessibility-cookie.compo import { maxAccountsGuardFn } from "../auth/guards/max-accounts.guard"; import { SetPasswordComponent } from "../auth/set-password.component"; import { UpdateTempPasswordComponent } from "../auth/update-temp-password.component"; +import { Fido2CreateComponent } from "../autofill/modal/credentials/fido2-create.component"; +import { Fido2ExcludedCiphersComponent } from "../autofill/modal/credentials/fido2-excluded-ciphers.component"; +import { Fido2VaultComponent } from "../autofill/modal/credentials/fido2-vault.component"; import { RemovePasswordComponent } from "../key-management/key-connector/remove-password.component"; -import { Fido2CreateComponent } from "../modal/passkeys/create/fido2-create.component"; -import { Fido2ExcludedCiphersComponent } from "../modal/passkeys/fido2-excluded-ciphers.component"; -import { Fido2VaultComponent } from "../modal/passkeys/fido2-vault.component"; import { VaultV2Component } from "../vault/app/vault/vault-v2.component"; import { VaultComponent } from "../vault/app/vault/vault.component"; diff --git a/apps/desktop/src/modal/passkeys/create/fido2-create.component.html b/apps/desktop/src/autofill/modal/credentials/fido2-create.component.html similarity index 100% rename from apps/desktop/src/modal/passkeys/create/fido2-create.component.html rename to apps/desktop/src/autofill/modal/credentials/fido2-create.component.html diff --git a/apps/desktop/src/modal/passkeys/create/fido2-create.component.ts b/apps/desktop/src/autofill/modal/credentials/fido2-create.component.ts similarity index 98% rename from apps/desktop/src/modal/passkeys/create/fido2-create.component.ts rename to apps/desktop/src/autofill/modal/credentials/fido2-create.component.ts index 4548c2da119..db5b49afb62 100644 --- a/apps/desktop/src/modal/passkeys/create/fido2-create.component.ts +++ b/apps/desktop/src/autofill/modal/credentials/fido2-create.component.ts @@ -26,11 +26,11 @@ import { import { PasswordRepromptService } from "@bitwarden/vault"; import { DesktopAutofillService } from "../../../autofill/services/desktop-autofill.service"; +import { DesktopSettingsService } from "../../../platform/services/desktop-settings.service"; import { DesktopFido2UserInterfaceService, DesktopFido2UserInterfaceSession, -} from "../../../autofill/services/desktop-fido2-user-interface.service"; -import { DesktopSettingsService } from "../../../platform/services/desktop-settings.service"; +} from "../../services/desktop-fido2-user-interface.service"; @Component({ standalone: true, diff --git a/apps/desktop/src/modal/passkeys/fido2-excluded-ciphers.component.html b/apps/desktop/src/autofill/modal/credentials/fido2-excluded-ciphers.component.html similarity index 100% rename from apps/desktop/src/modal/passkeys/fido2-excluded-ciphers.component.html rename to apps/desktop/src/autofill/modal/credentials/fido2-excluded-ciphers.component.html diff --git a/apps/desktop/src/modal/passkeys/fido2-excluded-ciphers.component.ts b/apps/desktop/src/autofill/modal/credentials/fido2-excluded-ciphers.component.ts similarity index 92% rename from apps/desktop/src/modal/passkeys/fido2-excluded-ciphers.component.ts rename to apps/desktop/src/autofill/modal/credentials/fido2-excluded-ciphers.component.ts index 1872ff16b3c..de6372e0457 100644 --- a/apps/desktop/src/modal/passkeys/fido2-excluded-ciphers.component.ts +++ b/apps/desktop/src/autofill/modal/credentials/fido2-excluded-ciphers.component.ts @@ -17,11 +17,11 @@ import { BitIconButtonComponent, } from "@bitwarden/components"; +import { DesktopSettingsService } from "../../../platform/services/desktop-settings.service"; import { DesktopFido2UserInterfaceService, DesktopFido2UserInterfaceSession, -} from "../../autofill/services/desktop-fido2-user-interface.service"; -import { DesktopSettingsService } from "../../platform/services/desktop-settings.service"; +} from "../../services/desktop-fido2-user-interface.service"; import { Fido2PasskeyExistsIcon } from "./fido2-passkey-exists-icon"; diff --git a/apps/desktop/src/modal/passkeys/fido2-passkey-exists-icon.ts b/apps/desktop/src/autofill/modal/credentials/fido2-passkey-exists-icon.ts similarity index 100% rename from apps/desktop/src/modal/passkeys/fido2-passkey-exists-icon.ts rename to apps/desktop/src/autofill/modal/credentials/fido2-passkey-exists-icon.ts diff --git a/apps/desktop/src/modal/passkeys/fido2-vault.component.html b/apps/desktop/src/autofill/modal/credentials/fido2-vault.component.html similarity index 100% rename from apps/desktop/src/modal/passkeys/fido2-vault.component.html rename to apps/desktop/src/autofill/modal/credentials/fido2-vault.component.html diff --git a/apps/desktop/src/modal/passkeys/fido2-vault.component.ts b/apps/desktop/src/autofill/modal/credentials/fido2-vault.component.ts similarity index 92% rename from apps/desktop/src/modal/passkeys/fido2-vault.component.ts rename to apps/desktop/src/autofill/modal/credentials/fido2-vault.component.ts index 423d646992a..9a06e040889 100644 --- a/apps/desktop/src/modal/passkeys/fido2-vault.component.ts +++ b/apps/desktop/src/autofill/modal/credentials/fido2-vault.component.ts @@ -23,11 +23,11 @@ import { } from "@bitwarden/components"; import { PasswordRepromptService } from "@bitwarden/vault"; +import { DesktopSettingsService } from "../../../platform/services/desktop-settings.service"; import { DesktopFido2UserInterfaceService, DesktopFido2UserInterfaceSession, -} from "../../autofill/services/desktop-fido2-user-interface.service"; -import { DesktopSettingsService } from "../../platform/services/desktop-settings.service"; +} from "../../services/desktop-fido2-user-interface.service"; @Component({ standalone: true, @@ -53,6 +53,7 @@ export class Fido2VaultComponent implements OnInit, OnDestroy { private ciphersSubject = new BehaviorSubject([]); ciphers$: Observable = this.ciphersSubject.asObservable(); private cipherIdsSubject = new BehaviorSubject([]); + protected containsExcludedCiphers: boolean = false; cipherIds$: Observable; readonly Icons = { BitwardenShield }; @@ -91,7 +92,9 @@ export class Fido2VaultComponent implements OnInit, OnDestroy { } async chooseCipher(cipher: CipherView) { - if ( + if (this.containsExcludedCiphers) { + this.session?.confirmChosenCipher(cipher.id, false); + } else if ( cipher.reprompt !== CipherRepromptType.None && !(await this.passwordRepromptService.showPasswordPrompt()) ) {