* LoginStrategyServiceAbstraction - add TODO to refactor makePrePasswordLoginMasterKey in future
* OpaqueLoginCredentials - add kdfConfig so we can derive master key for user verification scenarios.
* LoginStrategyService.logIn - add TODO
* OpaqueTokenRequest - add more docs
* CipherConfiguration - add todo for more docs
* DefaultOpaqueService - add todo
* OpaqueLoginStrategy - (1) Add docs (2) clean up todos (3) add todos
* ChangePassword - add TODOs to clean up code
* LoginComp - Add TODOs for identifying the login strategy ahead of time.
* DefaultOpaqueService - Add TODOs
* PasswordLoginStrategy - add TODO for renaming
* WIP first draft of opaque login strategy
* Per discussion with platform, we don't need an abstraction for api services so clean that up.
* Extract pre-login method into own service from ApiService + move request model to auth
* LoginStrategyService - add todo for adding support for opaque login strategy
* PreLoginApiService - add renaming todo
* LoginComp + PasswordLoginCredentials - (1) Start integrating pre-login logic into login comp (2) update PasswordLoginCredentials to include kdfConfig to pass into login strat
* LoginStrategyServiceAbstraction - login - add OpaqueLoginCredentials
* CLI - add todos
* LoginComp - add TODO
* Add createKdfConfig factory function
* LoginStrategyService: switch out to more specific password strategy
* Fix type errors
* Add jsdoc
* Revert / remove TODOs and old draft work
* add missing dep
* PreLoginResponse - Adjust KM import
* PreLogin renamed to PrePasswordLogin
* Renames + some login strategy service test updates
* LoginComp - remove unused import
* KdfConfig - Rename validateKdfConfigForPrelogin to validateKdfConfigForPreLogin
* LoginStrategyService - (1) Rename makePreloginKey to makePrePasswordLoginMasterKey (2) Refactor makePrePasswordLoginMasterKey to accept an optional KdfConfig so we can keep the logic tested on the LoginStrategyService
* LoginStrategyService - add TODOs
* Fix non-sdk build errors
---------
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
Refactor toast calls out of auth services. Toasts are now triggered by an observable emission that gets picked up by an observable pipeline in a new `DeviceTrustToastService` (libs/angular). That observable pipeline is then subscribed by by consuming the `AppComponent` for each client.
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>
* feat(pm-15015) :
- Adding `requestCountryName` to auth requests dialogs, and response models.
- Updated i18n messages.json in Web, Browser, and Desktop to include "Location" translation.
* PM-18836 - (1) Extension Two Factor Webauthn - revert supporting inline webauthn 2fa as it doesn't work outside of local still (2) Extension 2FA Webauthn comp - add log of webauthn errors to help diagnose future issues
* PM-18836 - Extension - Services module - ExtensionTwoFactorAuthWebAuthnComponentService - remove unused dep
* PM-18654 - State Service & Login Strategy Refactor - move env seeding into login strategy so that new accounts always load w/ the correct environment
* PM-18654 - SSO Comp - just use user id from auth result
* PM-18654 - Config Service - (1) don't allow cascading calls to the renewConfig by using a private promise (2) Replace shareReplay with share configured with manual timer
* PM-18654 - LoginComponents - detail issue and possible fix
* PM-18654 - DesktopLoginV1Comp - use correct destroy hook
* PM-18654 - LoginComp - clean up no longer correct comment
* PM-18654 - New Device Verification Component - Remove unused PasswordLoginStrategy dependency
* PM-18654 - Browser Home Component - fix qParam logic
* PM-18654 - DefaultConfigService - revert changes as they aren't necessary to fix the bug.
* PM-18654 - DefaultConfigService - remove commented code
* PM-18654 - LoginStrategy - add comment
* PM-18654 - Fix login strat tests
* move vault timeout and vault timeout settings to km
* move browser vault timeout service to km
* fix cli import
* fix imports
* fix some relative imports
* use relative imports within common
* fix imports
* fix new imports
* Fix new imports
* fix spec imports
* fix(sso-routing): [PM-13458] Fixes for routing flow on TDE login - Fixed routing flow and added comments.
* fix(sso-routing): [PM-13458] Fixes for routing flow on TDE login - Undid the old sso component flow because we determined it's not worth fixing.
* fix(sso-routing): [PM-13458] Fixes for routing flow on TDE login - Removed flow entirely.
Fail tests when relying on unknownProperties or unknownElements. Existing instances are whitelist and have tickets created and assigned to the relevant teams.
* Moved saving of SSO email outside of browser/desktop code
* Clarified comments.
* Tests
* Refactored login component services to manage state
* Fixed input on login component
* Fixed tests
* Linting
* Moved web setting in state into web override
* updated tests
* Fixed typing.
* Fixed type safety issues.
* Added comments and renamed for clarity.
* Removed method parameters that weren't used
* Added clarifying comments
* Added more comments.
* Removed test that is not necessary on base
* Test cleanup
* More comments.
* Linting
* Fixed test.
* Fixed base URL
* Fixed typechecking.
* Type checking
* Moved setting of email state to default service
* Added comments.
* Consolidated SSO URL formatting
* Updated comment
* Fixed reference.
* Fixed missing parameter.
* Initialized service.
* Added comments
* Added initialization of new service
* Made email optional due to CLI.
* Fixed comment on handleSsoClick.
* Added SSO email persistence to v1 component.
---------
Co-authored-by: Bernd Schoolmann <mail@quexten.com>
* PM-14445: TS strict for Key Management Biometrics
* formatting
* callbacks not null expectations
* state nullability expectations updates
* unit tests fix
* secure channel naming, explicit null check on messageId
* KM-14445: TS strict for Key Management, Keys and Lock component
* conflicts resolution, new strict check failures
* null simplifications
* migrate legacy encryption when no active user throw error instead of hiding it
* throw instead of return
* fix(active-user-state-refactor): [PM-18052] Jit Bug with SSO Service - Fixed location of retrieving the active user id in one component.
* fix(active-user-state-refactor): [PM-18052] Jit Bug with SSO Service - Fixed up type safety.
* fix(active-user-state-refactor): [PM-18052] Jit Bug with SSO Service - Removed unnessesary subscriptions.
* fix(active-user-state-refactor): [PM-18052] Jit Bug with SSO Service - Fixed test.
* fix(active-user-state-refactor): [PM-18052] Jit Bug with SSO Service - Made code a little cleaner.
* Move encrypt service to km ownership
* Update imports for encrypt service abstraction and move bulk encrypt service abstraction
* Fix imports
* Fix further imports
* Fix imports
* Fix worker import
* refactor(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - First pass of work to update the state. In the middle of testing.
* fix(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Fix for jslib-services.module.ts
* fix(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Fix main.background.ts
* test(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Added simple tests
* fix(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Tiny touchups.
* fix(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Few fixes to resolve comments.
* fix(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Changed place where userId is loaded.
* test(active-user-state-refactor): [PM-12040] Remove ActiveUserState from SSO Service - Fixed test.