* consolidated session timeout settings component
* rename preferences to appearance
* race condition bug on computed signal
* outdated header for browser
* unnecessary padding
* remove required on action, fix build
* rename localization key
* missing user id
* required
* cleanup task
* eslint fix signals rollback
* takeUntilDestroyed, null checks
* move browser specific logic outside shared component
* explicit input type
* input name
* takeUntilDestroyed, no toast
* unit tests
* cleanup
* cleanup, correct link to deprecation jira
* tech debt todo with jira
* missing web localization key when policy is on
* relative import
* extracting timeout options to component service
* duplicate localization key
* fix failing test
* subsequent timeout action selecting opening without dialog on first dialog cancellation
* default locale can be null
* unit tests failing
* rename, simplifications
* one if else feature flag
* timeout input component rendering before async pipe completion
* add state definition
* create abstraction, no-op, and web service
* update service name to reflect file name
* create redirect guard and add to web route
* update service import
* [PM-27543] Cleanup premiumInterestRedirectGuard
* [PM-27543] Add tests for premium-interest-redirect guard
* [PM-27543] Undo change to billing docs
* [PM-27543] Add error handling to guard
* [PM-27543] Improve tests
* [PM-27543] Add callToAction query parameter
---------
Co-authored-by: Shane <smelton@bitwarden.com>
* PM-22663 WIP on auth route constants
* PM-22663 - Convert desktop & extension to use constants - first pass
* PM-22663 - Further clean up
* PM-22663 - catch more missed routes
* PM-22663 - add barrel files
* PM-22663 - Per PR feedback, add missing as const
* PM-22663 - Per PR feedback and TS docs, use same name for const enum like and derived type. Adjusted filenames to be singular.
* PM-22663 - Per PR feedback update desktop app routing module since auto rename didn't update it for whatever reason.
* PM-13632: Enable sign in with passkeys in the browser extension
* Refactor component + Icon fix
This commit refactors the login-via-webauthn commit as per @JaredSnider-Bitwarden suggestions. It also fixes an existing issue where Icons are not displayed properly on the web vault.
Remove old one.
Rename the file
Working refactor
Removed the icon from the component
Fixed icons not showing. Changed layout to be 'embedded'
* Add tracking links
* Update app.module.ts
* Remove default Icons on load
* Remove login.module.ts
* Add env changer to the passkey component
* Remove leftover dependencies
* use .isChromium()
* Passed in userId on RemovePasswordComponent.
* Added userId on other references to KeyConnectorService methods
* remove password component refactor, test coverage, enabled strict
* explicit user id provided to key connector service
* redirect to / instead when user not logged in or not managing organization
* key connector service explicit user id
* key connector service no longer requires account service
* key connector service missing null type
* cli convert to key connector unit tests
* remove unnecessary SyncService
* error toast not showing on ErrorResponse
* bad import due to merge conflict
* bad import due to merge conflict
* missing loading in remove password component for browser extension
* error handling in remove password component
* organization observable race condition in key-connector
* usesKeyConnector always returns boolean
* unit test coverage
* key connector reactive
* reactive key connector service
* introducing convertAccountRequired$
* cli build fix
* moving message sending side effect to sync
* key connector service unit tests
* fix unit tests
* move key connector components to KM team ownership
* new unit tests in wrong place
* key connector domain shown in remove password component
* type safety improvements
* convert to key connector command localization
* key connector domain in convert to key connector command
* convert to key connector command unit tests with prompt assert
* organization name placement change in the remove password component
* unit test update
* show key connector domain for new sso users
* confirm key connector domain page does not require auth guard
* confirm key connector domain page showing correctly
* key connector url required to be provided when migrating user
* missing locales
* desktop styling
* have to sync and navigate to vault after key connector keys exchange
* logging verbosity
* splitting the web client
* splitting the browser client
* cleanup
* splitting the desktop client
* cleanup
* cleanup
* not necessary if condition
* key connector domain tests fix for sso componrnt and login strategy
* confirm key connector domain base component unit tests coverage
* confirm key connector domain command for cli
* confirm key connector domain command for cli unit tests
* design adjustments
removed repeated text, vertical buttons on desktop, wrong paddings on browser extension
* key connector service unit test coverage
* new linting rules fixes
* accept invitation to organization called twice results in error.
Web vault remembers it's original route destination, which we do not want in case of accepting invitation and Key Connector, since provisioning new user through SSO and Key Connector, the user is already accepted.
* moved required key connector domain confirmation into state
* revert redirect from auth guard
* cleanup
* sso-login.strategy unit test failing
* two-factor-auth.component unit test failing
* two-factor-auth.component unit test coverage
* cli unit test failing
* removal of redundant logs
* removal of un-necessary new lines
* consolidated component
* consolidated component css cleanup
* use KdfConfig type
* consolidate KDF into KdfConfig type in identity token response
* moving KC requiresDomainConfirmation lower in order, after successful auth
* simplification of trySetUserKeyWithMasterKey
* redirect to confirm key connector route when locked but can't unlock yet
---------
Co-authored-by: Todd Martin <tmartin@bitwarden.com>
* create libs/assets
* treeshake lib and filter out non-icons from icon story
* update docs
* fix icon colors in browser and desktop
* better name for vault icon
* move illustrations
* add transitions for overlay and top border of video
* refactor video container class for readability
* update max width for setup-extension page
* tweak sizes of videos for larger viewports
* fix opacity never changing
* remove complex interval transitions
* feat(change-password-component): Change Password Update [18720] - Very close to complete.
* fix(policy-enforcement): [PM-21085] Fix Bug with Policy Enforcement - Removed temp code to force the state I need to verify correctness.
* fix(policy-enforcement): [PM-21085] Fix Bug with Policy Enforcement - Recover account working with change password component.
* fix(policy-enforcement): [PM-21085] Fix Bug with Policy Enforcement - Made code more dry.
* fix(change-password-component): Change Password Update [18720] - Updates to routing and the extension. Extension is still a wip.
* fix(change-password-component): Change Password Update [18720] - Extension routing changes.
* feat(change-password-component): Change Password Update [18720] - More extension work
* feat(change-password-component): Change Password Update [18720] - Pausing work for now while we wait for product to hear back.
* feat(change-password-component): Change Password Update [18720] - Removed duplicated anon layouts.
* feat(change-password-component): Change Password Update [18720] - Tidied up code.
* feat(change-password-component): Change Password Update [18720] - Small fixes to the styling
* feat(change-password-component): Change Password Update [18720] - Adding more content for the routing.
* feat(change-password-component): Change Password Update [18720] - Removed circular loop for now.
* feat(change-password-component): Change Password Update [18720] - Made comments regarding the change password routing complexities with change-password and auth guard.
* feat(change-password-component): Change Password Update [18720] - Undid some changes because they will be conflicts later on.
* feat(change-password-component): Change Password Update [18720] - Small directive change.
* feat(change-password-component): Change Password Update [18720] - Small changes and added some clarification on where I'm blocked
* feat(change-password-component): Change Password Update [18720] - Org invite is seemingly working, found one bug to iron out.
* refactor(change-password-component): Change Password Update [18720] - Fixed up policy service to be made more clear.
* docs(change-password-component): Change Password Update [18720] - Updated documentation.
* refactor(change-password-component): Change Password Update [18720] - Routing changes and policy service changes.
* fix(change-password-component): Change Password Update [18720] - Wrapping up changes.
* feat(change-password-component): Change Password Update [18720] - Should be working fully
* feat(change-password-component): Change Password Update [18720] - Found a bug, working on password policy being present on login.
* feat(change-password-component): Change Password Update [18720] - Turned on auth guard on other clients for change-password route.
* feat(change-password-component): Change Password Update [18720] - Committing intermediate changes.
* feat(change-password-component): Change Password Update [18720] - The master password policy endpoint has been added! Should be working. Testing now.
* feat(change-password-component): Change Password Update [18720] - Minor fixes.
* feat(change-password-component): Change Password Update [18720] - Undid naming change.
* feat(change-password-component): Change Password Update [18720] - Removed comment.
* feat(change-password-component): Change Password Update [18720] - Removed unneeded code.
* fix(change-password-component): Change Password Update [18720] - Took org invite state out of service and made it accessible.
* fix(change-password-component): Change Password Update [18720] - Small changes.
* fix(change-password-component): Change Password Update [18720] - Split up org invite service into client specific implementations and have them injected into clients properly
* feat(change-password-component): Change Password Update [18720] - Stopping work and going to switch to a new branch to pare down some of the solutions that were made to get this over the finish line
* feat(change-password-component): Change Password Update [18720] - Started to remove functionality in the login.component and the password login strategy.
* feat(change-password-component): Change Password Update [18720] - Removed more unneded changes.
* feat(change-password-component): Change Password Update [18720] - Change password clearing state working properly.
* fix(change-password-component): Change Password Update [18720] - Added docs and moved web implementation.
* comments(change-password-component): Change Password Update [18720] - Added more notes.
* test(change-password-component): Change Password Update [18720] - Added in tests for policy service.
* comment(change-password-component): Change Password Update [18720] - Updated doc with correct ticket number.
* comment(change-password-component): Change Password Update [18720] - Fixed doc.
* test(change-password-component): Change Password Update [18720] - Fixed tests.
* test(change-password-component): Change Password Update [18720] - Fixed linting errors. Have more tests to fix.
* test(change-password-component): Change Password Update [18720] - Added back in ignore for typesafety.
* fix(change-password-component): Change Password Update [18720] - Fixed other type issues.
* test(change-password-component): Change Password Update [18720] - Fixed tests.
* test(change-password-component): Change Password Update [18720] - Fixed more tests.
* test(change-password-component): Change Password Update [18720] - Fixed tiny duplicate code.
* fix(change-password-component): Change Password Update [18720] - Fixed desktop component.
* fix(change-password-component): Change Password Update [18720] - Removed unused code
* fix(change-password-component): Change Password Update [18720] - Fixed locales.
* fix(change-password-component): Change Password Update [18720] - Removed tracing.
* fix(change-password-component): Change Password Update [18720] - Removed duplicative services module entry.
* fix(change-password-component): Change Password Update [18720] - Added comment.
* fix(change-password-component): Change Password Update [18720] - Fixed unneeded call in two factor to get user id.
* fix(change-password-component): Change Password Update [18720] - Fixed a couple of tiny things.
* fix(change-password-component): Change Password Update [18720] - Added comment for later fix.
* fix(change-password-component): Change Password Update [18720] - Fixed linting error.
* PM-18720 - AuthGuard - move call to get isChangePasswordFlagOn down after other conditions for efficiency.
* PM-18720 - PasswordLoginStrategy tests - test new feature flagged combine org invite policies logic for weak password evaluation.
* PM-18720 - CLI - fix dep issue
* PM-18720 - ChangePasswordComp - extract change password warning up out of input password component
* PM-18720 - InputPassword - remove unused dependency.
* PM-18720 - ChangePasswordComp - add callout dep
* PM-18720 - Revert all anon-layout changes
* PM-18720 - Anon Layout - finish reverting changes.
* PM-18720 - WIP move of change password out of libs/auth
* PM-18720 - Clean up remaining imports from moving change password out of libs/auth
* PM-18720 - Add change-password barrel file for better import grouping
* PM-18720 - Change Password comp - restore maxWidth
* PM-18720 - After merge, fix errors
* PM-18720 - Desktop - fix api service import
* PM-18720 - NDV - fix routing.
* PM-18720 - Change Password Comp - add logout service todo
* PM-18720 - PasswordSettings - per feedback, component is already feature flagged behind PM16117_ChangeExistingPasswordRefactor so we can just delete the replaced callout (new text is in change-password comp)
* PM-18720 - Routing Modules - properly flag new component behind feature flag.
* PM-18720 - SSO Login Strategy - fix config service import since it is now in shared deps from main merge.
* PM-18720 - Fix SSO login strategy tests
* PM-18720 - Default Policy Service - address AC PR feedback
---------
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
* add end user feature flag
* add initial setup extension component and route
* redirect users from registration completion to the setup extension page
* add `hideIcon` to anon layout for web
- matches implementation on the browser.
* integrate with anon layout for extension wrapper
* add initial loading state
* conditionally redirect the user upon initialization
* redirect the user to the vault if the extension is installed
* add initial copy for setup-extension page
* add confirmation dialog for skipping the extension installation
* add success state for setup extension page
* only show loggedin toast when end user activation is not enabled.
* add image alt
* lower threshold for polling extension
* close the dialog when linking to the vault
* update party colors
* use the platform specific registration service to to only forward the web registrations to `/setup-extension`
* call `super` rather than `/vault` directly, it could change in the future
Creates a `SetInitialPasswordComponent` to be used in scenarios where an existing and authed user must set an initial password.
Feature Flag: `PM16117_SetInitialPasswordRefactor`
* PM-17737 - feat(anon-layout-width) - consolidate width setting to control title, subtitle, and content together for a unified UX. Removes all titleAreaMaxWidth usages and the titleAreaMaxWidth property entirely.
* PM-17737 - AnonLayout - consolidate stories into playground (w/ the exception of default icon story b/c I can't figure how to omit the icon conditionally).
* PM-17737 - AnonLayoutStories - show secondary content by default
* PM-17737 - Per PR feedback, adjust maxWidthClass logic to remove string concatenation as it can result in tailwind classes not being compiled and available at run time.
* PM-17737 - Per PR feedback, refactor stories to use configuration to generate all the scenarios so we can still track them via snapshots
* PM-17737 - Fix anon layout mdx reference
* PM-17737 - Make AnonLayoutMaxWidths singular
* PM-17737 - When inside of a max width container, the icon container needs explicit width to be able to scale viewbox icons that don't have defined heights / widths
* PM-20540 - TwoFactorAuthComponent - Refactor determineDefaultSuccessRoute to rely on user's auth status as the loginStrategyService's state is cleared after successful AuthN
* PM-20540 - DeepLinkGuard - Refactor to exempt login-initiated so that TDE + unlock with MP + deep link works.
* doc: Add documentation and change folder structure.
* test: add test for new excluded route.
---------
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
* remove NewDeviceVerificationGuard and all associated entities. New Device verification feature has rolled out in production, this guard is no longer needed.
* remove unused properties from the vault profile service
* Move access-intelligence and reports files from tools to dirt folder for new ownership. Update imports for these files
* Move bit-common/src/reports/risk-insights > dirt
* Update codeowners file for dirt team ownership
* Addressed linting issues by executing `npm run prettier`
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Remove deprecated TwoFactorComponentsV1 and TwoFactorOptionsComponentV1 components, related functionality (unauthUiRefreshSwap) and orphaned styles/translation messages.
Removes `unauthUiRefreshSwap()` from all routing modules for all refreshed components except for 2FA. This does not remove the legacy components themselves, just the routing to them.
---------
Co-authored-by: Todd Martin <tmartin@bitwarden.com>
* add browser extension prompt page with initial loading state
* add browser extension icon
* move browser extension prompt to state
* add installation link for error state
* automatically open extension when possible for browser-reprompt-page
* refactor browser tabs query into a standalone method
* add success message state for auto-opening browsers
* Refactor `VaultOnboardingMessages` to `VaultMessages` to be more generic
* add auto-open extension messages to `VaultMessages` enum
* add bitwarden icon
* Add manual error state for firefox users
* add extension prompt routing
* fix incorrect imports
* add mobile screen for browser prompt
* remove comment
* fix typo in code comment
* update key for `checkBwInstalled` method
* add check for safari before attempting to send a message
* break translation for manual opening into two parts
* Remove v1 generator from web
Remove conditional routing based on `generator-tools-modernization`
Remove generatorSwap helper
Remove generator and password-generator-history components including the base ones in libs/angular
* Remove the feature flag `generator-tools-modernization`
* Remove unused keys from en/messages.json
* Remove unused css
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Updates UI text and translations for the login with device feature to be more consistent and clear across desktop, browser and web clients. Changes include:
- Updated titles and content for login via auth request components
- Revised translations for device approval modal
- Updated notification titles and alert messages
- Simplified device management URL handling
- Added missing translations across platforms
Resolves PM-3953
* Moved has-premium.guard under billing
* Moved free-trial.ts to billing
* Moved premium directives to billing
* Moved families-policy.service.ts to billing
* Moved trial initiation from auth to billing
Add device verification flow that requires users to enter an OTP when logging in from an unrecognized device. This includes:
- New device verification route and guard
- Email OTP verification component
- Authentication timeout handling
PM-8221
* update code owners
* Move lock component v2 to KM
* Add @bitwarden/key-management/angular to tsconfigs
* Move lock component service to KM
* Move lock component v1 to KM
* Update imports
* Move into @bitwarden/key-management
* Revert "Move into @bitwarden/key-management"
This reverts commit b7514fb8c2.
* Add to tsconfig.libs
This PR deletes the legacy lock components from the Angular clients and also removes feature flag control from the routing. The lock component will now be based entirely on the new, recently refreshed LockComponent in libs/auth/angular.
* starting
* setup first page for new device verification notice
* update designs for first page. rename components and files
* added second page for new device verification notice
* update notice page one with bit radio buttons. routing logic. user email
* updated routing for new device verification notice to show before vault based on flags, and can navigate back to vault after submission
* fix translations. added remind me later link and nav to page 2
* sync the design for mobile and web
* update routes in desktop
* updated styles for desktop
* moved new device verification notice guard
* update types for new device notice page one
* add null check to page one
* types
* types for page one, page two, service, and guard
* types
* update component and guard for null check
* add navigation to two step login btn and account email btn
* remove empty file
* update fill of icons to support light & dark modes
* add question mark to email access verification copy
* remove unused map
* use links for navigation elements
- an empty href is needed so the links are keyboard accessible
* remove clip path from exclamation svg
- No noticeable difference in the end result
* inline email message into markup
---------
Co-authored-by: Nick Krantz <nick@livefront.com>
Consolidates existing SSO components into a single unified component in
libs/auth, matching the new design system. This implementation:
- Creates a new shared SsoComponent with extracted business logic
- Adds feature flag support for unauth-ui-refresh
- Updates page styling including new icons and typography
- Preserves web client claimed domain logic
- Maintains backwards compatibility with legacy views
PM-8114
---------
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Add timeout state management for two-factor authentication flows in web, desktop,
and browser extension clients. Includes:
- New timeout screen component with 5-minute session limit
- Updated UI elements and styling
- Comprehensive test coverage
Refs: PM-13659
Creates a refreshed and consolidated `LoginDecryptionOptionsComponent` for use on all visual clients, which will be used when the `UnauthenticatedExtensionUIRefresh` feature flag is on.
* Manually route to signup page when the email verification feature flag is enabled
* Revert "Manually route to signup page when the email verification feature flag is enabled"
This reverts commit f3a2b412b9.
* Do not show toast when redirecting to signup
Creates a refreshed and consolidated LoginViaAuthRequestComponent for use on all visual clients, which will be used when the UnauthenticatedExtensionUIRefresh feature flag is on.
* Refactor VerifyRevocerDeleteProvider component to use component library
* Remove components form loose-components.module
* Refactor submit function definition into expression
* Move module out of oss, implement AnonLayoutComponentWrapper route
* Add type to button
* Remove try/catch with error logging
* remove logger service, remove formPromise field
* Move key rotation to km ownership
* Fix build
* Move userkey rotation data provider abstraction to km ownership
* Move userkey rotation data provider abstraction to km ownership
* Fix linting
* Fix CODEOWNERS for key-management web
* Remove incorrect export
* Fix import error
* setup new LoginComponent files in libs/auth
* update pageTitle
* handle loading email settings
* setup web-login.service.ts
* implement web onInit
* fill out webOnInit
* refactor getOrgPolicies call
* update import
* add validateEmail logic
* handle registerRoute
* add showPasswordless flag
* handle captcha
* handle startAuthRequestLogin()
* add handleMigrateEncryptionKey to default and web service
* handle submit routing (web)
* fix typo
* incorporate loginEmailService changes
* minor updates to comments for clarity
* create a defaultOnInit()
* update defaultOnInit()
* handle master password input focus
* handle post-login routing on Browser/Desktop
* handle browser/desktop syncService
* handle browser ngOnInit
* handle browser routing and basic browser template
* setup desktop router
* add template for desktop first UI state: email entry
* rename 'response' to 'authResult'
* refactor handleMigrateEncryptionKey()
* refactor captcha methods and add return types
* refactor submit logic
* refactor submit logic further to use if statements with returns instead of if...else if...else
* remove toast error on invalid form for Browser/Desktop
* refactor to handleAuthResult() method
* refactor webOnInit
* add comment to revisit ngOnInit logic
* refactor handlCaptchaRequired()
* create a LoginSecondaryContentComponent for AnonLayout use
* minor formatting for consistency
* add clarifying comment to handleAuthResult()
* minor refactor to use destructuring
* setup desktopOnInit()
* add continue() method
* handle desktop ngOnDestroy()
* add clarifying comment regarding secondary content
* fill out desktop template and submit()
* add descriptive comment to top of HTML file
* refactor to use a uiState enum for UI states
* handle oss-routing swap
* handle registerRoute$ in secondary content
* web template modifications
* change email validation to only run on submit (or when clicking continue button)
* add dynamic anon-layout wrapper data
* remove static element ref
* desktop HTML template updates
* remove 'showPassword' property b/c now handled by bitPasswordInputToggle
* Extension: setup EmailEntry state UI
* Extension: setup MasterPasswordEntry state UI
* ensure full sync happens on all clients before navigation
* update icon stroke color
* change old components to V1
* remove 'V2' from new component
* update captcha iframe on all clients
* add browser redirect from /home to /login with FF on
* add todo comment regarding browser template
* add launchSsoBrowser to extension template
* move extension launchSsoBrowserWindow() to extension service
* cleanup & comments
* add launchSsoBrowserWindow() to default service
* setup launchSsoBrowserWindow() for Desktop
* refactor to use toastService
* remove unnecessary service injection
* rename LoginService to LoginComponentService to avoid confusion with the LoginStrategyService
* add jsdocs to LoginComponentService
* rename loginService prop to loginComponentService
* Add vault icon to anon layout.
* Prevent email address validation on blur.
* Fix comment typo.
* Prefill email field when "create account" is clicked.
* Use factory function to provide LoginEmailService.
* Add test for RegisterFormComponent.
* Remove back button todo.
* Consolidate clearing loginEmailService values and routing
* Remove unnecessary navigation.
* Fix client navigation after login.
* Consolidate login templates.
* Break up LoginComponent into client-specific services.
* Rename login.component to login-v1.component
* Rename login.component to login-v1.component
* Revert "Rename login.component to login-v1.component"
This reverts commit 9a277d6ca5.
* Revert "Rename login.component to login-v1.component"
This reverts commit 588a7af906.
* Rename login.component to login-v1.component except browser.
* Comment out debug code.
* Remove debug code.
* Rename login.component to login-v1.component for browser.
* Add login-with-passkey route to desktop.
* Set feature flag to false.
* Fix linting errors.
* Populate email on registration start form.
* Implement email population on all clients add add safeProviders.
* Remove comment re. passing email to registration.
* Add unauthUiRefreshRedirect utility function.
* Add transparent border.
* Merge main and add satisfies RouteDataProperties
* PM-8111 - Extension - AppRoutingModule - Home route now redirects conditionally based on unauthenticated ui refresh feature flag.
* PM-8111 - New Login Comp + Login Comp Svc - (1) Refactor naming and returns of getShowPasswordlessFlag to isLoginViaAuthRequestSupported (2) Replace showPasswordless with better composed variable names.
* PM-8111 - TODO cleanup
* PM-8111 - (1) Cleanup DefaultLoginComponentService (2) Sso Connector now checks client id property instead of reading it from state
* PM-8111 - Two TODO cleanups
* Remove specific client services.
* Add isLoginWithPasskeySupported function to reduce client type checking in template.
* Add styles missing from Browser to Create Account link.
* Confirmed inline form errors working and removing todo comments.
* Convert refactoring todo-rr-bw to standard todos.
* Add login component services tests.
* Cleanup formatting and remove unused provider.
* Add comment to explain call to setLoginEmail.
* Rearrange imports to fix lint error.
* Adjust styles for password hint link.
* Address PR feedback: use strict comparison.
* Ensure Login with Passkey button is shown by setting clientType.
* Update "continue" button from "submit" to "button" type.
* Ensure Passkey login available for web and desktop.
* Validate email on enter keypress.
* Use click event to trigger goToHint.
* Restructure handAuthResult to ensure we redirect to vault.
* Add await to saveEmailSettings function.
* Directly set clientType in individual login component services.
* Get clientType via service.
* Add back button.
* Remove hardcoded colors from Vault Icon
* Removing register component changes.
* Removing register component changes.
* Ensure isLoginWithPasskeySupported is only returns true for web client.
* Remove Web/Desktop comment from html template
* Update Storybook with initialLoginEmail
* Fix translation error
* Add test for unauthUiRefreshRedirect.
* Rename goAfterLogIn to evaluatePassword and borrow logic from lock component.
* Add DefaultLoginComponent tests.
* Integrate changes to translations.
* Simplify ngOnInit: remove webOnInit and move getLoginWithDevice to defaultOnInit
I couldn't find any usages of qParams.org or qParams.sponsorshipToken on QA (signing up for family membership, creating organization, manually modifying query params), so I think these are safe to remove.
* Fix translations.
* Clean up and flush out register form tests.
* Update variable name.
* Remove unused enforcedPasswordPolicyOptions property.
* Run prettier.
* Add back safeProviders for LoginEmailService
* Remove duplicate import.
* Update v1 web login title.
* Adjust overlay position of EnvironmentSelectorComponent for new layout.
Since the switcher is located at the bottom of the screen we need to position it up above the trigger button so that it is not cut off.
* Add new wave icon
* Only send email in query parameters if set.
* Remove test/debug code.
* Replace loggedEmail with this.emailFormControl.value.
* Move getLoginWithDevice call to loadEmailSettings.
* Replace loggedEmail with this.emailFormControl.value.
* Add todo comment re. inline errors.
* Remove unused setPreviousUrl function.
* Remove height / width from vault icon svg.
* Use continue method unanimously
* WIP remove validated email& display extension back button
* Simplify getting query params
* Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject
* Simplify validateEmail method
* Hide back button on init
* Revert "Hide back button on init"
This reverts commit e8de5e2bfc.
* Revert "Simplify validateEmail method"
This reverts commit c9141a1cb5.
* Revert "Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject"
This reverts commit 8889ed3d3c.
* simplify validateEmail method
* Add primary / accent colors to wave icon
* Remove debug code
* PM-8111 - Tweak ShowBackButton to work
* PM-8111 - LoginCompService - finish removal of setPreviousUrl from implementations.
* PM-8111 - (1) Remove overriden default logo in anon layout (2) Update routing modules to have proper default login logo (3) LoginComp - update toggleLoginUiState to include logic to swap the icon back and forth as user navigates.
* PM-8111 - LoginComp - on UI state change from MP entry to email entry, remove subtitle (this isn't supported yet, but it will be)
* PM-8111 - LoginComp - Simplify toggleLoginUiState
* PM-8111 - LoginComponent - Add known device logic into UI state change handler
* PM-8111 - LoginComp - (1) Refactor name of getLoginWithDevice to be more accurate as getKnownDevice (2) Refactor calls to getKnownDevice to only occur if loginViaAuthRequestSupported
* PM-8111 - LoginComp - add getKnownDevice docs
* PM-8111 - LoginComponent - tweak docs
* PM-8111 - LoginComp - Continue() - remove toast as the validation on submit logic currently shows validation errors - toast is extra and not needed.
* Add isLoginViaAuthRequestSupported for DesktopLoginComponentService
* Remove validating email on init
* PM-8111 - ExtensionLoginComponentService - add tests for showBackButton
* PM-8111 - style tweaks
* PM-8111 - Extension - Refactor Overlay position to include extension default const to avoid repetition.
* PM-8111 - Desktop AppRouting Module - remove login with passkey route as it isn't supported on desktop.
* PM-8111 - Desktop - add default overlay position const
* PM-8111 - DesktopLoginCompSvc - tests were not actually testing super method calls + finish testing launchSsoBrowserWindow
* PM-8111 - Desktop Main.ts - remove dev test code
* PM-8111 - WebLoginCompSvcTests - add success test cases for getOrgPolicies
* PM-8111 - Remove duplicate translation keys
* PM-8111 - DefaultLoginComponentSvcTests - add missing test
* PM-8111 - DefaultLoginComponentServiceTests - add describes
* PM-8111 - LoginSecondaryContentComponent - Add missing bitLink
* Update to test both browser and desktop
* Remove registration form test
* Remove aliasing CryptoFunctionService and PlatformUtilsService as abstractions
* Remove aliasing PlatformUtilsService and CryptoFunctionService as abstractions
---------
Co-authored-by: Alec Rippberger <alec@livefront.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Alec Rippberger <127791530+alec-livefront@users.noreply.github.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>