* 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>
* remove min-width on body element for extension prompt page
* reset meta viewport content for extension prompt page
* set max width of svg to avoid any overflow on mobile devices
* use inline display to avoid icon overflow on mobile devices
* use max width on the icon to fix overflow rather than editing the anon layout
* 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.
* Refactored totp service to use sdk
Fixed strict typescript issues
* Fixed dependency issues
* Returned object that contains code and period, removed get interval function
* removed dependencies
* Updated to use refactored totp service
* removed sdk service undefined check
* removed undefined as an input from the getCode function
* Made getcode$ an observable
* refactored to use getcodee$
* Filter out emmissions
* updated sdk version
* Fixed readability nit
* log error on overlay if totp response does not return a code
* fix(totpGeneration): [PM-11941] Totp countdown not working on clients
* Used optional chaining if totpresponse returns null or undefined
* Create web-specific new-send-dropdown component
* Create web-specifc Send Add/Edit dialog
* Use new-send-dropdown and replace old Send Add/Edit with new Add/Edit dialog
* Delete old Send Add/Edit component
* Remove unused entries from en/messages.json
* Add cancel button to close dialog
* Remove unused RouterLink
* Fix typechecking issue
* Use observable to show/hide premium badge
* Add documentation
* Move assignment of observable into ctor, as it no longer requires a promise for assignment
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* add event handling for username generator
* fix specs. change function name to not be of an event type
* update specs
* rename function
* revert name change
* fix spec
* bubble algorithmSelected up to generator components. add disabled button tests
* add typeSelected event
* revert addition of onType.
* apply same logic in onAlgorithmSelected to web and desktop
This resolves an issue where the WebAuthn setup component's read key button would show a loading spinner indefinitely. The fix addresses problems with Signal handling for the bitButton component's disabled/loading states.
JIRA: PM-18719
* 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
Only display the cipher's name if the user running the report does not have permissions to view/edit the cipher
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Added permission check for organizational inactive 2fa report
Only display the cipher's name if the user running the report does not have permissions to view/edit the cipher
* Add appropiate access modifiers to newly added members/methods
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>