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

1696 Commits

Author SHA1 Message Date
Nick Krantz
de928e9ba1 Fix SDK typings (#16223)
* fix SDK typings for `uuidAsString`

* add `load_flags` to mock SDK instance
2025-08-29 14:27:49 -05:00
Oscar Hinton
e0da2671b4 [PM-13374] Update all SDK uuids (#14962)
* fix: broken SDK interface

* Fix all compile errors related to uuids

* Fix browser desktop

* Fix tests

---------

Co-authored-by: Andreas Coroiu <andreas.coroiu@gmail.com>
2025-08-29 13:09:33 -04:00
Patrick-Pimentel-Bitwarden
c828b3c4f4 Auth/pm 23620/auth request answering service (#15760)
* feat(notification-processing): [PM-19877] System Notification Implementation - Implemented auth request answering service.

* test(notification-processing): [PM-19877] System Notification Implementation - Added tests.
2025-08-28 13:47:05 -04:00
Jeffrey Holland
8c51050eda PM-23386 Display autofill options after sync (#15906)
* PM-23386 Display autofill options after sync

* Clear the cipher state instead of changing caching

* Fix `true` param that isn't needed anymore
2025-08-28 10:55:18 +02:00
Nick Krantz
fcc2bc96d1 [PM-21024] Use Server for Password Change URLs (#14912)
* migrate change login password service to use bitwarden server rather than fetch directly

- avoids CSP entirely

* add `HelpUsersUpdatePasswords` policy to policy type

* add `HelpUsersUpdatePasswordsPolicy` components

* allow list description override for policy description

* add `HelpUsersUpdatePasswordsPolicy` when the feature flag is enabled

* apply `HelpUsersUpdatePasswords` to everyone in an org

* use policy to guard the well known password API

* fix tests

* refactor to use `policyAppliesToUser$`

* remove policy work for change password - this was removed from scope

* update copy for show favicon setting - it now handles both favicons and change password urls

* remove favicon setting description - no longer needed

* only call change password service when the setting is enabled

* add popover for permitting cipher details

* import permit popover directly into the settings component

* replace `nativeFetch` with `fetch`

* use string literal to construct URL rather than `URL` class
- The `getIconsUrl` can return with an appended path which the new URL constructor will strip when passed as the base parameter

* use string literal to construct URL rather than `URL` class instance (#16045)

- The `getIconsUrl` can return with an appended path which the new URL constructor will strip when passed as the base parameter

* [PM-24716] UI changes for Change URI work (#16043)

* use platform service to launch the URI
- this allows desktop to open a separate browser instance rather than use electron

* fix spacing on web app

* add bitLink for focus/hover states

* remove spacing around links
2025-08-27 09:03:44 -05:00
neuronull
34cd41988a Remove EnableNewCardCombinedExpiryAutofill feature flag (#16131) 2025-08-26 12:44:08 -06:00
Brandon Treston
28b5a2bb5e [PM-22717] Expose DefaultUserCollectionEmail to clients (#15643)
* enforce restrictions based on collection type, set default collection type

* fix ts strict errors

* fix default collection enforcement in vault header

* enforce default collection restrictions in vault collection row

* enforce default collection restrictions in AC vault header

* enforce default collection restriction for select all

* fix ts strict error

* switch to signal, fix feature flag

* fix story

* clean up

* remove feature flag, move check for defaultCollecion to CollecitonView

* fix test

* remove unused configService

* fix test: coerce null to undefined for collection Id

* clean up leaky abstraction for default collection

* fix ts-strict error

* fix parens

* add new property to models, update logic, refactor for ts-strict

* fix type

* rename defaultCollection getter

* clean up

* clean up

* clean up, add comment, fix submit

* add comment

* add feature flag

* check model for name

* cleanup readonly logic, remove featureflag logic

* wip

* refactor CollectionRequest into Create and Update models

* fix readonly logic

* cleanup

* set defaultUserCollectionEmail in decryption from Collection

* split save into update/create methods

* fix readonly logic

* fix collections post and put requests

* add defaultUserCollection email to model when submitting collection dialog
2025-08-26 11:42:52 -04:00
Todd Martin
ad2dfe1e99 feat(notifications): [PM-19388] Enable push notifications on locked clients
* Add back notifications connection on locked accounts

* Updated tests.

* Make sure web push connection service is started synchronously

* Fixed merge conflicts.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2025-08-26 11:41:15 -04:00
Jordan Aasen
ae2259db2f [PM-17723] - [Web | Browser | Desktop] Cannot search for port in vault login item URI (#15962)
* add port search in uriExtractor

* revert to original check
2025-08-25 14:07:22 -07:00
Justin Baur
5f7f1d1924 Resolve state <-> state-test-utils circular dependency (#16093)
* Resolve state <-> state-test-utils circular dependency

* Fix type errors
2025-08-25 12:38:28 -04:00
Shane Melton
65230a9c3e [PM-24229] Preserve existing cipher date fields when using CipherExport.toView (#15993)
* [PM-24229] Ensure existing dates are persisted when using CipherExport.toView

* [PM-24229] Test both null and undefined

* [PM-24229] Add test for copied date values
2025-08-22 12:21:23 -07:00
Jason Ng
6e9da95230 [PM-22371] remove end user activation flag (#16067) 2025-08-22 12:56:16 -04:00
Shane Melton
4676a122da [PM-24143] Search performance improvements (#16070)
* [PM-24143] Add perUserCache$ to SearchService index$

* [PM-24143] Cleanup and optimize isSearchable

* [PM-24143] Remove unused search flags and subscription from the vault-items component

* [PM-24143] Add search text for desktop vault items. Consolidate SearchTextDebounceInterval constant to SearchService

* [PM-24143] Ensure cipher search indexing is non-blocking

* [PM-24143] Remove redundant index ciphers operation

* [PM-24143] Add search performance measurements

* [PM-24143] Remove artificial delay

* [PM-24143] Remove startWith from index$ to avoid basic search with lunr queries

* [PM-24143] Re-organize isSearchable to check long lunr queries for index existence
2025-08-22 09:32:36 -07:00
Daniel García
92c9aa7b3e Use FakeStateProvider in SdkService tests (#16126) 2025-08-22 15:19:18 +02:00
Daniel García
12df7def61 [PM-19479] Client-Managed SDK state definition (#14839)
* [PM-19479] Client-Managed SDK state definition

* Remove test code

* Update based on latest sdk

* Add DB config

* Remove uuid conversion step

* Move mapper into separate file

* Revert to client managed state

* Move mapper to Cipher

* Typo

---------

Co-authored-by: Andreas Coroiu <andreas.coroiu@gmail.com>
2025-08-22 14:21:52 +02:00
Kyle Denney
f07518084f [PM-24554] remove code for feature flag (#16092) 2025-08-21 09:36:57 -05:00
Andreas Coroiu
0daa6913d2 feat: add ipc service usage docs (#16000) 2025-08-21 14:42:56 +02:00
Bernd Schoolmann
1463fc804d Remove platform keygen service re-exports (#16081) 2025-08-21 09:45:49 +02:00
Patrick-Pimentel-Bitwarden
719a43d050 Feat PM-19877 System Notification Processing (#15611)
* feat(notification-processing): [PM-19877] System Notification Implementation - Minor changes to popup logic and removed content in login component.

* docs(notification-processing): [PM-19877] System Notification Implementation - Added more docs.

* docs(notification-processing): [PM-19877] System Notification Implementation - Added markdown document.

* fix(notification-processing): [PM-19877] System Notification Implementation - Updated condition for if notification is supported.

* fix(notification-processing): [PM-19877] System Notification Implementation - Updated services module with correct platform utils service.
2025-08-20 12:42:16 -04:00
Bernd Schoolmann
bcd73a9c00 Move auth key-generation-service imports (#16078) 2025-08-20 09:18:59 -07:00
Kyle Denney
999ade9707 [PM-24552] - remove code for feature flag (#16022) 2025-08-20 10:31:20 -05:00
cd-bitwarden
ad145fc4ff [SM-1274] Add Project Events to the Log List in Admin Console (#15442)
* Adding enums for additional event logs for secrets

* updating messages

* Updating messages to be consistent for logs

* Displaying project logs, and fixing search query param searching in projects list, having deleted log for secrets and projects not show as a link

* Viewing secret and project event logs in event modal, adding to the context menu for secrets and projects the ability to view the logs if user has permission. Restricting logs to SM projs and Secs if the logged in user has event log access but not SM access.

* lint

* Lint Fixes

* fix to messages file

* fixing lint

* Bug fix, make sure event logs related to service accounts are still links that take you to the object

* removing unused import
2025-08-20 10:45:58 -04:00
Bernd Schoolmann
3c448ee0f9 Move tools key-generation-service imports (#16077) 2025-08-19 14:00:53 +02:00
Oscar Hinton
a45f053a7f [PM-22309] Resolve TypeScript 5.8 blockers for tool owned files (#16065)
* Add explicit return types to resolve typescript 5.8 blockers

* Remove type from input
2025-08-19 11:13:22 +02:00
rr-bw
581e64b8f7 refactor(auth-state-updates): [Auth/PM-18544] Add shouldUpdate() checks to frequently updated state (#15994)
Adds `shouldUpdate()` checks to frequently updated disk state in the Auth domain, specifically:
- `account_verifyNewDeviceLogin`
- `token_accessToken`
- `token_refreshToken`
- `masterPassword_masterKeyHash`
This ensures that the state only updates if the new value is different from the previous value, thus avoiding unnecessary updates.
2025-08-18 13:09:41 -07:00
Justin Baur
939fd402c3 [PM-24677] Slim StateService down so it can be moved to state lib (#16021)
* Slim StateService down so it can be moved to state lib

* Fix accidental import changes

* Add `switchAccount` assertion

* Needs to use mock
2025-08-18 12:37:25 -04:00
Alex Morask
df7f1a8d49 [PM-22415] Tax ID notifications for Organizations and Providers (#15996)
* [NO LOGIC] Rename BillableEntity to BitwardenSubscriber

This helps us maintain paraody with server where we call this choice type ISubscriber. I chose BitwardenSubscriber to avoid overlap with RxJS

* [NO LOGIC] Move subscriber-billing.client to clients folder

* [NO LOGIC] Move organization warnings under organization folder

* Move getWarnings from OrganizationBillingApiService to new OrganizationBillingClient

I'd like us to move away from stashing so much in libs and utilizing the JsLibServicesModule when it's not necessary to do so. These are invocations used exclusively by the Web Vault and, until that changes, they should be treated as such

* Refactor OrganizationWarningsService

There was a case added to the Inactive Subscription warning for a free trial, but free trials do not represent inactive subscriptions so this was semantically incorrect. This creates another method that pulls the free trial warning and shows a dialog asking the user to subscribe if they're on one.

* Implement Tax ID Warnings throughout Admin Console and Provider Portal

* Fix linting error

* Jimmy's feedback
2025-08-18 09:52:28 -05:00
Jonathan Prusik
0c166b3f94 remove BlockBrowserInjectionsByDomain feature flag (#16008) 2025-08-18 10:17:05 -04:00
Bernd Schoolmann
a60b7fed9a [PM-17667] Move key-generation service to KM ownership (#16015)
* Move key-generation service

* Update comment

* Add deprecation comments

* Fix firefox build

* Update comment

* Update DI import

* Update module imports
2025-08-15 23:49:49 +02:00
Nick Krantz
7f841a4f06 remove PM8851_BrowserOnboardingNudge feature flag (#15956) 2025-08-15 08:55:37 -05:00
Brandon Treston
27089fbb57 [PM-24227] Enable TS-strict for Collection Domain models (#15765)
* wip ts-strict

* wip ts-strict

* wip

* cleanup

* cleanup

* fix story

* fix story

* fix story

* wip

* clean up CollectionAdminView construction

* fix deprecated function call

* fix cli

* clean up

* fix story

* wip

* fix cli

* requested changes

* clean up, fixing minor bugs, more type saftey

* assign props in static ctor, clean up
2025-08-14 13:08:24 -04:00
Bernd Schoolmann
66396a54c6 Remove encrypted interface (#15901) 2025-08-14 14:07:23 +02:00
Shane Melton
8c8350a4a1 [PM-24379] Properly construct ListResponse from API (#15981) 2025-08-13 13:03:14 -07:00
Shane Melton
d825b5c6e5 [PM-24689] Handle possible null active account (#16006) 2025-08-13 11:58:55 -07:00
Nick Krantz
7ec916802b Remove pm-10609-end-user-notifications feature flag (#15958) 2025-08-11 14:25:33 -05:00
Jason Ng
6b4c702def [PM-24313] remove PM9111ExtensionPersistAddEditForm flag (#15929)
* remove the PM9111ExtensionPersistAddEditForm flag and associated logic
2025-08-11 15:15:51 -04:00
bitwarden-charlie
7835d01456 chore/SRE-583 Deprecate usage of Auth-Email Header (#14418)
* chore/SRE-583 Deprecate usage of Auth-Email Header

* SRE-583 additional cleanup

* SRE-583 removed Utils

* SRE-583 formatting

---------

Co-authored-by: sneakernuts <671942+sneakernuts@users.noreply.github.com>
2025-08-08 08:26:03 -06:00
Justin Baur
804ad79877 Fix extra signalr connection web (#15633)
* Revert "fix(SignalR): Revert "[PM-23062] Fix extra signalr connections""

This reverts commit 97ec9a6339.

* Fix first login on web
2025-08-07 08:48:46 -04:00
Brandon Treston
29e16fc5e0 [PM-22107] Update Remove Individual Vault policy dialog (#15323)
* WIP

* switch to signal

* fix ts strict errors

* clean up

* refactor policy list service

* implement vnext component

* refactor to include feature flag check in display()

* CR feedback

* refactor submit to cancel before request is built

* clean up

* Fix typo

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2025-08-06 09:34:43 -04:00
Thomas Rittson
61cd0c4f51 [PM-23920] Admin Console - adopt strongly typed guids (#15814)
Update organization, collection and policy to use strongly typed IDs
2025-08-06 15:27:52 +10:00
Daniel Riera
2549afc45d PM-23890 Update overlays when a cipher is deleted (#15800)
* PM-23890 WIP

* add messaging service references

* Revert "PM-19574 Browser Autofill overlay displays outdated data (#15624)"

This reverts commit 9eceaa3d4c.

* add test

* fix merge spacing

* Revert "Revert "PM-19574 Browser Autofill overlay displays outdated data (#15624)""

This reverts commit 0fc6ec4d0b.
2025-08-05 12:17:38 -04:00
Bernd Schoolmann
2e9a47721e Remove legacy key support in vault code (#15348) 2025-08-04 08:15:26 -07:00
Bernd Schoolmann
6bd8638ad8 [PM-24126] Move pin service to km ownership (#15821)
* Move pin service to km ownership

* Run format

* Eslint

* Fix tsconfig

* Fix imports and test

* Clean up imports

* Remove unused dependency on PinService

* Fix comments

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-08-04 17:01:39 +02:00
Addison Beck
361f7e3447 refactor: introduce @bitwarden/state and other common libs (#15772)
* refactor: introduce @bitwarden/serialization

* refactor: introduce @bitwarden/guid

* refactor: introduce @bitwaren/client-type

* refactor: introduce @bitwarden/core-test-utils

* refactor: introduce @bitwarden/state and @bitwarden/state-test-utils

Creates initial project structure for centralized application state management. Part of modularization effort to extract state code from common.

* Added state provider documentation to README.

* Changed callouts to Github format.

* Fixed linting on file name.

* Forced git to accept rename

---------

Co-authored-by: Todd Martin <tmartin@bitwarden.com>
2025-08-04 11:01:28 -04:00
Bernd Schoolmann
0cc473fb0f Remove legacy key support form platform code (#15351) 2025-08-01 13:06:22 -05:00
Alex Morask
18bce185f0 Fix TaxService.previewTaxAmountForOrganizationTrial return type (#15848) 2025-07-31 08:19:20 -05:00
Justin Baur
4f9b2b618f [PM-24280] Remove account service from state (#15828)
* Introduce ActiveUserAccessor

* Use ActiveUserAccessor over AccountService

* Updates tests and testing utils to support ActiveUserAccessor

* Update all injection points

* Fix types test

* Use ternary instead
2025-07-31 09:09:14 -04:00
Bernd Schoolmann
021d275c43 [PM-24079] Switch EncryptedString to SDK type (#15796)
* Update usages of sdk to type-safe SDK type

* Update sdk version

* Update to "toSdk"
2025-07-30 23:49:50 +02:00
Bernd Schoolmann
5dae5267d9 [PM-22623] Remove most TS encryption code, remove service workers (#15153)
* Add new encrypt service functions

* Undo changes

* Cleanup

* Fix build

* Fix comments

* Switch encrypt service to use SDK functions

* Move remaining functions to PureCrypto

* Tests

* Increase test coverage

* Enforce sdk.ready and drop unused codepaths

* Delete unused code

* Delete unused code

* Delete more code

* Add forgotten sdk init logic

* Fix build

* Fix cli

* Fix tests

* Fix build

* Fix browser build

* Remove compare and add more comments / warnings

* Run prettier

* Remove unused feature flags

* Add hazmat warning to aesDecrypt

* Fix build

* Fix comment

* Fix test
2025-07-30 15:50:00 +02:00
Bernd Schoolmann
a7d3c0f5c2 [PM-23809] Add simplified interface to MP service (#15631)
* 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

* 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

* 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

* 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>

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-07-29 18:53:17 +02:00