1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-12-01 13:13:36 +01:00
bitwarden-browser/libs/auth
Matt Gibson c70a5aa024
[PM-6688] Use AccountService as account source (#8893)
* Use account service to track accounts and active account

* Remove state service active account Observables.

* Add email verified to account service

* Do not store account info on logged out accounts

* Add account activity tracking to account service

* Use last account activity from account service

* migrate or replicate account service data

* Add `AccountActivityService` that handles storing account last active data

* Move active and next active user to account service

* Remove authenticated accounts from state object

* Fold account activity into account service

* Fix builds

* Fix desktop app switch

* Fix logging out non active user

* Expand helper to handle new authenticated accounts location

* Prefer view observable to tons of async pipes

* Fix `npm run test:types`

* Correct user activity sorting test

* Be more precise about log out messaging

* Fix dev compare errors

All stored values are serializable, the next step wasn't necessary and was erroring on some types that lack `toString`.

* If the account in unlocked on load of lock component, navigate away from lock screen

* Handle no users case for auth service statuses

* Specify account to switch to

* Filter active account out of inactive accounts

* Prefer constructor init

* Improve comparator

* Use helper methods internally

* Fixup component tests

* Clarify name

* Ensure accounts object has only valid userIds

* Capitalize const values

* Prefer descriptive, single-responsibility guards

* Update libs/common/src/state-migrations/migrate.ts

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* Fix merge

* Add user Id validation

activity for undefined was being set, which was resulting in requests for the auth status of `"undefined"` (string) userId, due to key enumeration. These changes stop that at both locations, as well as account add for good measure.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-04-30 09:13:02 -04:00
..
src [PM-6688] Use AccountService as account source (#8893) 2024-04-30 09:13:02 -04:00
jest.config.js [PM-5255, PM-3339] Refactor login strategy to use state providers (#7821) 2024-03-12 14:19:50 -04:00
package.json [PM-3172] create @bitwarden/auth lib (#5906) 2023-08-08 09:37:25 -04:00
README.md [PM-3172] create @bitwarden/auth lib (#5906) 2023-08-08 09:37:25 -04:00
test.setup.ts [PM-3172] create @bitwarden/auth lib (#5906) 2023-08-08 09:37:25 -04:00
tsconfig.json [PM-3172] create @bitwarden/auth lib (#5906) 2023-08-08 09:37:25 -04:00
tsconfig.spec.json [PM-3172] create @bitwarden/auth lib (#5906) 2023-08-08 09:37:25 -04:00

Auth

This lib represents the public API of the Auth team at Bitwarden. Modules are imported using @bitwarden/auth.