Commit Graph

14702 Commits

Author SHA1 Message Date
Cesar Gonzalez 541d0cecf8
[PM-6426] Implementing jest tests for the BrowserTaskSchedulerService 2024-04-01 17:01:08 -05:00
Cesar Gonzalez 7fd41c37f5
Merge branch 'main' into autofill/pm-6426-create-alarms-manager-and-update-usage-of-long-lived-timeouts-rework 2024-04-01 16:11:14 -05:00
rr-bw bdb1aa0a04
fix dep (#8570) 2024-04-01 14:11:07 -07:00
Cesar Gonzalez 7e6d76e50c
[PM-6426] Changing the name of the state definition for the TaskScheduler 2024-04-01 16:07:19 -05:00
Cesar Gonzalez 638554e164
[PM-6426] Ensuring that we await clearing an established scheduled task for the notification service 2024-04-01 16:05:10 -05:00
Cesar Gonzalez f52849d159
[PM-6426] Refactoring small detail for how we identify the clear clipboard timeout in SystemService 2024-04-01 16:00:50 -05:00
Cesar Gonzalez 338042b0e4
[PM-6426] Adding jest tests for added BrowserApi methods 2024-04-01 15:57:25 -05:00
Cesar Gonzalez c903e0a0b0
Merge branch 'main' into autofill/pm-6426-create-alarms-manager-and-update-usage-of-long-lived-timeouts-rework 2024-04-01 15:37:40 -05:00
Cesar Gonzalez c365de4747
[PM-6426] Fixing dependency references in services.module.ts 2024-04-01 15:35:41 -05:00
Cesar Gonzalez ada03c656d
[PM-6426] Renaming the scheduleNextSync alarm name 2024-04-01 15:27:38 -05:00
Cesar Gonzalez daa8916ad6
[PM-6426] Setting up the full sync process as an interval rather than a timeout 2024-04-01 15:24:47 -05:00
Matt Gibson 2316222e18
Update SAST preset to query set (#8569) 2024-04-01 16:24:04 -04:00
Cesar Gonzalez 83cb105b49
[PM-6426] Merging main into branch 2024-04-01 15:18:50 -05:00
Cesar Gonzalez ef1388e531
[PM-6426] Updating jest tests for GeneratePasswordToClipboardCommand 2024-04-01 15:17:29 -05:00
Jared Snider c202c93378
Auth/PM-5268 - DeviceTrustCryptoService state provider migration (#7882)
* PM-5268 - Add DEVICE_TRUST_DISK to state definitions

* PM-5268 - DeviceTrustCryptoService - Get most of state provider refactor done - WIP - commented out stuff for now.

* PM-5268 - DeviceTrustCryptoServiceStateProviderMigrator - WIP - got first draft of migrator in place and working on tests. Rollback tests are failing for some reason TBD.

* PM-5268 - more WIP on device trust crypto service migrator tests

* PM-5268 - DeviceTrustCryptoServiceStateProviderMigrator - Refactor based on call with platform

* PM-5268 - DeviceTrustCryptoServiceStateProviderMigrator - tests passing

* PM-5268 - Update DeviceTrustCryptoService to convert over to state providers + update all service instantiations / dependencies to ensure state provider is passed in or injected.

* PM-5268 - Register new migration

* PM-5268 - Temporarily remove device trust crypto service from migrator to ease merge conflicts as there are 6 more migrators before I can apply mine in main.

* PM-5268 - Update migration numbers of DeviceTrustCryptoServiceStateProviderMigrator based on latest migrations from main.

* PM-5268 - (1) Export new KeyDefinitions from DeviceTrustCryptoService for use in test suite (2) Update DeviceTrustCryptoService test file to use state provider.

* PM-5268 - Fix DeviceTrustCryptoServiceStateProviderMigrator tests to use proper versions

* PM-5268 - Actually fix all instances of DeviceTrustCryptoServiceStateProviderMigrator test failures

* PM-5268 - Clean up state service, account, and login strategy of all migrated references

* PM-5268 - Account - finish cleaning up device key

* PM-5268 - StateService - clean up last reference to device key

* PM-5268 - Remove even more device key refs. *facepalm*

* PM-5268 - Finish resolving merge conflicts by incrementing migration version from 22 to 23

* PM-5268 - bump migration versions

* PM-5268 - DeviceTrustCryptoService - Implement secure storage functionality for getDeviceKey and setDeviceKey (to achieve feature parity with the ElectronStateService implementation prior to the state provider migration). Tests to follow shortly.

* PM-5268 - DeviceTrustCryptoService tests - getDeviceKey now tested with all new secure storage scenarios. SetDeviceKey tests to follow.

* PM-5268 - DeviceTrustCryptoService tests - test all setDeviceKey scenarios with state provider & secure storage

* PM-5268 - Update DeviceTrustCryptoService deps to actually use secure storage svc on platforms that support it.

* PM-5268 - Bump migration version due to merge conflicts.

* PM-5268 - Bump migration version

* PM-5268 - tweak jsdocs to be single line per PR feedback

* PM-5268 - DeviceTrustCryptoSvc - improve debuggability.

* PM-5268 - Remove state service as a dependency on the device trust crypto service (woo!)

* PM-5268 - Update migration test json to correctly reflect reality.

* PM-5268 - DeviceTrustCryptoSvc - getDeviceKey - add throw error for active user id missing.

* PM-5268 - Fix tests

* PM-5268 - WIP start on adding user id to every method on device trust crypto service.

* PM-5268 - Update lock comp dependencies across clients

* PM-5268 - Update login via auth request deps across clients to add acct service.

* PM-5268 - UserKeyRotationSvc - add acct service to get active acct id for call to rotateDevicesTrust and then update tests.

* PM-5268 - WIP on trying to fix device trust crypto svc tests.

* PM-5268 - More WIP device trust crypto svc tests passing

* PM-5268 - Device Trust crypto service - get all tests passing

* PM-5268 - DeviceTrustCryptoService.getDeviceKey - fix secure storage b64 to symmetric crypto key conversion

* PM-5268 - Add more tests and update test names

* PM-5268 - rename state to indicate it was disk local

* PM-5268 - DeviceTrustCryptoService - save symmetric key in JSON format

* PM-5268 - Fix lock comp tests by adding acct service dep

* PM-5268 - Update set device key tests to pass

* PM-5268 - Bump migration versions again

* PM-5268 - Fix user key rotation svc tests

* PM-5268 - Update web jest config to allow use of common spec in user-key-rotation-svc tests

* PM-5268 - Bump migration version

* PM-5268 - Per PR feedback, save off user id

* PM-5268 - bump migration version

* PM-5268 - Per PR feedback, remove unnecessary await.

* PM-5268 - Bump migration verson
2024-04-01 16:02:58 -04:00
Justin Baur 94843bdd8b
[PM-5956] Delete Unused State (#8439)
* Delete Unused State

* Delete One More

* Add Migration to Delete InstalledVersion

* Update Error
2024-04-01 15:36:39 -04:00
Jake Fink bd7c10705d
add clarification around null in state provider (#8567)
* add clarification around null in state provider

* Update libs/common/src/platform/state/user-state.ts

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

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-04-01 15:32:11 -04:00
Justin Baur 45f9f5695e
Add Custom `ErrorHandler` (#8543) 2024-04-01 15:29:04 -04:00
Matt Gibson 136226b6be
Observable auth statuses (#8537)
* Observable has token

* Allow access to user key state observable

* Create observable auth status

* Fix DI
2024-04-01 19:15:54 +00:00
Cesar Gonzalez 52f914bead
[PM-6426] Adding jest tests for the base TaskSchedulerService class 2024-04-01 14:11:58 -05:00
renovate[bot] c3c895230f
[deps] SM: Update typescript-eslint monorepo to v7 (#8116)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 11:54:27 -07:00
Cesar Gonzalez 2ebce58f28
[PM-6426] Implementing eventUploadInterval using TaskScheduler 2024-04-01 12:12:04 -05:00
Cesar Gonzalez 752df0612d
[PM-6426] Implementing sessionTimeout for LoginStrategyService using TaskSchedulerService 2024-04-01 12:08:16 -05:00
Cesar Gonzalez 1965d0e048
[PM-6426] Implementing reconnect timer timeout for NotificationService using the TaskSchedulerService 2024-04-01 12:02:28 -05:00
Cesar Gonzalez 5d41e8b627
[PM-6426] Implementing reconnect timer timeout for NotificationService using the TaskSchedulerService 2024-04-01 12:00:46 -05:00
Cesar Gonzalez f60a37fe2c
[PM-6426] Implementing abortTimeout for Fido2ClientService using TaskSchedulerService 2024-04-01 11:56:35 -05:00
Cesar Gonzalez 2f517336db
[PM-6426] Implementing clear clipboard call on generatePasswordToClipboard with the TaskSchedulerService 2024-04-01 11:45:16 -05:00
Cesar Gonzalez d989dc3804
[PM-6426] Fixing race condition with setting/unsetting active alarms 2024-04-01 11:18:09 -05:00
Cesar Gonzalez 0444489053
[PM-6426] Implementing systemClearClipboard using TaskScheduler 2024-04-01 10:13:47 -05:00
renovate[bot] 4db7cf9155
[deps] Autofill: Update tldts to v6.1.16 (#8559)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 11:10:11 -04:00
renovate[bot] 8803f87994
[deps] Autofill: Update prettier-plugin-tailwindcss to v0.5.13 (#8558)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 11:09:00 -04:00
Cesar Gonzalez b165849cd9
[PM-6426] Implementing nextSync timeout using TaskScheduler 2024-04-01 09:43:17 -05:00
Cesar Gonzalez 66ebdc04c8
[PM-6426] Create TaskSchedulerService and update usage of long lived timeouts 2024-04-01 09:28:19 -05:00
rr-bw 2e51d96416
[PM-5264] Implement StateProvider in LoginEmailService (#7662)
* setup StateProvider in LoginService

* replace implementations

* replace implementation

* remove stateService

* change storage location for web to 'disk-local'

* implement migrate() method of Migrator

* add RememberedEmailMigrator to migrate.ts

* add rollback

* add tests

* replace implementation

* replace implementation

* add StateProvider to Desktop services

* rename LoginService to RememberEmailService

* update state definition

* rename file

* rename to storedEmail

* rename service to EmailService to avoid confusion

* add jsdocs

* refactor login.component.ts

* fix typos

* fix test

* rename to LoginEmailService

* update factory

* more renaming

* remove duplicate logic and rename method

* convert storedEmail to observable

* refactor to remove setStoredEmail() method

* move service to libs/auth/common

* address floating promises

* remove comment

* remove unnecessary deps in service registration
2024-03-30 11:00:27 -07:00
Cesar Gonzalez 77cfa8a5ad
[PM-7128] Fix cached form fields not showing the inline menu after their visibility is changed using CSS (#8509) 2024-03-29 19:08:46 +00:00
Cesar Gonzalez 670f33daa8
[PM-5743] Implement eslint rule for usage of window object in background script (#7849)
* [PM-5742] Rework Usage of Extension APIs that Cannot be Called with the Background Service Worker

* [PM-5742] Implementing jest tests for the updated BrowserApi methods

* [PM-5742] Implementing jest tests to validate logic within added API calls

* [PM-5742] Implementing jest tests to validate logic within added API calls

* [PM-5742] Fixing broken Jest tests

* [PM-5742] Fixing linter error

* [PM-5887] Refactor WebCryptoFunction to Remove Usage of the window Object in the Background Script

* [PM-5878] Rework `window` call within OverlayBackground to function within AutofillOverlayIframe service

* [PM-6122] Rework `window` call within NotificationBackground to function within content script

* [PM-5881] Adjust usage of the `chrome.extension.getViews` API to ensure expected behavior in manifest v3

* [PM-5881] Reworking how we handle early returns from `reloadOpenWindows`

* [PM-5881] Implementing jest test to validate changes within BrowserApi.reloadOpenWindows

* [PM-5743] Implement eslint rule to impeede usage of the `window` object in the background script

* [PM-5743] Working through fixing eslint rule errors, and setting up ignore statements for lines that will be refactored at a later date

* [PM-5743] Fixing broken jest tests

* [PM-5879] Removing `backgroundWindow` reference used for determing system theme preference in Safari

* [PM-5879] Removing `backgroundWindow` reference used for determing system theme preference in Safari

* [PM-5743] Updating references to NodeJS.Timeout

* [PM-5743] Adding notification bar and overaly content scripts to the eslint excluded files key

* [PM-5743] Adding other excluded files from the eslint rule

* [PM-5743] Reworking implementation to have the .eslintrc.json file present within the browser subdirectory
2024-03-29 15:55:23 +00:00
github-actions[bot] 9d1219bda6
Autosync the updated translations (#8541)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-03-29 15:54:20 +00:00
SmithThe4th 3a830789ba
[PM-5884] Allow deletion of passkey from edit view - clients (#8500)
* add remove button for passkeys during edit

* added live region to announce when a passkey is removed

* removed announce passkey removed by SR

* removed unused variable
2024-03-29 10:06:50 -04:00
watsondm 07c172d3a3
Revert "CLOUDOPS-1369 Remove R2 bucket secrets and step from artifacts (#8534)" (#8546)
This reverts commit 7021e94475.
2024-03-29 09:43:06 -04:00
aj-rosado 813dd97fed
Removing clientSideOnlyVerification on UserVerificationDialogComponent on web export.component (#8545) 2024-03-29 13:08:41 +00:00
Jared Snider ebe5a46b57
PM-5263 - Clear all tokens on logout (#8536) 2024-03-28 16:56:02 -04:00
watsondm 7021e94475
CLOUDOPS-1369 Remove R2 bucket secrets and step from artifacts (#8534) 2024-03-28 16:44:40 -04:00
Addison Beck b70897a441
Await `this.getScimEndpointUrl()` (#8532) 2024-03-28 14:12:52 -05:00
Ike 3d19e3489c
[PM-5269] Key Connector state migration (#8327)
* key connector migration initial

* migrator complete

* fix dependencies

* finalized tests

* fix deps and sync main

* clean up definition file

* fixing tests

* fixed tests

* fixing CLI, Browser, Desktop builds

* fixed factory options

* reverting exports

* implemented UserKeyDefinition clearOn

* Update KeyConnector MIgration

* updated migrator and tests to match profile object

* removed unused service and updated clear

* dep fix

* dep fixes

* clear usesKeyConnector on logout
2024-03-28 12:50:24 -04:00
✨ Audrey ✨ df058ba399
[PM-6146] generator history (#8497)
* introduce `GeneratorHistoryService` abstraction
* implement generator history service with `LocalGeneratorHistoryService` 
* cache decrypted data using `ReplaySubject` instead of `DerivedState`
* move Jsonification from `DataPacker` to `SecretClassifier` because the classifier 
  is the only component that has full type information. The data packer still handles 
  stringification.
2024-03-28 12:19:12 -04:00
Victoria League 65353ae71d
[CL-215] Fix broken icon stories and clarify usage (#8484) 2024-03-28 10:26:26 -04:00
Jake Fink bd6b3266d4
move auth request notification to service (#8451)
- cleanup hanging promises
2024-03-28 09:34:21 -04:00
Matt Gibson 37735436d1
Move biometric texts all to getters (#8520)
We cannot load biometric text on init because they are not valid everywhere. This was causing issues with settings storage on linux.
2024-03-28 07:53:20 -04:00
github-actions[bot] ddae908d86
Autosync the updated translations (#8524)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-03-28 11:06:25 +00:00
github-actions[bot] f30116b34d
Autosync the updated translations (#8525)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-03-28 11:06:17 +00:00