1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-24 08:33:29 +00:00
Commit Graph

117 Commits

Author SHA1 Message Date
Shane Melton
5f53987873 [PM-23697] Copy raw login uri instead of launchUri (#15569) 2025-07-11 13:01:11 -07:00
Nick Krantz
a61d7fd4da [PM-23672] Switching Custom Fields - Desktop (#15563) 2025-07-11 09:31:37 -05:00
Jordan Aasen
7403b38f39 [CL-715] - [Defect] SSH key Private Key field visibility should toggle to hidden when switching items to view in desktop (#15224)
* fix sshKey visibility

* add missing ngIf

* use two-way binding over explicit key
2025-06-25 11:45:42 -07:00
Nick Krantz
729d5d3134 [PM-21546] Migrate from enum to constant object (#14975)
* add generic `union-of-values` helper

* migrate `GeneratorDialogAction` to a constant

* migrate `VaultState` to a constant

* migrate `AtRiskCarouselDialogResult` to a constant

* migrate `CredentialGeneratorDialogAction` to a constant

* migrate `FolderAddEditDialogResult` to a constant

* migrate `ViewCipherDialogResult` to a constant

* migrate `VisibleVaultBanner` to a constant

* migrate `VaultFilterLabel` to a constant

* migrate `WebVaultGeneratorDialogResult` to a constant

* migrate `BulkDeleteDialogResult` to a constant

* migrate `BulkMoveDialogResult` to a constant

* migrate `AddEditCipherDialogResult` to a constant

* migrate `VaultItemDialogResult` to a constant

* migrate `BrowserPromptState` to a constant

* migrate `NudgeType` to a constant

* migrate `SecurityTaskStatus` to a constant

* migrate `CipherRepromptType` to a constant

* migrate `SecureNoteType` to a constant

* migrate `FieldType` to a constant

* migrate `LinkedIdType` to a constant

* migrate `CollectionAssignmentResult` to a constant

* migrate `AddEditFolderDialogResult` to a constant

* migrate `AttachmentDialogResult` to a constant

* fix CipherType in delete organization dialog

* fix `in` statement in VaultFilter

* Fix build errors across enum updates

* fix two more CipherType castings

* update CipherResponse `CipherType`

* define type for `fieldType` parameter

* refine how `cipherTypeNames` is generated and add utility function for grabbing cipher type name

* use `CipherType` rather than `number`

* add stricter typing for `FieldType`

* add fixme for `CipherType` to be ADR-0025 compliant

* remove error throw for `toCipherTypeName` and instead update typing to have `| undefined`

* add helpers for CipherType conversions

* prefer `undefined`
2025-06-05 08:45:52 -05:00
Oscar Hinton
f3ff1e98ec Remove standalone true from vault (#15040)
Remove standalone: true from every instance since it's the default as of Angular 19.
2025-06-02 13:22:57 -07:00
Addison Beck
56a3b14583 Introduce eslint errors for risky/circular imports (#14804)
* first draft at an idea dependency graph

* ignore existing errors

* remove conflicting rule regarding internal platform logic in libs

* review: allow components to import from platform
2025-05-23 08:01:25 -04:00
Jordan Aasen
4474aa8c96 [PM-21569] - sshkey view - replace bit-card with read-only-cipher-card (#14811)
* use replace bit-card with read-only-cipher-card

* remove unnecessary class
2025-05-20 12:00:07 -07:00
Oscar Hinton
c8629b92d3 [CL-694] Remove unused imports (#14795)
* Remove unused imports

* Remove more unused imports
2025-05-16 17:11:18 +02:00
Jordan Aasen
7de6befbf4 replace bit-section with section for all shared cipher form and views (#14710) 2025-05-13 16:26:36 -07:00
Patrick-Pimentel-Bitwarden
0b0397c3f0 fix(enums-eslint): Enum Rule for ESLint (#14650)
* fix(enums-eslint): Enum Rule for ESLint - Added enums in the warnings for eslint.

* fix(enums-eslint): Enum Rule for ESLint - Updated to error in both places for enums.

* fix(enums-eslint): Enum Rule for ESLint - Added new eslint plugin for warning on enums.

* fix(enums-eslint): Enum Rule for ESLint - Changed based on suggestion.

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>

* refactor(browser-platform-utils): Remove Deprecation and Fix Code - Changed usages of firefox to private and moved the usages to the preferred public method and removed the deprecations.

* fix(enums-eslint): Enum Rule for ESLint - Updated to error and added disable rules for all other places.

* fix(enums-eslint): Enum Rule for ESLint - Undid other changes by accident
2025-05-13 10:07:38 -04:00
Jordan Aasen
2282a74abd [PM-21021] - fix toggled hidden field state for custom fields view (#14595)
* fix toggled hidden field state for custom fields view

* fix hidden field toggle for cards and login details
2025-05-09 18:09:26 -07:00
Daniel James Smith
26ecf3191c Fix angular performance issue on color-password.component (#14560)
* Fix performance issue, by using track $index instead of character as it can contain duplicate characters

* Migrate component to use Angular signal inputs

* Make file ts-strict compliant

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-05-08 17:19:09 -04:00
Brandon Treston
f9edf048e3 [PM-19383] admins unable to download attachments (#14652)
* add admin support for downloading attachments

* fix delete and upload

* fix delete admin to return a response

* fix upload

* add missing param

* use getCipherAdmin

* fix cli

* fix QA bugs

* null check

* fix test

* cleanup

* add null check

* change comment
2025-05-08 09:49:15 -04:00
Vicki League
8ecb32f30f [CL-333] Icon Refresh Feature Branch (#14298)
* [CL-571] Update icons to new fileset and metaphors (#14163)

* [CL-518] Convert icons docs to stories (#14299)

* [CL-574] Update inline autofill icons (#14379)

---------

Co-authored-by: William Martin <contact@willmartian.com>
2025-05-07 17:07:14 -04:00
Daniel James Smith
574891d617 [PM-16132][16249] Custom hidden field missing color and character count toggle (#13402)
* Add colored characters to custom hidden field

* Add character count toggle to hidden field

* Check correct variable for revealed hidden field

* Merge branch 'main' into vault/pm-16132/custom-hidden-field-missing-color-and-character-count-toggle

* Toggle character count on per field basis

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
Co-authored-by: Leslie Tilton <23057410+Banrion@users.noreply.github.com>
2025-05-07 09:53:57 -05:00
Brandon Treston
fd43222938 [PM-19383] admins unable to download attachments (#14363)
* add admin support for downloading attachments

* fix delete and upload

* fix delete admin to return a response

* fix upload

* add missing param

* use getCipherAdmin

* fix cli
2025-05-05 13:36:49 -04:00
Jordan Aasen
237002b633 [PM-20988][PM-20986][PM-20983][PM-20971][PM-21019] - Multiple defect fixes for desktop cipher form update (#14559)
* multiple bug fixes

* favor getters to local state

* fix tests
2025-05-02 14:21:08 -07:00
Shane Melton
cba5f826d6 [PM-21041] Fix cipher view security tasks fetching (#14569)
* [PM-21041] Add taskEnabled$ dependency to tasks$ observable

* [PM-21041] Rework cipher view component to only check tasks for organization Login type ciphers

- Remove dependency on feature flag check (handled by tasks$ observable now)
- Add try/catch in case of request failures to avoid breaking component initialization

* [PM-21041] Remove now redundant taskEnabled$ chain

* [PM-21041] Fix tests
2025-05-01 11:22:32 -07:00
Rui Tomé
9cd08e8a9f [PM-18322] Fix: Allow organization admins to upload attachments for items without direct access (#14361)
* Wire organization ID into AttachmentsV2Component for org-based ciphers

* Enhance AttachmentsV2Component to accept organization ID for improved handling of org-based ciphers

* Integrate organization ID into VaultComponent for AttachmentsV2Component to enhance org-based cipher handling

* Add unit tests for CipherAttachmentsComponent to validate attachment saving behavior for admins

- Introduced mocks for ApiService and OrganizationService in the test setup.
- Updated tests to check `saveAttachmentWithServer` calls with the correct parameters, including an `isAdmin` flag for admin API usage.

* Fix unit tests for AttachmentsV2Component by adding mocks for ApiService and OrganizationService

* Fix AttachmentsV2Component tests
2025-04-29 12:42:02 +01:00
Jordan Aasen
b589951c90 [PM-18520] - Update desktop cipher forms to use the same UI as web app and extension - (#13992)
* WIP - cipher form refactor

* cipher clone

* cipher clone

* finalize item view and form changes

* fix tests

* hide changes behind feature flag

* set flag to false

* create vault items v2. add button selector

* revert change to flag and vault items

* add attachments

* revert change to tsconfig

* move module

* fix modules

* cleanup

* fix import

* fix import

* fix import

* remove showForm

* update feature flag

* wip - cleanup

* fix up services

* cleanup

* fix type errors

* fix lint errors

* add dialog component

* revert changes to menu

* revert changes to menu

* fix vault-items-v2

* set feature flag to FALSE

* add missing i18n keys. fix collection state

* remove generator. update modules. bug fix

* fix restricted imports

* mark method as deprecated. add uri arg back

* fix shared.module

* fix shared.module

* fix shared.module

* add uri

* check and prompt for premium when opening attachments dialog

* move VaultItemDialogResult back

* fix import in spec file

* update copy functions

* fix MP reprompt issue
2025-04-23 11:13:44 -07:00
Shane Melton
6503cc64fd [PM-19906] Add appStopClick to prevent default event (#14134) 2025-04-04 15:34:02 -07:00
Nick Krantz
3c83165b4e [PM-17598] Long custom fields (#13668)
* add custom directive to use the angular CDK resize textarea directive

* swap to textarea to allow for full content to be shown when view text or hidden custom fields

* add text-field styling to web sass file

* move angular import to CL scss file

* add `textarea` to selector to enforce directive usage only on textareas
2025-04-02 09:58:31 -07:00
Jordan Aasen
afcb656d12 [PM-17747] - remove emergency access attachments dialog. fix 404 (#13854)
* remove emergency access attachments dialog. fix 404

* fix types

* fix type issue
2025-04-01 16:48:41 -07:00
Shane Melton
c3e562e75d [PM-17563] [PM-19754] Migrate Security Task Module to libs/common (#14036)
* [PM-17563] Remove references to Angular from TaskService

* [PM-17563] Move Task module to libs/common/vault to avoid Angular dependency

* [PM-17563] Fix bad imports

* [PM-17563] Fix a few more missed imports
2025-04-01 07:27:05 -07:00
bnagawiecki
10695fd971 add data-testids to 3 ssh key fields (#14024) 2025-03-27 14:20:34 -04:00
Vicki League
4734cab9a6 [CL-550] Fix popup layout padding and adjust views with extra bottom space (#13562)
* [CL-550] Fix popup layout padding and adjust views with extra bottom space

* simplify css

* fix add/edit item page

* cr changes

* fix failing test

---------

Co-authored-by: Will Martin <contact@willmartian.com>
2025-03-26 17:26:05 -04:00
Jason Ng
cf827981af [PM-19240] Do not show task unless Manage or Edit Permission (#13880)
* do not show task for edit except pw
2025-03-20 15:16:18 -04:00
Jason Ng
45df8ff825 [PM-19025] update icon, add href for a11y nav (#13818) 2025-03-13 17:13:38 -04:00
Jordan Aasen
6c2d7e92e6 allow item history to be selectable (#13708) 2025-03-12 15:19:06 -07:00
Jason Ng
0356f4c1af [PM-19106] view-item folder bug fix (#13808)
added security task flag check to task api call in cipher-view
2025-03-12 12:58:30 -04:00
Jason Ng
f7642aa0c6 [PM-14423] item view security task (#13485)
* show pending change password tasks for ciphers in extension
2025-03-04 12:18:40 -05:00
SmithThe4th
a2945203f4 [PM-12047] Remove usage of ActiveUserState from cipher.service (#12814)
* Cipher service web changes

* Updated browser client to pass user id to cipher service observable changes

* Cli changes

* desktop changes

* Fixed test

* Libs changes

* Fixed merge conflicts

* Fixed merge conflicts

* removed duplicate reference fixed conflict

* Fixed test

* Fixed test

* Fixed test

* Fixed desturcturing issue on failed to decrypt ciphers cipher service

* Updated abstraction to use method syntax

* Fixed conflicts

* Fixed test on add edit v2

Passed active userId to delete function

* Used getUserId utility function

* made vault changes

* made suggestion changes

* made suggestion changes

* made suggestion changes

* Replace getUserId function calls with pipe operator syntax for better consistency

* fixed merge conflicts

* revert mistake made of usinf account activity during merge conflict fix

* fixed conflicts

* fixed tests
2025-02-12 08:53:31 -05:00
Shane Melton
182f9baa0f Revert "[PM-5718] Fix free organization generating TOTP (#11918)" (#13357)
This reverts commit 459fb1bcf4.

Co-authored-by: SmithThe4th <gsmithwalter@gmail.com>
2025-02-11 11:12:56 -08:00
Jordan Aasen
95ef2f523c [PM-16707] - show password history for hidden field types (#13199)
* don't limit password history to login types

* don't display password change date if it's not present
2025-02-07 10:05:37 -08:00
Jordan Aasen
2c118d9f01 [PM-16925] - fix all restricted imports in vault (#13236)
* fix all restricted imports in vault

* fix spec

* remove export
2025-02-04 14:26:03 -08:00
Brandon Treston
a949f793ed [PM-15506] Implement vNextOrganizationService (#12839)
* [PM-15506] Wire up vNextOrganizationService for libs/common and libs/angular (#12683)

* Wire up vNextOrganizationService in PolicyService

* Wire vNextOrganizationService in SyncService

* wire vNextOrganizationService for EventCollectionService

* wire vNextOrganizationService for KeyConnectorService

* wire up vNextOrganizationService for CipherAuthorizationService

* Wire up vNextOrganizationService in PolicyService

* Wire vNextOrganizationService in SyncService

* wire vNextOrganizationService for EventCollectionService

* wire vNextOrganizationService for KeyConnectorService

* wire up vNextOrganizationService for CipherAuthorizationService

* wire vNextOrganizationService for share.component

* wire vNextOrganizationService for collections.component

* wire vNextOrganizationServcie for add-account-credit-dialog

* wire vNextOrganizationService for vault-filter.service

* fix browser errors for vNextOrganizationService implementation in libs

* fix desktop errors for vNextOrganizationService implementation for libs

* fix linter errors

* fix CLI errors on vNextOrganizationServcie implementations for libs

* [PM-15506] Wire up vNextOrganizationService for web client (#12810)

PR to a feature branch, no need to review until this goes to main.

* implement vNextOrganization service for browser client (#12844)

PR to feature branch, no need for review yet.

* wire vNextOrganizationService for licence and some web router guards

* wire vNextOrganizationService in tests

* remove vNext notation for OrganizationService and related

* Merge branch 'main' into ac/pm-15506-vNextOrganizationService

* fix tsstrict error

* fix test, fix ts strict error
2025-01-22 15:20:25 -05:00
Will Martin
e2629eeaa6 remove duplicate ngIf (#12999) 2025-01-21 14:59:29 -08:00
cd-bitwarden
cc7defc447 [PM-13938] Changes to disabled user from seeing password that they shouldn't see or edit easily. (#12161)
* Changes to disabled user from seeing password that they shouldn't see or edit easily.

* Fixing defects on PM-13938

* undoing unecessary change

* Updating tests

---------

Co-authored-by: --global <>
Co-authored-by: kejaeger <138028972+kejaeger@users.noreply.github.com>
2025-01-21 14:50:05 -05:00
Oscar Hinton
d820bfb691 [PM-17346] Move A11yTitle and CopyClick to CL (#12936)
* Move A11yTitle and CopyClick to CL
2025-01-20 11:43:10 +01:00
Jordan Aasen
43a6a93944 don't allow 'except password' permissions to view or copy hidden fields (#12899) 2025-01-17 15:04:06 -08:00
Jordan Aasen
70cf4593fb show login credentials if only passkey is present (#12870) 2025-01-16 11:10:23 -08:00
Shane Melton
459fb1bcf4 [PM-5718] Fix free organization generating TOTP (#11918)
* [PM-5718] Fix totp generation for free orgs in old add-edit component

* [PM-5718] Fix totp generation for free orgs in view cipher view component

* [PM-5718] Cleanup merge conflicts

* Don't generate totp code for premium users or free orgs

* Added redirect to organization helper page

* Changed text to learn more

* Only show upgrade message to premium users

* Show upgrade message to free users with free orgs as well

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
Co-authored-by: gbubemismith <gsmithwalter@gmail.com>
2025-01-13 12:58:52 -05:00
Oscar Hinton
db84ccf935 [PM-16838] Forbid imports containing /src/ (#12744)
Forbids bad imports containing /src/.
2025-01-10 10:37:34 -05:00
Conner Turnbull
91d6963074 [PM-14366] Deprecated active user state from billing state service (#12273)
* Updated billing state provider to not rely on ActiveUserStateProvider

* Updated usages

* Resolved browser build

* Resolved web build

* Resolved CLI build

* resolved desktop build

* Update apps/cli/src/tools/send/commands/create.command.ts

Co-authored-by:  Audrey  <ajensen@bitwarden.com>

* Move subscription visibility logic from component to service

* Resolved unit test failures. Using existing userIds where present

* Simplified activeUserId access

* Resolved typescript strict errors

* Resolved broken unit test

* Resolved ts strict error

---------

Co-authored-by:  Audrey  <ajensen@bitwarden.com>
2025-01-07 10:25:26 -05:00
Daniel James Smith
ec21e8db59 Add missing credit card number pipe (#12508)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-01-06 17:44:36 +01:00
SmithThe4th
10c8a2101a [PM-12049] Remove usage of ActiveUserState from folder service (#11880)
* Migrated folder service from using active user state to single user state

Added extra test cases for encrypted folder and decrypted folders

Updated derived state to use decrypt with key

* Update callers in the web

* Update callers in the browser

* Update callers in libs

* Update callers in cli

* Fixed test

* Fixed folder state test

* Fixed test

* removed duplicate activeUserId

* Added takewhile operator to only make calls when userId is present

* Simplified to accept a single user id instead of an observable

* Required userid to be passed from notification service

* [PM-15635] Folders not working on desktop (#12333)

* Added folders memory state definition

* added decrypted folders state

* Refactored service to remove derived state

* removed combinedstate and added clear decrypted folders to methods

* Fixed test

* Fixed issue with editing folder on the desktop app

* Fixed test

* Changed state name

* fixed ts strict issue

* fixed ts strict issue

* fixed ts strict issue

* removed unnecessasry null encrypteed folder check

* Handle null folderdata

* [PM-16197] "Items with No Folder" shows as a folder to edit name and delete (#12470)

* Force redcryption anytime encryption state changes

* Fixed text file

* revert changes

* create new object with nofolder instead of modifying exisiting object

* Fixed failing test

* switched to use memory-large-object

* Fixed ts sctrict issue

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-01-02 17:16:33 -05:00
Nick Krantz
6ad35e0871 Vault Refactor: Clean up some strict types (#12357)
* update cipher-view to account for strict type checking

* update view-identity-sections to account for strict type checking

* update read-only-cipher-card to account for strict type checking

* remove unused card import

* remove unused card import

* update additional-options to account for strict type checking
2024-12-20 10:16:34 -06:00
Nick Krantz
b27a1a5337 [PM-12998] View Cipher: Color Password (#12354)
* show color password for visible passwords in vault view

- The password input will be visually hidden
- Adds tests for the login credentials component

* formatting
2024-12-20 09:44:36 -06:00
Nick Krantz
0f3803ac91 [PM-11442] Emergency Cipher Viewing (#12054)
* force viewOnly to be true for emergency access

* add input to hide password history, applicable when the view is used from emergency view

* add extension refresh version of the emergency view dialog

* allow emergency access to view password history

- `ViewPasswordHistoryService` accepts a cipher id or CipherView. When a CipherView is included, the history component no longer has to fetch the cipher.

* remove unused comments

* Add fixme comment for removing non-extension refresh code

* refactor password history component to accept a full cipher view

- Remove the option to pass in only an id
2024-12-19 09:42:37 -06:00
cd-bitwarden
83dc66dd56 [PM-14345] Enabling drag and drop for cipher fields (#12067)
* enabling drag and drop for cipher fields

* adding drag and drop to totp and fido

* removing code changes to wrong file

* undoing uneeded change

* Changes suggested by Shane

* fixes

* fixes

* moving export to the correct spot

---------

Co-authored-by: --global <>
2024-12-10 12:55:02 -05:00