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

3152 Commits

Author SHA1 Message Date
Vincent Salucci
17ae78ea83 chore: fix feature flag name, refs PM-27766 (#17660) 2025-11-25 11:23:01 -06:00
Dave
cf6569bfea feat(user-decryption-options) [PM-26413]: Remove ActiveUserState from UserDecryptionOptionsService (#16894)
* feat(user-decryption-options) [PM-26413]: Update UserDecryptionOptionsService and tests to use UserId-only APIs.

* feat(user-decryption-options) [PM-26413]: Update InternalUserDecryptionOptionsService call sites to use UserId-only API.

* feat(user-decryption-options) [PM-26413] Update userDecryptionOptions$ call sites to use the UserId-only API.

* feat(user-decryption-options) [PM-26413]: Update additional call sites.

* feat(user-decryption-options) [PM-26413]: Update dependencies and an additional call site.

* feat(user-verification-service) [PM-26413]: Replace where allowed by unrestricted imports invocation of UserVerificationService.hasMasterPassword (deprecated) with UserDecryptionOptions.hasMasterPasswordById$. Additional work to complete as tech debt tracked in PM-27009.

* feat(user-decryption-options) [PM-26413]: Update for non-null strict adherence.

* feat(user-decryption-options) [PM-26413]: Update type safety and defensive returns.

* chore(user-decryption-options) [PM-26413]: Comment cleanup.

* feat(user-decryption-options) [PM-26413]: Update tests.

* feat(user-decryption-options) [PM-26413]: Standardize null-checking on active account id for new API consumption.

* feat(vault-timeout-settings-service) [PM-26413]: Add test cases to illustrate null active account from AccountService.

* fix(fido2-user-verification-service-spec) [PM-26413]: Update test harness to use FakeAccountService.

* fix(downstream-components) [PM-26413]: Prefer use of the getUserId operator in all authenticated contexts for user id provided to UserDecryptionOptionsService.

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-11-25 11:23:22 -05:00
Bryan Cunningham
540da69daf [CL-761] Enable strict template typechecking (#17334)
* enable strict template typechecking

* add callout component to module

* fixing popup action types

* fixing cipher item copy types

* fix archive cipher type

* fixing trash list items types

* fix remaining trash list item type errors

* use CipherViewLike as correct type

* change popup back directive to attribute selector

* allow undefined in popupBackAction handler

* Remove undefined from type

* fix error with firefox commercial build

---------

Co-authored-by: Vicki League <vleague@bitwarden.com>
2025-11-25 11:04:37 -05:00
SmithThe4th
57946f6406 Fixed invalid cipher remprompt values (#17513) 2025-11-25 10:37:28 -05:00
Bryan Cunningham
568183bacd fix disabled cursor styles (#17656) 2025-11-25 10:18:43 -05:00
Todd Martin
d16c25e759 chore(docs) Add comments from contributing docs to master password types in code
* Added comments from contributing docs.

* Grammatical changes.
2025-11-25 10:02:51 -05:00
Andreas Coroiu
9e90e72961 [PM-27530] Rename BitwardenClient to PasswordManagerClient (#17578)
* fix: compilation issues with PM client rename

* fix: jest compilation

* feat: rename all non-breaking platform instances

* feat: update SDK
2025-11-25 14:48:25 +01:00
Jordan Aasen
43fd99b002 [PM-24722][PM-27695] - add persistent callout in settings for non-premium users (#17246)
* add persistent callout in settings for non-premium users

* remove premium v2 component

* add spec

* remove premium-v2.component.html

* fix title

* fix typo

* conditionally render h2

* re-add pemiumv2component. change class prop to observable

* change from bold to semibold

* remove unecessary tw classes. use transform: booleanAttribute

* add spotlight specs

* code cleanup
2025-11-24 13:49:05 -08:00
Bryan Cunningham
613e0c5461 [CL-925] add filled danger button (#17633)
* add dangerPrimary button variant

* add dangerPrimary to small story
2025-11-24 13:08:25 -05:00
Oscar Hinton
4c36a46ef2 Enable directive-class-suffix (#17385) 2025-11-24 18:03:16 +01:00
Todd Martin
23ac477bbc chore(feature-flag): Removed pm-28325-remove-pm-22110-disable-alternate-login-methods flag 2025-11-21 16:01:41 -05:00
Dave
daf7b7d2ce fix(two-factor) [PM-21204]: Users without premium cannot disable premium 2FA (#17134)
* refactor(two-factor-service) [PM-21204]: Stub API methods in TwoFactorService (domain).

* refactor(two-factor-service) [PM-21204]: Build out stubs and add documentation.

* refactor(two-factor-service) [PM-21204]: Update TwoFactorApiService call sites to use TwoFactorService.

* refactor(two-fatcor) [PM-21204]: Remove deprecated and unused formPromise methods.

* refactor(two-factor) [PM-21204]: Move 2FA-supporting services into common/auth/two-factor feature namespace.

* refactor(two-factor) [PM-21204]: Update imports for service/init containers.

* feat(two-factor) [PM-21204]: Add a disabling flow for Premium 2FA when enabled on a non-Premium account.

* fix(two-factor-service) [PM-21204]: Fix type-safety of module constants.

* fix(multiple) [PM-21204]: Prettier.

* fix(user-verification-dialog) [PM-21204]: Remove bodyText configuration for this use.

* fix(user-verification-dialog) [PM-21204]: Improve the error message displayed to the user.
2025-11-21 10:35:34 -05:00
Addison Beck
ba93526965 chore: create eslint rule to catch insecure page script injection (#17437)
* chore: create eslint rule to catch insecure page script injection

* chore: ignore existing lints

* review: tighten rule scope

* review: add tests
2025-11-20 19:45:49 -05:00
Kyle Spearrin
d7949ab2f3 [PM-27766] Add policy for blocking account creation from claimed domains (#17211)
* Added policy for blocking account creation for claimed domains.

* add feature flag

* fix desc

* learn more link

* fix localization key to learnMore

* onpush change detection
2025-11-20 08:42:57 -06:00
Nick Krantz
b00987180d [PM-26688][PM-27710] Delay skeletons from showing + search (#17394)
* add custom operator for loading skeleton delays

* add `isCipherSearching$` observable to search service

* prevent vault skeleton from showing immediately

* add skeleton for search + delay to sends

* update fade-in-out component selector

* add fade-in-out component for generic use

* address memory leak by using defer to encapsulate `skeletonShownAt`

* add missing provider
2025-11-20 08:26:47 -06:00
rr-bw
9e6d0cce35 feat(marketing-initiated-premium): Auth [PM-27542] Write fromMarketing value to state (#17470) 2025-11-19 19:00:18 -08:00
Kyle Denney
fde1e26ad9 [PM-28370] fix defect for self-hosted metadata (#17464) 2025-11-18 15:24:36 -06:00
Jason Ng
fd1155ae58 [PM-27103] Add URL Check to Send (#17056)
* add dangerousPatters check to api service
2025-11-18 12:38:18 -05:00
Vicki League
96ffb56771 [CL-928] Set link component to semibold weight (#17395) 2025-11-18 11:25:48 -05:00
Oscar Hinton
9efc31534b [PM-28231] Enable component-class-suffix (#17384)
* Enable component-class-suffix

* Rename file
2025-11-18 13:26:38 +01:00
Jordan Aasen
670f3514ba [PM-23384] - Browser extension spotlight directing to Premium signup in web (#17343)
* premium upgrade nudge

* add specs

* clean up vault template and specs

* fix date comparison. add more specs for date

* fix spec

* fix specs

* make prop private
2025-11-17 12:36:37 -08:00
Nick Krantz
610537535a persist archive date when cloning a cipher (#16986) 2025-11-17 14:14:03 -06:00
SmithThe4th
de17b33dd5 handle empty strings in identity view for sdk cipher encryption (#17423) 2025-11-17 15:10:50 -05:00
Jared Snider
9cd73b8738 Auth/PM-22661 - SendTokenService - improve expired token scenario docs on abstraction (#17371)
* PM-22661 - SendTokenService - improve expired token scenario docs on abstraction

* PM-22661 - SendTokenService - further clarification
2025-11-14 16:28:05 -05:00
Mike Amirault
b56229dd28 Remove import page banner when under org policy (#17348) 2025-11-14 14:27:40 -05:00
Brandon Treston
099a4a0f03 [PM-28216] Add org ability check for one time dialog (#17372)
* add org ability check for one time dialog

* exclude providers (cautionary step) and add tests
2025-11-14 08:43:10 -08:00
Andreas Coroiu
ed2d8b9549 [PM-18046] Implement session storage (#17346)
* feat: add support for IPC client managed session storage

* feat: update SDK

* fix: using undecorated service in jslib module directly

* feat: add test case for web

* chore: document why we use any type

* fix: `ipc` too short

* typo: omg

* Revert "typo: omg"

This reverts commit 559b05eb5a.

* Revert "fix: `ipc` too short"

This reverts commit 35fc99e10b.

* fix: use camelCase
2025-11-14 08:51:38 +01:00
Mark Youssef
a55d0f02f2 [CL-672] update mobile design of dialog (#14828)
---------

Co-authored-by: Vicki League <vleague@bitwarden.com>
2025-11-13 21:59:03 -05:00
Oscar Hinton
d95d86d05e [CL-738] Migrate disclosure component (#17206) 2025-11-13 17:02:38 -05:00
Bryan Cunningham
ccf7bb1753 [CL-736] migrate chip select to use signals (#17136)
* migrate chip select to use signals

* Have Claude address feedback and create spec file

* remove eslint disable comment

* fix failing tests

* remove unnecessary tests

* improved documentation

* remove unnecessary test logic

* consolidate tests and remove fragile selectors
2025-11-13 15:53:05 -05:00
Thomas Avery
35f35c4361 [PM-26498] Add proofOfDecryption method to MasterPasswordUnlockService (#17322)
* Add proofOfDecryption method to MasterPasswordUnlockService
2025-11-13 14:06:56 -06:00
Thomas Avery
cfe2458935 [PM-24107] Migrate KM's usage of getUserKey from the key service (#17117)
* Remove internal use of getUserKey in the key service

* Move ownership of RotateableKeySet and remove usage of getUserKey

* Add input validation to createKeySet
2025-11-13 10:07:13 -06:00
Maciej Zieniuk
3da3aa5e8c moving ownership of Auth vault timeout input component to KM (#17180)
(cherry picked from commit 5e595dabf71cdb312ae9e1e3bcc3121b3aebf19f)
2025-11-12 22:15:01 +01:00
Oscar Hinton
828fdbd169 [CL-905] Migrate CL/Badge to OnPush (#16959) 2025-11-12 15:27:14 -05:00
cyprain-okeke
7989ad7b7c [PM-26682] [Milestone 2d] Display discount on subscription page (#17229)
* The discount badge implementation

* Use existing flag

* Added the top spaces as requested

* refactor: move discount-badge to pricing library and consolidate discount classes

* fix: add CommonModule import to discount-badge component and simplify discounted amount calculation

- Add CommonModule import to discount-badge component for *ngIf directive
- Simplify discountedSubscriptionAmount to use upcomingInvoice.amount from server instead of manual calculation

* Fix the lint errors

* Story update

---------

Co-authored-by: Alex Morask <amorask@bitwarden.com>
2025-11-12 20:38:13 +01:00
Vicki League
2762d46c34 [CL-806] Use header as autofocus target for dialog component (#17336) 2025-11-12 09:20:25 -05:00
Stephon Brown
421edfb020 [PM-28034] Pre-Launch Payment Defect Solution (#17331)
* fix(billing): update to password manager to signal

* fix(billing): take first value so the dialog doesn't show again

* fix(billing): add families plan to request builder

* fix(billing): feedback and type update

* fix(billing): fix selectedplan call
2025-11-11 15:51:01 -05:00
Nick Krantz
785b1cfdd2 add skeleton loader feature flag (#17337) 2025-11-11 14:20:53 -06:00
Oscar Hinton
84340cba5c Log actual import error (#17327) 2025-11-11 16:56:59 +01:00
Maciej Zieniuk
021d3e53aa [PM-26056] Consolidated session timeout component (#16988)
* consolidated session timeout settings component

* rename preferences to appearance

* race condition bug on computed signal

* outdated header for browser

* unnecessary padding

* remove required on action, fix build

* rename localization key

* missing user id

* required

* cleanup task

* eslint fix signals rollback

* takeUntilDestroyed, null checks

* move browser specific logic outside shared component

* explicit input type

* input name

* takeUntilDestroyed, no toast

* unit tests

* cleanup

* cleanup, correct link to deprecation jira

* tech debt todo with jira

* missing web localization key when policy is on

* relative import

* extracting timeout options to component service

* duplicate localization key

* fix failing test

* subsequent timeout action selecting opening without dialog on first dialog cancellation

* default locale can be null

* unit tests failing

* rename, simplifications

* one if else feature flag

* timeout input component rendering before async pipe completion
2025-11-11 08:15:36 -06:00
Andreas Coroiu
a66227638e Update sdk-internal to 374 (fix breaking changes) (#17325)
* feat: update sdk-internal

* fix: symbol.dispose breaking change

* fix: TextEncoder/Decoder breaking change

* fix: move polyfills to a global setup script

* typo
2025-11-11 15:01:03 +01:00
Vicki League
c22cba76ec [PM-26984] Use medium instead of semibold or bold, and for headings (#17184) 2025-11-10 17:11:35 -05:00
Bryan Cunningham
c25cd63022 [CL-924] fix nested nav indentation (#17317)
* fix nav indentation

* move padding logic to component

* add jsdoc for padding calculation

* access open value correctly
2025-11-10 16:27:35 -05:00
Kyle Denney
e3acd27dec [PM-24284] - milestone 3 (#17230)
* first draft

# Conflicts:
#	apps/web/src/app/billing/individual/upgrade/upgrade-payment/services/upgrade-payment.service.ts
#	apps/web/src/app/billing/organizations/organization-plans.component.ts
#	libs/common/src/billing/services/subscription-pricing.service.ts
#	libs/common/src/enums/feature-flag.enum.ts

* more filtering for pricing cards

* prettier

* tests

* tests v2
2025-11-10 11:50:49 -06:00
Bryan Cunningham
c8281a079b skip tooltip stories in chromatic (#17315) 2025-11-10 12:49:14 -05:00
Patrick-Pimentel-Bitwarden
5aa6d38d80 feat(prelogin): [Auth/PM-23801] Move Prelogin Request (#17080)
* feat(prelogin): [PM-23801] Move Prelogin Request - Initial implementation.

* test(prelogin): [PM-23801] Move Prelogin Request - Removed unneeded test.
2025-11-10 10:54:25 -05:00
Kyle Denney
f7899991a0 [PM-23713] always append query param to premium redirect (#17240) 2025-11-10 09:51:51 -06:00
Rui Tomé
cb863b44d5 [PM-26430] Remove Type property from PolicyRequestModel to use route parameter only (#16960)
* Remove Type property from PolicyRequestModel to use route parameter only

* Remove PolicyType property from policy update request in auto-confirm edit policy dialog

* Run prettier
2025-11-10 15:27:48 +00:00
Brandon Treston
19626d1b3e [PM-26363] Add one time setup dialog for auto confirm (#17104)
* add one time setup dialog for auto confirm

* add one time setup dialog for auto confirm

* fix copy, padding, cleanup observable logic

* cleanup

* cleanup

* refactor

* clean up

* more cleanup

* Fix deleted files

This reverts commit 7c18a5e512.
2025-11-07 15:58:39 -05:00
Bernd Schoolmann
4f9ae78598 [PM-27515] Fix 2fa settings not working after KDF change (#17070)
* Always derive authentication data fresh for UV

* Cleanup

* Add tests

* Fix remote UV

* Fix test

* Fix test

* Address feedback

* Fix build

* Update libs/common/src/auth/types/verification.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Remove unused var

* Fix relative import

* Fix types

---------

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
2025-11-07 18:36:02 +01:00