1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-20 10:13:31 +00:00
Commit Graph

2932 Commits

Author SHA1 Message Date
Cesar Gonzalez
b51586f362 [PM-5189] Implementing jest tests for the OverlayBackground 2024-06-05 11:46:28 -05:00
Cesar Gonzalez
d3ba598a45 [PM-5189] Implementing jest tests for the OverlayBackground 2024-06-05 10:24:20 -05:00
Shane Melton
1cfbcf4ee0 [PM-8334] Sort ciphers after autofill (#9511)
* [PM-8334] Add localData$ to CipherService and watch it for updates

* Fix leftover tw-fixed class

* [PM-8334] Fix tests
2024-06-05 08:10:36 -07:00
Justin Baur
1aaa88a64d [PM-7837] Move SyncService to Platform Ownership (#9055)
* Move

* Update  References In Unowned Files

* Update  References In Vault Files

* Update Web AppComponent

* Add Import
2024-06-05 10:48:12 -04:00
Cesar Gonzalez
81e2cd3e1f [PM-5189] Implementing jest tests for the OverlayBackground 2024-06-05 09:34:13 -05:00
Jason Ng
cb0927ac5d [PM-8553] browser v2 search bar defects (#9506)
* update no results icon and no results scrolling
* update v2 search so the term persist when the user clicks into an item and exits the item
2024-06-05 10:06:52 -04:00
Cesar Gonzalez
4a6853bdaf [PM-5189] Implementing jest tests for the OverlayBackground 2024-06-05 08:30:18 -05:00
Cesar Gonzalez
4477b9b34f [PM-5189] Adjusting how we handle fade out of the inline menu element 2024-06-05 05:09:54 -05:00
Cesar Gonzalez
5a1e061778 [PM-5189] Fixing issue with programmatic redirection of the inlne menu 2024-06-05 05:02:12 -05:00
Cesar Gonzalez
b2ab42e1a4 [PM-5189] Fixing issue with programmatic redirection of the inlne menu 2024-06-05 04:38:27 -05:00
vinith-kovan
7e86c0afd4 [PM-5014] Download license component migration (#8443)
* Download license component migration

* download license dialog component migration

* download license dialog component migration
2024-06-05 13:45:08 +05:30
Cesar Gonzalez
ce593e024d [PM-5189] Fixing issue with how we remove the inline menu when a field is populated 2024-06-05 02:33:33 -05:00
Cesar Gonzalez
27066c4a08 [PM-5189] Reworking how we handle updating ciphers on unlock and updating reference to auth status to use observable 2024-06-04 17:58:38 -05:00
Cesar Gonzalez
02bbb41148 Merge branch 'autofill/pm-8518-autofill-scripts-do-not-inject-into-sub-frames-on-install' into autofill/pm-5189-fix-issues-present-with-inline-menu-rendering-in-iframes 2024-06-04 17:48:22 -05:00
Cesar Gonzalez
a47e108533 Merge branch 'main' into autofill/pm-8518-autofill-scripts-do-not-inject-into-sub-frames-on-install 2024-06-04 17:48:12 -05:00
Cesar Gonzalez
5853f9f1a9 Merge branch 'main' into autofill/pm-8027-inline-menu-appears-within-input-fields-that-do-not-relate-to-user-login 2024-06-04 17:48:00 -05:00
Cesar Gonzalez
4ecbfb3d49 [PM-5189] Working through jest tests for OverlayBackground 2024-06-04 17:47:04 -05:00
Cesar Gonzalez
07713511e4 [PM-5189] Working through jest tests for OverlayBackground 2024-06-04 16:54:14 -05:00
Shane Melton
f059d136b2 [PM-8485] [PM-7683] Dynamic list items - Org Details (#9466)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip

* [PM-8485] Introduce new PopupCipherView

* [PM-8485] Use new PopupCipherView in items service

* [PM-8485] Add org icon for items that belong to an organization

* [PM-8485] Fix tests

* [PM-8485] Remove share operator from cipherViews$
2024-06-04 14:34:48 -07:00
Nick Krantz
d0c1325f0c update icons for folder & collection filters (#9508) 2024-06-04 16:26:39 -05:00
Shane Melton
6eb94078f6 [PM-8456] [PM-7683] Dynamic list items - 3 dot menu (#9422)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip
2024-06-04 14:21:14 -07:00
Shane Melton
d1a9d6f613 [PM-8455] [PM-7683] Dynamic list items - Copy Action (#9410)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-7683] Move disabled logic into own method
2024-06-04 14:09:09 -07:00
KiruthigaManivannan
fc2953a126 AC-2680 Custom permission manage account recovery no longer auto triggers the manage users (#9477) 2024-06-04 15:55:35 -04:00
vinith-kovan
9322dacbd4 [PM 5011][PM-8562] migrate user subscription component (#9499)
* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog
2024-06-04 23:26:20 +05:30
Cesar Gonzalez
b9d257046c [PM-5189] Implementing jest tests for the OverlayBackground 2024-06-04 12:28:08 -05:00
rr-bw
13c2c2ecaa [PM-8236] Allow for additional data properties (#9278)
* allow for additional properties

* create interface for DataProperties and extend AnonLayouWrapperData

* move data properties to RouterService

* add docs

* add comment

* rewrite comment
2024-06-04 08:38:54 -07:00
Cesar Gonzalez
f3c0a24a1d [PM-5189] Fixing existing jest tests before undergoing larger scale rework of tests 2024-06-04 10:21:58 -05:00
Cesar Gonzalez
d774bc96d9 [PM-5189] Merging work done for pm-8518 2024-06-04 10:00:25 -05:00
Cesar Gonzalez
66873dee95 Merge branch 'main' into autofill/pm-8518-autofill-scripts-do-not-inject-into-sub-frames-on-install 2024-06-04 09:54:00 -05:00
Cesar Gonzalez
fb486b72b7 Merge branch 'main' into autofill/pm-8027-inline-menu-appears-within-input-fields-that-do-not-relate-to-user-login 2024-06-04 09:25:46 -05:00
Cesar Gonzalez
c2653f5376 [PM-8027] Finalization of Jest test for the implementation 2024-06-04 09:24:53 -05:00
Cesar Gonzalez
3397261d55 [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService 2024-06-04 08:54:33 -05:00
renovate[bot]
be5507411b [deps] Platform: Update @types/node to v20 (#9428)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 08:27:05 -05:00
renovate[bot]
24f0a7478b [deps] Platform: Update Rust crate anyhow to v1.0.86 (#9375)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 12:18:36 +02:00
Cesar Gonzalez
6199904d73 [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService 2024-06-03 17:35:33 -05:00
Cesar Gonzalez
146cf029c4 [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService 2024-06-03 17:28:11 -05:00
Cesar Gonzalez
5dfadbafba [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService 2024-06-03 17:15:34 -05:00
Cesar Gonzalez
6dae05a9f3 [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService 2024-06-03 17:08:12 -05:00
Cesar Gonzalez
6b7b6cb303 [PM-8027] Adding jest test to validate new behavior 2024-06-03 16:25:20 -05:00
Cesar Gonzalez
2c1dfc9261 [PM-8027] Removing unnecessary code 2024-06-03 16:20:23 -05:00
Cesar Gonzalez
6d2795dcde [PM-8027] Removing unnecessary code 2024-06-03 16:10:10 -05:00
Cesar Gonzalez
eb877065e3 [PM-8027] Fixing jest tests for the collectPageDetails method 2024-06-03 16:04:46 -05:00
Cesar Gonzalez
75da1d6556 [PM-8027] Fixing jest tests for the overlay 2024-06-03 15:56:44 -05:00
Cesar Gonzalez
0e85966ee0 [PM-8027] Refining how we identify a username login form field 2024-06-03 15:40:04 -05:00
renovate[bot]
7627afbfec [deps] Platform: Update Rust crate base64 to v0.22.1 (#9376)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-03 14:33:25 -04:00
Cesar Gonzalez
a57c7c4e53 [PM-8027] Refining how we identify a password login form field 2024-06-03 13:25:27 -05:00
Bitwarden DevOps
99639b537f Bumped client version(s) (#9486) 2024-06-03 18:10:48 +00:00
Cesar Gonzalez
cc4c954664 [PM-8027] Refining how we identify a username login form field 2024-06-03 13:05:21 -05:00
Jared Snider
9d35a8895e Auth/PM-8367 - Email Verification - Integrate Registration Self Hosted Env Selector + new Self Hosted Env Settings Dialog into Registration Start (#9361)
* PM-8367 - WIP - initial comp creation

* PM-8367 - Majority of new registration self hosted env config dialog working

* PM-8367 - RegistrationEnvSelectorComponent - add method handleSelfHostedEnvConfigDialogResult and add toast for happy path.

* PM-8367 - Add validation TODO

* PM-8367 - RegistrationSelfHostedEnvConfigDialogComponent - Add validator

* PM-8367 - RegEnvSelector - Only show self hosted if the client is browser or desktop since we will be using the selector on web as well.

* PM-8367 - Registration start comp - add env selector

* PM-8367 - Registration start - add proper import for standalone comps.

* PM-8367 - Registration Start - get storybook fixed with registration env selector

* PM-8367 - Add self hosted server to web translations only for storybook

* PM-8367 - Add more storybook examples and update docs (WIP - need to test self hosted selection)

* PM-8367 - Registration Start - update stories

* PM-8367 - Env Selector now emits selected region so that parent comps can listen to it if needed.

* PM-8367 - Registration Start - wire up handler for selectedRegionChange so that the parent comp can successfully track isSelfHost and hide / show the terms / privacy policy checkbox

* PM-8367 - TODO cleanup

* PM-8367 - Registration start docs - stage gate is two words.

* PM-8367 - Per working session with Will, move top level provided services to app level instead of module level to solve dialog null injector errors.

* PM-8367 - Storybook working for self hosted env dialog

* PM-8367 - Add dialog scroll feature to bitDialog and implement in self hosted env dialog.

* PM-8367 - Revert bit dialog changes and scroll implementation.

* PM-8367 - Tweak registration start docs

* PM-8367 - Remove unused changeDetectorRef

* PM-8367 - Add docs per PR feedback
2024-06-03 13:05:27 -04:00
Jared Snider
f691854387 Auth - PM-7392 & PM-7436 - Token Service - Desktop - Add disk fallback for secure storage failures (#8913)
* PM-7392 - EncryptSvc - add new method for detecting if a simple string is an enc string.

* PM-7392 - TokenSvc - add checks when setting and retrieving the access token to improve handling around the access token encryption.

* PM-7392 - (1) Clean up token svc (2) export access token key type for use in tests.

* PM-7392 - Get token svc tests passing; WIP more tests to come for new scenarios.

* PM-7392 - Access token secure storage to disk fallback WIP but mostly functional besides weird logout behavior.

* PM-7392 - Clean up unnecessary comment

* PM-7392 - TokenSvc - refresh token disk storage fallback

* PM-7392 - Fix token service tests in prep for adding tests for new scenarios.

* PM-7392 - TokenSvc tests - Test new setRefreshToken scenarios

* PM-7392 - TokenSvc - getRefreshToken should return null or a value - not undefined.

* PM-7392 - Fix test name.

* PM-7392 - TokenSvc tests - clean up test names that reference removed refresh token migrated flag.

* PM-7392 - getRefreshToken tests done.

* PM-7392 - Fix error quote

* PM-7392 - TokenSvc tests - setAccessToken new scenarios tested.

* PM-7392 - TokenSvc - getAccessToken - if secure storage errors add error to log.

* PM-7392 - TokenSvc tests - getAccessToken - all new scenarios tested

* PM-7392 - EncryptSvc - test new stringIsEncString method

* PM-7392 - Main.ts - fix circ dep issue.

* PM-7392 - Main.ts - remove comment.

* PM-7392 - Don't re-invent the wheel and simply use existing isSerializedEncString static method.

* PM-7392 - Enc String - (1) Add handling for Nan in parseEncryptedString (2) Added null handling to isSerializedEncString. (3) Plan to remove encrypt service implementation

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

* PM-7392 - Remove encrypt service method

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

* PM-7392 - Actually fix circ dep issues with Justin. Ty!

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

* PM-7392 - TokenSvc - update to use EncString instead of EncryptSvc + fix tests.

* PM-7392 - TokenSvc - (1) Remove test code (2) Refactor decryptAccessToken method to accept access token key and error on failure to pass required decryption key to method.

* PM-7392 - Per PR feedback and discussion, do not log the user out if hte refresh token cannot be found. This will allow users to continue to use the app until their access token expires and we will error on trying to refresh it. The app will then still work on a fresh login for 55 min.

* PM-7392 - API service - update doAuthRefresh error to clarify which token cannot be refreshed.

* PM-7392 - Fix SetRefreshToken case where a null input would incorrectly trigger a fallback to disk.

* PM-7392 - If the access token cannot be refreshed due to a missing refresh token or API keys, then surface an error to the user and log it so it isn't a silent failure + we get a log.

* PM-7392  - Fix CLI build errors

* PM-7392 - Per PR feedback, add missing tests (thank you Jake for writing these!)

Co-authored-by: Jake Fink <jfink@bitwarden.com>

* PM-7392 - Per PR feedback, update incorrect comment from 3 releases to 3 months.

* PM-7392 - Per PR feedback, remove links.

* PM-7392 - Per PR feedback, move tests to existing describe.

* PM-7392 - Per PR feedback, adjust all test names to match naming convention.

* PM-7392 - ApiService - refreshIdentityToken - log error before swallowing it so we have a record of it.

* PM-7392 - Fix copy for errorRefreshingAccessToken

* PM-7392 - Per PR feedback, move error handling toast responsibility to client specific app component logic reached via messaging.

* PM-7392 - Swap logout reason from enum to type.

* PM-7392 - ApiService - Stop using messaging to trigger toast to let user know about refresh access token errors; replace with client specific callback logic.

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

* PM-7392 - Per PR feedback, adjust enc string changes and tests.

* PM-7392 - Rename file to be type from enum

* PM-7392 - ToastService - we need to await the activeToast.onHidden observable so return the activeToast from the showToast.

* PM-7392 - Desktop AppComp - cleanup messaging

* PM-7392 - Move Logout reason custom type to auth/common

* PM-7392 - WIP - Enhancing logout callback to consider the logout reason + move show toast logic into logout callback

* PM-7392 - Logout callback should simply pass along the LogoutReason instead of handling it - let each client's message listener handle it.

* PM-7392 - More replacements of expired with logoutReason

* PM-7392 - More expired to logoutReason replacements

* PM-7392 - Build new handlers for displaying the logout reason for desktop & web.

* PM-7392 - Revert ToastService changes

* PM-7392 - TokenSvc - Replace messageSender with logout callback per PR feedback.

* PM-7392 - Desktop App comp - replace toast usage with simple dialog to guarantee users will see the reason for them being logged out.

* PM-7392 - Web app comp - fix issue

* PM-7392 - Desktop App comp - don't show cancel btn on simple dialogs.

* PM-7392 - Desktop App comp - Don't open n simple dialogs.

* PM-7392 - Fix browser build

* PM-7392 - Remove logout reason from CLI as each logout call handles messaging on its own.

* PM-7392 - Previously, if a security stamp was invalid, the session was marked as expired. Restore that functionality.

* PM-7392 - Update sync service logoutCallback to include optional user id.

* PM-7392 - Clean up web app comp

* PM-7392 - Web - app comp - only handle actually possible web logout scenarios.

* PM-7392 - Browser Popup app comp - restore done logging out message functionality + add new default logout message

* PM-7392 - Add optional user id to logout callbacks.

* PM-7392 - Main.background.ts - add clarifying comment.

* PM-7392 - Per feedback, use danger simple dialog type for error.

* PM-7392 - Browser Popup - add comment clarifying expectation of seeing toasts.

* PM-7392 - Consolidate invalidSecurityStamp error handling

* PM-7392 - Per PR feedback, REFRESH_ACCESS_TOKEN_ERROR_CALLBACK can be completely sync. + Refactor to method in main.background.

* PM-7392 - Per PR feedback, use a named callback for refreshAccessTokenErrorCallback in CLI

* PM-7392 - Add TODO

* PM-7392 - Re-apply bw.ts changes to new service-container.

* PM-7392 - TokenSvc - tweak error message.

* PM-7392 - Fix test

* PM-7392 - Clean up merge conflict where I duplicated dependencies.

* PM-7392 - Per discussion with product, change default logout toast to be info

* PM-7392 - After merge, add new logout reason to sync service.

* PM-7392 - Remove default logout message per discussion with product since it isn't really visible on desktop or browser.

* PM-7392 - address PR feedback.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2024-06-03 12:36:45 -04:00