1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-18 18:33:50 +00:00
Commit Graph

3307 Commits

Author SHA1 Message Date
Mike Amirault
442e8b05c8 [PM-29875] Close Send drawer on navigation (#18031) 2026-02-17 09:25:29 -08:00
Mike Amirault
bbe7261d10 [PM-29780] Add feature flag for Send email OTP verification (#18005)
* [PM-29780] Add feature flag for Send email OTP verification

* [PM-29780] Add default flag value
2026-02-17 09:25:28 -08:00
Shane Melton
9c52600a0a [PM-28746] Item transfer event logs (#18032)
* [PM-28746] Add item organization event types and i18n strings

* [PM-28746] Log event when transfer is accepted or declined
2026-02-17 09:25:28 -08:00
cyprain-okeke
eeb962528c [PM 29079]Remove code for pm-24033-updat-premium-subscription-page (#17905)
* Remove the feature flag

* delete and rename CloudHostedPremiumVNextComponent
2026-02-17 09:25:27 -08:00
Oscar Hinton
0a4a9a4541 [UIF] Prefer static string properties (#17966) 2026-02-17 09:25:26 -08:00
Bernd Schoolmann
f3125d1ded [PM-27315] Add account cryptographic state service (#17589)
* Update account init and save signed public key

* Add account cryptographic state service

* Fix build

* Cleanup

* Fix build

* Fix import

* Fix build on browser

* Fix

* Fix DI

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix test

* Fix desktop build

* Fix

* Address nits

* Cleanup setting private key

* Add tests

* Add tests

* Add test coverage

* Relative imports

* Fix web build

* Cleanup setting of private key
2026-02-17 09:25:25 -08:00
neuronull
c732b3713e Desktop Autotype add GA FF (#17896) 2026-02-17 09:25:25 -08:00
Bryan Cunningham
325b0b74d1 [CL-927] add popup header back to extension layout for now (#18023)
* add popup header back to extension layout for now

* conditionally add margin for now if not hiding logo
2026-02-17 09:25:25 -08:00
Alex Dragovich
f11fed44a3 [PM-29896] specify noun or verb for Import / Export terms (#18012)
* [PM-29896] specify noun or verb for Import / Export terms

* [PM-29896] adjust verb to noun
2026-02-17 09:25:25 -08:00
Daniel James Smith
6c016554b5 Update command to reset nx (#18022)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-02-17 09:25:24 -08:00
Jared Snider
0f02fdc700 refactor(IdentityTokenResponse): [Auth/PM-3287] Remove deprecated resetMasterPassword property from IdentityTokenResponse (#17794)
* PM-3287 - Remove resetMasterPassword from authResult and identityTokenResponse and replace with userDecryptionOptions where relevant

* PM-3287 - (1) Move SSO code to SSO section (2) Update error scenario conditional + log user out upon error.

* PM-3287 - Fix comment per PR feedback

* PM-3287 - CLI Login with SSO - move MP validation logic back to original location to avoid putting it before 2FA rejection handling.

* PM-3287 - Update returns
2026-02-17 09:25:23 -08:00
Bernd Schoolmann
aae238a08f [PM-28901] Fix master key not being set to state after kdf update (#17990)
* Fix master key not being set to state after kdf update

* Fix cli build

* Fix test error

* Fix hash purpose

* Add test for master key being set

* Fix incorrect variable name
2026-02-17 09:25:21 -08:00
Shane Melton
f91730e714 [PM-27675] Browser item transfer integration (#17918)
* [PM-27675] Integrate dialogs into VaultItemTransferService

* [PM-27675] Update tests for new dialogs

* [PM-27675] Center dialogs and prevent closing with escape or pointer events

* [PM-27675] Add transferInProgress$ observable to VaultItemsTransferService

* [PM-27675] Hook vault item transfer service into browser vault component

* [PM-27675] Move defaultUserCollection$ to collection service

* [PM-27675] Cleanup dialog styles

* [PM-27675] Introduce readySubject to popup vault component to keep prevent flashing content while item transfer is in progress

* [PM-27675] Fix vault-v2 tests
2026-02-17 09:25:20 -08:00
Mike Amirault
65dff3713e [PM-28181] Open send dialog in drawer instead of popup in refreshed UI (#17666)
* [PM-28181] Open send dialog in drawer instead of popup in refreshed UI

* Fix types

* [PM-28181] Use drawer to edit sends with refreshed UI

* [PM-28181] Address bug where multiple Sends could not be navigated between
2026-02-17 09:25:19 -08:00
Alex Morask
1662607467 [PM-29607] Create @bitwarden/subscription (#17997)
* Create @bitwarden/subscription

* Fix changed import in tsconfig.base.json
2026-02-17 09:25:18 -08:00
Oscar Hinton
bf741dcea4 [CL-934] Migrate breadcrumbs to OnPush (#17390)
Migrates BreadcrumbComponent and BreadcrumbsComponent to OnPush and changes any property to computed signals.
2026-02-17 09:25:17 -08:00
Jason Ng
5414c904e7 [PM-26514] Archive With Non Premium User (#17820)
* Add callout for archive non premium, add premium check, add archive badge to view/edit modal, update btn text
2026-02-17 09:25:16 -08:00
Todd Martin
38a8540f4d chore(README): Update READMEs missing H1 headers
* Update READMEs missing H1 headers.

* Changed casing.
2026-02-17 09:25:15 -08:00
Bernd Schoolmann
26cd16b481 Use proof of decryption (#17903) 2026-02-17 09:25:14 -08:00
Max
2c1c63d23a [PM-28536] Add phishing blocker setting to account security (#17527)
* added phishing blocker toggle

* design improvements

* Fix TypeScript strict mode errors in PhishingDetectionSettingsServiceAbstraction

* Camel case messages

* Update PhishingDetectionService.initialize parameter ordering

* Add comments to PhishingDetectionSettingsServiceAbstraction

* Change state from global to user settings

* Remove clear on logout phishing-detection-settings

* PM-28536 making a change from getActive to getUser because of method being deprecated

* Moved phishing detection services to own file

* Added new phishing detection availability service to expose complex enable logic

* Add test cases for PhishingDetectionAvailabilityService

* Remove phishing detection availability in favor of one settings service

* Extract phishing detection settings service abstraction to own file

* Update phishing detection-settings service to include availability logic. Updated dependencies

* Add test cases for phishing detection element. Added missing dependencies in testbed setup

* Update services in extension

* Switch checkbox to bit-switch component

* Remove comment

* Remove comment

* Fix prettier vs lint spacing

* Replace deprecated active user state. Updated test cases

* Fix account-security test failing

* Update comments

* Renamed variable

* Removed obsolete message

* Remove unused variable

* Removed unused import

---------

Co-authored-by: Leslie Tilton <23057410+Banrion@users.noreply.github.com>
Co-authored-by: Graham Walker <gwalker@bitwarden.com>
Co-authored-by: Tom <144813356+ttalty@users.noreply.github.com>
2026-02-17 09:25:14 -08:00
Oscar Hinton
8bf2266899 Migrate avatar to OnPush (#17389) 2026-02-17 09:25:13 -08:00
Maciej Zieniuk
6a7e0e8e23 [PM-26049] Auto key not stored due to vault timeout write vs read race condition for cli (#17707)
* auto key not stored due to vault timeout race condition being null for cli

* fix unit test default state

* neglected electron key service test cleanup

* bad merge - fix formatting
2026-02-17 09:25:13 -08:00
Alex Dragovich
50710753cd [PM-23258] changing verbiage from import data to import items (#17123)
* [PM-23258] changing verbiage from import data to import items

* [PM-23258] Removing vault and data from import and export titles, navs, and buttons

* [PM-23258] more verbiage changes

* [PM-23258] reverting unnecessary change

* [PM-23258] removing unused text from messages json files

* [PM-23258] small text changes from design

* [PM-23258] including secrets manager changes
2026-02-17 09:25:12 -08:00
Todd Martin
b3994e2fc5 feat(accounts): Add creationDate of account to AccountInfo
* Add creationDate of account to AccountInfo

* Added initialization of creationDate.

* Removed extra changes.

* Fixed tests to initialize creation date

* Added helper method to abstract account initialization in tests.

* More test updates.

* Linting

* Additional test fixes.

* Fixed spec reference

* Fixed imports

* Linting.

* Fixed browser test.

* Modified tsconfig to reference spec file.

* Fixed import.

* Removed dependency on os.  This is necessary so that the @bitwarden/common/spec lib package can be referenced in tests without node.

* Revert "Removed dependency on os.  This is necessary so that the @bitwarden/common/spec lib package can be referenced in tests without node."

This reverts commit 669f6557b6.

* Updated stories to hard-code new field.

* Removed changes to tsconfig

* Revert "Removed changes to tsconfig"

This reverts commit b7d916e8dc.
2026-02-17 09:25:12 -08:00
Jordan Aasen
d424425f41 fix alignment in hidden/pw fields (#17877) 2026-02-17 09:25:11 -08:00
Jordan Aasen
beac80df29 [PM-25388] - remove reference to android/ios icons (#17763)
* remove android/ios icons as they're not in the icon lib

* fix tests
2026-02-17 09:25:11 -08:00
Dave
2b94cbbfc9 fix(token-service) [PM-15333]: Portable App Is Not Portable (#17781)
* feat(token-service) [PM-15333]: Update Portable secure storage resolution to use disk.

* feat(token-service) [PM-15333]: Move isWindowsPortable evaluation to preload with other platform evaluations.
2026-02-17 09:25:10 -08:00
Bryan Cunningham
86a4d3fe96 [CL-927] anon layout header actions slot (#17796)
* add a slot for consumers to show user actions in anon layout header

* remove commented code

* ensure logo stays top aligned

* switch to dashed naming

* fix ngif statements

* remove empty selector

* remove unnecessary containers

* use smaller logo on smaller screens

* remove commented code from extension layout

* remove dupe slot

* only take extension screenshots on small screens

* take screenshot at 380

* take large and small screenshot

* update story to use new control flow
2026-02-17 09:25:10 -08:00
Daniel James Smith
2a53735e55 [PM-29565] Delete deprecated callout component (#17895)
* Replace usages of app-callout with bit-callout

* Delete callout.component

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-02-17 09:25:09 -08:00
Bernd Schoolmann
9269417d0c Fix kdf prompt not working on browser (#17902) 2026-02-17 09:25:09 -08:00
Bernd Schoolmann
cc02c6530f [PM-24353] Drop legacy pin support (#17328)
* Drop legacy pin support

* Fix cli build

* Fix browser build

* Remove pin key

* Fix comment

* Fix CI / tests

* Add migration to remove key

* Inline export key

* Extract vault export key generation

* Cleanup

* Add migrator

* Fix mv2 build
2026-02-17 09:25:08 -08:00
Bernd Schoolmann
57c2769200 [PM-27225] Fix nothing showing when biometrics unavailable (#17209)
* Fix nothing showing when biometrics unavailable

* Cleanup

* Switch to tooltip

* Fix type error

* Fix type check

* Fix includes

* Fix types

* Fix tests

* Add missing return

* Add DesktopDisconnected to canUseBiometrics

* Apply suggestions

* Move comment

* Cleanup

* Fix typing for null value

* Add tests

* Fix QA bugs
2026-02-17 09:25:08 -08:00
Oscar Hinton
8e6a28cd8f [BEEEP] [PM-28239] Migrate generators to standalone (#17386)
* Migrate generators to use standalone and control flow

* Resolve feedback

* Add variable for account

* Fix generators
2026-02-17 09:25:07 -08:00
Thomas Avery
f64d3d5803 [PM-28264] Consolidate and update the UI for key connector migration/confirmation (#17642)
* Consolidate the RemovePasswordComponent

* Add getting confirmation details for confirm key connector

* Add missing message
2026-02-17 09:25:07 -08:00
Bernd Schoolmann
cb9edf4157 Fix cipher key decryption in TS code (#17907) 2026-02-17 09:25:06 -08:00
renovate[bot]
513c1a19ac [deps] Autofill: Update prettier to v3.7.3 (#17853)
* [deps] Autofill: Update prettier to v3.6.2

* fix: [PM-23425] Fix prettier issues related to dependency updte

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>

* [deps] Autofill: Update prettier to v3.6.2

* [deps] Autofill: Update prettier to v3.7.3

* [PM-29379] Fix prettier issues found with the updated Prettier 3.7.3

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>

---------

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ben Brooks <bbrooks@bitwarden.com>
2026-02-17 09:25:05 -08:00
Ike
42b13b16c5 [PM-1632] Redirect on SSO required response from connect/token (#17637)
* feat: add Identity Sso Required Response type as possible response from token endpoint.

* feat: consume sso organization identifier to redirect user

* feat: add get requiresSso to AuthResult for more ergonomic code.

* feat: sso-redirect on sso-required for CLI and Desktop

* chore: fixing type errors

* test: fix and add tests for new sso method

* docs: fix misspelling

* fix: get email from AuthResult instead of the FormGroup

* fix:claude: when email is not available for SSO login show error toast.

* fix:claude: add null safety check
2026-02-17 09:25:03 -08:00
Bryan Cunningham
f6513840e9 fix padding when nested. remove ng style and class (#17874)
* fix padding when nested. remove ng style and class

* add expanded group to story to cover bug fix

* use class binding for async classes

* remove unnecessary x padding to improve truncation

* simplify padding logic

* fix padding end in closed state

* add back some padding in tree view

* add back padding to avoid weird spacing scenarios
2026-02-17 09:25:03 -08:00
Bernd Schoolmann
4203d16e8e [PM-28813] Implement encryption diagnostics & recovery tool (#17673)
* Implement data recovery tool

* Fix tests

* Move Sdkloadservice call and use bit action
2026-02-17 09:25:01 -08:00
Shane Melton
b4fa71dcd6 [PM-27662] Introduce vault item transfer service (#17876)
* [PM-27662] Add revision date to policy response

* [PM-27662] Introduce vault item transfer service

* [PM-27662] Add feature flag check

* [PM-27662] Add tests

* [PM-27662] Add basic implementation to Web vault

* [PM-27662] Remove redundant for loop

* [PM-27662] Remove unnecessary distinctUntilChanged

* [PM-27662] Avoid subscribing to userMigrationInfo$ if feature flag disabled

* [PM-27662] Make UserMigrationInfo type more strict

* [PM-27662] Typo

* [PM-27662] Fix missing i18n

* [PM-27662] Fix tests

* [PM-27662] Fix tests/types related to policy changes

* [PM-27662] Use getById operator
2026-02-17 09:25:00 -08:00
SmithThe4th
171342f11b [PM-27663] Create VaultItemTransferModalComponent and confirmation dialogs (#17883)
* Created item transfer dialogs

* Added empty line
2026-02-17 09:25:00 -08:00
Oscar Hinton
d8d313967e [PM-294489 Extract send table to libs/tools (#17841)
* Extract send table to libs/tools so it can be re-used in desktop

* Remove *ngIf

* Add story

* Move story under sends

* Remove duplicate class

* Move the dates to prevent any changes in storybook

* Revert changes to web component to speed up merge
2026-02-17 09:24:57 -08:00
Alex
dae10543a8 [PM-25037] add optional size input to app-vault-icon to prevent zoom issues (#17640) 2026-02-17 09:24:56 -08:00
Mike Amirault
2ffc2b38e0 [PM-20080] Add spacing to new cipher/send buttons, unify sizing (#17806)
* [PM-20080] Add spacing to new cipher/send buttons, unify sizing

* [PM-20080] Use logical css properties and increase spacing
2026-02-17 09:24:56 -08:00
Nick Krantz
54f973f1fd account for pre-set value of an angular form before the options are set (#17872) 2026-02-17 09:24:56 -08:00
Kyle Denney
9a33c20b1b [PM-24581] new styling for premium badge (#17793)
* [PM-24581] new styling for premium badge

* stories file

* translations for browser and desktop

* design review feedback

* color fixes, thanks claude
2026-02-17 09:24:55 -08:00
Kyle Denney
657f03892e [PM-29138] fix defect with pricing service on self host (#17819)
* [PM-29138] fix defect with pricing service on self host

* use iscloud instead of manually checking region

* fixing strict compile issues

* spacing updates from design review

* final spacing edits

* pr feedback

* typechecking
2026-02-17 09:24:53 -08:00
Mike Amirault
863e43836b [PM-24095] Ensure long Send file names do not overflow parent container (#17774)
* [PM-24095] Ensure long Send file names do not overflow parent container

* [PM-24095] Add styling to a couple other spots
2026-02-17 09:24:53 -08:00
Shane Melton
3f112fee51 [PM-22750] Reimplement fix old attachment logic (#17689)
* [PM-22750] Add upgradeOldCipherAttachment method to CipherService

* [PM-22750] Refactor download attachment component to use signals

* [PM-22750] Better download url handling

* [PM-22750] Cleanup upgradeOldCipherAttachments method

* [PM-22750] Refactor cipher-attachments.component to use Signals and OnPush

* [PM-22750] Use the correct legacy decryption key for attachments without their own content encryption key

* [PM-22750] Add fix attachment button back to attachments component

* [PM-22750] Fix newly added output signals

* [PM-22750] Fix failing test due to signal refactor

* [PM-22750] Update copy
2026-02-17 09:24:52 -08:00
Rui Tomé
58ad407c46 [PM-28252] Increase Bulk Reinvite limit for cloud (#17587)
* Add IncreaseBulkReinviteLimitForCloud feature flag

* Enhance PeopleTableDataSource with bulk operation limits and feature flag integration

- Introduced a new feature flag to increase the bulk reinvite limit for cloud environments.
- Added an observable to determine if the increased limit is enabled based on the feature flag and environment.
- Updated the logic for enforcing checked user limits in bulk operations, allowing for a maximum of 4000 users when the feature flag is active.
- Refactored the constructor to initialize the new observable and manage the maximum allowed checked count dynamically.

* Add unit tests for PeopleTableDataSource to validate user limit enforcement and status counts

* Refactor MembersComponent to integrate increased bulk limit feature

- Added support for conditional user limit enforcement in bulk operations based on a feature flag.
- Introduced new dependencies for ConfigService and EnvironmentService to manage configuration settings.
- Updated methods to utilize the new getCheckedUsers function, which enforces limits when the feature is enabled.
- Refactored data source initialization to accommodate the new logic for handling checked users.

* Refactor enforceCheckedUserLimit method in PeopleTableDataSource to use filtered data for user limit enforcement and to keep checked the top rows.
Removed unnecessary comments and improved readability.

* Add bulk reinvite success messages to localization files

This update introduces new localization keys for bulk reinvite success notifications, including a general success message and a limited success message that provides details on the number of users re-invited and those excluded due to limits. This enhances user feedback during bulk operations.

* Enhance bulk reinvite functionality with toast notifications

This update modifies the MembersComponent to display success messages via toast notifications when the feature flag for increased bulk limits is enabled. If the limit is exceeded, a detailed message is shown, otherwise a general success message is displayed. The legacy dialog is retained for cases when the feature flag is disabled, ensuring consistent user feedback during bulk reinvite operations.

* Rename MaxBulkReinviteCount to CloudBulkReinviteLimit

* Refactor user retrieval logic in MembersComponent to conditionally enforce bulk limits

This update modifies the MembersComponent in both the admin console and provider management sections to replace the direct calls to getCheckedUsers() with a conditional check for increased bulk limit feature. If enabled, it enforces user limits; otherwise, it retrieves all checked users. The deprecated getCheckedUsers method has been removed to streamline the code.

* Add constructor to MembersTableDataSource for improved dependency injection

This update introduces a constructor to the MembersTableDataSource class in both the admin console and provider management sections, allowing for better dependency injection of ConfigService, EnvironmentService, and DestroyRef. This change enhances the overall structure and maintainability of the code.

* Refactor PeopleTableDataSource and MembersComponent to implement new bulk limit logic

This update modifies the PeopleTableDataSource to introduce a new property for managing increased bulk limits and refactors the MembersComponent to utilize this logic. The enforcement of user limits during bulk operations is now conditional based on the feature flag, allowing for a more flexible handling of user selections. Additionally, the method for limiting and unchecking excess users has been updated for clarity and efficiency.

* Refactor PeopleTableDataSource tests to update limit enforcement logic

This update modifies the test cases for the PeopleTableDataSource to reflect the new method for limiting and unchecking excess users. The method name has been changed from `enforceCheckedUserLimit` to `limitAndUncheckExcess`, and the tests have been adjusted accordingly to ensure they accurately validate the new functionality. Additionally, unnecessary tests have been removed to streamline the test suite.

* Change CloudBulkReinviteLimit back to 4000

* Refactor MembersComponent to utilize new getCheckedUsersInVisibleOrder method

This update modifies the MembersComponent to conditionally retrieve checked users based on the increased bulk limit feature. If enabled, it uses the new getCheckedUsersInVisibleOrder method to maintain visual consistency in the filtered/sorted table view. This change enhances the handling of user selections during bulk operations.

* Refactor PeopleTableDataSource to use Signals for increased bulk limit feature and update related tests. Removed unused imports and dependencies on DestroyRef in MembersTableDataSource components.

* Refactor MembersComponent to remove unused Signal for increased bulk limit and directly utilize dataSource method for feature flag checks.

* Implement getCheckedUsersWithLimit method to streamline user retrieval based on feature flag; update MembersComponent to utilize this new method for bulk actions.
2026-02-17 09:24:52 -08:00