1
0
mirror of https://github.com/bitwarden/browser synced 2026-01-27 14:53:44 +00:00
Commit Graph

3359 Commits

Author SHA1 Message Date
Nick Krantz
ad577860be [PM-28060] Remove Skeleton Feature Flag (#18456)
* remove skeleton ff

* remove unneeded templates
2026-01-26 14:01:53 -06:00
Jordan Aasen
5e8801f7ff [PM-29244] - don't use filename for download attachment label (#18444)
* don't use filename for download attachment label

* fix scroll position in browser vault

* Revert "fix scroll position in browser vault"

This reverts commit 8e415f2c89.

* fix test
2026-01-26 12:00:03 -08:00
Nik Gilmore
06c8c7316d [PM-30301][PM-30302] Use SDK for Create and Update cipher operations (#18149)
* Migrate create and edit operations to use SDK for ciphers

* WIP: Adds admin call to edit ciphers with SDK

* Add client version to SDK intialization settings

* Remove console.log statements

* Adds originalCipherId and collectionIds to updateCipher

* Update tests for new cipehrService interfaces

* Rename SdkCipherOperations feature flag

* Add call to Admin edit SDK if flag is passed

* Add tests for SDK path

* Revert changes to .npmrc

* Remove outdated comments

* Fix feature flag name

* Fix UUID format in cipher.service.spec.ts

* Update calls to cipherService.updateWithServer and .createWithServer to new interface

* Update CLI and Desktop to use new cipherSErvice interfaces

* Fix tests for new cipherService interface change

* Bump sdk-internal and commercial-sdk-internal versions to 0.2.0-main.439

* Fix linting errors

* Fix typescript errors impacted by this chnage

* Fix caching issue on browser extension when using SDK cipher ops.

* Remove commented code

* Fix bug causing race condition due to not consuming / awaiting observable.

* Add missing 'await' to decrypt call

* Clean up unnecessary else statements and fix function naming

* Add comments for this.clearCache

* Add tests for SDK CipherView conversion functions

* Replace sdkservice with cipher-sdk.service

* Fix import issues in browser

* Fix import issues in cli

* Fix type issues

* Fix type issues

* Fix type issues

* Fix test that fails sporadically due to timing issue
2026-01-26 11:43:35 -08:00
Nick Krantz
87555eaabd remove risk insights for premium feature flag (#18446) 2026-01-26 12:07:31 -06:00
Oscar Hinton
d64db8fbf5 [CL-904] Migrate CL/Navigation to use OnPush (#16958)
* Migrate CL/Navigation to use OnPush

* Modernize the code

* Swap to signals and class

* Further tweaks

* Remove this.

* Replace setOpen and setClose with a public signal

* fix merge issues and signal-ifying service

* fix class and style bindings

* fix accidental behavior change from merge conflicts

* fix redundant check

* fix missed ngClass

* fix comment

* Re-add share ng-template

---------

Co-authored-by: Vicki League <vleague@bitwarden.com>
Co-authored-by: Will Martin <contact@willmartian.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-26 11:44:16 -05:00
Rui Tomé
71db33d45d [PM-28842] Add max length validation to master password policy form (#18237)
* Update master password policy dialog to limit the minimum length to 128

* Update master password policy to use dynamic maximum length from Utils

* Add unit tests for MasterPasswordPolicyComponent to validate password length constraints and scoring
2026-01-26 11:38:10 +00:00
Anders Åberg
903026b574 PM-2035: PRF Unlock (web + extension) (#16662)
* PM-13632: Enable sign in with passkeys in the browser extension

* Refactor component + Icon fix

This commit refactors the login-via-webauthn commit as per @JaredSnider-Bitwarden suggestions. It also fixes an existing issue where Icons are not displayed properly on the web vault.

Remove old one.

Rename the file

Working refactor

Removed the icon from the component

Fixed icons not showing. Changed layout to be 'embedded'

* Add tracking links

* Update app.module.ts

* Remove default Icons on load

* Remove login.module.ts

* Add env changer to the passkey component

* Remove leftover dependencies

* PRF Unlock

Cleanup and testes

* Workaround prf type missing

* Fix any type

* Undo accidental cleanup to keep PR focused

* Undo accidental cleanup to keep PR focused

* Cleaned up public interface

* Use UserId type

* Typed UserId and improved isPrfUnlockAvailable

* Rename key and use zero challenge array

* logservice

* Cleanup rpId handling

* Refactor to separate component + icon

* Moved the prf unlock service impl.

* Fix broken test

* fix tests

* Use isChromium

* Update services.module.ts

* missing , in locales

* Update desktop-lock-component.service.ts

* Fix more desktoptests

* Expect a single UnlockOption from IdTokenResponse, but multiple from sync

* Missing s

* remove catches

* Use new control flow in unlock-via-prf.component.ts

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Changed throw behaviour of unlockVaultWithPrf

* remove timeout comment

* refactired webauthm-prf-unlock.service internally

* WebAuthnPrfUnlockServiceAbstraction -> WebAuthnPrfUnlockService

* Fixed any and bad import

* Fix errors after merge

* Added missing PinServiceAbstraction

* Fixed format

* Removed @Inject()

* Fix broken tests after Inject removal

* Return userkey instead of setting it

* Used input/output signals

* removed duplicate MessageSender registration

* nit: Made import relative

* Disable onPush requirement because it would need refactoring the component

* Added feature flag (#17494)

* Fixed ById from main

* Import feature flag from file

* Add missing test providers for MasterPasswordLockComponent

Add WebAuthnPrfUnlockService and DialogService mocks to fix test failures
caused by UnlockViaPrfComponent dependencies.

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2026-01-26 10:53:20 +01:00
SmithThe4th
a2ea4b784d Force sync to get immediate organization revoke on the extension (#18545) 2026-01-23 23:38:23 +00:00
Shane Melton
3a70b94b2d [PM-31199] Fix flaky Vault test (#18544)
* Fix flaky spec file

* Remove duplicate i18nPipe import that was causing warnings
2026-01-23 14:30:40 -08:00
Jason Ng
3228e986af [PM-30890] Desktop Sync Improvements for Archive (#18466) 2026-01-23 15:22:32 -05:00
Vijay Oommen
cf2427848e [PM-30879] Huntress Integration (#18505) 2026-01-23 13:36:54 -06:00
Maciej Zieniuk
a59760f83b [PM-26049] Always store users auto unlock key on Cli (#18477)
* Always store auto user key on CLI

* update unit tests

* prevent bad vault timeout state

* Update libs/key-management/src/key.service.ts

Co-authored-by: Bernd Schoolmann <mail@quexten.com>

---------

Co-authored-by: Bernd Schoolmann <mail@quexten.com>
2026-01-23 20:30:31 +01:00
Bryan Cunningham
3a5b31f7df fix overlap of product switcher in side nav (#18533) 2026-01-23 14:24:40 -05:00
Thomas Avery
bc8c925cd0 [PM-27486] Remove feature flag PM25174_DisableType0Decryption (#18413) 2026-01-23 11:09:59 -06:00
Bryan Cunningham
6cf434cf11 [CL-841] landing layout component (#17969)
* wip

* wip

* implement new control flow syntax

* new landing helper components

* add missing imports to header

* create max width container

* create landing card component

* address claude feedback

* fix center aligned text

* ensure secondary content is centered for now

* only render container when there is content

* remove max width container

* remove constructor init of variable

* remove unnecessary styling

* build styling into helper components

* ensure content grows

* ensure content takes allowed width

* apply padding to elements instead of header and check for projected content

* use Array.from to filter nodes

* fix logo width

* use has selector to apply actions styles, simplify heading padding

* remove unneeded content projection

* remove unneeded comment

* use modern control flow for story

* update max width classes to signal and remove switch

* make logo input readonly

* remove variables

* remove object type

* fix width types usage

* add comments about component usage

* fix broken variable reference

* fix broken max width class usage

* only appyly y padding to header actions
2026-01-23 11:57:55 -05:00
Jackson Engstrom
57378f1cb3 [PM-20079] Updates header new/invite members button text spacing 2026-01-23 08:48:42 -08:00
John Harrington
f8d2800859 [PM-26989] Add Support For Arc Browser on MacOS (#17909)
* added support for arc browser
2026-01-22 15:56:35 -07:00
Bryan Cunningham
daacff888d [CL-1020] background color updates (#18417)
* Adding new background colors

* add sidenav color variables

* fix admin console text color

* update sidenav logos to use correct fill color

* update nav logo focus ring color
2026-01-22 16:55:35 -05:00
Maciej Zieniuk
1ccacb03a6 [PM-27233] Support v2 encryption for JIT Password signups (#18222)
* Support v2 encryption for JIT Password signups

* TDE set master password split

* update sdk-internal dependency

* moved encryption v2 to InitializeJitPasswordUserService

* remove account cryptographic state legacy states from #18164

* legacy state comments

* sdk update

* unit test coverage

* consolidate do SetInitialPasswordService

* replace legacy master key with setLegacyMasterKeyFromUnlockData

* typo

* web and desktop overrides with unit tests

* early return

* compact validation

* simplify super prototype
2026-01-22 13:01:49 +01:00
Oscar Hinton
0433678085 [PM-31029] Add feature flag for milestone 2 (#18458)
* Add feature flag for milestone 2

* Fix test

* Remove OnPush
2026-01-22 10:56:43 +01:00
Oscar Hinton
9a479544a6 Add support for rounded layout (#18283) 2026-01-22 10:25:39 +01:00
Shane Melton
21eb376b41 [PM-30906] Auto confirm nudge service fix and better nudge documentation (#18419)
* [PM-30906] Refactor AutoConfirmNudgeService to be Browser specific and add additional documentation detailing when this is necessary

* [PM-30906] Add README.md for custom nudge services
2026-01-21 15:32:58 -08:00
Jason Ng
9dd94a2782 [PM-30828] added MP reprompt check to unarchive (#18464) 2026-01-21 17:16:18 -05:00
neuronull
37c311f7f3 Add ssh-agent-v2 feature flag (#18347) 2026-01-21 10:22:58 -07:00
Bryan Cunningham
1578886a5f [CL-984] link style updates (#18360)
* WIP

* add new link styles

* update link stories

* skip default screenshot as variations are covered in other stories

* updated docs and story background

* make default the default linkType value

* remove references to primary link type in CL

* use better bg colors in stories

* remove duplicate linkType

* update aria-disabled text to use new palette

* add back primary link type to story

* fix capitolization

* add backticks to variant names in docs

* remove important from link styles

* fix generic selector to find correct button

* fix capitolization

* mark variants as deprecated in docs

* fix link hover text colors
2026-01-21 10:45:49 -05:00
SmithThe4th
e8b0803c97 Set error cannot decrypt when collection name cannot be decrypted (#18443) 2026-01-20 09:43:29 -05:00
Brandon Treston
5a95c34330 [PM-26463] Refactor members components (#17863)
* refactor WIP

* fix type issue

* continue refactor

* continue refactor, add tests

* refactor WIP: Rebase bulk reinvite

* fix type issue

* continue refactor: rebase bulk reinvite

* continue refactor, add tests: Rebase bulk reinvite

* fix test

* cleanup, address claude feedback

* fix race condition

* continue refactor

* fix provider confirm

* refactor providers to use memberActionsService

* prevent duplicate member actions

* wip

* run prettier

* separate provider and members actions, improve error handling, add tests

* refactor member export

* refactor edit, fix export service and tests
2026-01-20 09:16:41 -05:00
Oscar Hinton
f9c4e7c022 Fix send no search triggering whenever searching (#18438) 2026-01-20 12:30:34 +01:00
Nick Krantz
246765a1aa [PM-30453] Archive UI Updates (#18297)
* add org icon to archive list view

* update content of archive confirmation dialog

* fix typing
2026-01-19 13:25:46 -06:00
SmithThe4th
7fa436f667 [PM-29465] Call new organization self revoke endpoint upon rejecting item transfer (#18352)
* Added self revoke and toast to the transfer item service

* Renamed to a clearer name

* Update organization-user-api.service.ts

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>

* fixed merge conflcits

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2026-01-19 10:55:45 -05:00
Bernd Schoolmann
0f620b0985 [PM-30565] Fix corrupt private key making cipher decryption keys not emit (#18357)
* Fix corrupt private key making cipher decryption keys not emit

* Prettier

* Fix tests
2026-01-19 14:02:36 +01:00
Jordan Aasen
16e6756643 [PM-27784] - remove url from more options (#18306)
* remove url from more options

* fix test
2026-01-16 12:41:27 -08:00
bmbitwarden
07a5b4772c PM-21800 calling copyToClipboard function from PlatformUtilsService in order to trim copied string (#17510)
* PM-21800 applied tw-whitespace-break-spaces in order to manage contents of clipboard

* PM-21800 implemented host listener to decorate clipboard value

* PM-21800 revert earlier tailwind change

* PM21800 resolved pr comment re shared clipboard function

* chore: rerun UI tests

* PM-21800 resolved failling chromatic tests

* PM-21800 resolved failing chromatic tests

* PM-21800 reverted from shared clipboard component

* PM-21800 resolved clipboard issue

* PM-21800 resolved clipboard issue

* PM-21800 resolved pr comment

* PM-21800 reverted storybook change

* PM-21800 removed css tailwind way to restrict clipboard copied text

* PM-21800 refactored hostlistener in color password component

* PM-21800 resolved pr comment to replace class with data attribute
2026-01-16 11:38:28 -05:00
Vicki League
12516ceeea [PM-24178] Handle dialog focus when launched from a menu item (#18208) 2026-01-16 09:36:00 -05:00
Bernd Schoolmann
d410706b45 [PM-30846] Fix incorrect log for private key regen in data recovery tool (#18356)
* Fix no log

* Fix prettier
2026-01-16 10:24:57 +01:00
Mike Amirault
9f74178928 [PM-21774] Adjust icon and tooltip for protected Sends on the Sends l… (#18293)
* [PM-21774] Adjust icon and tooltip for protected Sends on the Sends list page

* [PM-21774] Update Sent table UI stories

* [PM-21774] Fix Send table UI story
2026-01-15 14:19:43 -05:00
Leslie Tilton
417dfdd305 [PM-30319][PM-30685] Separate and compress phishing data storage (#18337)
* Add logs for debugging in phishing-detection-settings.service

* Update phishing data service to separate web addresses from meta data for performant writes. Store compressed string instead of array

* Cleanup

* Updated test cases

* Cleanup comments

* Fix fallback encoding/decoding mismatch

* Fix type checking
2026-01-15 12:36:03 -06:00
Leslie Xiong
44bdaf71b3 Desktop/pm 18769/migrate vault filters (#17919)
Migrated vault filters to new v3 vault's navigation

* Decoupled existing vault filtering from vault component by using routed params with routed-vault-filter-bridge
* Converted vault filters to standalone components
* Removed extending filter Base Components from deprecated /libs/angular library and handled logic directly
* Moved shared 'models' and 'services' directories from web-vault into /libs/vault
2026-01-15 16:17:00 +01:00
Jordan Aasen
2cec30e533 fix attachment dl icon alignment in web and desktop (#18349) 2026-01-14 17:19:09 -08:00
Mike Amirault
952ee02376 [PM-30687] Remove Desktop Send UI refresh feature flag (#18359) 2026-01-14 15:33:07 -05:00
Bernd Schoolmann
aec049aa84 [PM-30633] Add setLegacyMasterKeyFromUnlockData (#18316)
* Add setMasterKeyFromunlockData

* Rename method

* Add comment

* Add tests

* Fix build

* Fix linting

* Add set local master key hash

* Add tests

* Cleanup

* Move function

* Prettier

* Fix tests

* Eslint

* Fix tests
2026-01-14 12:06:13 -06:00
SmithThe4th
f018ce36a1 Revert "[PM-28455] Fix vault breaking when collection name decryption fails (…" (#18343)
This reverts commit 20974f8195.
2026-01-13 19:38:56 +00:00
SmithThe4th
20974f8195 [PM-28455] Fix vault breaking when collection name decryption fails (#18331)
* Set error cannot decrypt when collection name cannot be decrypted

* Put back previous comment
2026-01-13 12:38:28 -05:00
olfek
67f6f82842 [PM-30443][FIX] Pass more inclusive user verification Boolean to setAbortTimeout (#15027)
* [FIX] Pass more inclusive user verification Boolean to `setAbortTimeout`

* Update `setAbortTimeout` user verification parameter type

* Fix lint issue

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-01-13 11:01:05 -06:00
Daniel Riera
5ee702093c make types optional to mitigate the design inconsistency (#18072) 2026-01-13 10:14:17 -05:00
renovate[bot]
622df1deaf [deps] Platform: Update electron-store to v11 (#16846)
* [deps] Platform: Update electron-store to v11

* wip-fix: all imports failing due to nodenext switch

* fix: desktop tsconfig not working properly

Renderer tsConfigPath was wrong so it defaulted to the base `tsconfig.json` which
included every single sourcefile into the angular artifact. This caused errors
with ESM modules which behave differently on node and needed a separate `tsconfig.json`
configuration.

* fix: revert some of the changes made to tools code

* fix: ESM import in tests

* chore: use consistent path

* feat: actually use custom tsconfig for preload

* fix: use correct entry point in tsconfig.main.json

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Andreas Coroiu <andreas.coroiu@gmail.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
2026-01-13 08:04:40 -07:00
Bryan Cunningham
067bfa698d [CL-822] fix popover initial position (#18107)
* ensure trigger is fully rendered before placement

* do not skip popover screenshots

* try to stabalize popover screenshots

* try to stabalize popover screenshots

* add play function to remaining stories

* add screenshot diff threshold

* increase diff threshold

* revert story changes

* add comment about double requestAnimationFrame

* empty commit to trigger claude review

* address Claude feedback. Move init and cleanup

* add comment about rafIds are assigned

* add destroyed flag to prevent any potential race conditions

* use different rafIds for explicit cleanup

* check for ref to prevent duplicate creation

* prevent clicks during destroy lifecycle

* add spec for popover trigger directive

* ensure popover closes if clicked during initial delay
2026-01-12 17:04:46 -05:00
bmbitwarden
27d43c500f PM-28183 implemented new sends filter and search design (#17901)
* PM-28183 implemented new sends filter and search design

* PM-28183 resolved table issue fallout from merge conflict

* PM-28183 resolved browser paste url issue

* PM-28183 put new feature behind feature flag

* PM-28183 resolved feature flag

* PM-28183 resolved type-safe approach pr comment

* PM-28183 resolved DesktopSendUIRefresh feature flag is enabled. pr comment

* PM-28183 restored SendUIRefresh

* PM-28183 resolved query parameter subscription pr comment

* PM-28183 resolved pr comment re enum like objects

* PM-28183 resolved remove enum like objects  pr comment

* PM-28183 resolved pr comment re defining filteredSends member variable

* PM-28183 resolved pr comment re Code Duplication in syncCompleted Handler

* PM-28183 resolved pr comment re Floating Promise

* PM-28183 restored feature flag

* PM-28183 resolved pr comment re Dual Binding Pattern

* PM28183 resolved options cell button pr comment

* PM 28183 resolved pr comment re Incorrect CSS Class - Breaking Layout

* PM 28183 resolved pr comment re uery Param Update Causes Redundant Filter Application

* PM-28183 resolved lint issues

* PM 28183 resolved lint issues

* PM-28183 resolved type issue with import

* PM-28183 resolved import in failling test

* chore: rerun web build

* PM-28183 resolved build issues

* PM-28183 resolved build issues

* PM-28183 resolved lint issues
2026-01-12 13:26:50 -05:00
Alex Morask
b1dcf34e9a [PM-29604] [PM-29605] [PM-29606] Premium subscription page redesign (#18300)
* refactor(subscription-card): Correctly name card action

* feat(storage-card): Switch 'callsToActionDisabled' into 1 input per CTA

* refactor(additional-options-card): Switch 'callsToActionDisabled' into 1 input per CTA

* feat(contract-alignment): Remove 'active' property from Discount

* feat(contract-alignment): Rename 'name' to 'translationKey' in Cart model

* feat(response-models): Add DiscountResponse

* feat(response-models): Add StorageResponse

* feat(response-models): Add CartResponse

* feat(response-models): Add BitwardenSubscriptionResponse

* feat(clients): Add new endpoint invocations

* feat(redesign): Add feature flags

* feat(redesign): Add AdjustAccountSubscriptionStorageDialogComponent

* feat(redesign): Add AccountSubscriptionComponent

* feat(redesign): Pivot subscription component on FF

* docs: Note FF removal POIs

* fix(subscription-card): Resolve compilation error in stories

* fix(upgrade-payment.service): Fix failing tests
2026-01-12 10:45:12 -06:00
Stephon Brown
3707a6fc84 billing(fix): add initial focus to upgrade button (#18184) 2026-01-12 10:44:19 -06:00