1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-21 10:43:35 +00:00
Commit Graph

170 Commits

Author SHA1 Message Date
Shane Melton
a6c905cc1a [PM-15533] Remove isNotClone parameter from updateWithServer method (#12233) 2024-12-03 15:43:09 -08:00
cd-bitwarden
a1ad3383f7 [PM-13894] updating the text area for notes to have 5 rows (#11976)
* updating the text area for notes to have 5 rows

* Applying the row count to the edit page as well

---------

Co-authored-by: --global <>
2024-11-14 16:06:57 +00:00
Bernd Schoolmann
081fe83d83 PM-10393 SSH keys (#10825)
* [PM-10395] Add new item type ssh key (#10360)

* Implement ssh-key cipher type

* Fix linting

* Fix edit and view components for ssh-keys on desktop

* Fix tests

* Remove ssh key type references

* Remove add ssh key option

* Fix typo

* Add tests

* [PM-10399] Add ssh key import export for bitwarden json (#10529)

* Add ssh key import export for bitwarden json

* Remove key type from ssh key export

* [PM-10406] Add privatekey publickey and fingerprint to both add-edit and view co… (#11046)

* Add privatekey publickey and fingerprint to both add-edit and view components

* Remove wrong a11y title

* Fix testid

* [PM-10098] SSH Agent & SSH Key creation for Bitwarden Desktop (#10293)

* Add ssh agent, generator & import

* Move ssh agent code to bitwarden-russh crate

* Remove generator component

* Cleanup

* Cleanup

* Remove left over sshGenerator reference

* Cleanup

* Add documentation to sshkeyimportstatus

* Fix outdated variable name

* Update apps/desktop/src/platform/preload.ts

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

* Rename renderersshagent

* Rename MainSshAgentService

* Improve clarity of 'id' variables being used

* Improve clarity of 'id' variables being used

* Update apps/desktop/src/vault/app/vault/add-edit.component.html

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

* Fix outdated cipher/messageid names

* Rename SSH to Ssh

* Make agent syncing more reactive

* Move constants to top of class

* Make sshkey cipher filtering clearer

* Add stricter equality check on ssh key unlock

* Fix build and messages

* Fix incorrect featureflag name

* Replace anonymous async function with switchmap pipe

* Fix build

* Update apps/desktop/desktop_native/napi/src/lib.rs

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

* Revert incorrectly renamed 'Ssh' usages to SSH

* Run cargo fmt

* Clean up ssh agent sock path logic

* Cleanup and split to platform specific files

* Small cleanup

* Pull out generator and importer into core

* Rename renderersshagentservice to sshagentservice

* Rename cipheruuid to cipher_id

* Drop ssh dependencies from napi crate

* Clean up windows build

* Small cleanup

* Small cleanup

* Cleanup

* Add rxjs pipeline for agent services

* [PM-12555] Pkcs8 sshkey import & general ssh key import tests (#11048)

* Add pkcs8 import and tests

* Add key type unsupported error

* Remove unsupported formats

* Remove code for unsupported formats

* Fix encrypted pkcs8 import

* Add ed25519 pkcs8 unencrypted test file

* SSH agent rxjs tweaks (#11148)

* feat: rewrite sshagent.signrequest as purely observable

* feat: fail the request when unlock times out

* chore: clean up, add some clarifying comments

* chore: remove unused dependency

* fix: result `undefined` crashing in NAPI -> Rust

* Allow concurrent SSH requests in rust

* Remove unwraps

* Cleanup and add init service init call

* Fix windows

* Fix timeout behavior on locked vault

---------

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

* Fix libc dependency being duplicated

* fix SSH casing (#11840)

* Move ssh agent behind feature flag (#11841)

* Move ssh agent behind feature flag

* Add separate flag for ssh agent

* [PM-14215] fix unsupported key type error message (#11788)

* Fix error message for import of unsupported ssh keys

* Use triple equals in add-edit component for ssh keys

---------

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
Co-authored-by: aj-bw <81774843+aj-bw@users.noreply.github.com>
2024-11-08 11:01:31 +01:00
Nick Krantz
b42741f313 [PM-13839][PM-13840] Admin Console Collections (#11649)
* allow admin console to see all collections when viewing a cipher

- When "manage all" option is selected all collections should be editable

* update cipher form service to use admin endpoints

* when saving a cipher, choose to move to collections first before saving any other edits

- This handles the case where a cipher is moving from unassigned to assigned and needs to have a collection to save any other edits

* set admin flag when the original cipher has zero collections

- handling the case where the user  un-assigns themselves from a cipher

* add check for the users ability to edit items within the collection

* save cipher edit first to handle when the user unassigns themselves from the cipher

* update filter order of collections

* use cipher returned from the collections endpoint rather than re-fetching it

* fix unit tests by adding canEditItems

* re-enable collection control when orgId is present

* fetch the updated cipher from the respective service for editing a cipher
2024-11-07 10:22:35 -06:00
Nick Krantz
f416c3ed49 [PM-13449] Owner assignment/visibility in AC (#11588)
* Revert "remove logic for personal ownership, not needed in AC"

This reverts commit f04fef59f4.

* allow for ownership to be controlled from the admin console when cloning a cipher
2024-11-01 14:15:36 -05:00
Nick Krantz
00e1c936fb [PM-13928]use the user's email address in owner dropdown rather than "You" (#11798)
* use the user's email address in owner dropdown rather than "You"

* show ownership value in individual vault when disabled

* import account service in storybook
2024-11-01 11:05:02 -05:00
Nick Krantz
bb296c7f8d [PM-13145] Hidden fields font (#11764)
* display card number and security code with mono font

* display hidden custom fields with mono font

* display passwords with mono font
2024-10-31 08:06:32 -05:00
Nick Krantz
80a4fba787 Allow for the web generation dialog to disable the margin of the tools generation components (#11565) 2024-10-18 15:57:34 -05:00
Nick Krantz
d8f1527db0 [PM-13016] Browser default match detection (#11569)
* update conditional to only exit early if value is null

- The UriMatchStrategy for Domain was 0 and hitting the conditional

* add baseDomain test
2024-10-16 08:11:41 -05:00
✨ Audrey ✨
dc1f014ad8 [PM-8282] credential generator (#11398)
* credential generator browser ui
* switch browser generate screen to extension refresh flag
* consolidate generator components into module
* add `@bitwarden/generator-components` readme
* normalize generator component rx subscriptions
2024-10-08 14:08:34 -04:00
Nick Krantz
dee7d94b1d add platform service to cipher form story (#11458) 2024-10-08 11:45:45 -05:00
Nick Krantz
22b16b20a7 remove user match strategy on the web (#11385) 2024-10-08 10:53:20 -05:00
Thomas Rittson
7c72795d1c [PM-12747] Move CollectionService and models to AC Team (#11278) 2024-10-08 10:14:39 -04:00
Nick Krantz
a6db7e3086 [PM-10426] Admin Console - Edit Modal (#11249)
* add `hideFolderSelection` for admin console ciphers

* hide folder form field when configuration has `hideFolderSelection` set to true

* add `addCipherV2` method in the admin console vault

* add browser refresh logic for add/edit form

* add admin console implementation of `AdminConsoleCipherFormConfigService`

* only allow edit dialog in admin console

* remove duplicate check

* refactor comments

* initial integration of combined dialog

* integrate add cipher with admin console vault

* account for special admin console collection permissions

* add `edit` variable to AC ciphers when the user has permissions

* Move comment to JSDoc

* pass full cipher to view component

* validate edit access when opening view form

* partial-edit not applicable for admin console

* refactor hideIndividualFields to be more generic and hide favorite button

* pass entire cipher into edit logic to match view logic

* add null check for cipher when attempting to view

* remove logic for personal ownership, not needed in AC
2024-10-07 10:59:23 -05:00
Shane Melton
68f4c2e879 [PM-12389] Vault Item Dialog Fixes (#11374)
* [PM-12389] Hide delete button when there is no cipher to delete

* [PM-12389] Ensure decrypted collections and folders are available before building cipher form config

* [PM-12389] Hide the delete button when cloning ciphers
2024-10-07 07:23:00 -07:00
Nick Krantz
e6ff647343 fix value update for match detections (#11417) 2024-10-04 13:16:21 -05:00
Nick Krantz
02993f7018 [PM-10439] Vault generator components (#11350)
* add password/username generator strings to web app

* remove JSLibServicesModule from generator dependencies

* integrate username and password generators into browser extension

* integrate username and password generators into web app

* move Jslib order back

* remove margin from within the generator components

* add alternative background to web generator dialog

* remove unneeded margin from username generator

* remove disable margin from div

* Revert "remove unneeded margin from username generator"

This reverts commit ae3067e3f2.

* remove CSS to alter internal margins of the generator components
2024-10-04 08:39:29 -05:00
Shane Melton
0d877c4e77 [PM-12389] Combined web vault item dialog (#11345)
* [PM-12389] Cleanup attachment dialog UI bugs

* [PM-12389] Add formReady event to CipherForm

* [PM-12389] Use ngOnChanges for CipherView component initialization

* [PM-12389] Cleanup web specific services and components

* [PM-12389] Introduce combined Vault Item Dialog component

* [PM-12389] Use the new VaultItemDialog in the Individual Vault

* [PM-12389] Deprecate the AddEditV2 and View dialogs in Web

* [PM-12389] Fix failing test

* [PM-12389] Fix broken imports after move

* [PM-12389] Remove messages.json addition that is taken care of in another PR
2024-10-02 14:34:46 -07:00
Alec Rippberger
f8ccf0cfb8 [PM-12553][Defect] Delete Attachment button needs hover state. (#11339)
* Remove tw-border-none class from delete button.

* Add transparent border
2024-10-01 11:48:59 -05:00
Alec Rippberger
b54ec7a204 Remove left padding from attachments list. (#11275) 2024-09-30 13:00:46 -05:00
Jonathan Prusik
e88e231d48 [PM-11588] Bugfix - parse user input value for combined expiry date when creating/adding a card cipher (#11103)
* simplify logic and fix some pattern-matching bugs

* add first pass at parsing combined expiry year and month from user input

* clean up code

* fix broken three-digit parsing case

* fix case where splitCombinedDateValues returns empty strings when the input is only a delimiter

* fix incorrect expectation of falsy negative integers

* clean up code

* split out logic from parseYearMonthExpiry

* move utils from vault to autofill
2024-09-24 10:36:44 -04:00
SmithThe4th
0db179e974 [PM-739] Using a space at the beginning of otpauth:// generate a wrong OTP (#11204)
* Trimmed tariling whitespace from totp field

* Trimmed tariling whitespace from totp field

* Fix failing test
2024-09-23 16:45:53 -04:00
Nick Krantz
c13131acd1 remove border styles, allow for component library to style the icon button (#11154) 2024-09-20 08:45:44 -05:00
Alec Rippberger
931f86c948 [PM- 9666] Implement edit item view individual vault (#10553)
* Add initial vault cipher form for cipher edit.

* Add ability to add new cipher by type

* Add ability to save and clone cipher,

* Update canEditAllCiphers to take 1 argument.

* Add attachments button to add/edit dialog.

* Add semi-working attachment dialog.

* Add working attachment functionality.

* Remove debugging code.

* Add tests for new attachments dialog component.

* Add AddEditComponentV2 tests.

* Remove AddEditComponentV2 delete functionality.

* Remove unnecessary else statement.

* Launch password generation in new dialog when extension refresh enabled.

* Add tests for PasswordGeneratorComponent.

* Adjust password and attachments dialog sizes.

* run lint:fix

* Remove unnecessary form from button.

* Add missing provider in test.

* Remove password generation events.

* Add WebVaultGeneratorDialogComponent and WebCipherFormGenerationService

* Move and rename CipherFormQueryParams

* Use WebCipherFormGenerationService to launch password / user generation modals.

* Add WebVaultGeneratorDialogComponent tests.

* Remove unnecessary functionality and corresponding tests.

* Fix failing tests.

* Remove unused properties from AddEditComponentV2

* Pass CipherFormConfig to dialog.

* Clean up unused attachment dialog functionality.

* Update AddEdit cancel functionality to prevent navigating user.

* Make attachment dialog open a static method.

* Add addCipherV2 method and clean up tests.

* Remove changes to QueryParams.

* Add tests for WebCipherFormGenerationService

* Remove unused onCipherSaved method.

* Remove cipherSaved event.

* Remove unused password generator component

* Refactor to simplify editCipherId for extensionRefresh flag.

* Add additional comments to AddEditComponentV2.

* Simplify open vault generator dialog comment.

* Remove unused organizationService

* Remove unnecessary typecasting.

* Remove extensionRefreshEnabled and related.

* Remove slideIn animation

* Remove unused AddEditComponentV2 properties.

* Add back generic typing.

* Condesnse properties into single form config.

* Remove onDestroy and related code.

* Run prettier

* fix injection warning

* Handle cipher save.

* Redirect to vault on delete and make actions consistent.

* Update comment.
2024-09-18 12:48:47 -05:00
Shane Melton
99ba56785d [PM-11393] Remove the need for TotpCaptureService in Autofill Options View component (#11093) 2024-09-17 13:15:11 -07:00
Nick Krantz
26f3dcfc66 add back events for browser refresh extension (#11085)
- something went sideways in a merge
2024-09-16 14:02:20 -05:00
Nick Krantz
a31ecb18a1 [PM-11267] Extension Refresh Events (#10832)
* add `Cipher_ClientViewed` event to browser refresh components

* add `Cipher_ClientToggledPasswordVisible` event to browser refresh components

* add `Cipher_ClientToggledHiddenFieldVisible` event to browser refresh components

* add `Cipher_ClientToggledCardCodeVisible` event to browser refresh components

* add `Cipher_ClientToggledCardNumberVisible` event to browser refresh components

* add `Cipher_ClientToggledTOTPSeedVisible` event to browser refresh components

* add `Cipher_ClientCopiedPassword` event to browser refresh components

* add events for copying cipher fields from the vault menu

* add `Cipher_ClientCopiedHiddenField` event to browser refresh components

* add mock for tests

* add missing `Cipher_ClientCopiedCardCode` event

* remove the need for separate fields input

* add organization id to event collection so events are collected

* update test

* add event collection service to cipher form stories
2024-09-12 14:47:23 -05:00
Nick Krantz
7dcfaf8271 add title for attachment name (#10908)
- adds the ability for a user to see the attachment name while hovering over it
2024-09-05 14:41:39 -05:00
Jonathan Prusik
5f2eecd7be [PM-11350] Use shared expiration year normalization util function (#10735)
* use shared expiration year normalization util function

* use shared exp year normalization in web and desktop client

* handle cases where input has leading zeroes

* add utils tests

* handle cases where input is all zeroes
2024-09-03 15:12:36 -04:00
Shane Melton
fbf9c5abfa [PM-10993] Browser Refresh - Fix duplicate password generation emissions in Firefox (#10704)
* [PM-10993] Avoid saving the generation options to state when toggling the password type

* [PM-10993] Fix tests
2024-08-26 12:05:22 -07:00
Shane Melton
9e093f88af [PM-10247] Browser Refresh - Fix save credential banner (#10520)
* [PM-10247] Prioritize initialValues when initiating the CipherForm child forms

* [PM-10247] Fetch the addEditCipherInfo when opening the cipher form in Browser and override any initialValues if present

* [PM-10247] Fix item details section tests

* [PM-10247] Add login details section test

* [PM-10247] Add autofill options tests

* [PM-10247] Undo webpack config change

* [PM-10247] Fix failing tests

* [PM-10247] Add additional tests for addEditCipherInfo
2024-08-26 12:03:47 -07:00
SmithThe4th
dedd7f1b5c [PM-10607] Require userId for getKeyForCipherKeyDecryption (#10509)
* updated cipher service to stop using the deprecated getUserKeyWithLegacySupport and use the version that requires a user id

* Added account service mock

* fixed cipher test

* Fixed test

* removed async from encryptCipher

* updated encryptSharedCipher to pass userId to the encrypt function

* Pass userId to getUserKeyWithLegacySupport on encryptSharedCipher

* pass in userid when setting masterKeyEncryptedUserKey

* Added activer usedId to new web refresh function
2024-08-20 11:00:48 -05:00
Victoria League
ed719f835a [CL-389] Add end slot to non-text bit label content (#10457) 2024-08-20 11:55:11 -04:00
Will Martin
7571c766e0 [PM-10813] add eslint rule to restrict imports from apps in libs (#10481)
* restrict app imports in libs

* add eslint ignore comments
2024-08-14 11:24:29 -07:00
Shane Melton
a1d94233e3 [PM-10761] Fix broken text for screen readers (#10490) 2024-08-13 15:51:34 -07:00
Shane Melton
fe9d44af6d [PM-10721] Autofill section styles fixes (#10454)
* [PM-10721] Remove autofill section title hyphen

* [PM-10721] Use h6 styling for header

* [PM-10721] Fix spacing for match detection select
2024-08-13 10:16:53 -07:00
Shane Melton
f017edb088 [PM-10651] Use bitLink instead of icon button and add a11y title (#10483) 2024-08-13 10:15:14 -07:00
Shane Melton
b3474fe101 [PM-9595] Fix owner / folder selects expanding out of container (#10493) 2024-08-13 09:26:13 -07:00
Shane Melton
7ad42ae18b [PM-9190] Browser Refresh - Autofill section fixes (#10488)
* [PM-10751] Add count to website URI label

* [PM-10752] Hide autofill on page load field when the setting is disabled

* [PM-10790] Fix bottom margin
2024-08-13 08:58:16 -07:00
Jason Ng
bca619d0a4 [PM-7900] Login Credentials and Autofill Browser V2 View sections (#10417)
* Added sections for Login Credentials and Autofill Options.
2024-08-08 13:52:45 -04:00
Shane Melton
600c8de129 [PM-10100] Remove auto password generation (#10355)
* [PM-10100] Remove initial password generation on new Login ciphers

* [PM-10100] Update password help text

* [PM-10100] Fix linter
2024-08-07 12:57:05 -07:00
Shane Melton
041cd87e7e [PM-9675] Browser Refresh Login - Generator dialog (#10352)
* [PM-9675] Introduce CipherFormGenerator component

* [PM-9675] Introduce VaultGeneratorDialog component for Browser

* [PM-9675] Introduce BrowserCipherFormGeneration Service

* [PM-9675] Fix aria label on popup header

* [PM-9675] Cleanup html

* [PM-9675] Cleanup vault generator dialog spec file
2024-08-07 12:02:33 -07:00
Nick Krantz
334393ff16 decrease headings within browser extension to h6 styling (#10383) 2024-08-05 13:06:55 -05:00
Shane Melton
0d76835cd8 [PM-9190] Edit Login - Autofill Options (#10274)
* [PM-8524] Update appA11yTitle to keep attributes in sync after first render

* [PM-8524] Introduce UriOptionComponent

* [PM-9190] Introduce AutofillOptionsComponent

* [PM-9190] Add AutofillOptions to LoginDetailsSection

* [PM-9190] Add autofill options component unit tests

* [PM-9190] Add UriOptionComponent unit tests

* [PM-9190] Add missing translations

* [PM-9190] Add autofill on page load field

* [PM-9190] Ensure updatedCipherView is completely separate from originalCipherView

* [CL-348] Do not override items if there are no OptionComponents available

* [PM-9190] Mock AutoFillOptions component in Login Details tests

* [PM-9190] Cleanup storybook and missing web translations

* [PM-9190] Ensure storybook decryptCipher returns a separate object
2024-08-01 08:35:04 -07:00
SmithThe4th
0bbbe5e139 [PM-9825] Remove margin from last field in section (#10315)
* Added disableMargin to the last field in a section

* simplified disableMargin input
2024-07-29 16:42:27 -04:00
Alec Rippberger
6b8f60792e Count and display invalid fields in toast. (#10249) 2024-07-29 15:33:29 -05:00
Shane Melton
ad01a529e8 [PM-9959] [PM-9962] Browser Refresh - Passkey Fixes (#10299)
* [PM-9959] Expose Fido2SessionData interface

* [PM-9959] Ensure cipherType is passed during passkey creation

* [PM-9959] Add beforeSubmit hook to cipherForm

* [PM-9959] Add support for Fido2 credential creation in add-edit-v2

* [PM-9959] Ensure cipherType defaults to CipherType.Login if none is available

* [PM-9959] Add support for name and username to be passed in as query params for initial form values

* [PM-9962] Hide remove passkey button when cipher has "except passwords" permissions
2024-07-29 08:13:56 -07:00
renovate[bot]
b9eb4003a1 [deps] Autofill: Update prettier to v3.3.3 (#10228)
* [deps] Autofill: Update prettier to v3.3.3

* prettier formatting changes

* fix SyntaxError for literal @ inline html

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com>
2024-07-25 11:11:55 -04:00
Shane Melton
f4023762a8 [PM-9190] Use updateFn for patchCipher so that the current CipherView is available for context (#10258) 2024-07-25 07:50:39 -07:00
Jason Ng
7a22afcae3 PM-9924 add middle name field to Identity Edit Page (#10252) 2024-07-24 15:28:27 -04:00