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

19334 Commits

Author SHA1 Message Date
Addison Beck
9639b72055 build: add nx configuration in libs/platform (#16546) 2025-09-23 16:33:22 -05:00
Addison Beck
092c95d11f build: add nx configuration to tools nested libraries (#16564)
Add Nx project.json configurations and test scripts to all 8 nested libraries:
- @bitwarden/send-ui
- @bitwarden/generator-core
- @bitwarden/generator-components
- @bitwarden/vault-export-core
- @bitwarden/vault-export-ui
- @bitwarden/generator-history
- @bitwarden/generator-legacy
- @bitwarden/generator-navigation

All libraries now have working nx build, nx lint, and nx test commands.
2025-09-23 13:52:17 -07:00
Addison Beck
6837e3a674 build: add nx configuration in libs/importer (#16547) 2025-09-23 13:45:51 -07:00
Bernd Schoolmann
4b73198ce5 [PM-23230] Implement KDF Change Service (#15748)
* Add new mp service api

* Fix tests

* Add test coverage

* Add newline

* Fix type

* Rename to "unwrapUserKeyFromMasterPasswordUnlockData"

* Fix build

* Fix build on cli

* Fix linting

* Re-sort spec

* Add tests

* Fix test and build issues

* Fix build

* Clean up

* Remove introduced function

* Clean up comments

* Fix abstract class types

* Fix comments

* Cleanup

* Cleanup

* Update libs/common/src/key-management/master-password/types/master-password.types.ts

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

* Update libs/common/src/key-management/master-password/services/master-password.service.ts

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

* Update libs/common/src/key-management/master-password/abstractions/master-password.service.abstraction.ts

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

* Update libs/common/src/key-management/master-password/types/master-password.types.ts

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

* Update libs/common/src/key-management/master-password/abstractions/master-password.service.abstraction.ts

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

* Add comments

* Fix build

* Add arg null check

* Cleanup

* Fix build

* Fix build on browser

* Implement KDF change service

* Deprecate encryptUserKeyWithMasterKey

* Update libs/common/src/key-management/master-password/abstractions/master-password.service.abstraction.ts

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

* Update libs/common/src/key-management/master-password/abstractions/master-password.service.abstraction.ts

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

* Update libs/common/src/key-management/master-password/abstractions/master-password.service.abstraction.ts

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

* Add tests for null params

* Fix builds

* Cleanup and deprecate more functions

* Fix formatting

* Prettier

* Clean up

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

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

* Make emailToSalt private and expose abstract saltForUser

* Add tests

* Add docs

* Fix build

* Fix tests

* Fix tests

* Address feedback and fix primitive obsession

* Consolidate active account checks in change kdf confirmation component

* Update libs/common/src/key-management/kdf/services/change-kdf-service.spec.ts

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

* Add defensive parameter checks

* Add tests

* Add comment for follow-up epic

* Move change kdf service, remove abstraction and add api service

* Fix test

* Drop redundant null check

* Address feedback

* Add throw on empty password

* Fix tests

* Mark change kdf service as internal

* Add abstract classes

* Switch to abstraction

* use sdk EncString in MasterPasswordUnlockData

* fix remaining tests

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
2025-09-23 16:10:54 -04:00
neuronull
6001980dc5 Add check to Build Desktop workflow for napi/index.d.ts generation (#16458) 2025-09-23 14:05:47 -06:00
Jordan Aasen
d76a60cd1d [PM-26017] - Admin Console: Truncate long collection names in collection row (#16508)
* truncate long collection names in collection row

* remove unnecessary css class
2025-09-23 12:50:23 -07:00
Jonathan Prusik
d1c983a2de Remove double-owned dependency from team-autofill-dev (#16529) 2025-09-23 15:45:12 -04:00
Bryan Cunningham
9d82fc7dfc [CL-95] loading spinner (#16363)
* add spiner from previous branch

* add loading spinner to button

* Add spinner to dialog

* Add spinner to icon button

* add spinner to multi select component

* fix spinner positioning

* Add mock i18n in stories where needed

* round stroke caps. Update classes

* fix ts error

* fix broken tests

* add missing translation keys to stories

* Add mising key for layout

* Add mising key for nav group

* Add mising key for spotlight

* Add mising key for product switcher

* Add mising key for dialog service

* add translation to copy click story
2025-09-23 15:36:18 -04:00
Addison Beck
7865bb5e12 build: add nx configuration in libs/key-management-ui (#16549) 2025-09-23 20:54:40 +02:00
Mark Youssef
06d263f04a [CL-794] Fix cutoff content on smaller screens (#15644)
* Fix cutoff content on smaller screens

* Fix overlay issue by moving outside main
2025-09-23 11:26:18 -07:00
Addison Beck
1e6019c950 build: add nx configuration in libs/angular (#16539) 2025-09-23 14:20:34 -04:00
Addison Beck
5126e63399 build: add nx configuration in libs/ui/common (#16563) 2025-09-23 14:19:49 -04:00
Addison Beck
c688eed531 build: add nx configuration in libs/components (#16545) 2025-09-23 14:19:10 -04:00
Addison Beck
e1f32bdd4b build: add nx configuration in libs/dirt/card (#16562) 2025-09-23 12:13:52 -05:00
Addison Beck
c1cbdda460 build: add nx configuration in libs/auth (#16540) 2025-09-23 12:53:43 -04:00
Jordan Aasen
b12fc338cd fix logic for filtering filters (#16509) 2025-09-23 09:34:20 -07:00
Jordan Aasen
6024f6eef2 [PM-25879][PM-25881] - [Defect] Premium badges missing reusable component (#16461)
* clean up premium badge component

* add provider to desktop settings

* rename prop.

* add provider to send component

* fix storybook

* fix test

* move dependency to new send dropdown component

* Revert "move dependency to new send dropdown component"

This reverts commit f134526279.

* remove hasPremium
2025-09-23 09:32:45 -07:00
Jordan Aasen
7313a5f2a3 [PM-825] - Desktop not minimizing on right click password when first opened (#16464)
* minimize item when copying regardless of action

* remove unused import
2025-09-23 08:57:33 -07:00
Nick Krantz
82e44e0c09 move extension videos internally to the codebase (#16371) 2025-09-23 10:56:29 -05:00
Jordan Aasen
f642fbc4e6 [PM-24633] - group collections by org in individual vault filters (#16480)
* group collections by org in individual vault filters

* update vault filter

* use OrganizationId

* fix tests
2025-09-23 08:50:10 -07:00
rr-bw
d24524b33c refactor(device-management): Auth/[PM-19823] Cleanup DeviceManagementOldComponent (#16541) 2025-09-23 08:47:39 -07:00
Maciej Zieniuk
e0c900cb77 User's Fingerprint Phrase does not match when confirming user (#16552) 2025-09-23 16:52:43 +02:00
cd-bitwarden
c57d7955e8 fixing spacing issues (#16378) 2025-09-23 10:44:52 -04:00
Tom
5c1a1ce6df Just adding the report application type (#16492) 2025-09-23 10:30:04 -04:00
Jeffrey Holland
e18f3cf8c9 [PM-22417] Enable autofill overlay for siteone.com (#16457)
* [PM-22417] Enable autofill overlay for siteone.com

* Fix broken test

* Remove the magic number
2025-09-23 15:38:53 +02:00
Addison Beck
18594ade72 ci: add experimental Nx affected workflow (#16389)
* ci: add experimental Nx affected workflow

Adds .github/workflows/nx.yml to run \`nx affected\` on pull requests,
testing only changed libraries for build, lint, and test targets.

This prevents regressions of the library configuration issues discovered
in the systematic Nx library audit and ensures proper library builds in CI.

Features:
- Uses nrwl/nx-set-shas for accurate affected project detection
- Tests build, lint, and test targets
- Runs on PR open/synchronize events
- Helps catch package.json path bugs before merge

* review: get node version from .nvmrc
2025-09-23 09:33:52 +02:00
Colton Hurst
3ca1395472 Separate Autotype Setting Observable (#16521)
* Update the default autotype user setting to be separately represented

* rxjs update

* settings.component.spec.ts update
2025-09-22 19:08:11 -04:00
John Harrington
bb119fa315 PM-25242 added normalization for android URIs and updated test coverage (#16329) 2025-09-22 13:33:59 -07:00
Kyle Denney
c796e9514e [PM-25029] new pricing service (#16473)
* [PM-25029] first draft of pricing service

* [PM-25029] pricing service, getting closer

* [PM-25029] pricing service and tests finished

* removing unused translation

* pr feedback

* new test names to reflect change away from monthly calculation
2025-09-22 15:01:46 -05:00
Maciej Zieniuk
f3c50e159f move change-kdf into KM ownership (#16515) 2025-09-22 20:55:21 +02:00
rr-bw
ce84125473 Revert "feat(sso-config): Auth/[PM-18470] Pre-populate Key Connector URL (#16…" (#16534)
This reverts commit debe7b1f19.
2025-09-22 10:13:29 -07:00
rr-bw
debe7b1f19 feat(sso-config): Auth/[PM-18470] Pre-populate Key Connector URL (#16506)
When Key Connector is a valid selection, setup a listener to changes to the Member Decryption Options form radio selection:
- If radio selection is Key Connector, set a default KC URL
- If radio selection is NOT Key Connector, clear the KC URL
2025-09-22 10:02:20 -07:00
Nick Krantz
2de21e607c disable autofill options when the form is disabled (#16505) 2025-09-22 11:38:28 -05:00
Addison Beck
b481063810 fix(basic-lib generator): Ensure all project.json files have a rootDir value (#16384)
* fix(nx): add rootDir to existing project.json files

The @nx/js:tsc executor was creating builds with a structural mismatch where TypeScript
output files lived in a nested src/ directory, but package.json pointed to non-existent
dist/ paths. This caused "Cannot find module" errors throughout the dependency chain.

This fix adds the rootDir configuration to flatten the build output structure and updates
all package.json main/types fields to match the actual file locations.

Changes applied systematically across all affected libraries:
• Added "rootDir": "libs/{name}/src" to project.json build options
• Updated package.json "main" from "dist/index.js" to "index.js"
• Updated package.json "types" from "dist/index.d.ts" to "index.d.ts"

* fix(nx-plugin): set rootDir for any newly generated libs

The basic-lib generator was creating new libraries with the same package.json path bugs
that we just fixed in existing libraries. Without this template fix, any newly generated
library would inherit the broken configuration pattern.

Updated the generator templates to include:
• Added rootDir configuration to project.json template
• Fixed package.json template paths to use flattened structure
• Corrected template syntax bug (missing space in <%= name %>)

This ensures all future libraries created with "nx generate @bitwarden/nx-plugin:basic-lib"
will have proper build configuration from the start, preventing regression of the
systematic rootDir issue.
2025-09-22 12:32:23 -04:00
neuronull
3f14fdc62d [BEEEP][PM-255518] Use tracing for improved observability (#16321)
* [BEEEP][PM-255518] Use tracing for improved observability

* feedback dani-garcia: use DefaultVisitor

* set default log level

* convert printlns in objc crate

* convert printlns in autotype crate

* convert printlns in autostart crate

* convert printlns in core/password crate

* convert printlns in core/biometric crate

* convert printlns in napi crate

* convert log usage in macos provider crate

* convert existing log macros to tracing

* fix the cargo.toml sort lint errors

* Revert "fix the cargo.toml sort lint errors"

This reverts commit fd149ab697.

* fix the sort lint using correct cargo sort version

* feedback coltonhurst: more comments/clarity on behavior

* revert changes to ssh_agent
2025-09-22 09:56:23 -06:00
rr-bw
3bbc6c564c feat(SSO): (Auth/[PM-22110] Remove Alternate Login Options when SSO Required (#16340)
If a user is part of an org that has the `RequireSso` policy, when that user successfully logs in we add their email to a local `ssoRequiredCache` on their device. The next time this user goes to the `/login` screen on this device, we will use that cache to determine that for this email we should only show the "Use single sign-on" button and disable the alternate login buttons.

These changes are behind the flag: `PM22110_DisableAlternateLoginMethods`
2025-09-22 08:32:20 -07:00
Rui Tomé
b455cb5986 [PM-24146] Remove stateProvider.activeUserId from ProviderService (#16258)
* Refactor provider service calls to include userId parameter

- Updated multiple components and services to pass userId when fetching provider data.
- Adjusted the ProviderService interface to require userId for get, get$, and getAll methods.
- Ensured consistent handling of userId across various components, enhancing data retrieval based on active user context.

* Remove deprecated type safety comments and use the getById utility for fetching providers.

* Update ProviderService methods to return undefined for non-existent providers

- Modified the return types of get$ and get methods in ProviderService to allow for undefined values, enhancing type safety.
- Adjusted the providers$ method to return only defined Provider arrays, ensuring consistent handling of provider data.

* Enhance provider permissions guard tests to include userId parameter

- Updated test cases in provider-permissions.guard.spec.ts to pass userId when calling ProviderService methods.
- Mocked AccountService to provide active account details for improved test coverage.
- Ensured consistent handling of userId across all relevant test scenarios.

* remove promise based api's from provider service, continue refactor

* cleanup observable logic

* cleanup

---------

Co-authored-by: Brandon <btreston@bitwarden.com>
2025-09-22 11:06:28 -04:00
Jason Ng
dbec02cf8d [PM-24533] Initialize Archive Feature (#16226)
* [PM-19237] Add Archive Filter Type (#13852)
* Browser can archive and unarchive items
* Create Archive Cipher Service
* Add flag and premium permissions to Archive 

---------

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
Co-authored-by: Shane <smelton@bitwarden.com>
Co-authored-by: Patrick Pimentel <ppimentel@bitwarden.com>
2025-09-22 11:06:02 -04:00
Github Actions
04881556df Bumped client version(s) 2025-09-22 15:01:30 +00:00
Vijay Oommen
9ff7c0f714 PM-25983 Toast on successful save/delete (#16528) 2025-09-22 09:18:10 -05:00
Alex
57734a7a5c [PM-19322] Risk Insights Accessibility (#16221)
* pm-19322 / replace a tag with button

* pm-19324 / focusable dirt cards

* pm-19324 / focus for all apps dirt cards

* pm-19325 / items in table focusable

* wrap dirt cards in button

* wrap span in button

* safari fixes
2025-09-22 09:16:15 -05:00
Stephon Brown
c3b2c1bfc9 [PM-26012] Add Test-ids to Cart Summary Component (#16497)
* fix: update component with localized messages and data-testids

* fix: update documentation and mock localization logic

* fix: add new messages for cart-summary component
2025-09-22 14:08:26 +00:00
Alex
8531109081 [PM-25417] DIRT API Service Refactor (ADR-0005) (#16353)
* encode username for uri and add spec

* verify response from getHibpBreach method

* test/validate for BreachAccountResponse type and length instead of mock response

* - extract dirt api method out of global api service
- create new directory structure
- change imports accordingly
- extract breach account response
- put extracted code into new dirt dir

* codeowners and dep injection for new hibp service
2025-09-22 09:06:58 -05:00
Mick Letofsky
3a721b535c [PM-21816] Removed unused header component (#16452) 2025-09-22 12:20:21 +02:00
Mick Letofsky
c9501fec30 [PM-21812][PM-21813] Tech debt removal of legacy stylings no longer required nor used (#16466) 2025-09-22 11:24:32 +02:00
bw-ghapp[bot]
cdd804d232 Autosync the updated translations (#16519)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-09-21 11:39:41 +00:00
bw-ghapp[bot]
370e443a0c Autosync the updated translations (#16518)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-09-21 11:39:28 +00:00
bw-ghapp[bot]
75a042e6f0 Autosync the updated translations (#16517)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-09-21 11:39:19 +00:00
Nik Gilmore
8af3e025e3 [PM-24745] Decrypt ciphers using decryptManyWithFailures from SDK (#16190)
* Add SDK call to decryptManyWithFailures instead of decryptMany

* Move logic back to decryptCiphersWithSdk

* Fix return type of decryptCiphersWithSdk

* Add unit tests for decryptCiphers()

* Add unit tests for decryptManyWithFailures

* Filter out undefined objects from failedCiphers

* Update name for failed-decryption ciphers

* Fix type checking errors in tests

* Fix tests with new changes from main

* Migrate decryptMany call to use decryptManyWithFailures

* Remove deprecated decryptMany function, along with all calls ot the function
2025-09-19 13:51:20 -07:00
Leslie Tilton
fb7b29d6b3 [PM-25610] Add Refactored Report Aggregation Logic (#16476)
* Add new aggregation logic and update legacy function names

* Update test cases

* Fix test types
2025-09-19 14:40:32 -04:00