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

907 Commits

Author SHA1 Message Date
Oscar Hinton
4c1eba2086 [PM-27583] Add icon to chromium import helper (#17126)
Adds an icon to the windows binary.

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-10-31 10:10:22 +01:00
Maciej Zieniuk
ff30df3dd6 [PM-19300] Session timeout policy (#16583)
* Session timeout policy

* default "custom" is 8 hours, validation fixes

* ownership update

* default max allowed timeout is not selected

* adjusting defaults, fixing backwards compatibility, skip type confirmation dialog when switching between the never and on system lock

* unit test coverage

* wording update, custom hours, minutes jumping on errors

* wording update

* wrong session timeout action dropdown label

* show dialog as valid when opened first time, use @for loop, use controls instead of get

* dialog static opener

* easier to understand type value listener

* unit tests

* explicit maximum allowed timeout required error

* eslint revert
2025-10-28 20:28:34 +01:00
Mick Letofsky
69d5c533ef Implement Claude respond reusable workflow (#17079) 2025-10-28 20:19:41 +01:00
renovate[bot]
185c912c62 [deps]: Update peter-evans/repository-dispatch action to v4 (#16848)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-28 14:46:17 -04:00
Oscar Hinton
42377a1533 [PM-27341] Chrome importer refactors (#16720)
Various refactors to the chrome importer
2025-10-27 17:24:50 +01:00
Mick Letofsky
d5f2c9d5ec Implement reusable Claude code review workflow (#16979) 2025-10-27 16:25:40 +01:00
Andreas Coroiu
64590cb3c8 [PM-25911] Add commercial sdk internal as dependency (#16883)
* feat: add commercial sdk as optional dependency

* feat: add alias to CLI

* feat: add alias to browser

* feat: add alias to web

* fix: revert optional - we cant omit optional dependencies or the builds break

* feat: remove commercial package from browser build

* feat: remove commercial package from cli build

* feat: remove commercial package from web build

* chore: add commercial sdk to renovate

* fix: windows cli workflow

* fix: accidental change

* feat: add lint for version string

* undo weird merge changes
2025-10-27 15:17:20 +01:00
Mick Letofsky
bc0e0f0781 Update Claude owners (#17015) 2025-10-24 16:25:15 +02:00
neuronull
c94f93d0c6 Desktop Native enable cargo deny CI check (#16935)
* Desktop Native enable cargo deny CI check

* make cargo-deny available

* order

* separate step
2025-10-24 07:35:55 -06:00
renovate[bot]
a592f2b866 [deps]: Update actions/checkout action to v5 (#16424)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-23 15:18:43 -04:00
Bernd Schoolmann
7f86f2d0ac [PM-26340] Implement encrypted memory store (#16659)
* Extract windows biometrics v2 changes

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

* Address some code review feedback

* cargo fmt

* rely on zeroizing allocator

* Handle TDE edge cases

* Update windows default

* Make windows rust code async and fix restoring focus freezes

* fix formatting

* cleanup native logging

* Add unit test coverage

* Add missing logic to edge case for PIN disable.

* Address code review feedback

* fix test

* code review changes

* fix clippy warning

* Swap to unimplemented on each method

* Implement encrypted memory store

* Make dpapi secure key container pub(super)

* Add comments on sync and send

* Clean up comments

* Clean up

* Fix build

* Add logging and update codeowners

* Run cargo fmt

* Clean up doc

* fix unit tests

* Update apps/desktop/desktop_native/core/src/secure_memory/secure_key/mod.rs

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

* Handle tampering with re-key and log

* Add docs

* Fix windows build

* Prevent rust flycheck log from being commited to git

* Undo feature flag change

* Add env var override and docs

* Add deps to km owership

---------

Co-authored-by: Thomas Avery <tavery@bitwarden.com>
Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-10-23 14:04:25 +02:00
Vince Grassia
228b42f207 Escape dollar sign in URL (#16975) 2025-10-21 20:48:19 +00:00
Matt Andreko
1c9f1dbd62 Fix extra period at end of variable causing dev deployment issue (#16970) 2025-10-21 15:48:06 -04:00
renovate[bot]
1c4eed55a8 [deps]: Update actions/stale action to v10 (#16427)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Derek Nance <dnance@bitwarden.com>
2025-10-21 14:29:42 -05:00
Matt Andreko
8beb1c6ab0 Clean up workflow files from Zizmor output (#16690) 2025-10-21 13:13:45 -04:00
Bernd Schoolmann
93ab65cab9 Fix codeowners for biometrics v2 (#16962) 2025-10-21 18:12:27 +02:00
Vince Grassia
d65824e624 BRE-1220 - Update Publish CLI workflow (#16912) 2025-10-17 09:35:57 -06:00
renovate[bot]
af529fbf39 [deps]: Update actions/setup-node action to v5 (#16426)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-14 10:42:42 -04:00
Vince Grassia
a063099c61 BRE-1178 - Add Desktop Beta app for the Microsoft Store (#16691) 2025-10-13 15:37:31 -04:00
Mick Letofsky
d17fa04b7a PM-26727 - First iteration of Claude Code Review tuning (#16803)
* First iteration of Claude Code Review tuning
2025-10-09 14:25:22 +00:00
renovate[bot]
8f29d0325a [deps]: Update samuelmeuli/action-snapcraft action to v3 (#14930)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Amy Galles <9685081+AmyLGalles@users.noreply.github.com>
2025-10-08 13:49:42 -07:00
Mark Youssef
a4a53e27d4 [CL-616][CL-670] first pass at responsive updates to vault (#14588) 2025-10-08 10:04:39 -07:00
Addison Beck
ddc840027a build(cli): integrate nx (#16648)
* build(cli): integrate nx

* refactor(project.json): rename "bit" builds to "commercial"

* refactor(webpack.base): implement DEFAULT_PARAMS

* refactor(webpack.base): move DEFAULT_PARAMS out of buildConfig
2025-10-07 09:48:02 -04:00
neuronull
aa3be491d7 Re-enable CI to run rust unit tests in desktop_native on Windows platform (#16711)
* Re-enable CI to run rust unit tests in desktop_native on Windows platform

* selectively exclude napi crate

* use proper package name
2025-10-06 14:38:17 -06:00
Mick Letofsky
525a6003bc Create Claude code review action (#16745) 2025-10-06 14:32:06 +02:00
renovate[bot]
a9d7e13db9 [deps]: Update actions/github-script action to v8 (#16425)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
2025-10-03 17:57:17 +02:00
Mick Letofsky
e14c8c6a9c [PM-26337] Create a Claude markdown file (#16676)
* Initial claude markdown with lots of help from the team.
2025-10-03 16:48:01 +02:00
Vicki League
147b511d64 [PM-25578] Add icon font to UIF area of ownership (#16679) 2025-10-01 14:35:59 +00:00
Jonathan Prusik
f92eddf7b9 only run BIT trigger workflow when Build Browser workflow completes successfully (#16572) 2025-09-29 16:32:18 -04:00
Addison Beck
f988d3fd70 build(nx): continue on error for the experimental nx ci (#16646) 2025-09-29 14:01:35 -04:00
Tyler
83e8977d4b BRE-1040 Docker Compose rule (#16600) 2025-09-29 13:51:19 -04:00
neuronull
3d24bfcf0f Fix false positive CI check for index.d.ts generation (#16579)
* Fix false positive CI check for index.d.ts generation

* use event

* lint: use env var

* use sha not ref

* only run in one platform

* simplify

* one platform
2025-09-24 13:00:54 -06:00
neuronull
6001980dc5 Add check to Build Desktop workflow for napi/index.d.ts generation (#16458) 2025-09-23 14:05:47 -06:00
Jonathan Prusik
d1c983a2de Remove double-owned dependency from team-autofill-dev (#16529) 2025-09-23 15:45:12 -04: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
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
Colton Hurst
049f84bd0e Update autofill desktop dev team ownership (#16500) 2025-09-19 13:47:01 -04:00
MtnBurrit0
5253b3a94d Add selfhosted-DEV artifact with Git hash metadata (#16475) 2025-09-19 10:05:06 -06:00
Leslie Tilton
7090547cb8 [PM-19814] Phishing Detection Warning Popup UI (#16064)
* Add PhishingDetectionService

* Add a tab listener.

* Get the known phishing domain from the server

* Get the known phishing domain from the server

* Add phishing detection content script.

* Revert "Add phishing detection content script."

This reverts commit ce64d3435a.

* Fix conflicts

* Add build configs.

* Decouple the phishing detection content script logic from the rest of the app.

* move the call to background

* Add communication between the content script and background service.

* Update code to use Log service.

* Resolve conflict

* Add changes for phishing domain report

* Fix initializer order issue.

* Fix domain error.

* Account for no responses.

* Add exit functionality for onclick.

* Wrapped phishing detection feature behind feature flag (#13915)

* push changes for alert

* Removed browser logic for checking feature flag

* move the alert as dialog

* Add functionality to navigate back in history.

* [PM-19814] Add redirect to warning page when a phishing domain is detected.

* [PM-19814] Add the phishing warning page to the Angular popup.

* [PM-19814] Add functionality to display phishing host.

* [PM-19814] Add exit button and learn more link.

* [PM-19814] Add phishing detection feature flag.

* [PM-19814] Move phishing service to phishing directory

* [PM-19814] Add UI to display phishing URL.

* [PM-19814] Disable the URL input and populate it with the phishing URL.

* [PM-19814] Add phishing icon

* [PM-19814] Temporarily remove phishing reporting feature. It can be released separately in another ticket.

* [PM-19814] Clean up

* [PM-19814] Add types to the handlers.

* [PM-19814] Remove logic for handling authentication since the endpoint will be unauthenticated.

* [PM-19814] Fixed as many type issues as possible; added @ts-strict-ignore to the remaining ones.

* [PM-19814] Fix race condition in feature flag check.

* [PM-19814] Update wording for the marketing request.

* [PM-19814] Move phishing detection check from content script to webRequest.onCompleted listener.

* [PM-19814] Use webNavigation.onCompleted for redirect to ensure that the redirect only happens when they land on the page.

* [PM-19814] Remove unused code.

* [PM-19814] Fix merge conflict and update text based on product owner’s request

* [PM-19814] Fix merge conflict

* [PM-19814] Update text

* Resolve the message catalog entries

* Update file for consistent import and exports

* Update imports

* Update another import for BrowserPopupUtils

* Update the rest of the imports for BrowserPopupUtils

* Updates messages

* Rename files

* Current phishing block changes

* Use globalthis for chrome

* Add types file

* Update browser api to include tab navigation and close tab functions

* Update phishing detection to track multiple tabs and not trust info from content script

* Change chrome to browser.

* Fixed phishing detection checking previous url instead of current on navigation. Updated def flag for testing urls.

* Move phishing icon

* Fix chrome specific issues. Add comments to where BrowserApi should be used

* Fix command errors. Typecheck messages. Added guard for phishing detection messages

* Use concat map instead of merge map

* Unformat webfonts.scss file

* Fix lint and import errors

* Move phishing blocker files to dirt folder

* Rename background folder to services

* Add code ownership for phishing blocker

* Update text to use locales on phishing blocker learn more page

* Change navigation from using webapi to browser on updated event for safari support

* Update icon usage

* Fix type issues and add test file

* Fix linting error in test

---------

Co-authored-by: Jimmy Vo <huynhmaivo82@gmail.com>
Co-authored-by: Cy Okeke <cokeke@bitwarden.com>
Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
Co-authored-by: Conner Turnbull <cturnbull@bitwarden.com>
Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
Co-authored-by: Tom <144813356+ttalty@users.noreply.github.com>
2025-09-19 10:56:27 -05:00
Tyler
f94e798920 BRE-1040 Dockerfile shared ownership (#16189)
* BRE-1040 Dockerfile shared ownership

* fix: include entrypoint scripts
2025-09-16 13:09:23 -04:00
aj-bw
806111c94f [bre-1104] update cli npm publish to use oidc (#16214)
* prep workflow for npm OIDC publishing

* add node setup step

* update environment name

* clarify job title

* npm versioning testing, will revert

* syntax

* syntax

* temporarily remove dynamic node version

* Revert build-cli.yml to main branch version

* remove husky install step

* pin npm version in setup node step

* add comment

* more clear comment to show future action needed

* formatting
2025-09-15 13:57:23 -04:00
renovate[bot]
f90f7c2b22 [deps]: Update chromaui/action action to v13 (#15505)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Vicki League <vleague@bitwarden.com>
2025-09-12 15:55:30 -04:00
Addison Beck
7ac75a6c52 refactor(libs): consolidate messaging-internal into messaging library (#16386)
This change eliminates the circular dependency between messaging and messaging-internal libraries by merging them into a single messaging library.

Previously, messaging-internal imported from @bitwarden/messaging while messaging tried to import from @bitwarden/messaging-internal, creating an unresolvable circular dependency. This also violated Nx best practices by using cross-library file includes in tsconfig.lib.json.

Changes made:
- Moved all messaging-internal code (SubjectMessageSender, helpers, tests) into libs/messaging/src/
- Updated all imports to use relative paths instead of @bitwarden/messaging imports
- Removed the entire messaging-internal library and its configuration files
- Updated external references in apps/browser to import from @bitwarden/messaging
- Fixed libs/messaging/tsconfig.lib.json to use standard src/**/*.ts pattern
- Updated libs/common internal.ts to re-export from messaging instead of messaging-internal

The messaging library now exports both public APIs and internal implementations, which is a cleaner architecture than maintaining two separate libraries with circular dependencies.

Fixes rootDir configuration issues identified in the Nx library systematic fix project.
2025-09-12 13:04:13 +02:00
Jonathan Prusik
af21ab96af clean up past/outdated DDG test warning comments (#16366) 2025-09-10 09:21:30 -04:00
Colton Hurst
ac18cd175e Follow up to #16341 (#16352) 2025-09-09 09:51:51 -04:00
Robyn MacCallum
ca17a581ad Revise CODEOWNERS for desktop autofill team (#16341)
* Revise CODEOWNERS for desktop autofill team

* Modify CODEOWNERS for test-browser-interactions.yml
2025-09-08 20:20:59 -04:00
Will Martin
49359c33e5 Update CODEOWNERS (#16339)
The UIF team will take ownership of the Chromatic Github action
2025-09-08 11:17:16 -04:00
cyprain-okeke
8c7faf49d5 Billing/pm 23385 premium modal in web after registration (#16182)
* create the pricing library

* Create pricing-card.component

* Refactor the code

* feat: Add pricing card component library

* Fix the test failing error

* Address billing pr comments

* feat: Add Storybook documentation and stories for pricing-card component

* Fix some ui feedback

* Changes from the display and sizes

* feat(billing): refactor pricing card with flexible title slots and active badge

* Enhance pricing card with flexible design and button icons

* refactor: organize pricing card files into dedicated folder

* Complete pricing card enhancements with Chromatic feedback fixes

* refactor base on pr coments

* Fix the button alignment

* Update all the card to have the same height

* Fix the slot issue on the title

* Fix the Lint format issue

* Add the header in the stories book
2025-09-04 14:44:04 +00:00
Daniel James Smith
66f5700a75 [PM-24748][PM-24072] Chromium importer (#16100)
* Add importer dummy lib, add cargo deps for win/mac

* Add Chromium importer source from bitwarden/password-access

* Mod crypto is no more

* Expose some Chromium importer functions via NAPI, replace home with home_dir crate

* Add Chromium importer to the main <-> renderer IPC, export all functions from Rust

* Add password and notes fields to the imported logins

* Fix windows to use homedir instead of home

* Return success/failure results

* Import from account logins and join

* Linux v10 support

* Use mod util on Windows

* Use mod util on macOS

* Refactor to move shared code into chromium.rs

* Fix windows

* Fix Linux as well

* Linux v11 support for Chrome/Gnome, everything is async now

* Support multiple browsers on Linux v11

* Move oo7 to Linux

* Fix Windows

* Fix macOS

* Add support for Brave browser in Linux configuration

* Add support for Opera browser in Linux configuration

* Fix Edge and add Arc on macOS

* Add Opera on macOS

* Add support for Vivaldi browser in macOS configuration

* Add support for Chromium browser in macOS configuration

* Fix Edge on Windows

* Add Opera on Windows

* Add Vivaldi on windows

* Add Chromium to supported browsers on Windows

* stub out UI options for chromium direct import

* call IPC funcs from import-desktop

* add notes to chrome csv importer

* remove (csv) from import tool names and format item names as hostnames

* Add ABE/v20 encryption support

* ABE/v20 architecture description

* Add a build step to produce admin.exe and service.exe

* Add Windows v20/ABE configuration functionality to specify the full path to the admin.exe and service.exe. Use ipc.platform.chromiumImporter.configureWindowsCryptoService to configure the Chromium importer on Windows.

* rename ARCHITECTURE.md to README.md

* aligns with guidance from architecture re: in-repository documentation.
* also fixes a failing lint.

* cargo fmt

* cargo clippy fix

* Declare feature flag for using chromium importer

* Linter fix after executing npm run prettier

* Use feature flag to guard the use of the chromium importer

* Added temporary logging to further debug, why the Angular change detection isn't working as expected

* introduce importer metadata; host metadata from service; includes tests

* fix cli build

* Register autotype module in lib.rs
introduce by a bad merge

* Fix web build

* Fix issue with loaders being undefined and the feature flag turned off

* Add missing Chromium support when selecting chromecsv

* debugging

* remove chromium support from chromecsv metadata

* fix default loader selection

* [PM-24753] cargo lib file (#16090)

* Add new modules

* Fix chromium importer

* Fix compile bugs for toolchain

* remove importer folder

* remove IPC code

* undo setting change

* clippy fixes

* cargo fmt

* clippy fixes

* clippy fixes

* clippy fixes

* clippy fixes

* lint fix

* fix release build

* Add files in CODEOWNERS

* Create tools owned preload.ts

* Move chromium-importer.service under tools-ownership

* Fix typeError
When accessing the Chromium direct import options the file button is hidden, so trying to access it's values will fail

* Fix tools owned preload

* Remove dead code and redundant truncation

* Remove configureWindowsCryptoService function/methods

* Clean up cargo files

* Fix unused async

* Update apps/desktop/desktop_native/bitwarden_chromium_importer/Cargo.toml

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>

* Fix napi deps

* fix lints

* format

* fix linux lint

* fix windows lints

* format

* fix missing `?`

* fix a different missing `?`

---------

Co-authored-by: Dmitry Yakimenko <detunized@gmail.com>
Co-authored-by: Kyle Spearrin <kyle.spearrin@gmail.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
Co-authored-by:  Audrey  <audrey@audreyality.com>
Co-authored-by: adudek-bw <adudek@bitwarden.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2025-09-04 11:21:57 +02:00
Andreas Coroiu
b957a0c28f [PM-24646] Add licensed browser builds (#16252)
* feat: create separate bit licensed browser

* feat: refactor webpack config

* fix: mv2 build not working

* feat: add bit versions of all commands

* feat: add bit CI builds

* fix: scss missing from build
2025-09-04 08:21:50 +02:00