1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-09 05:00:10 +00:00
Commit Graph

20598 Commits

Author SHA1 Message Date
Leslie Xiong
5134a2d8a5 fixed templateUrl, merge fix 2026-01-27 17:08:03 -05:00
Leslie Xiong
82b1afc3e4 updated original 'vault.component' to reflect main 2026-01-27 16:56:37 -05:00
Leslie Xiong
b7f8c225c3 Merge branch 'main' into desktop/pm-18768/migrate-vault-cipher-list-fix 2026-01-27 16:56:12 -05:00
Leslie Xiong
9a1b9bdcf6 converted vault-wrapper to use signal 2026-01-27 16:26:35 -05:00
Leslie Xiong
b8b6a3d684 removed more unused, separated 'cipher collections' from 'filter collections' 2026-01-27 16:14:15 -05:00
Jared
af2d3c945b Fix empty toast message when owner deletes himself (#18603) 2026-01-27 15:51:46 -05:00
Jordan Aasen
7b583aa0ec [PM-26703]- Browser - Update autofill Behavior (#18467)
* apply changes to autofill

* fix tests

* fix and simplify logic
2026-01-27 12:41:33 -08:00
Conner Turnbull
4fad2c3bcd [PM-31295] Remove price from next charge on individual subscription page (#18600)
* Remove price from next charge on individual subscription page

* Revert subscription-card changes, limit scope to legacy component
2026-01-27 14:56:55 -05:00
Dave
c82ac0f574 feat(account-switching) [PM-5594]: Enabling account switching causes performance issues on safari (#18339)
* refactor(account-switching) [PM-5594]: Move account switching enabled flag to AccountSwitcherService to accommodate server-side feature flag.

* test(account-switching) [PM-5594]: Update tests to include ConfigService dependency for feature flag.

* refactor(account-switching) [PM-5594]: Remove compile-time account switching flags from browser.

* refactor(account-switching) [PM-5594]: Move initialization to ctor for strict.
2026-01-27 14:27:13 -05:00
renovate[bot]
469b26789b [deps] Platform: Update @types/node to v22.19.7 (#18567)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-27 12:04:50 -07:00
Isaiah Inuwa
e94a8ee5a3 Add generic autofill provider library [PM-29786] (#18075)
* Rename macos_provider to autofill_provider

* Add autofill IPC client methods needed for Windows IPC
2026-01-27 13:41:07 -05:00
Jared
4ac38c18c0 [PM-27909] dialog improvements for claim domain (#18535)
* Update domain status message from "Under verification" to "Pending" in localization and adjust corresponding template reference

* Update domain status message from "Under verification" to "Pending" in the admin console template

* Add domain verification instructions to the admin console dialog

Enhanced the domain add/edit dialog by including detailed instructions for the automatic domain claim process when the domain is not verified. Removed the previous callout component for a more streamlined user experience.

* Add new localization messages for automatic domain claim process

Included detailed instructions for the automatic domain claim process, covering the steps for claiming a domain, account ownership change, and consequences of unclaimed domains. This enhances user guidance during domain management.

* Refactor automatic domain claim process localization messages

Updated localization keys for the automatic domain claim process to improve clarity and consistency. Removed redundant messages and streamlined the instructions displayed in the admin console dialog for better user experience.
2026-01-27 13:39:34 -05:00
Jared
122bd98643 Refactor access tab label in collection dialog component to use a getter for improved readability and localization support. (#18537) 2026-01-27 13:38:22 -05:00
Jared
fe753c9c02 Add support for DuckDuckGo browser in event service (#18576) 2026-01-27 13:34:23 -05:00
Jared
42aec64689 [PM-16863] Update "auto-fill" to "autofill" for org policies (#18483)
* Fixes typo in messages.json from auto-fill to autofill to match company preference

* Strings have to be immutable as learned from Brandon. Trying to delete old key-value pair to see if that's possible

* Fix my typo
2026-01-27 13:31:02 -05:00
Jared McCannon
3e344212d6 [PM-29805] - Rollback single org enablement when auto confirm enablement fails. (#18572) 2026-01-27 12:18:37 -06:00
Anders Åberg
1b94d16f31 PM-31294: Unlock Passkey using getWebVaultUrl over getHostname (#18597) 2026-01-27 19:08:07 +01:00
Oscar Hinton
cf6d02fafa [PM-31264] Broken vault filters in milestone-1 (#18589)
* Fix vault filters

Now uses the same `createFilterFunction` as web rather than the custom proxy like approach.

* Remove provide
2026-01-27 19:00:13 +01:00
Leslie Xiong
9936c1c064 removed 'addAccess' from vault-list.component 2026-01-27 12:30:54 -05:00
Leslie Xiong
6c48541b5a removed unused showGroups() from vault-cipher-row 2026-01-27 12:22:05 -05:00
Brad
1de2e33bbb [PM-31182] Add HIBP icons URL to dev configuration for allowed Content-Security-Policy domains (#18565)
* add url for loading HIBP icons

* remove old hibp location
2026-01-27 09:14:00 -08:00
Leslie Xiong
e198edaeec extended existing item-footer component 2026-01-27 11:58:48 -05:00
Jeffrey Holland
00cf24972d [PM-28079] Add attributes to filter for the mutationObserver (#17832)
* [PM-28079] Add attributes to filter for the mutationObserver

* Update attributes based on Claude suggestions

* Updated remaining attributes

* Adjust placeholder check in `updateAutofillFieldElementData`

* Update ordering of constants and add comment

* Remove `tagName` and `value` from mutation logic

* Add new autocomplete and aria attributes to `updateActions`

* Fix autocomplete handlers

* Fix broken test for `updateAttributes`

* Order attributes for readability in `updateActions`

* Fix tests

---------

Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>
2026-01-27 11:28:02 -05:00
Leslie Xiong
4cbb2077e3 used correct 'tw' variants for 'px' 2026-01-27 10:04:48 -05:00
Mike Amirault
fe1410bed3 [PM-30375] Account for differences in RoboForm Windows desktop app CSV export headers (#18403) 2026-01-27 09:53:03 -05:00
lif
8b9ee0df06 fix(importer): preserve protected KeePass custom fields as hidden fields (#18136)
Protected fields (ProtectInMemory="True") were being appended to notes
when they exceeded 200 characters or contained newlines, instead of
being imported as hidden custom fields.

Now protected fields are always imported as hidden fields regardless
of their length or content, preserving their protected status.

Fixes #16897

Signed-off-by: majiayu000 <1835304752@qq.com>
Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2026-01-27 07:48:20 -07:00
Leslie Xiong
70e3085b7c Added back translations 2026-01-27 09:42:33 -05:00
Bryan Cunningham
144ddee792 [PM-30640][PM-30641] update angular core and compiler (#18542)
Co-authored-by: Will Martin <contact@willmartian.com>
2026-01-27 14:15:51 +00:00
renovate[bot]
1008bf5cef [deps] Platform: Update tokio-tracing monorepo (#18238)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-27 14:14:22 +01:00
Maciej Zieniuk
9454189df5 [PM-27283] [BEEEP] Reactive availableVaultTimeoutActions$ in vault timeout settings (#17731)
* reactive `availableVaultTimeoutActions$` in vault timeout settings

* cleanup

* deprecation docs

* explicitly provided user id

* clearer mocking

* better docs
2026-01-27 10:28:13 +00:00
Anders Åberg
ec812a7d77 Wire up DI for PRFUnlockService in desktop (#18587) 2026-01-27 10:46:35 +01:00
Hinton
c9eae44393 Convert to standalone 2026-01-27 10:41:45 +01:00
Hinton
19d65cfe3c Remove duplicate badge component and org name pipe 2026-01-27 10:26:05 +01:00
Nik Gilmore
748c7c5446 [PM-30303] Migrate Cipher Delete Operations to use SDK (#18275) 2026-01-26 15:55:49 -08:00
Leslie Tilton
60c28dd182 [PM-31203] Change Phishing Url Check to use a Cursor Based Search (#18561)
* Initial changes to look at phishing indexeddb service and removal of obsolete compression code

* Convert background update to rxjs format and trigger via subject. Update test cases

* Added addUrls function to use instead of saveUrls so appending daily does not clear all urls

* Added debug logs to phishing-indexeddb service

* Added a fallback url when downloading phishing url list

* Remove obsolete comments

* Fix testUrl default, false scenario and test cases

* Add default return on isPhishingWebAddress

* Added log statement

* Change hostname to href in hasUrl check

* Save fallback response

* Fix matching subpaths in links. Update test cases

* Fix meta data updates storing last checked instead of last updated

* Update QA phishing url to be normalized

* Filter web addresses

* Return previous meta to keep subscription alive

* Change indexeddb lookup from loading all to cursor search

* fix(phishing): improve performance and fix URL matching in phishing detection

Problem:
The cursor-based search takes ~25 seconds to scan the entire phishing database.
For non-phishing URLs (99% of cases), this full scan runs to completion every time.

Before these fixes, opening a new tab triggered this sequence:
1. chrome://newtab/ fires a phishing check
2. Sequential concatMap blocks while cursor scans all 500k+ URLs (~25 sec)
3. User pastes actual URL and hits enter
4. That URL's check waits in queue behind the chrome:// check
5. Total delay: ~50+ seconds for a simple "open tab, paste link" workflow

Even for legitimate phishing checks, the cursor search could take up to 25 seconds
per URL when the fast hasUrl lookup misses due to trailing slash mismatches.

Changes:

phishing-data.service.ts:
- Add protocol filter to early-return for non-http(s) URLs, avoiding
  expensive IndexedDB operations for chrome://, about:, file:// URLs
- Add trailing slash normalization for hasUrl lookup - browsers add
  trailing slashes but DB entries may not have them, causing O(1) lookups
  to miss and fall back to O(n) cursor search unnecessarily
- Add debug logging for hasUrl checks and timing metrics for cursor-based
  search to aid performance debugging

phishing-detection.service.ts:
- Replace concatMap with mergeMap for parallel tab processing - each tab
  check now runs independently instead of sequentially
- Add concurrency limit of 5 to prevent overwhelming IndexedDB while still
  allowing parallel execution

Result:
- New tabs are instant (no IndexedDB calls for non-web URLs)
- One slow phishing check doesn't block other tabs
- Common URL patterns hit the fast O(1) path instead of O(n) cursor scan

* performance debug logs

* disable custom match because too slow

* spec fix

---------

Co-authored-by: Alex <adewitt@bitwarden.com>
2026-01-26 17:05:42 -06:00
Todd Martin
e2fa296b04 chore(deps): Added override for package-lock.json 2026-01-26 17:40:27 -05:00
Leslie Xiong
178872820e hide 'owner' column at 'md' breakpoint 2026-01-26 17:36:08 -05:00
Leslie Xiong
64b3d8c04e fixed 'owner' column responsiveness 2026-01-26 17:31:49 -05:00
Leslie Xiong
3497fd71de fixed owner column responsiveness (set to table width instead of screen) 2026-01-26 17:11:57 -05:00
Leslie Xiong
7629aa5c1f added back search bar when FF not enabled 2026-01-26 16:54:40 -05:00
Leslie Xiong
00c6fe8dbc reverted scss changes 2026-01-26 16:20:45 -05:00
Leslie Xiong
69b1957179 placed new vault cipher list work behind 'desktop-ui-migration-milestone-3' feature flag 2026-01-26 16:11:21 -05:00
renovate[bot]
36b648f5d7 [deps]: Update taiki-e/install-action action to v2.66.7 (#18570)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 20:25:23 +00:00
Leslie Xiong
52cfc79296 Merge branch 'main' into desktop/pm-18768/migrate-vault-cipher-list-fix 2026-01-26 15:15:09 -05:00
Leslie Xiong
17fb03c97e reverted search component, added search directly to vault-list 2026-01-26 15:03:12 -05:00
Leslie Xiong
4c05b98ea5 fixed "options" label disappearing when width is insufficient 2026-01-26 15:03:11 -05:00
Leslie Xiong
29aa31397d fixed options buttons overflowing if has launch 2026-01-26 15:03:11 -05:00
Leslie Xiong
a6b122f42a removed commented out 2026-01-26 15:03:11 -05:00
Leslie Xiong
de79d31e4a fixed spacing to align with send pages 2026-01-26 15:03:11 -05:00
Leslie Xiong
41135ae20d moved username below cipher item name 2026-01-26 15:03:11 -05:00