Commit Graph

1862 Commits

Author SHA1 Message Date
Rui Tomé e6fce421f5
[PM-10324] Add bulk delete option for organization members (#11892)
* Refactor organization user API service to support bulk deletion of users

* Add copy for bulk user delete dialog

* Add bulk user delete dialog component

* Add bulk user delete functionality to members component

* Refactor members component to only display bulk user deletion option if the Account Deprovisioning flag is enabled

* Patch build process

* Revert "Patch build process"

This reverts commit 917c969f00.

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-14 15:49:16 +00:00
✨ Audrey ✨ 642b8d2e6b
[PM-14838] upgrade generator account storage to ObjectKey storage (#11975) 2024-11-14 10:09:59 -05:00
cyprain-okeke 2e6d98938a
[PM-13868]Remove Upgrade password manager flag (#11789)
* Remove the feature flag

* Add the feature flag reference
2024-11-14 15:57:54 +01:00
Brandon Treston 0cfe18ac4d
[PM-13829] Add check for empty array when deleting unassigned items (#11927)
* add check for empty array

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-13 14:34:43 -05:00
rr-bw 204eb3105b
update anon-layout and extension-anon-layout spacing (#11869) 2024-11-13 10:17:23 -08:00
rr-bw 7ef1d01401
[PM-13822] Password Hint UI tweaks (#11867)
* update env selector label

* update icon colors

* re-upload SVG with viewBox and correct classes
2024-11-13 09:46:58 -08:00
Daniel James Smith e341a66a2e
Add autofocus to search field on Send page (#11979)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-13 15:15:48 +01:00
Daniel James Smith 913f109ffa
Fix totp import on Dashlane csv importer (#11747)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-13 15:11:53 +01:00
Alex Morask 88cbee9b0a
Remove consolidated billing feature flag (#11969) 2024-11-13 09:01:22 -05:00
cyprain-okeke 24ca942cd6
[PM-14861]Vault items fail to load (#11974)
* Resolve the vault items fail to load

* Remove the hasSubscription

* Replace with hasSubscription from metadata

* Resolve the failing popup
2024-11-13 13:28:40 +01:00
Jason Ng 9ec6f45803
[PM-8682] Add Flags for New Device Verification Notice (#11968) 2024-11-12 12:56:25 -05:00
SHASHI KUMAR KASTURI aa04d84c11
[PM-14627] Import TOTP with ZohoVault CSV importer (#11912)
* totp secret is assigned to cipher object in zohovalut-csv-importer to populate when importing keys from zoho vault fixes #11872 closes #11872

* fixed issue#11872

* assigned full totp url to cipher object and also implemented unit tests for zohovault importer

* Add test to when no data is passed to the importer

* Fix import of folders

- Replace "Chambername" with "Folder Name"
- Add tests for importing folders and collections

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-11-12 18:47:25 +01:00
Daniel James Smith ac0e008e3c
[PM-8506] Create importer for csv-export from Netwrix Password Secure (#9446)
* Create an importer for csv-export from Netwrix Password Secure

* Wire the new importer into the clients

* Add instructions to export from Netwrix Password Secure

* Mark method as private

* Remove line which disables linting

* Add docs to importer

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-12 16:07:42 +01:00
Shane Melton 96c9e3f92f
[PM-14418] Add security-tasks feature flag (#11962) 2024-11-11 16:07:30 -05:00
✨ Audrey ✨ ba82a31851
[PM-14001] do not store last value when it is 0 (#11964) 2024-11-11 15:43:50 -05:00
Lorenz Brun 6d89c0f157
fido2-utils: fix BufferSource conversions (#11784)
The original implementation of bufferSourceToUint8Array was incorrect as
it did not consider that TypedArray instances represent a view of the
underlying ArrayBuffer which does not necessarily cover the entire
backing ArrayBuffer. This resulted in the output of this function
containing data which would not be logically contained in the input.

This was partially fixed by #8787 for the common case of the input
already being an Uint8Array, but it was still broken for any other
TypedArrays. But #8222 introduced another copy of the original broken
code, breaking the Uint8Array case again.

Fix this once and hopefully for the last time with a correct
implementation of bufferSourceToUint8Array and using that in the
appropriate places instead of open-coding it. In addition there are now
tests which exercise most edge cases with regards to ArrayBuffer and
TypedArrays.
2024-11-11 14:54:36 -05:00
✨ Audrey ✨ a5294bed3d
[PM-12338] fix length hint on passphrase num words field (#11963) 2024-11-11 14:23:02 -05:00
cyprain-okeke f593269133
[PM-8161] Payment optional trial MVP (#10872)
* Initial comment

* Add changes for the create org with payment method

* Add the secrets manager trail flow

* Add the banners

* Add changes for the Disabled Org

* Add banner to payment method page

* Refactoring changes

* Resolve the bug on tha payment method

* Resolve lint error

* Resolve Pr comments

* resolve the lint issue

* Resolve the lint wrong file issue

* Rename object properly

* Resolve pr comments from sm team

* Resolve the pr comments from sm team

* Fix the failing test

* Resolve some issue with vault

* Resolve the comments from sm team

* Resolve some pr comments from vault team

* Resolve pr comments from auth team

* Exported ValidOrgParams enum

* Removed unnecessary interpolation

* Corrected bit-banner id for trial

* Resolve pr comments from auth team

* Resolve pr comments from auth team

* Removed unnecessary method

* Made OrganizationCreateRequest a subtype of OrganizationNoPaymentMethodCreateRequest

* Resolve review changes from sm

* Resolve review changes from dm

* Resolve the pr comments from billing

* move the free-trial to core

* Move free-trial change to right file

* Revert changes on the free trial  page

* Resolve the comment on protected trial page

* Resolve the comment on protected trial page

* Revert the next async change

* resolve pr comment fro vault team

* resolve the default message comments

* remove unused method

* resolve email sending issue

* Fix the pop issue on payment method

* Fix some console errors

* Fix the pop refresh page

* move the trial services to billing folder

* resolve pr comments

* Resolve the import issues

* Move the observable up

* Resolve blank payment method for trialing org

* Changes to  disable icon is removed onsubmit

* Remove unused references

* add a missing a period at the end of it

* resolve the reload issue

* Resolve the disable icon issue

* Fix the admin access bug

* Resolve the lint issue

* Fix the message incorrect format

* Formatting fixed

* Resolve the access issue of other users role
2024-11-11 17:05:37 +01:00
✨ Audrey ✨ 888b9e346c
fix length allowing negative values on Chrome extension (#11926) 2024-11-11 16:48:32 +01:00
Jonas Hendrickx 2bbe4d2cba
[PM-13470] Allow creating clients for multi-org providers (#11890) 2024-11-11 07:57:09 +01:00
Rui Tomé 1f0c1f1b44
[PM-10318] Add organization user deletion and leaving events to EventService (#11554) 2024-11-08 11:23:24 +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
Jordan Aasen d69642e7a0
[PM-14468] - add feature flag for critical apps (#11871)
* rename acess intelligence to risk insights

* keep branch name

* replace all instances of AccessIntelligence. strip raw data + members to just the table

* revert change to feature flag name

* add feature flag for critical apps

* change flag name

* Update libs/common/src/enums/feature-flag.enum.ts

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-11-07 16:39:15 -08:00
Daniel James Smith b23d62a280
[PM-14183] Show success toast on copy history value (#11911)
* Remove unnecessary copy icon

* Fix styling of copy success toast
- Use CopyClick directive instead of manually copying and showing the toast
- Adjust tests

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-07 15:28:32 -08:00
Victoria League e8dac0cc12
[CL-500] Add disclosure component and directive (#11865) 2024-11-07 16:54:49 -05:00
Todd Martin f9098558a6
Update Is-Prerelease header to be integer instead of string (#11909) 2024-11-07 16:00:48 -05:00
✨ Audrey ✨ b2811e07ce
[PM-14198] zero minimums when the character category is disabled (#11906) 2024-11-07 21:23:01 +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
SmithThe4th faf7e3d315
[PM-11201][CL-507] Add the ability to sort by Name, Group, and Permission within the collection and item tables (#11453)
* Added sorting to vault, name, permission and group

Added default sorting

* Fixed import

* reverted test on template

* Only add sorting functionality to admin console

* changed code order

* Fixed leftover test for sortingn

* Fixed reference

* sort permissions by ascending order

* Fixed bug where a collection had multiple groups and sorting alphbatically didn't happen correctly all the time

* Fixed bug whne creating a new cipher item

* Introduced fnFactory to create a sort function with direction provided

* Used new sort function to make collections always remain at the top and ciphers below

* extracted logic to always sort collections at the top

Added similar sorting to sortBygroup

* removed org vault check

* remove unused service

* Sort only collections

* Got rid of sortFn factory in favour of passing the direction as an optional parameter

* Removed tenary

* get cipher permissions

* Use all collections to filter collection ids

* Fixed ascending and descending issues

* Added functionality to default sort in descending order

* default sort permissions in descending order

* Refactored setActive to not pass direction as a paramater
2024-11-07 10:10:15 -05:00
Daniel James Smith 872f36752f
[PM-13876] Generator PR review follow up (#11885)
* Remove unused regex

* Remove viewChild reference from markup

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-07 09:03:54 -05:00
Alec Rippberger f5e6fc8ed5
[PM-5237] Clients, Self Hosted: Login - Hide "Create account" when registration disabled (#11811)
* Add server settings model and service.

* Inject ServerSettingsService into the login-secondary-content component.

* Fix merge conflict

* Add server settings to old views

* Remove server settings from desktop/mobile

* Cleanup unused code

* Remove changes to default config

* Conditionally show/hide HR element

* Add tests

* PM-5237 - Move ServerSettingsService to jslib-services.module so it is the same across all clients and to solve NullInjectorErrors on desktop & browser extension

* Remove change to v1 components

* Rename ServerSettingsService to DefaultServerSettingsService

* Remove unnecessary map call

* Remove server interface in favor of using ServerSettings class

* Add back HR element

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-11-06 17:57:07 -05:00
Alec Rippberger 1afb2f7769
Wrap login component email and MP entry states with invisible divs (#11884)
- Allows autofill to fill both email and password
2024-11-06 15:38:17 -06:00
Brandon Treston 2c5221d3aa
Allow deletion for items with no collectionId(s) (#11825) 2024-11-06 14:23:36 -05:00
Alec Rippberger 619651ca55
[PM-13818] Allow user to edit self-hosted url during registration (#11790)
* Trigger self hosted settings dialog on select close

* Simplify triggering self hosted env config dialog

* Always emit selected value

* Update variable naming of lastSelectedValue to userSelectedValue to better reflect purpose

* Add comment for userSelectedValue variable

* Remove userSelectedValue and simply emit a closed event

* Remove passing selectedRegion in closed event
2024-11-06 13:17:59 -06:00
Alec Rippberger 5a288b97db
[PM-14454] Add bit-menu-panel and bitmenuitem to environment selector dropdown (#11866)
* Add bit-menu-panel class and bitmenuitem attribute

* Add data-testids instead of class/attributes
2024-11-06 11:23:38 -06:00
✨ Audrey ✨ 414bdde232
[PM-13876] replace angular validation with html constraints validation (#11816)
* rough-in passphrase validation failure handling

* trigger valid change from settings

* fix `max` constraint enforcement

* add taps for generator validation monitoring/debugging

* HTML constraints validation rises like a phoenix

* remove min/max boundaries to fix chrome display issue

* bind settings components as view children of options components

* remove defunct `okSettings$`

* extend validationless generator to passwords

* extend validationless generator to catchall emails

* extend validationless generator to forwarder emails

* extend validationless generator to subaddress emails

* extend validationless generator to usernames

* fix observable cycle

* disable generate button when no algorithm is selected

* prevent duplicate algorithm emissions

* add constraints that assign email address defaults
2024-11-06 17:54:29 +01:00
Nick Krantz d5139e0511
change totp code to monospace font (#11844) 2024-11-06 09:42:53 -06:00
cyprain-okeke f33661c31c
[PM-11505]Delete the feature flag PM-5864-dollar-threshold (#11436)
* remove the time threshold flag

* Remove the time threshold flag
2024-11-06 16:05:22 +01:00
Jared Snider b5450227da
PM-14424 - LoginComponents should listen for unauthUiRefresh flag changes and forcibly change the UI on browser & desktop to make for a seamless experience without having to refresh. (#11830) 2024-11-05 14:02:51 -05:00
Justin Baur 1e2a51a56b
Reverse Arguments (#11870) 2024-11-05 13:55:31 -05:00
Todd Martin eb95d437a8
[PM-13804] Add new Is-Prerelease header to requests (#11605)
* Added new Is-Beta header

* Updated beta to prerelease
2024-11-05 12:01:29 -05:00
Nick Krantz adcd5bd307
hide ownership view when viewing a cipher in the admin console (#11852) 2024-11-05 10:09:16 -06:00
Justin Baur f41365ce48
[PM-13673] Require UserId In CompareHash Method (#11568)
* Require UserId In CompareHash Method

* Throw on null-ish 'masterKey'

* Update Test
2024-11-04 15:11:59 -05:00
Oscar Hinton cd79457349
[PM-4347] Upgrade angular to 17 (#11031)
Upgrade angular to 17
2024-11-04 11:51:43 -05:00
Rui Tomé d669d2003f
[PM-10323] Add delete option to managed members (#11655)
* Add managedByOrganization property to OrganizationUserUserDetailsResponse and OrganizationUserView

* Add managedByOrganization property to OrganizationUserDetailsResponse and OrganizationUserAdminView

* Add deleteOrganizationUser method to OrganizationUserApiService

* Add copy strings for organization user delete dialog

* Add copy string for organization user deleted toast

* Add delete organization user dialog component

* Add the option to delete managed organization users from the members list

* Refactor delete user confirmation dialog in MembersComponent to use DialogService

* Delete DeleteOrganizationUserDialogComponent

* Refactor delete button in member dialog component to change the icon and tooltip text to 'Remove'

* Add delete button to members dialog if the user is managed by the organization
2024-11-04 16:19:30 +00: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
Todd Martin a049b553a6
Update decryptUserKeyWithMasterKey to requireUserId (#11560)
* Updated decryptUserKeyWithMasterKey to requireUserId

* Removed unintended extra character.

* Added dependency to LogService.

* Fixed unlock command.
2024-11-01 11:21:18 -04:00
Thomas Rittson 4a2c14dc2e
[PM-14161] Add getById and getByIds rjxs helpers (#11742) 2024-11-01 09:49:31 +10:00
Jonathan Prusik eba1212e1c
[PM-14351] Migrate away from theme enum (#11812)
* update extension autofill concerns to use theme object and type over enum

* mark ThemeType enum as deprecated

* update theming service concerns to use theme object and type over enum
2024-10-31 16:46:25 -04:00
Jordan Aasen e00f22879c
[PM-13947] - guard against call to undefined onSubmit (#11795)
* guard against call to undefined function

* revert input optional
2024-10-31 09:34:26 -07:00
Alex Morask 36b18c3e59
[PM-14275] Resolve reseller & CB MSP organization owner experience for subscription page (#11797)
* Fixed issue with Resellers and CB MSP Org Owners on subscription page

* Hide billing sync from Families
2024-10-31 11:05:05 -04: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
Oscar Hinton 5e157c5bca
[PM-14180] Provide more debugging details in wasm-debug (#11771)
Improve error logging to include some additional information about the error.
2024-10-31 10:07:55 +01:00
Jared Snider 4de7cb8012
BEEEP - Auth AccountService Improvements (#11779)
* BEEEP Adjacent - AccountService misc improvements - (1) prefer null over undefined and (2) add new Account type

* LockCompV2 - Fix activeAccount type per PR feedback

* AccountService - update getUserId per PR feedback.
2024-10-30 17:54:39 -04:00
Jordan Aasen 18f7d64a6d
[PM-14038] - priority applications UI (#11723)
* priority applications UI

* add security icon
2024-10-30 14:25:06 -04:00
Bernd Schoolmann 912ff886bc
[PM-12806] Fix minimum KDF validation (#11786)
* Fix minimum KDF validation

* Add better error messages

* Fix tests

* Fix tests
2024-10-30 17:35:15 +01:00
✨ Audrey ✨ 8af0b6e380
[PM-14190] Replace history card with item component (#11775) 2024-10-30 09:43:18 -04:00
Andreas Coroiu 021efa2c90
Document `firstValueFrom` not being supported (#11769) 2024-10-29 16:00:02 +01:00
Thomas Rittson 3736f6854c
Add getUserId and getOptionalUserId rxjs functions (#11741) 2024-10-29 09:51:03 +10:00
Alec Rippberger 9da80a6cba
[PM-8115] Desktop, Extension UI Refresh: Self-hosted Setup Dialog (#11597)
* Reimplement RegistrationSelfHostedEnvConfigDialogComponent

* Update EnvironmentSelectorComponent text based on feature flag.

* Initialize RegistrationSelfHostedEnvConfigDialog with existing values if self hosted

* Cleanup debug

* Add comment

* Remove changes to home and login components

* Remove changes to desktop login component

* Remove changes to browser home component

* Simplify accessing string.

* Add environment selector service.

* Cleanup unused imports in environment-selector

* Launch new env selector dialog from desktop

* Fix lint errors

* Address PR feedback: move dialog component, remove EnvironmentSelectorService, remove unused translation string

* Remove changes to AnonLayout

* PM-8115 - Export Re-usable component from Libs/auth for clean import elsewhere in clients.

* Remove unused accessingString variable

* Add success toast

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-10-28 16:12:57 -05:00
✨ Audrey ✨ 9a83509183
add boundary help text to credential settings (#11757) 2024-10-28 15:55:16 -04:00
Jordan Aasen b5e509409b
fix remove password icon (#11752) 2024-10-28 20:27:59 +01:00
✨ Audrey ✨ a9d667900f
colorize password history (#11754) 2024-10-28 15:19:17 -04:00
✨ Audrey ✨ 71db154856
default subaddress email to active account email (#11755) 2024-10-28 15:18:57 -04:00
Alec Rippberger a3375dd5b8
Show master password error inline (#11740) 2024-10-28 11:30:20 -05:00
Jared McCannon 53f13f4ea5
[PM-10314] Update Warnings for Verifying Domains and Single Org Policy Auto Enable (#11688)
* Updated description and warning for single org policy.

* Added check for verified domains in disabling single org.
2024-10-28 11:00:39 -05:00
Daniel García 65074b0d12
Initialize SDK even when orgKeys is null (#11748) 2024-10-28 14:52:45 +01:00
Jordan Aasen 2e3ad82b60
fix icon placement in password input (#11720) 2024-10-28 10:20:55 +01:00
Jordan Aasen e3f9035564
[PM-14022] - change send link to disabled (#11721)
* change send link to disabled

* change send link to disabled
2024-10-28 10:17:15 +01:00
Thomas Rittson 903c215867
Fix vNextCollectiuonService tests (#11739) 2024-10-28 13:02:57 +10:00
Thomas Rittson d0ed9aaa5d
[PM-13779] Add vNext CollectionService without ActiveUserState (#11705)
- add tests
- install jest-extended for additional matchers
- allow for generation of different crypto keys in tests
2024-10-28 10:13:32 +10:00
Bernd Schoolmann e83dca529b
[PM-12607] Move key rotation to km ownership (#11709)
* Move key rotation to km ownership

* Fix build

* Move userkey rotation data provider abstraction to km ownership

* Move userkey rotation data provider abstraction to km ownership

* Fix linting

* Fix CODEOWNERS for key-management web

* Remove incorrect export

* Fix import error
2024-10-26 13:47:40 +02:00
✨ Audrey ✨ c780cbc77e
use `valueLabel` with `appCopyClick` directive (#11718)
* add `valueLabel` to `appCopyClick` directives 
* move generated value description to the configuration
2024-10-25 23:43:49 +02:00
Jordan Aasen ad7fa71e76
[PM-13931] - UI - All applications report table (#11678)
* add remaining components to access intelligence page

* Revert "add remaining components to access intelligence page"

This reverts commit cb8e826656.

* add remaining access intelligence table components
2024-10-25 13:04:36 -07:00
Daniel James Smith 10a662cc35
[PM-14002] Fix username generator from vault item (#11714)
* Fix "Forwarded email alias" not showing in drop-down

* Fixed username and forwarder options not showing
Options were being translated twice

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-25 12:15:48 -04:00
Jared Snider fa537638bf
Auth/PM-13945 - Extension - Fix TDE User with MP can't navigate to Lock Screen (#11700)
* PM-13945 - Extension Refresh redirects should persist query params as we use query params to execute guard logic (e.g., lockGuard). The loss of the from: login-initiated query param prevented navigation to the lock screen.

* PM-13945 - Test updated
2024-10-25 11:29:48 -04:00
Daniel James Smith 3b82a82416
[PM-13658] Update copy of password history to generator history (#11710)
* Update copy from password history to generator history

* Update copy on empty state

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-25 11:04:39 -04:00
Bernd Schoolmann 122c3c7809
Add context to logs for decryption failures (#11684)
* Add logging to decryption routines

* Fix case of uknown encryption type

* Add decryption context to log where failures occur

* Update log message

* Fix linting

* Add more context logs

* Add more fine grained logging

* Update log message

* Fix tests
2024-10-25 15:22:30 +02:00
Jordan Aasen adabc59c03
show New password after removing a password (#11697) 2024-10-25 13:33:04 +02:00
Thomas Rittson 55cd435279
[PM-13790] Remove RefactorOrganizationUserApi feature flag (#11662) 2024-10-25 10:16:59 +10:00
Jared Snider 877d379f86
Auth/PM-8111 - LoginComponent Refactor Bug - Fix Extension SSO (#11699)
* PM-8111 - LoginComponent Refactor - I broke the browser SSO flow - fixing it as clientId doesn't persist unless it is in state qParam.

* PM-8111 - Fix DefaultLoginComponentService tests
2024-10-24 19:02:10 -04:00
Jared Snider 1fb1be56b3
Auth/PM-12613 - Registration with Email Verification - Provider Invite Flow (#11635)
* PM-12613 - AcceptProviderComp - Add support for new registration with email verification flow.

* PM-12613 - AcceptProviderComp - Reduce required params for finish registration to minimum

* PM-12613 - RegistrationFinish - Add passthrough logic for provider invite token

* PM-12613 - Update DefaultRegistrationFinishService finishRegistration tests to assert that all web only inputs are undefined on the outgoing request model

* PM-12613 - DefaultRegistrationFinishService - finishRegistration - Add missed mapping of optional properties into buildRegisterRequest

* PM-12613 - WebRegistrationFinishService - Add tests for additional token flows.
2024-10-24 17:21:06 -04:00
Shane Melton a0fe4f4ca6
[PM-13892] Browser Refresh - Organization item clone permission fix (#11660)
* [PM-13892] Introduce canClone$ method on CipherAuthorizationService

* [PM-13892] Use new canClone$ method for the 3dot menu in browser extension

* [PM-13892] Add todo for vault-items.component.ts
2024-10-24 14:12:04 -07:00
rr-bw df8f234b9e
[PM-8111] Browser Refresh: LoginComponent (#10856)
* setup new LoginComponent files in libs/auth

* update pageTitle

* handle loading email settings

* setup web-login.service.ts

* implement web onInit

* fill out webOnInit

* refactor getOrgPolicies call

* update import

* add validateEmail logic

* handle registerRoute

* add showPasswordless flag

* handle captcha

* handle startAuthRequestLogin()

* add handleMigrateEncryptionKey to default and web service

* handle submit routing (web)

* fix typo

* incorporate loginEmailService changes

* minor updates to comments for clarity

* create a defaultOnInit()

* update defaultOnInit()

* handle master password input focus

* handle post-login routing on Browser/Desktop

* handle browser/desktop syncService

* handle browser ngOnInit

* handle browser routing and basic browser template

* setup desktop router

* add template for desktop first UI state: email entry

* rename 'response' to 'authResult'

* refactor handleMigrateEncryptionKey()

* refactor captcha methods and add return types

* refactor submit logic

* refactor submit logic further to use if statements with returns instead of if...else if...else

* remove toast error on invalid form for Browser/Desktop

* refactor to handleAuthResult() method

* refactor webOnInit

* add comment to revisit ngOnInit logic

* refactor handlCaptchaRequired()

* create a LoginSecondaryContentComponent for AnonLayout use

* minor formatting for consistency

* add clarifying comment to handleAuthResult()

* minor refactor to use destructuring

* setup desktopOnInit()

* add continue() method

* handle desktop ngOnDestroy()

* add clarifying comment regarding secondary content

* fill out desktop template and submit()

* add descriptive comment to top of HTML file

* refactor to use a uiState enum for UI states

* handle oss-routing swap

* handle registerRoute$ in secondary content

* web template modifications

* change email validation to only run on submit (or when clicking continue button)

* add dynamic anon-layout wrapper data

* remove static element ref

* desktop HTML template updates

* remove 'showPassword' property b/c now handled by bitPasswordInputToggle

* Extension: setup EmailEntry state UI

* Extension: setup MasterPasswordEntry state UI

* ensure full sync happens on all clients before navigation

* update icon stroke color

* change old components to V1

* remove 'V2' from new component

* update captcha iframe on all clients

* add browser redirect from /home to /login with FF on

* add todo comment regarding browser template

* add launchSsoBrowser to extension template

* move extension launchSsoBrowserWindow() to extension service

* cleanup & comments

* add launchSsoBrowserWindow() to default service

* setup launchSsoBrowserWindow() for Desktop

* refactor to use toastService

* remove unnecessary service injection

* rename LoginService to LoginComponentService to avoid confusion with the LoginStrategyService

* add jsdocs to LoginComponentService

* rename loginService prop to loginComponentService

* Add vault icon to anon layout.

* Prevent email address validation on blur.

* Fix comment typo.

* Prefill email field when "create account" is clicked.

* Use factory function to provide LoginEmailService.

* Add test for RegisterFormComponent.

* Remove back button todo.

* Consolidate clearing loginEmailService values and routing

* Remove unnecessary navigation.

* Fix client navigation after login.

* Consolidate login templates.

* Break up LoginComponent into client-specific services.

* Rename login.component to login-v1.component

* Rename login.component to login-v1.component

* Revert "Rename login.component to login-v1.component"

This reverts commit 9a277d6ca5.

* Revert "Rename login.component to login-v1.component"

This reverts commit 588a7af906.

* Rename login.component to login-v1.component except browser.

* Comment out debug code.

* Remove debug code.

* Rename login.component to login-v1.component for browser.

* Add login-with-passkey route to desktop.

* Set feature flag to false.

* Fix linting errors.

* Populate email on registration start form.

* Implement email population on all clients add add safeProviders.

* Remove comment re. passing email to registration.

* Add unauthUiRefreshRedirect utility function.

* Add transparent border.

* Merge main and add satisfies RouteDataProperties

* PM-8111 - Extension - AppRoutingModule - Home route now redirects conditionally based on unauthenticated ui refresh feature flag.

* PM-8111 - New Login Comp + Login Comp Svc - (1) Refactor naming and returns of getShowPasswordlessFlag to isLoginViaAuthRequestSupported (2) Replace showPasswordless with better composed variable names.

* PM-8111 - TODO cleanup

* PM-8111 - (1) Cleanup DefaultLoginComponentService (2) Sso Connector now checks client id property instead of reading it from state

* PM-8111 - Two TODO cleanups

* Remove specific client services.

* Add isLoginWithPasskeySupported function to reduce client type checking in template.

* Add styles missing from Browser to Create Account link.

* Confirmed inline form errors working and removing todo comments.

* Convert refactoring todo-rr-bw to standard todos.

* Add login component services tests.

* Cleanup formatting and remove unused provider.

* Add comment to explain call to setLoginEmail.

* Rearrange imports to fix lint error.

* Adjust styles for password hint link.

* Address PR feedback: use strict comparison.

* Ensure Login with Passkey button is shown by setting clientType.

* Update "continue" button from "submit" to "button" type.

* Ensure Passkey login available for web and desktop.

* Validate email on enter keypress.

* Use click event to trigger goToHint.

* Restructure handAuthResult to ensure we redirect to vault.

* Add await to saveEmailSettings function.

* Directly set clientType in individual login component services.

* Get clientType via service.

* Add back button.

* Remove hardcoded colors from Vault Icon

* Removing register component changes.

* Removing register component changes.

* Ensure isLoginWithPasskeySupported is only returns true for web client.

* Remove Web/Desktop comment from html template

* Update Storybook with initialLoginEmail

* Fix translation error

* Add test for unauthUiRefreshRedirect.

* Rename goAfterLogIn to evaluatePassword and borrow logic from lock component.

* Add DefaultLoginComponent tests.

* Integrate changes to translations.

* Simplify ngOnInit: remove webOnInit and move getLoginWithDevice to defaultOnInit

I couldn't find any usages of qParams.org or qParams.sponsorshipToken on QA (signing up for family membership, creating organization, manually modifying query params), so I think these are safe to remove.

* Fix translations.

* Clean up and flush out register form tests.

* Update variable name.

* Remove unused enforcedPasswordPolicyOptions property.

* Run prettier.

* Add back safeProviders for LoginEmailService

* Remove duplicate import.

* Update v1 web login title.

* Adjust overlay position of EnvironmentSelectorComponent for new layout.

Since the switcher is located at the bottom of the screen we need to position it up above the trigger button so that it is not cut off.

* Add new wave icon

* Only send email in query parameters if set.

* Remove test/debug code.

* Replace loggedEmail with this.emailFormControl.value.

* Move getLoginWithDevice call to loadEmailSettings.

* Replace loggedEmail with this.emailFormControl.value.

* Add todo comment re. inline errors.

* Remove unused setPreviousUrl function.

* Remove height / width from vault icon svg.

* Use continue method unanimously

* WIP remove validated email&  display extension back button

* Simplify getting query params

* Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject

* Simplify validateEmail method

* Hide back button on init

* Revert "Hide back button on init"

This reverts commit e8de5e2bfc.

* Revert "Simplify validateEmail method"

This reverts commit c9141a1cb5.

* Revert "Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject"

This reverts commit 8889ed3d3c.

* simplify validateEmail method

* Add primary / accent colors to wave icon

* Remove debug code

* PM-8111 - Tweak ShowBackButton to work

* PM-8111 - LoginCompService - finish removal of setPreviousUrl from implementations.

* PM-8111 - (1) Remove overriden default logo in anon layout (2) Update routing modules to have proper default login logo (3) LoginComp - update toggleLoginUiState to include logic to swap the icon back and forth as user navigates.

* PM-8111 - LoginComp - on UI state change from MP entry to email entry, remove subtitle (this isn't supported yet, but it will be)

* PM-8111 - LoginComp - Simplify toggleLoginUiState

* PM-8111 - LoginComponent - Add known device logic into UI state change handler

* PM-8111 - LoginComp - (1) Refactor name of getLoginWithDevice to be more accurate as getKnownDevice (2) Refactor calls to getKnownDevice to only occur if loginViaAuthRequestSupported

* PM-8111 - LoginComp - add getKnownDevice docs

* PM-8111 - LoginComponent - tweak docs

* PM-8111 - LoginComp - Continue() - remove toast as the validation on submit logic currently shows validation errors - toast is extra and not needed.

* Add isLoginViaAuthRequestSupported for DesktopLoginComponentService

* Remove validating email on init

* PM-8111 - ExtensionLoginComponentService - add tests for showBackButton

* PM-8111 - style tweaks

* PM-8111 - Extension - Refactor Overlay position to include extension default const to avoid repetition.

* PM-8111 - Desktop AppRouting Module - remove login with passkey route as it isn't supported on desktop.

* PM-8111 - Desktop - add default overlay position const

* PM-8111 - DesktopLoginCompSvc - tests were not actually testing super method calls + finish testing launchSsoBrowserWindow

* PM-8111 - Desktop Main.ts - remove dev test code

* PM-8111 - WebLoginCompSvcTests - add success test cases for getOrgPolicies

* PM-8111 - Remove duplicate translation keys

* PM-8111 - DefaultLoginComponentSvcTests - add missing test

* PM-8111 - DefaultLoginComponentServiceTests - add describes

* PM-8111 - LoginSecondaryContentComponent  - Add missing bitLink

* Update to test both browser and desktop

* Remove registration form test

* Remove aliasing CryptoFunctionService and PlatformUtilsService as abstractions

* Remove aliasing PlatformUtilsService and CryptoFunctionService as abstractions

---------

Co-authored-by: Alec Rippberger <alec@livefront.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Alec Rippberger <127791530+alec-livefront@users.noreply.github.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2024-10-24 15:53:34 -04:00
✨ Audrey ✨ 0254550b07
increase minimum number of words on passphrases to 6 (#11675) 2024-10-24 15:16:10 -04:00
Cesar Gonzalez da1e508c25
[PM-8833] Implement on page autofill menu for password generation (#11114) 2024-10-24 13:20:00 -05:00
Bernd Schoolmann 9264e6775c
Add logging for userkey / device trust rotation (#11682)
* Add logging for userkey rotation

* Fix tests
2024-10-24 19:54:39 +02:00
Shane Melton a9d9130f01
[PM-13907] [PM-13849] Browser Refresh - Improve launch login UX (#11680)
* [PM-13907] Move canLaunch logic to CipherView

* [PM-13907] Add external link icon to vault list items

* [PM-13907] Remove launch option from more options dropdown

* [PM-13849] Add double click to launch support
2024-10-24 10:51:38 -07:00
Bernd Schoolmann b486fcc689
[Pm-13097] Rename cryptoservice to keyservice and move it to km ownership (#11358)
* Rename cryptoservice to keyservice

* Rename cryptoservice to keyservice

* Move key service to key management ownership

* Remove accidentally added file

* Fix cli build

* Fix browser build

* Run prettier

* Fix builds

* Fix cli build

* Fix tests

* Fix incorrect renames

* Rename webauthn-login-crypto-service

* Fix build errors due to merge conflicts

* Fix linting
2024-10-24 19:41:30 +02:00
Rui Tomé 548abfe906
[PM-12758] Add managed status to OrganizationUserDetailsResponse, OrganizationUserUserDetailsResponse, OrganizationUserView and OrganizationUserAdminView (#11640)
* Add managedByOrganization property to OrganizationUserUserDetailsResponse and OrganizationUserView

* Add managedByOrganization property to OrganizationUserDetailsResponse and OrganizationUserAdminView

* Move response mapping from UserAdminService to method in OrganizationUserAdminView
2024-10-24 15:39:41 +01:00
Bernd Schoolmann b3b311e164
Add logging for decryption failures (#11683)
* Add logging to decryption routines

* Fix case of uknown encryption type

* Remove enum to string mapping
2024-10-24 15:43:49 +02:00
Cesar Gonzalez 9b471e6633
[PM-13715] Launching a website from the extension does not trigger an update to reference the correct autofill value (#11587)
* [PM-13715] Launching page from cipher does not set correct autofill action

* [PM-13715] Fix autofill not triggering for correct cipher after page has been launched from browser extension
2024-10-24 08:22:43 -05:00
✨ Audrey ✨ d5643f42b3
[PM-13723] track history in generator components (#11673)
* add history support to generator components
* increase generator history length
2024-10-23 21:38:26 +02:00
✨ Audrey ✨ a2a15d42d5
add test ids (#11674) 2024-10-23 20:58:49 +02:00
✨ Audrey ✨ 22be52d2f3
[PM-12303] fix password state spurious emissions (#11670)
* trace generation requests
* eliminate spurious save caused by validator changes
* fix emissions caused by setting bounds attrbutes
---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-23 14:23:28 -04:00
✨ Audrey ✨ a8299e7040
fix generate a11y binding (#11671) 2024-10-23 14:17:24 -04:00
Bernd Schoolmann 74dabb97bf
Move process reload ownership to key-management (#10853) 2024-10-23 19:05:24 +02:00
✨ Audrey ✨ eff9a423da
[PM-8280] email forwarders (#11563)
* forwarder lookup and generation support
* localize algorithm names and descriptions in the credential generator service
* add encryption support to UserStateSubject
* move generic rx utilities to common
* move icon button labels to generator configurations
2024-10-23 18:11:42 +02:00
Nick Krantz c4fcd53ad2
[PM-13776] Generator Icon Button labels (#11623)
* update aria labels for generate and copy buttons within the generator components

- Using the `appA11yTitle` across all icon buttons
- Updated all labels to be targeted towards the credential type rather than just "password"

* add copy/generate passphrase translations to desktop

* add fixme comments for translations

* remove reference to JIRA ticket
2024-10-23 10:23:51 -05:00