1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-11-11 10:10:25 +01:00
Commit Graph

3040 Commits

Author SHA1 Message Date
Addison Beck
9b50e5c496
Disable a button during page load (#10148)
The people screen has a button that can be clicked to open a modal for
inviting new users to an organization. This modal depends on data from
the people list for conditional logic, like whether or not the seat count
cor the organization has been reached. If the modal is opened before the
people list loads these conditions can not process correctly, causing
bugs.

This commit disabled the button until the people list loads to prevent
this kind of behavior.
2024-07-18 10:17:53 +01:00
Alex Morask
e27d698d4b
[AC-2860] Revise unassigned and purchased seat warning for CB (#10077)
* Rework create-client-dialog seat warning

* Rework manage-client-subscription-dialog seat warning

* Fix create client purchased seats label

* Fix manage client subscription purchased seats label logic

* Another manage subscription purchased seats fix
2024-07-17 10:12:40 -04:00
Nick Krantz
83d141c914
[PM-8803] Edit Custom Fields (#10054)
* initial add of custom fields

* add fields for custom field

* integrate custom field into cipher form service for text fields

* add hidden field type

* add boolean custom field

* add linked option type

* add testids for automated testing

* add edit option for each custom field

* update dialog component name to match add/edit nature

* add delete button for fields

* initial add of drag and drop

* collect tailwind styles from vault components

* add drag and drop functionality with announcement

* add reorder via keyboard

* update tests to match functionality

* account for partial edit of custom fields

* fix change detection for new fields

* add label's to the edit/reorder translations

* update dynamic heading to be inline

* add validation/required for field label

* disable toggle button on hidden fields when the user cannot view passwords

* remove the need for passing `updatedCipherView` by only using a single instance of `CustomFieldsComponent`

* lint fix

* use bitLink styles rather than manually defining tailwind classes

* use submit action, no duplicated button and allows for form submission via enter

* add documentation for `newField`
2024-07-17 09:11:42 -05:00
Bernd Schoolmann
a1c5cc6dbf
Fix key rotation being broken due to master key validation (#10135) 2024-07-17 14:13:03 +02:00
Daniel James Smith
90de9dd07a
Create browsers SendV2 component (#10136)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-07-16 22:12:46 +01:00
Anders Åberg
dbc9b9c90b
PM-4877: Only allow replacing passkeys for the same userhandle (#9804)
* Initial draft

* small cleanup

* show vaul items without passkeys

* Refactored a bit

* tests run for me?

* Fixed platform test

* null and undefined

* lint
2024-07-16 13:39:41 -04:00
Bernd Schoolmann
69a37a884f
Add shared webauthn component (#9771) 2024-07-16 10:46:37 -04:00
Oscar Hinton
d852a5ff07
[PM-97089] [Bootstrap] Convert remaining sr-only to tw-sr-only (#10094)
We're still using sr-only in multiple places. This is a bootstrap utility class and needs to be migrated to tw-sr-only.
2024-07-16 11:59:04 +01:00
Victoria League
154f15fa58
[CL-285] Add default loading state to popup-page (#10040) 2024-07-15 14:29:58 -04:00
Oscar Hinton
bc7c6dd04e
[PM-9710] [Bootstrap] Hide file inputs when not using bootstrap (#10095)
When removing boostrap it seems the hidden attribute to the file inputs stops working. This implements a "quick" fix by just adding the tw-hidden class.
2024-07-15 13:09:25 -05:00
Bitwarden DevOps
c72fae5c9a
Bumped client version(s) (#10123) 2024-07-15 17:09:09 +00:00
Cesar Gonzalez
e973d72b01
[PM-5189] Fix issues with inline menu rendering in iframes and SPA websites (#8431)
* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Finalization of Jest test for the implementation

* [PM-5189] Fixing existing jest tests before undergoing larger scale rework of tests

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Working through jest tests for OverlayBackground

* [PM-5189] Working through jest tests for OverlayBackground

* [PM-5189] Reworking how we handle updating ciphers on unlock and updating reference to auth status to use observable

* [PM-5189] Fixing issue with how we remove the inline menu when a field is populated

* [PM-5189] Fixing issue with programmatic redirection of the inlne menu

* [PM-5189] Fixing issue with programmatic redirection of the inlne menu

* [PM-5189] Adjusting how we handle fade out of the inline menu element

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Implementing jest tests for the OverlayBackground

* [PM-5189] Fixing a weird side issue that appears when a frame within the page triggers a reposition after the inline menu has been built

* [PM-5189] Fixing a weird side issue that appears when a frame within the page triggers a reposition after the inline menu has been built

* [PM-5189] Fixing a weird side issue that appears when a frame within the page triggers a reposition after the inline menu has been built

* [PM-8027] Fixing a typo

* [PM-8027] Incorporating a feature flag to allow us to fallback to the basic inline menu fielld qualification method if needed

* [PM-8027] Incorporating a feature flag to allow us to fallback to the basic inline menu fielld qualification method if needed

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Adding jest tests for added methods in AutofillInit

* [PM-5189] Refactoring implementation

* [PM-5189] Implementing jest tests for the CollectAutofillContentService

* [PM-5189] Implementing jest tests for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for the AutofillOverlayContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuIframeServce

* [PM-5189] Fixing a typo

* [PM-5189] Fixing a typo

* [PM-5189] Correcting typing information

* [PM-5189] Fixing some typos

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation0

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Implementing jest tests for AutofillInlineMenuContentService

* [PM-5189] Fixing an issue found with iframe service

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Refactoring implementation

* [PM-5189] Removing TODO message

* [PM-5189] Increasing the time we delay the closure of the inline menu

* [PM-5189] Fixing an issue with how we handle closing the inline menu after a programmtic redirection

* [PM-5189] Removing unnecessary property

* [PM-5189] Removing unnecessary property

* [PM-5189] Fixing an issue with how scroll events trigger a reposition of the inline menu when the field is not focused;

* [PM-5189] Implementing a set threshold for the maximum depth for which we are willing to calculate sub frame offsets

* [PM-5189] Implementing a set threshold for the maximum depth for which we are willing to calculate sub frame offsets

* [PM-5189] Implementing a set threshold for the maximum depth for which we are willing to calculate sub frame offsets

* [PM-5189] Implementing a set threshold for the maximum depth for which we are willing to calculate sub frame offsets

* [PM-5189] Fixing jest tests

* [PM-5189] Implementing a methodology for triggering subframe updates from layout-shift

* [PM-5189] Implementing a methodology for triggering subframe updates from layout-shift

* [PM-8027] Fixing issue with username fields not qualifyng as a valid login field if a viewable password field is not present

* [PM-8027] Fixing issue with username fields not qualifyng as a valid login field if a viewable password field is not present

* [PM-8027] Fixing an issue where a field that has no form and no visible password fields should be qualified if a single password field exists in the page

* [PM-8027] Fixing an issue where a field that has no form and no visible password fields should be qualified if a single password field exists in the page

* [PM-5189] Implementing a methodology for triggering subframe updates from layout-shift

* [PM-5189] Implementing a methodology for triggering subframe updates from layout-shift

* [PM-8869] Autofill features broken on Safari

* [PM-8869] Autofill features broken on Safari

* [PM-5189] Working through subFrameRecalculation approach

* [PM-5189] Fixing an issue found within Safari

* [PM-8027] Reverting flag from a fallback flag to an enhancement feature flag

* [PM-8027] Fixing jest tests

* [PM-5189] Reworking how we handle updating ciphers within nested sub frames

* [PM-5189] Reworking how we handle updating ciphers within nested sub frames

* [PM-5189] Reworking how we handle updating ciphers within nested sub frames

* [PM-5189] Reworking how we handle updating ciphers within nested sub frames

* [PM-5189] Fixing issue found in Safari with how the inline menu is re-positioned

* [PM-5189] Fixing issue found in Safari with how the inline menu is re-positioned

* [PM-5189] Fixing issue found in Safari with how the inline menu is re-positioned

* [PM-5189] Fixing jest tests

* [PM-5189] Fixing jest tests

* [PM-5189] Refining how we handle fading in the inline menu elements

* [PM-5189] Refining how we handle fading in the inline menu elements

* [PM-5189] Refining how we handle fading in the inline menu elements

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Reworking how we handle updating the inline menu position

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* [PM-5189] Working through content script port improvement

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit 857008413f.

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit f219d71070.

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit f389263b64.

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit 8a48e576e1.

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit e30a1ebc5d.

* Revert "[PM-5189] Working through content script port improvement"

This reverts commit da357f46b3.

* [PM-5189] Reverting content script port rework

* [PM-5189] Fixing jest tests for AutofillOverlayContentService

* [PM-5189] Adding documentation for the AutofillOverlayContentService

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Throttling how often sub frame calculations can be triggered from the focus in listener

* [PM-5189] Finalizing jest tests for AutofillOverlayContentService

* [PM-5189] Finalizing jest tests for AutofillOverlayContentService

* [PM-5189] Finalizing jest tests for AutofillOverlayContentService

* [PM-5189] Removing custom debounce method that is unused

* [PM-5189] Removing custom debounce method that is unused

* [PM-2857] Reworking how we handle invalidating cache when a tab chagne has occurred

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Fixing issues found within code review behind how we position elements

* [PM-5189] Adding jest tests for OverlayBackground methods

* [PM-5189] Adding jest tests for OverlayContentService methods

* [PM-5189] Working through further issues on positioning of inline menu

* [PM-5189] Working through further issues on positioning of inline menu

* [PM-5189] Working through further issues on positioning of inline menu

* [PM-5189] Working through further issues on positioning of inline menu

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Working through jest tests for OverlayBackground and refining repositioning delays

* [PM-5189] Fixing an issue found when switching between open windows

* [PM-5189] Fixing an issue found when switching between open windows

* [PM-5189] Removing throttle from resize listeners within the content script

* [PM-5189] Removing throttle from resize listeners within the content script

* [PM-5189] Fixing issue within Safari relating to repositioning elements from outer frame

* [PM-5189] Fixing issue within Safari relating to repositioning elements from outer frame

* [PM-5189] Fixing issue within Safari relating to repositioning elements from outer frame

* [PM-5189] Adding some documentation and adjust jest test for util method

* [PM-5189] Reverting naming structure for OverlayBackground method

* [PM-5189] Fixing a missed promise reference within OverlayBackground

* [PM-5189] Removing throttle from resize listeners within the content script

* Revert "[PM-5189] Removing throttle from resize listeners within the content script"

This reverts commit 62cf0f8f24.

* [PM-5189] Re-adding throttle and reducing delay

* [PM-5189] Fixing an issue with onButton click settings not being respected when a reposition event occurs

* [PM-5189] Adding a missing test to OverlayBackground

* [PM-5189] Fixing an issue where we trigger a blur event when the inline menu is hovered, but the page takes focus away

* [PM-9342] Inline menu does not show on username field for a form that has a password field with an invalid autocomplete value

* [PM-9342] Incorporating logic to handle multiple autocomplete values within a captured set of page details

* [PM-9342] Incorporating logic to handle multiple autocomplete values within a captured set of page details

* [PM-9342] Changing logic for how we identify new password fields to reflect a more assertive qualification

* [PM-9342] Adding feedback from code review

* [PM-5189] Fixing an issue where the port key for an inline menu element could potentially be undefined if the window focus changes too quickly

* [PM-5189] Fixing an issue where we can potentially show the inline menu incorrectly after a user switches account

* [PM-5189] Fixing an issue where we can potentially show the inline menu incorrectly after a user switches account

* [PM-5189] Fixing an issue where we can potentially show the inline menu incorrectly after a user switches account

* [PM-5189] Fixing an issue where we can potentially show the inline menu incorrectly after a user switches account

* [PM-9267] Implement feature flag for inline menu re-architecture (#9845)

* [PM-9267] Implement Feature Flag for Inline Menu Re-Architecture

* [PM-9267] Incorporating legacy OverlayBackground implementation

* [PM-9267] Incorporating legacy overlay content scripts

* [PM-9267] Incorporating legacy overlay content scripts

* [PM-9267] Incorporating legacy overlay content scripts

* [PM-9267] Incorporating legacy overlay content scripts

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Finalizing feature flag implementation

* [PM-9267] Adjusting naming convention for page files

* [PM-9267] Adjusting naming convention for page files

* [PM-5189] Fixing an issue where we can potentially show the inline menu incorrectly after a user switches account

* PM-4950 - Fix hint and verify delete components that had the data in the wrong place (#9877)

* PM-4661: Add passkey.username as item.username (#9756)

* Add incoming passkey.username as item.username

* Driveby fix, was sending wrong username

* added username to new-cipher too

* Guarded the if-block

* Update apps/browser/src/vault/popup/components/vault/add-edit.component.ts

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* Fixed broken test

* fixed username on existing ciphers

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* PM-4878: Add passkey information to items when signing in (#9835)

* Added username to subtitle

* Added subName to cipher

* Moved subName to component

* Update apps/browser/src/vault/popup/components/fido2/fido2-cipher-row.component.ts

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>

* Fixed double code and added comment

* Added changeDetection: ChangeDetectionStrategy.OnPush as per review

---------

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>

* [AC-2791] Members page - finish component library refactors (#9727)

* Replace PlatformUtilsService with ToastService

* Remove unneeded templates

* Implement table filtering function

* Move member-only methods from base class to subclass

* Move utility functions inside new MemberTableDataSource

* Rename PeopleComponent to MembersComponent

* [deps] Platform: Update angular-cli monorepo to v16.2.14 (#9380)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* [PM-8789] Move desktop_native into subcrate (#9682)

* Move desktop_native into subcrate

* Add publish = false to crates

* [PM-6394] remove policy evaluator cache (#9807)

* [PM-9364] Copy for Aggregate auto-scaling invoices for Teams and Enterprise customers (#9875)

* Change the seat adjustment message

* Move changes from en_GB file to en file

* revert changes in en_GB file

* Add feature flag to the change

* use user verification as a part of key rotation (#9722)

* Add the ability for custom validation logic to be injected into `UserVerificationDialogComponent` (#8770)

* Introduce `verificationType`

* Update template to use `verificationType`

* Implement a path for `verificationType = 'custom'`

* Delete `clientSideOnlyVerification`

* Update `EnrollMasterPasswordResetComponent` to include a server-side hash check

* Better describe the custom scenerio through comments

* Add an example of the custom verficiation scenerio

* Move execution of verification function into try/catch

* Migrate existing uses of `clientSideOnlyVerification`

* Use generic type option instead of casting

* Change "given" to "determined" in a comment

* Restructure the `org-redirect` guard to be Angular 17+ compliant (#9552)

* Document the `org-redirect` guard in code

* Make assertions about the way the `org-redirect` guard should behave

* Restructure the `org-redirect` guard to be Angular 17+ compliant

* Convert data parameter to function parameter

* Convert a data parameter to a function parameter that was missed

* Pass redirect function to default organization route

* don't initialize kdf with validators, do it on first set (#9754)

* add testids for attachments (#9892)

* Bug fix - error toast in 2fa (#9623)

* Bug fix - error toast in 2fa

* Bug fix - Yubikey code obscured

* 2FA error fix

* Restructure the `is-paid-org` guard to be Angular 17+ compliant (#9598)

* Document that `is-paid-org` guard in code

* Remove unused `MessagingService` dependency

* Make assertions about the way the is-paid-org guard should behave

* Restructure the `is-paid-org` guard to be Angular 17+ compliant

* Random commit to get the build job moving

* Undo previous commit

* Bumped client version(s) (#9895)

* [PM-9344] Clarify accepted user state (#9861)

* Prefer `Needs confirmation` to `Accepted` display status

This emphasizes that action is still required to complete setup.

* Remove unused message

* Bumped client version(s) (#9906)

* Revert "Bumped client version(s) (#9906)" (#9907)

This reverts commit 78c2829793.

* fix duo subscriptions and org vs individual duo setup (#9859)

* [PM-5024] Migrate tax-info component (#9872)

* Changes for the tax info migration

* Return for invalid formgroup

* Restructure the `org-permissions` guard to be Angular 17+ compliant (#9631)

* Document the `org-permissions` guard in code

* Restructure the `org-permissions` guard to be Angular 17+ compliant

* Update the `org-permissions` guard to use `ToastService`

* Simplify callback function sigantures

* Remove unused test object

* Fix updated route from merge

* Restructure the `provider-permissions` guard to be Angular 17+ compliant  (#9609)

* Document the `provider-permissions` guard in code

* Restructure the `provider-permissions` guard to be Angular 17+ compliant

* [deps] Platform: Update @types/argon2-browser to v1.18.4 (#8180)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Bumped client version(s) (#9914)

* [PM-7162] Cipher Form - Item Details (#9758)

* [PM-7162] Fix weird angular error regarding disabled component bit-select

* [PM-7162] Introduce CipherFormConfigService and related types

* [PM-7162] Introduce CipherFormService

* [PM-7162] Introduce the Item Details section component and the CipherFormContainer interface

* [PM-7162] Introduce the CipherForm component

* [PM-7162] Add strongly typed QueryParams to the add-edit-v2.component

* [PM-7162] Export CipherForm from Vault Lib

* [PM-7162] Use the CipherForm in Browser AddEditV2

* [PM-7162] Introduce CipherForm storybook

* [PM-7162] Remove VaultPopupListFilterService dependency from NewItemDropDownV2 component

* [PM-7162] Add support for content projection of attachment button

* [PM-7162] Fix typo

* [PM-7162] Cipher form service cleanup

* [PM-7162] Move readonly collection notice to bit-hint

* [PM-7162] Refactor CipherFormConfig type to enforce required properties with Typescript

* [PM-7162] Fix storybook after config changes

* [PM-7162] Use new add-edit component for clone route

* [deps]: Update @yao-pkg/pkg to ^5.12.0 (#9820)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Autosync the updated translations (#9922)

Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>

* Autosync the updated translations (#9923)

Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>

* Autosync the updated translations (#9924)

Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>

* [AC-2830] Unable to create a free organization (#9917)

* Resolve the issue free org creation

* Check that the taxForm is touched

* [PM-7162] Fix broken getter when original cipher is null (#9927)

* [PM-8525] Edit Card (#9901)

* initial add of card details section

* add card number

* update card brand when the card number changes

* add year and month fields

* add security code field

* hide number and security code by default

* add `id` for all form fields

* update select options to match existing options

* make year input numerical

* only display card details for card ciphers

* use style to set input height

* handle numerical values for year

* update heading when a brand is available

* remove unused ref

* use cardview types for the form

* fix numerical input type

* disable card details when in partial-edit mode

* remove hardcoded height

* update types for formBuilder

* [PM-9440] Fix: handle undefined value in migration 66 (#9908)

* fix: handle undefined value in migration 66

* fix: the if-statement was typo

* Rename "encryptionAlgorithm" to "hashAlgorithmForEncryption" for clarity (#9891)

* [PM-7972] Account switching integration with "remember email" functionality (#9750)

* add account switching logic to login email service

* enforce boolean and fix desktop account switcher order

* [PM-9442] Add tests for undefined state values and proper emulation of ElectronStorageService in tests (#9910)

* fix: handle undefined value in migration 66

* fix: the if-statement was typo

* feat: duplicate error behavior in fake storage service

* feat: fix all migrations that were setting undefined values

* feat: add test for disabled fingrint in migration 66

* fix: default single user state saving undefined value to state

* revert: awaiting floating promise

gonna fix this in a separate PR

* Revert "feat: fix all migrations that were setting undefined values"

This reverts commit 034713256c.

* feat: automatically convert save to remove

* Revert "fix: default single user state saving undefined value to state"

This reverts commit 6c36da6ba5.

* [AC-2805] Consolidated Billing UI Updates (#9893)

* Add empty state for invoices

* Make cards on create client dialog tabbable

* Add space in $ / month per member

* Mute text, remove (Monthly) and right align menu on clients table

* Made used seats account for all users and fixed column sort for used/remaining

* Resize pricing cards

* Rename assignedSeats to occupiedSeats

* [PM-9460][deps] Tools: Update electron to v31 (#9921)

* [deps] Tools: Update electron to v31

* Bump version in electron-builder

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>

* [AC-1452] Restrict access to 'Organization Info' and 'Two-Step Login' settings pages with a permission check (#9483)

* Guard Organization Info route - Owners only

* Guard TwoFactor route - Owners only and Organization must be able to use 2FA

* Update guards to use function syntax

---------

Co-authored-by: Addison Beck <hello@addisonbeck.com>

* [PM-9437] Use CollectionAccessDetailsResponse type now that is always the type returned from the API (#9951)

* Add required env variables to desktop native build script (#9869)

* [AC-2676] Remove paging logic from GroupsComponent (#9705)

* remove infinite scroll, use virtual scroll instead
* use TableDataSource for search
* allow sorting by name
* replacing PlatformUtilsService.showToast with ToastService
* misc FIXMEs

* [PM-9441] Catch and log exceptions during migration (#9905)

* feat: catch and log exceptions during migration

* Revert "feat: catch and log exceptions during migration"

This reverts commit d68733b7e5.

* feat: use log service to log migration errors

* Autosync the updated translations (#9972)

Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>

* Autosync the updated translations (#9973)

Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>

* Updated codeowners for new design system team (#9913)

* Updated codeowners for new design system team.

* Moved Angular and Bootstrap dependencies

* Moved additional dependencies.

* Updated ownership

Co-authored-by: Will Martin <contact@willmartian.com>

---------

Co-authored-by: Will Martin <contact@willmartian.com>

* [SM-1016] Fix new access token dialog (#9918)

* swap to bit-dialog title & subtitle

* remove dialogRef.disableClose & use toastService

* Add shared two-factor-options component (#9767)

* Communicate the upcoming client vault privacy changes to MSPs (#9994)

* Add a banner notification to the provider portal

* Feature flag the banner

* Move banner copy to messages.json

* Allow for dismissing the banner

* Auth/PM-7321 - Registration with Email Verification - Registration Finish Component Implementation (#9653)

* PM-7321 - Temp add input password

* PM-7321 - update input password based on latest PR changes to test.

* PM-7321 - Progress on testing input password component + RegistrationFinishComponent checks

* PM-7321 - more progress on registration finish.

* PM-7321 - Wire up RegistrationFinishRequest model + AccountApiService abstraction + implementation changes for new method.

* PM-7321 - WIP Registration Finish - wiring up request building and API call on submit.

* PM-7321 - WIP registratin finish

* PM-7321 - WIP on creating registration-finish service + web override to add org invite handling

* PM-7321 - (1) Move web-registration-finish svc to web (2) Wire up exports (3) wire up RegistrationFinishComponent to call registration finish service

* PM-7321 - Get CLI building

* PM-7321 - Move all finish registration service and content to registration-finish feature folder.

* PM-7321 - Fix RegistrationFinishService config

* PM-7321 - RegistrationFinishComponent- handlePasswordFormSubmit - error handling WIP

* PM-7321 - InputPasswordComp - Update to accept masterPasswordPolicyOptions as input instead of retrieving it as parent components in different scenarios will need to retrieve the policies differently (e.g., orgInvite token in registration vs direct call via org id post SSO on set password)

* PM-7321 - Registration Finish - Add web specific logic for retrieving master password policies and passing them into the input password component.

* PM-7321 - Registration Start - Send email via query param to registration finish page so it can create masterKey

* PM-7321 - InputPassword comp - (1) Add loading input (2) Add email validation to submit logic.

* PM-7321 - Registration Finish - Add submitting state and pass into input password so that the rest of the registration process keeps the child form disabled.

* PM-7321 - Registration Finish - use validation service for error handling.

* PM-7321 - All register routes must be dynamic and change if the feature flag changes.

* PM-7321 - Test registration finish services.

* PM-7321 - RegisterRouteService - Add comment documenting why the service exists.

* PM-7321 - Add missing input password translations to browser & desktop

* PM-7321 - WebRegistrationFinishSvc - apply PR feedback

* [deps] Autofill: Update rimraf to v5.0.8 (#10008)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* [PM-9318] Fix username on protonpass import (#9889)

* Fix username field used for ProtonPass import

ProtonPass has changed their export format and userName is not itemEmail

* Import additional field itemUsername

---------

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

* [PM-8943] Update QRious script initialization in Authenticator two-factor provider (#9926)

* create onload() for qrious as well as error messaging if QR code cannot be displayed

* button and message updates and formpromise removal

* load QR script async

* rename and reorder methods

* Delete Unused Bits of StateService (#9858)

* Delete Unused Bits of StateService

* Fix Tests

* remove getBgService for auth request service (#10020)

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Anders Åberg <anders@andersaberg.com>
Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Addison Beck <github@addisonbeck.com>
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
Co-authored-by: vinith-kovan <156108204+vinith-kovan@users.noreply.github.com>
Co-authored-by: Bitwarden DevOps <106330231+bitwarden-devops-bot@users.noreply.github.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
Co-authored-by: Opeyemi <Alaoopeyemi101@gmail.com>
Co-authored-by: Shane Melton <smelton@bitwarden.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
Co-authored-by: Bernd Schoolmann <mail@quexten.com>
Co-authored-by: Alex Morask <144709477+amorask-bitwarden@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Rui Tomé <108268980+r-tome@users.noreply.github.com>
Co-authored-by: Addison Beck <hello@addisonbeck.com>
Co-authored-by: Todd Martin <106564991+trmartin4@users.noreply.github.com>
Co-authored-by: Will Martin <contact@willmartian.com>
Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Anders Åberg <anders@andersaberg.com>
Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Addison Beck <github@addisonbeck.com>
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
Co-authored-by: vinith-kovan <156108204+vinith-kovan@users.noreply.github.com>
Co-authored-by: Bitwarden DevOps <106330231+bitwarden-devops-bot@users.noreply.github.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
Co-authored-by: Opeyemi <Alaoopeyemi101@gmail.com>
Co-authored-by: Shane Melton <smelton@bitwarden.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
Co-authored-by: Bernd Schoolmann <mail@quexten.com>
Co-authored-by: Alex Morask <144709477+amorask-bitwarden@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Rui Tomé <108268980+r-tome@users.noreply.github.com>
Co-authored-by: Addison Beck <hello@addisonbeck.com>
Co-authored-by: Todd Martin <106564991+trmartin4@users.noreply.github.com>
Co-authored-by: Will Martin <contact@willmartian.com>
Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
2024-07-15 11:57:21 -05:00
Bitwarden DevOps
7ed143dc62
Bumped client version(s) (#10122) 2024-07-15 16:51:19 +00:00
Ike
d2685e1bc5
[PM-9618] Show toast when AuthUrl is null (#10108)
* Added toast message if AuthUrl is null

* added toast to desktop and browser

* fixed tests
2024-07-15 09:04:15 -07:00
Alex Morask
e7b50e790a
[AC-2828] Add provider portal members page behind FF (#9949)
* Add provider portal members page behind a FF

* Fix reinvite issue

* Import scrolling module

* Add deprecations to old classes

* Move members.component init to constructor

* Rename new-base.people.component to base.members.component

* Hide bulk reinvite when no users can be re-invited on AC members page

* Rename events() to openEventsDialog()

* Fix return type for members component getUsers()

* Make table headers sortable

* Extract row height class to ts file

* Convert open methods to static methods for bulk dialogs

* Rename and refactor member-dialog.component

* Prevent event emission for searchControl and set filter in members component constructor

* use featureFlaggedRoute rather than using FF in components

* Add BaseBulkConfirmComponent for use in both web and bit-web

* Add BaseBulkRemoveComponent for use in both web and bit-web

* Thomas' feedback on base confirm/remove

* Remaining feedback
2024-07-15 11:56:11 -04:00
Jordan Aasen
4edbd65faf
[PM-3197] "Pay with PayPal" button moves on screen after loading (#10083)
* hide duplicate iframe

* add comment

* Moved braintree styling to plugins.scss

* Moved next to other braintree-sheet

---------

Co-authored-by: Conner Turnbull <cturnbull@bitwarden.com>
2024-07-15 11:47:30 -04:00
Cesar Gonzalez
974162b1a4
[PM-6426] Create TaskSchedulerService and update long lived timeouts in the extension to leverage the new service (#8566)
* [PM-6426] Create TaskSchedulerService and update usage of long lived timeouts

* [PM-6426] Implementing nextSync timeout using TaskScheduler

* [PM-6426] Implementing systemClearClipboard using TaskScheduler

* [PM-6426] Fixing race condition with setting/unsetting active alarms

* [PM-6426] Implementing clear clipboard call on generatePasswordToClipboard with the TaskSchedulerService

* [PM-6426] Implementing abortTimeout for Fido2ClientService using TaskSchedulerService

* [PM-6426] Implementing reconnect timer timeout for NotificationService using the TaskSchedulerService

* [PM-6426] Implementing reconnect timer timeout for NotificationService using the TaskSchedulerService

* [PM-6426] Implementing sessionTimeout for LoginStrategyService using TaskSchedulerService

* [PM-6426] Implementing eventUploadInterval using TaskScheduler

* [PM-6426] Adding jest tests for the base TaskSchedulerService class

* [PM-6426] Updating jest tests for GeneratePasswordToClipboardCommand

* [PM-6426] Setting up the full sync process as an interval rather than a timeout

* [PM-6426] Renaming the scheduleNextSync alarm name

* [PM-6426] Fixing dependency references in services.module.ts

* [PM-6426] Adding jest tests for added BrowserApi methods

* [PM-6426] Refactoring small detail for how we identify the clear clipboard timeout in SystemService

* [PM-6426] Ensuring that we await clearing an established scheduled task for the notification service

* [PM-6426] Changing the name of the state definition for the TaskScheduler

* [PM-6426] Implementing jest tests for the BrowserTaskSchedulerService

* [PM-6426] Implementing jest tests for the BrowserTaskSchedulerService

* [PM-6426] Adding jest tests for the base TaskSchedulerService class

* [PM-6426] Finalizing jest tests for BrowserTaskScheduler class

* [PM-6426] Finalizing documentation on BrowserTaskSchedulerService

* [PM-6426] Fixing jest test for LoginStrategyService

* [PM-6426] Implementing compatibility for the browser.alarms api

* [PM-6426] Fixing how we check for the browser alarms api

* [PM-6426] Adding jest tests to the BrowserApi implementation

* [PM-6426] Aligning the implementation with our code guidelines for Angular components

* [PM-6426] Fixing jest tests and lint errors

* [PM-6426] Moving alarms api calls out of BrowserApi and structuring them within the BrowserTaskSchedulerService

* [PM-6426] Reworking implementation to register handlers separately from the call to those handlers

* [PM-6426] Adjusting how we register the fullSync scheduled task

* [PM-6426] Implementing approach for incorporating the user UUID when setting task handlers

* [PM-6426] Attempting to re-work implementation to facilitate userId-spcific alarms

* [PM-6426] Refactoring smaller details of the implementation

* [PM-6426] Working through the details of the implementation and setting up final refinments

* [PM-6426] Fixing some issues surrounding duplicate alarms triggering

* [PM-6426] Adjusting name for generate password to clipboard command task name

* [PM-6426] Fixing generate password to clipboard command jest tests

* [PM-6426] Working through jest tests and implementing a method to guard against setting a task without having a registered callback

* [PM-6426] Working through jest tests and implementing a method to guard against setting a task without having a registered callback

* [PM-6426] Implementing methodology for having a fallback to setTimeout if the browser context is lost in some manner

* [PM-6426] Working through jest tests

* [PM-6426] Working through jest tests

* [PM-6426] Working through jest tests

* [PM-6426] Working through jest tests

* [PM-6426] Finalizing stepped setInterval implementation

* [PM-6426] Implementing Jest tests for DefaultTaskSchedulerService

* [PM-6426] Adjusting jest tests

* [PM-6426] Adjusting jest tests

* [PM-6426] Adjusting jest tests

* [PM-6426] Fixing issues identified in code review

* [PM-6426] Fixing issues identified in code review

* [PM-6426] Removing user-based alarms and fixing an issue found with setting steppedd alarm interavals

* [PM-6426] Removing user-based alarms and fixing an issue found with setting steppedd alarm interavals

* [PM-6426] Fixing issue with typing information on a test

* [PM-6426] Using the getUpperBoundDelayInMinutes method to handle setting stepped alarms and setTimeout fallbacks

* [PM-6426] Removing the potential for the TaskScheduler to be optional

* [PM-6426] Reworking implementation to leverage subscription based deregistration of alarms

* [PM-6426] Fixing jest tests

* [PM-6426] Implementing foreground and background task scheduler services to avoid duplication of task scheudlers and to have the background setup as a fallback to the poopup tasks

* [PM-6426] Implementing foreground and background task scheduler services to avoid duplication of task scheudlers and to have the background setup as a fallback to the poopup tasks

* [PM-6426] Merging main into branch

* [PM-6426] Fixing issues with the CLI Service Container implementation

* [PM-6426] Reworking swallowed promises to contain a catch statement allow us to debug potential issues with registrations of alarms

* [PM-6426] Adding jest tests to the ForegroundTaskSchedulerService and the BackgroundTaskSchedulerService

* [PM-6426] Adding jest tests to the ForegroundTaskSchedulerService and the BackgroundTaskSchedulerService

* [PM-6426] Adding jest tests to the ForegroundTaskSchedulerService and the BackgroundTaskSchedulerService

* [PM-6426] Adding jest tests to the ForegroundTaskSchedulerService and the BackgroundTaskSchedulerService

* [PM-6426] Adjusting implementation based on code review feedback

* [PM-6426] Reworking file structure

* [PM-6426] Reworking file structure

* [PM-6426] Adding comments to provide clarity on how the login strategy cache experiation state is used

* [PM-6426] Catching and logging erorrs that appear from methods that return a promise within VaultTimeoutService
2024-07-15 10:32:30 -05:00
Justin Baur
5fcf4bbd10
[PM-8979] Check that user is authed before getting user config (#10031)
* Check that user is authed before getting user config

* Accept PR Suggestion

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

* Use Strict Equal

---------

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
2024-07-15 10:41:10 -04:00
Bernd Schoolmann
5a46c7d5cc
[PM-7084] 4/6: Introduce shared email two-factor component (#9770)
* Add shared email two-factor component

* Update apps/browser/src/auth/popup/two-factor-auth-email.component.ts

Co-authored-by: Jake Fink <jfink@bitwarden.com>

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
2024-07-15 09:59:39 -04:00
github-actions[bot]
a1667e5603
Autosync the updated translations (#10118)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-15 11:00:21 +00:00
github-actions[bot]
5969f24254
Autosync the updated translations (#10115)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-15 12:55:34 +02:00
github-actions[bot]
0a04a47c75
Autosync the updated translations (#10117)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-15 12:52:31 +02:00
Jordan Aasen
fb311bfb4b
[PM-4964] migrate exposed passwords report components (#9952)
* WIP - migrate exposed passwords report components

* lint fix

* migrate components in reports

* migrate breach and unsecured websites reports

* undo change routing

* revert changes to reports

* revert changes

* fix icon and padding in exposed passwords report

* fix icon and padding in exposed passwords report

* fix exposed passwords report cipher state

* [PM-4965] Migrate inactive two factor report (#10043)

* migrate inactive two factor report

* fix icon and padding in inactive two factor report

* [PM-4967] Migrate reused passwords report components (#10044)

* migrate components in reused passwords report

* fix icon and padding in reused passwords report

* [PM-4969] Migrate weak passwords report components (#10048)

* migrate weak passwords report component

* migrate weak passwords report component

* Revert "migrate weak passwords report component"

This reverts commit 0e453aafc1.

* Revert "migrate weak passwords report component"

This reverts commit e8e9b01997.

* Revert "Revert "migrate weak passwords report component""

This reverts commit 8cd2421cb0.

* fix padding and icon size in weak passwords report

---------

Co-authored-by: jordan-bite <jordan@bite-interactive.com>
2024-07-15 12:26:11 +02:00
kwiateusz
739cd8d25b
Add translation for Add account option in account switcher (#10058) 2024-07-15 12:24:53 +02:00
cyprain-okeke
410d1c6394
Fix the zip core error on trial initiation (#10100) 2024-07-13 07:19:46 +01:00
Oscar Hinton
06cf849b18
[PM-9707] [Boostrap] Fix avatar and customize placement (#10093)
The Avatar customize button appeared below the avatar after removing Boostrap. This resolves it by adding flex, it also has the added benefit of aligning the button vertically as it's currently slightly misaligned.
2024-07-12 15:48:59 -07:00
Jason Ng
b7e102dd6d
PM-9632 added MP reprompt check to edit button in view-v2 (#10104) 2024-07-12 16:19:22 -04:00
SmithThe4th
7588e06d2b
fix blank titles on menu options button (#10099) 2024-07-12 12:16:54 -04:00
Vincent Salucci
bce6e77514
[AC-2520] Remove Unassigned Items Banner (#10042)
* chore: remove UnassignedItemsBanner feature flag, refs AC-2520

* chore: remove unassignedItemsBanner from web-header component, refs AC-2520

* chore: delete unassigned items banner service/api/spec, refs AC-2520

* chore: remove unassigned items banner messages (web), refs AC-2520

* chore: remove unassigned items banner messages (browser), refs AC-2520

* chore: remove unassigned items banner code from current tab (browser), refs AC-2520

* chore: remove state definition for unassigned items banner, refs AC-2520

* chore: revert state-definition removal, refs AC-2520
2024-07-12 11:06:02 -05:00
Bernd Schoolmann
486176a648
Add foregroundvaulttimeout service and remove getbgservice call for vaulttimeout service (#10071) 2024-07-12 14:32:01 +02:00
Bernd Schoolmann
91dc9f49a5
[PM-6188] Remove get bg service calls (#10050)
* Remove ssologinservice getbgservice call

* Remove deviceservice getbgservice call

* Remove keyconnectorservice getbgservice call

* Remove userverificationservice getbgservice call

* Remove vaulttimeoutsettingservice getbgservice call

* Remove devicetrustservice getbgservice call
2024-07-12 14:31:41 +02:00
github-actions[bot]
8e0e6fdaff
Autosync the updated translations (#10088)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-12 11:07:34 +00:00
github-actions[bot]
e79e4445da
Autosync the updated translations (#10092)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-12 11:04:05 +00:00
github-actions[bot]
7f6969c844
Autosync the updated translations (#10086)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-12 10:17:03 +00:00
github-actions[bot]
36aacb6687
Autosync the updated translations (#10087)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-12 09:29:21 +00:00
Nick Krantz
66f432d6e0
add fallback for navigating the user back when the browser is in a popout (#10024) 2024-07-11 17:32:53 -05:00
SmithThe4th
050f8f4bdc
[PM-7624] [PM-7625] Bulk management actions on individual vault (#9507)
* fixed issue with clearing search index state

* clear user index before account is totally cleaned up

* added logout clear on option

* removed redundant clear index from logout

* added feature flag

* added new menu drop down and put behind feature flag

* added permanentlyDeleteSelected to the menu

* added permanentlyDeleteSelected to the menu

* wired up logic to show to hide menu drop down items

* modified the bulk collection assignment to work with end user vault

* wired up delete and move to folder

* merged bulk management actions header into old leveraging the feature flag

* added ability to move personal items to an organization and set active collection when user is on a collection

* made collection required by default

* handled organization cipher share when personal items and org items are selected

* moved logic to determine warning text to component class

* moved logic to determine warning text to component class

* Improved hide or show logic for menu

* added bullet point to bulk assignment dialog content

* changed description for move to folder

* Fixed issue were all collections are retrived instead of only can manage, and added logic to get collections associated with a cipher

* added inline assign to collections

* added logic to disable three dot to template

* Updated logic to retreive shared collection ids between ciphers

* Added logic to make attachment view only, show or hide

* Only show menu options when there are options available

* Comments cleanup

* update cipher row to disable menu instead of hide

* Put add to folder behind feature flag

* ensured old menu behaviour is shown when feature flag is turned off

* refactored code base on code review suggestions

* fixed bug with available collections

* Made assign to collections resuable

made pluralize a pipe instead

* Utilized the resuable assign to collections component on the web

* changed description message for collection assignment

* fixed bug with ExpressionChangedAfterItHasBeenCheckedError

* Added changedetectorref markForCheck

* removed redundant startwith as seed value has been added

* made code review suggestions

* fixed bug where assign to collections shows up in trash filter

* removed bitInput

* refactored based on code review comments

* added reference ticket

* [PM-9341] Cannot assign to collections when filtering by My Vault (#9862)

* Add checks for org id myvault

* made myvault id a constant

* show bulk move is set by individual vault and it is needed so assign to collections does not show up in trash filter (#9876)

* Fixed issue where selectedOrgId is null (#9879)

* Fix bug introduced with assigning items to a collection (#9897)

* [PM-9601] [PM-9602] When collection management setting is turned on view only collections and assign to collections menu option show up (#10047)

* Only show collections with edit access on individual vault

* remove unused arguments
2024-07-11 17:39:49 -04:00
Thomas Rittson
a723038b44
Remove OrganizationUserType.Manager (#10060) 2024-07-12 06:14:08 +10:00
Jake Fink
9c66b5bf9f
[PM-4917, PM-8707, PM-9119] Persist login email memory through 2fa on browser (#9811)
* persist email memory through 2fa on browser

* fix tests

* fix desktop
2024-07-11 14:51:06 -04:00
aj-bw
4f3760beae
PM-1935/vault-locked-message-fix (#10078) 2024-07-11 14:39:29 -04:00
cyprain-okeke
cc206d4c3f
[AC-1102]Automatic Sync is visible for self hosted Families Orgs (#9565)
* Add the changes to remove automasync for family org

* Remove changes to the form field file

* Rename productType to productTierType

* Add Upload license and License file

* Hide the License and upload License label

* Resolve the issue of Validation required for family org
2024-07-11 18:05:17 +01:00
Oscar Hinton
39eed02904
[PM-8517] Create web specific layout (#9209)
We currently duplicate some logic between our layouts. In an effort to streamline our experience I'm exploring if we can create a web specific layout that handles some of this.
2024-07-11 12:20:56 -04:00
aj-rosado
ea76760782
[AC-2508][AC-2511] member access report view and export logic (#10011)
* Added new report card and FeatureFlag for MemberAccessReport

* Add new "isEnterpriseOrgGuard"

* Add member access icon

* Show upgrade organization dialog for enterprise on member access report click

* verify member access featureflag on enterprise org guard

* add comment with TODO information for follow up task

* Initial member access report component

* Improved readability, removed path to wrong component and refactored buildReports to use the productType

* finished MemberAccessReport layout and added temporary service to provide mock data

* Moved member-access-report files to bitwarden_license/
Removed unnecessary files

* Added new tools path on bitwarden_license to the CODEOWNERS file

* added member access description to the messages.json

* layout changes to member access report

* Created new reports-routing under bitwarden_license
Moved member-access-report files to corresponding subfolder

* Added search logic

* Removed routing from member-access-report BL component on OSS.
Added member-access-report navigation to organizations-routing on BL

* removed unnecessary ng-container

* Added OrganizationPermissionsGuard and canAccessReports validation to member-access-report navigation

* replaced deprecated search code with searchControl

* Address PR feedback

* removed unnecessary canAccessReports method

* Added report-utils class with generic functions to support report operations

* Added member access report mock

* Added member access report specific logic

* Splitted code into different classes that explained their objective.

* fixed member access report service test cases

* Addressed PR feedback

* Creating a service to return the data for the member access report

* added missing ExportHelper on index.ts

* Corrected property names on member access report component view

* removed duplicated service
2024-07-11 17:11:05 +01:00
cyprain-okeke
a08cbf30d9
Resolve the error on license upload (#10057) 2024-07-11 16:18:48 +01:00
Nick Krantz
99d2ff4bbd
open attachments page in new popout window based on browser (#10036) 2024-07-11 09:55:06 -05:00
Bernd Schoolmann
9eddbfc6e7
[PM-7084]: 3/6 Introduce shared yubikey two-factor component (#9769)
* Add shared two-factor-options component

* Add new refactored two-factor-auth component and totp auth componnet behind feature flag

* Add yubico yubikey otp shared two-fa component
2024-07-11 10:28:55 -04:00
renovate[bot]
23fdb212e3
[PM-9460][deps] Tools: Update electron to v31.2.0 (#10070)
* [deps] Tools: Update electron to v31.2.0

* Bump version in electron-builder.json

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-07-11 16:12:33 +02:00
Conner Turnbull
36030c3763
[PM-9113] Trim Whitespace from email in sponsorship form (#9781)
* Removed whitespace from email form when setting up families sponsorship

* Moved sponsorship components to billing folder

* Updated to use existing input stripping directive

* Updated appInputStripSpaces to update both the element and the control value

* Removed the call to Renderer2 as it wasn't needed
2024-07-11 09:04:51 -04:00
Bernd Schoolmann
e977dacdcf
[PM-6797] Prevent account switching race condition on desktop & enable worker decryption (#9312)
* Prevent account switching race condition on desktop

This enables us to allow background thread / multithread bulk decryption on desktop.

* Disable account switcher component during switching
2024-07-11 14:11:51 +02:00
Conner Turnbull
dbeab65ea5
When redeeming a F4E sponsorship, now filtering out organizations that the current user is not an owner of (#10013) 2024-07-10 16:16:50 -04:00
KiruthigaManivannan
3f0f5af26a
PM- 2060 Update Two Factor Yubikey dialog (#9010)
* PM-2060 Update Two Factor Yubikey Dialog

* PM-2060 Removed old code

* PM-2060 Added event emitter to capture enabled status

* PM-2060 Addressed review comments

* PM-2060 Change in html file for existing key options

* PM-2060 Addressed the latest comments

* PM-2060 Updated remove method as per comments

* PM-2060 Added throw error to enable and disbale in base component

* tailwind updates to yubikey two factor settings

* fixing imports

* remove disable dialog when keys are null to use the error toast

* PM-2060 Addressed the review comments and fixed conflicts

* Removed super.enable removed extra emitter from component class.

* fixing adding multiple keys in one session of a dialog.

* removed thrown error

---------

Co-authored-by: Ike Kottlowski <ikottlowski@bitwarden.com>
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
2024-07-10 10:56:52 -07:00
Conner Turnbull
e4c7efba12
Resolved circular dependency with UpdateLicenseDialogResult enum (#10056) 2024-07-10 13:34:51 -04:00
Nick Krantz
c7d64cfc25
filter out deleted ciphers in popup service (#10035) 2024-07-10 11:44:53 -05:00
Jason Ng
91294e9c4d
[PM-8527] Identity Add Edit Browser V2 (#10016)
* Add Identity Edit Section for Browser V2 Edit Work
2024-07-10 12:25:20 -04:00
KiruthigaManivannan
f446c3b454
PM-8545 Defect Upload License Dialog should close after file upload (#9871)
* PM-8545 Defect Upload License Dialog should close after file upload

* Resolve the validation message issue (#10033)

---------

Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
2024-07-10 15:40:18 +01:00
Bernd Schoolmann
3d5c0a9b97
Set loading indicator on automatic sso flow (#10028) 2024-07-10 15:57:02 +02:00
Jason Ng
6d6785297b
[PM-7161] browser v2 view container (#9723)
* Build new view-v2 component and reusable view sections. Custom Fields, Item Details, Attachments, Additional Info,  Item History
2024-07-10 00:11:51 -04:00
Oscar Hinton
7dfef8991c
[PM-1935] Migrate vault lock screen to component library (#6237)
* Migrate vault lock screen to component library

* Remove unnecessary divs

* Remove card from trial

* Migrate to standalone component

* refactor to use AnonLayout

* revert login component

* migrate web component to bitSubmit

* remove class

* use inject

* update web pageTitle translation

* validate on submit, not on blur

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-07-09 17:19:12 -07:00
Conner Turnbull
a87b5adb80
Added missing i18n key for "sponsored" (#10039) 2024-07-09 16:38:25 -04:00
aj-rosado
0e2c486a38
[AC-2509] add member access component (#9411)
* Added new report card and FeatureFlag for MemberAccessReport

* Add new "isEnterpriseOrgGuard"

* Add member access icon

* Show upgrade organization dialog for enterprise on member access report click

* verify member access featureflag on enterprise org guard

* add comment with TODO information for follow up task

* Initial member access report component

* Improved readability, removed path to wrong component and refactored buildReports to use the productType

* finished MemberAccessReport layout and added temporary service to provide mock data

* Moved member-access-report files to bitwarden_license/
Removed unnecessary files

* Added new tools path on bitwarden_license to the CODEOWNERS file

* added member access description to the messages.json

* layout changes to member access report

* Created new reports-routing under bitwarden_license
Moved member-access-report files to corresponding subfolder

* Added search logic

* Removed routing from member-access-report BL component on OSS.
Added member-access-report navigation to organizations-routing on BL

* removed unnecessary ng-container

* Added OrganizationPermissionsGuard and canAccessReports validation to member-access-report navigation

* replaced deprecated search code with searchControl

* Address PR feedback

* removed unnecessary canAccessReports method
2024-07-09 18:36:18 +01:00
Bernd Schoolmann
7e2b4d9652
[PM-7084] 2/6: Add shared two-factor-auth orchestrator component, and TOTP two-factor component (#9768)
* Add shared two-factor-options component

* Add new refactored two-factor-auth component and totp auth componnet behind feature flag

* Fix default value for twofactorcomponentrefactor featureflag
2024-07-09 16:19:04 +02:00
Nick Krantz
830c1297f2
do not allow wrapping on choose file button (#10025) 2024-07-09 09:02:41 -05:00
Thomas Rittson
f9b623b37c
Add AC Team eslint configuration (#9971) 2024-07-09 14:33:07 +01:00
Jake Fink
1cb063689f
remove getBgService for auth request service (#10020) 2024-07-08 21:57:36 -04:00
Justin Baur
053e255a68
Delete Unused Bits of StateService (#9858)
* Delete Unused Bits of StateService

* Fix Tests
2024-07-08 20:38:10 -04:00
Ike
9b509cd329
[PM-8943] Update QRious script initialization in Authenticator two-factor provider (#9926)
* create onload() for qrious as well as error messaging if QR code cannot be displayed

* button and message updates and formpromise removal

* load QR script async

* rename and reorder methods
2024-07-08 14:48:19 -07:00
Jared Snider
226af09aac
Auth/PM-7321 - Registration with Email Verification - Registration Finish Component Implementation (#9653)
* PM-7321 - Temp add input password

* PM-7321 - update input password based on latest PR changes to test.

* PM-7321 - Progress on testing input password component + RegistrationFinishComponent checks

* PM-7321 - more progress on registration finish.

* PM-7321 - Wire up RegistrationFinishRequest model + AccountApiService abstraction + implementation changes for new method.

* PM-7321 - WIP Registration Finish - wiring up request building and API call on submit.

* PM-7321 - WIP registratin finish

* PM-7321 - WIP on creating registration-finish service + web override to add org invite handling

* PM-7321 - (1) Move web-registration-finish svc to web (2) Wire up exports (3) wire up RegistrationFinishComponent to call registration finish service

* PM-7321 - Get CLI building

* PM-7321 - Move all finish registration service and content to registration-finish feature folder.

* PM-7321 - Fix RegistrationFinishService config

* PM-7321 - RegistrationFinishComponent- handlePasswordFormSubmit - error handling WIP

* PM-7321 - InputPasswordComp - Update to accept masterPasswordPolicyOptions as input instead of retrieving it as parent components in different scenarios will need to retrieve the policies differently (e.g., orgInvite token in registration vs direct call via org id post SSO on set password)

* PM-7321 - Registration Finish - Add web specific logic for retrieving master password policies and passing them into the input password component.

* PM-7321 - Registration Start - Send email via query param to registration finish page so it can create masterKey

* PM-7321 - InputPassword comp - (1) Add loading input (2) Add email validation to submit logic.

* PM-7321 - Registration Finish - Add submitting state and pass into input password so that the rest of the registration process keeps the child form disabled.

* PM-7321 - Registration Finish - use validation service for error handling.

* PM-7321 - All register routes must be dynamic and change if the feature flag changes.

* PM-7321 - Test registration finish services.

* PM-7321 - RegisterRouteService - Add comment documenting why the service exists.

* PM-7321 - Add missing input password translations to browser & desktop

* PM-7321 - WebRegistrationFinishSvc - apply PR feedback
2024-07-08 10:40:23 -04:00
Addison Beck
52207b7620
Communicate the upcoming client vault privacy changes to MSPs (#9994)
* Add a banner notification to the provider portal

* Feature flag the banner

* Move banner copy to messages.json

* Allow for dismissing the banner
2024-07-08 10:16:29 -04:00
Bernd Schoolmann
d92e1b3eca
Add shared two-factor-options component (#9767) 2024-07-08 11:19:30 +02:00
github-actions[bot]
2822fd077e
Autosync the updated translations (#9973)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-05 10:39:30 +00:00
github-actions[bot]
6e3c57da89
Autosync the updated translations (#9972)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-05 10:37:08 +00:00
Andreas Coroiu
cc31d96378
[PM-9441] Catch and log exceptions during migration (#9905)
* feat: catch and log exceptions during migration

* Revert "feat: catch and log exceptions during migration"

This reverts commit d68733b7e5.

* feat: use log service to log migration errors
2024-07-04 09:02:18 +02:00
Thomas Rittson
3e7f8f5384
[AC-2676] Remove paging logic from GroupsComponent (#9705)
* remove infinite scroll, use virtual scroll instead
* use TableDataSource for search
* allow sorting by name
* replacing PlatformUtilsService.showToast with ToastService
* misc FIXMEs
2024-07-04 06:04:16 +10:00
Bernd Schoolmann
d7a0510ef9
Add required env variables to desktop native build script (#9869) 2024-07-03 14:00:00 -04:00
Rui Tomé
a9abc772c2
[AC-1452] Restrict access to 'Organization Info' and 'Two-Step Login' settings pages with a permission check (#9483)
* Guard Organization Info route - Owners only

* Guard TwoFactor route - Owners only and Organization must be able to use 2FA

* Update guards to use function syntax

---------

Co-authored-by: Addison Beck <hello@addisonbeck.com>
2024-07-03 12:45:49 -04:00
renovate[bot]
9c17878330
[PM-9460][deps] Tools: Update electron to v31 (#9921)
* [deps] Tools: Update electron to v31

* Bump version in electron-builder

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-07-03 17:57:33 +02:00
Alex Morask
d4eeeb8ed2
[AC-2805] Consolidated Billing UI Updates (#9893)
* Add empty state for invoices

* Make cards on create client dialog tabbable

* Add space in $ / month per member

* Mute text, remove (Monthly) and right align menu on clients table

* Made used seats account for all users and fixed column sort for used/remaining

* Resize pricing cards

* Rename assignedSeats to occupiedSeats
2024-07-03 10:33:43 -04:00
Andreas Coroiu
9d060be48c
[PM-9442] Add tests for undefined state values and proper emulation of ElectronStorageService in tests (#9910)
* fix: handle undefined value in migration 66

* fix: the if-statement was typo

* feat: duplicate error behavior in fake storage service

* feat: fix all migrations that were setting undefined values

* feat: add test for disabled fingrint in migration 66

* fix: default single user state saving undefined value to state

* revert: awaiting floating promise

gonna fix this in a separate PR

* Revert "feat: fix all migrations that were setting undefined values"

This reverts commit 034713256c.

* feat: automatically convert save to remove

* Revert "fix: default single user state saving undefined value to state"

This reverts commit 6c36da6ba5.
2024-07-03 16:06:55 +02:00
Jake Fink
052b3be2eb
[PM-7972] Account switching integration with "remember email" functionality (#9750)
* add account switching logic to login email service

* enforce boolean and fix desktop account switcher order
2024-07-03 09:53:40 -04:00
Bernd Schoolmann
5839999fc4
Rename "encryptionAlgorithm" to "hashAlgorithmForEncryption" for clarity (#9891) 2024-07-03 10:32:19 +02:00
Nick Krantz
781ef550c1
[PM-8525] Edit Card (#9901)
* initial add of card details section

* add card number

* update card brand when the card number changes

* add year and month fields

* add security code field

* hide number and security code by default

* add `id` for all form fields

* update select options to match existing options

* make year input numerical

* only display card details for card ciphers

* use style to set input height

* handle numerical values for year

* update heading when a brand is available

* remove unused ref

* use cardview types for the form

* fix numerical input type

* disable card details when in partial-edit mode

* remove hardcoded height

* update types for formBuilder
2024-07-02 20:31:24 -05:00
Shane Melton
3041ddbf09
[PM-7162] Fix broken getter when original cipher is null (#9927) 2024-07-02 16:41:57 -07:00
cyprain-okeke
ca4ac38fcb
[AC-2830] Unable to create a free organization (#9917)
* Resolve the issue free org creation

* Check that the taxForm is touched
2024-07-02 23:21:37 +01:00
github-actions[bot]
65cbcaaf04
Autosync the updated translations (#9924)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-02 22:01:42 +00:00
github-actions[bot]
75a5a663b0
Autosync the updated translations (#9923)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-02 22:00:23 +00:00
github-actions[bot]
43f7e2086b
Autosync the updated translations (#9922)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-02 21:56:01 +00:00
Shane Melton
17d37ecaeb
[PM-7162] Cipher Form - Item Details (#9758)
* [PM-7162] Fix weird angular error regarding disabled component bit-select

* [PM-7162] Introduce CipherFormConfigService and related types

* [PM-7162] Introduce CipherFormService

* [PM-7162] Introduce the Item Details section component and the CipherFormContainer interface

* [PM-7162] Introduce the CipherForm component

* [PM-7162] Add strongly typed QueryParams to the add-edit-v2.component

* [PM-7162] Export CipherForm from Vault Lib

* [PM-7162] Use the CipherForm in Browser AddEditV2

* [PM-7162] Introduce CipherForm storybook

* [PM-7162] Remove VaultPopupListFilterService dependency from NewItemDropDownV2 component

* [PM-7162] Add support for content projection of attachment button

* [PM-7162] Fix typo

* [PM-7162] Cipher form service cleanup

* [PM-7162] Move readonly collection notice to bit-hint

* [PM-7162] Refactor CipherFormConfig type to enforce required properties with Typescript

* [PM-7162] Fix storybook after config changes

* [PM-7162] Use new add-edit component for clone route
2024-07-02 13:22:51 -07:00
Bitwarden DevOps
9294a4c47e
Bumped client version(s) (#9914) 2024-07-02 17:22:57 +00:00
Addison Beck
b7e3f5bc68
Restructure the org-permissions guard to be Angular 17+ compliant (#9631)
* Document the `org-permissions` guard in code

* Restructure the `org-permissions` guard to be Angular 17+ compliant

* Update the `org-permissions` guard to use `ToastService`

* Simplify callback function sigantures

* Remove unused test object

* Fix updated route from merge
2024-07-02 09:53:06 -05:00
cyprain-okeke
804cbe6da1
[PM-5024] Migrate tax-info component (#9872)
* Changes for the tax info migration

* Return for invalid formgroup
2024-07-02 15:50:11 +01:00
Jake Fink
a5e7fde413
fix duo subscriptions and org vs individual duo setup (#9859) 2024-07-02 10:44:27 -04:00
Opeyemi
ed9d82ef1e
Revert "Bumped client version(s) (#9906)" (#9907)
This reverts commit 78c2829793.
2024-07-02 13:48:42 +02:00
Bitwarden DevOps
78c2829793
Bumped client version(s) (#9906) 2024-07-02 11:19:06 +00:00
Matt Gibson
da7e466252
[PM-9344] Clarify accepted user state (#9861)
* Prefer `Needs confirmation` to `Accepted` display status

This emphasizes that action is still required to complete setup.

* Remove unused message
2024-07-02 06:03:00 +10:00
Bitwarden DevOps
150c4b6f2d
Bumped client version(s) (#9895) 2024-07-01 17:25:00 +00:00
Addison Beck
c7777c38ef
Restructure the is-paid-org guard to be Angular 17+ compliant (#9598)
* Document that `is-paid-org` guard in code

* Remove unused `MessagingService` dependency

* Make assertions about the way the is-paid-org guard should behave

* Restructure the `is-paid-org` guard to be Angular 17+ compliant

* Random commit to get the build job moving

* Undo previous commit
2024-07-01 12:31:37 -04:00
vinith-kovan
432a4ddd17
Bug fix - error toast in 2fa (#9623)
* Bug fix - error toast in 2fa

* Bug fix - Yubikey code obscured

* 2FA error fix
2024-07-01 09:03:51 -07:00
Nick Krantz
b060c15836
add testids for attachments (#9892) 2024-07-01 11:01:31 -05:00
Jake Fink
c63e50908b
don't initialize kdf with validators, do it on first set (#9754) 2024-07-01 12:01:17 -04:00
Addison Beck
9551691fde
Restructure the org-redirect guard to be Angular 17+ compliant (#9552)
* Document the `org-redirect` guard in code

* Make assertions about the way the `org-redirect` guard should behave

* Restructure the `org-redirect` guard to be Angular 17+ compliant

* Convert data parameter to function parameter

* Convert a data parameter to a function parameter that was missed

* Pass redirect function to default organization route
2024-07-01 11:54:00 -04:00
Addison Beck
71e8fdb73d
Add the ability for custom validation logic to be injected into UserVerificationDialogComponent (#8770)
* Introduce `verificationType`

* Update template to use `verificationType`

* Implement a path for `verificationType = 'custom'`

* Delete `clientSideOnlyVerification`

* Update `EnrollMasterPasswordResetComponent` to include a server-side hash check

* Better describe the custom scenerio through comments

* Add an example of the custom verficiation scenerio

* Move execution of verification function into try/catch

* Migrate existing uses of `clientSideOnlyVerification`

* Use generic type option instead of casting

* Change "given" to "determined" in a comment
2024-07-01 11:52:39 -04:00
Jake Fink
9531d1c655
use user verification as a part of key rotation (#9722) 2024-07-01 11:15:18 -04:00
cyprain-okeke
5965f779b9
[PM-9364] Copy for Aggregate auto-scaling invoices for Teams and Enterprise customers (#9875)
* Change the seat adjustment message

* Move changes from en_GB file to en file

* revert changes in en_GB file

* Add feature flag to the change
2024-07-01 15:57:57 +01:00
Daniel García
33c985e00b
[PM-8789] Move desktop_native into subcrate (#9682)
* Move desktop_native into subcrate

* Add publish = false to crates
2024-07-01 15:19:29 +02:00
Thomas Rittson
8f66d60a7e
[AC-2791] Members page - finish component library refactors (#9727)
* Replace PlatformUtilsService with ToastService

* Remove unneeded templates

* Implement table filtering function

* Move member-only methods from base class to subclass

* Move utility functions inside new MemberTableDataSource

* Rename PeopleComponent to MembersComponent
2024-07-01 06:50:42 +10:00
Anders Åberg
e12e817d22
PM-4878: Add passkey information to items when signing in (#9835)
* Added username to subtitle

* Added subName to cipher

* Moved subName to component

* Update apps/browser/src/vault/popup/components/fido2/fido2-cipher-row.component.ts

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>

* Fixed double code and added comment

* Added changeDetection: ChangeDetectionStrategy.OnPush as per review

---------

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2024-06-30 00:50:18 +02:00
Anders Åberg
c23ee3b98a
PM-4661: Add passkey.username as item.username (#9756)
* Add incoming passkey.username as item.username

* Driveby fix, was sending wrong username

* added username to new-cipher too

* Guarded the if-block

* Update apps/browser/src/vault/popup/components/vault/add-edit.component.ts

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* Fixed broken test

* fixed username on existing ciphers

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-06-30 00:48:56 +02:00
Jared Snider
f0673dd16e
PM-4950 - Fix hint and verify delete components that had the data in the wrong place (#9877) 2024-06-28 16:30:05 -04:00
Daniel García
3c7663a965
[PM-7809] Fix memory leak in AngularThemingService for Safari extension (#9434)
* [PM-7809] Fix memory leak in AngularThemingService for Safari

* Use getSystemThemeFromWindow in createSystemThemeFromWindow
2024-06-28 21:58:15 +02:00
Cesar Gonzalez
4e3fb99b9f
[PM-9342] Inline menu does not show on username field for a form that has a password field with an invalid autocomplete value (#9860)
* [PM-9342] Inline menu does not show on username field for a form that has a password field with an invalid autocomplete value

* [PM-9342] Incorporating logic to handle multiple autocomplete values within a captured set of page details

* [PM-9342] Incorporating logic to handle multiple autocomplete values within a captured set of page details

* [PM-9342] Changing logic for how we identify new password fields to reflect a more assertive qualification

* [PM-9342] Adding feedback from code review
2024-06-28 14:57:32 -05:00
Daniel James Smith
a613d9c268
[PM-8397] Make vault timeout input standalone (#9366)
* Move vault-timeout-input to @bitwarden/auth/angular

Move vault-timeout-input.component.ts to @bitwarden/auth/angular/vault-timeout-input
Expose via barrel file
Fix imports on clients

* Add dependencies to package.json

Not necessary right now, but good practice for once we move to building each package independently

* Make VaultTimeoutInputComponent a standalone component

* Update selector to present team ownership

* Use new standalone on web

Move vault-timeout-input.component.html to @bitwarden/auth/angular/vault-timeout-input/
Delete old vault-timeout-input.component on web
Register new component on loose-components-module
Update used selector in preferences.component

* Remove unneeded export of VaultTimeoutInputComponent

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-28 17:41:17 +02:00
Addison Beck
3a3ff432b2
Update the README to mention the discrepancy with homebrew (#9856)
* Update the README to mention the discrepancy with homebrew

* Update copy
2024-06-28 10:59:28 -04:00
github-actions[bot]
20a6552621
Autosync the updated translations (#9865)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-28 14:12:42 +00:00
github-actions[bot]
27070eb031
Autosync the updated translations (#9864)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-28 14:07:02 +00:00
Bernd Schoolmann
383a4851b6
Add auto submit on identifier query parameter (#9803) 2024-06-28 15:35:10 +02:00
github-actions[bot]
09c6995e10
Autosync the updated translations (#9866)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-28 13:31:59 +00:00
Shane Melton
b7a961bf1f
[PM-8486] Browser Refresh - Autofill functionality (#9616)
* [PM-8486] Introduce VaultPopupAutofill service

* [PM-8486] Remove moved autofill functionality from VaultPopupItem service

* [PM-8486] Add autofill functionality to button and menu options

* [PM-8486] Hide Autofill and Save option for Cards/Identities

* [PM-8486] Reduce nesting in closePopup

* [PM-8486] Breakup doAutofillAndSave method

* [PM-8486] Start subscription in autofill service constructor

* [PM-8486] Cleanup missed calls to removed methods
2024-06-27 13:30:55 -07:00
Ike
2042b3a26c
[PM-8938] two factor settings authenticator validation (#9857)
* add validation

* minor adjustments

* better useability on submit button

* removed img

* fixed formatting
2024-06-27 12:38:10 -07:00
Bernd Schoolmann
c01f6be286
[PM-1802] Update 2fa provider icons and description (#9568)
* Update yubikey to yubico

* Update icons and descriptions

* Change order of 2fa providers

* Refactor 2fa providers into separate component

* Update i18n messages for 2fa providers

* Update design

* Fix link

* Remove unused SVGs

* Undo changes to scss

* Add speedbumps to links

* Fix missing i18n string

* Add a11y tags

* Fix incorrect filepath

* Remove unused i18n strings

* Delete accidentally committed file

* Fix premium and enabled checkmark being in new line

* Rename two-factor-icon selector

* Update authenticator names in two-factor-authenticator setup component

* Update text according to figma design

* Update keys to notify crowdin translators of changed content

* Move svg icons to separate file

* Fix incorrect i18n key
2024-06-27 10:14:21 -07:00
✨ Audrey ✨
1080d46aaf
[PM-9170] generator library migrations (#9812)
* migrate browser to generator libraries
* migrate cli to generator libraries
* migrate desktop to generator libraries
* migrate angular library to generator libraries
* migrate web to generator libraries
2024-06-27 12:16:04 -04:00
Nick Krantz
5ce4e8f4e5
[PM-7897] Attachments - Part 1 (#9715)
* add v2 attachments page

* add add attachment fields

* add file upload UI

* move cipher-attachments to a new component

* load cipher and add initial submit

* add list of existing attachments

* fix incorrect toast usage

* integrate with bit submit states

* add new max file translation without the period

* refactor attachments v2 component

* remove default list styles

* add tests for attachments components

* use `CipherId` type

* pass submit button reference to the underlying form

* remove bitFormButton

* [PM-7897] Attachments Part 2 (#9755)

* make `isNew` param optional

* emit success output after upload

* navigate the user to the edit screen after an upload

* allow for the deletion of an attachment

* add download attachment component to attachments view

* implement base attachment link

* add premium redirect

* show specific error message for free organizations

* make open-attachments a button so it is keyboard accessible

* fix lint error

* use bitItem

* using bitAction rather than standalone loading/deleting value

* remove extra title, unneeded because of the appA11yTitle usage

* use `replaceUrl` to avoid the back button going to the attachments page

* use bit-item for consistency

* show error when a user tries to open an attachment that is a part of a free org

* add `CipherId` type for failed builds
2024-06-27 10:50:45 -05:00
Tom
98c6cc4a7e
[PM-5957] CLI - List items long runtime (#9589)
* Initial checking of collect many

* should update to better handle parameters

* cleaning up event collection params

* Adding documentation

* Removing commented out code saved for testing

* Adding pr changes and using the account service for event collection user id

* browser main.background event collection service needed the account service
2024-06-27 08:44:43 -04:00
Addison Beck
76a3cb5a46
Update CLI storefronts to use bitwarden licensed artifacts (#9827)
* Update the build job to use `bit` artifacts for stores

* Update the CLI's license in `package.json` for the NPM store

* Add license configuration to `snapcraft.yaml`
2024-06-26 16:01:05 -04:00
Tom
89a34a396c
Adding the setting of the account to null on logout for web (#9592)
Merging.
2024-06-26 14:42:25 -04:00
vinith-kovan
ab83e822f7
[PM-2056] update two factor duo dialog (#8976)
* migrating two factor duo component

* migrating two factor duo component

* two factor duo component migration

* two factor duo component migration

* removed null check from two-factor-setup

* cleanup duo changes

* remove ikey and skey references

* clean up

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
2024-06-26 23:25:42 +05:30
vinith-kovan
b38629b4c9
[AC-2411] migrate account component (#8854)
* migrate account component

* account component review comment addressed

* account component review comment addressed

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2024-06-26 23:16:32 +05:30
Daniel James Smith
1495b06736
Move send icons to @bitwarden/send-ui (#9840)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-26 15:52:55 +01:00
KiruthigaManivannan
5e9e095b40
PM-5022 Migrate Payment Method component (#8397)
* PM-5022 Migrated Payment Method component

* PM-5022 Addressed review comments

* PM-5022 Addressed review comments on CSS

* PM-5022 Addressed the css comment and fixed build issues

* PM-5022 Changed app-callout to bit-callout

---------

Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
2024-06-26 19:36:25 +05:30
Alex Morask
dbc6f1c840
Add description to billing history, update invoice table and report name (#9777) 2024-06-26 09:30:37 -04:00
Will Martin
8df054cf51
[CL-319] custom back action in popup header component (#9829)
* expose FunctionReturningAwaitable from CL lib

* expose backAction as input on popup header component
2024-06-25 15:55:49 -04:00
Jake Fink
d7bf0fe536
[PM-8868] only deserialize org invite if not nullish (#9644)
* only deserialize org invite if not nullish

* add null check to OrganizationInvite init methods

* PR feedback
2024-06-25 15:00:27 -04:00
Ike
41e1d91558
[PM-5156] [PM-5216] Duo v2 removal (#9513)
* remove library and update package and webpack

* update 2fa flow and remove feature flag

* update request and response models

* fix merge conflicts
2024-06-25 11:09:45 -07:00
Daniel James Smith
c35bbc522c
[PM-9051][PM-8641] Use reusable export-component on web (#9741)
* Add export-web.component

Introduce new export-web component
Delete old component
export.module - With export-web being standalone there's no need for a importModule
Change routing to load new component

* Prepare export.component to receive a orgId via the hosting-component

* Remove unused onSaved as it's replaced by onSuccessfulExport

* Refactor org-vault-export.component

Introduce new org-vault-export.component.html as the old component relied on the markup from password manager
Refactor org-vault-export.component
Retrieve organizationId from Route and pass it into the shared export.component
Ensure when exporting from AC to include all data from the selected org
org-vault-export.module - With the new component being standalone there's no need for a importModule
Change routing to load new org-vault-export component

* PM-8641 - Add success toast to base-export component
This ensures a success toast is shown on all clients consistently
Add missing entries into clients messages.json

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-25 19:17:03 +02:00
Bitwarden DevOps
44fb8cda1b
Bumped client version(s) (#9826) 2024-06-25 16:00:31 +00:00
KiruthigaManivannan
7fffbc7938
PM- 2059 Update Two factor webauthn dialog (#9009)
* PM-2059 Update Two Factor Webauth Dialog

* PM-2059 Added event emitter for enabled status

* PM-2059 Addressed review comments

* convert to arrow function

* PM-2059 Latest comments addressed

* PM-2059 Updated disable method by adding a condition to capture simple dialog in base component

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-06-25 20:33:48 +05:30
Alex Morask
b6c46745a5
Add default OrganizationUpdateRequest values when FormControls are disabled (#9774) 2024-06-25 10:45:21 -04:00
renovate[bot]
a0e00f9519
[deps] Platform: Update @types/node to v20.14.8 (#9818)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-25 09:54:27 -04:00
Jake Fink
1fdfd695e1
reference correct default kdf config (#9822)
* reference correct default kdf config

* update change kdf references
2024-06-25 08:57:59 -04:00
Jake Fink
0add2949c0
[PM-8772] move ranges to static properties on class (#9567)
* move ranges to static properties on class

* rename static properties
2024-06-25 08:21:02 -04:00
Andreas Coroiu
dce5c0f184
[PM-6413] Add http loophole for localhost (#9236)
* [PM-6413] feat: add http loophole for localhost

Fixes #6882

* feat: add sanity check

* feat: change fido2 filters to allow scripts on localhost

* [PM-6413] fix: injection tests
2024-06-25 11:06:04 +02:00
Jason Ng
1826403d8d
added a clear organization method inside vault-filter service (#9786) 2024-06-24 12:30:04 -07:00
renovate[bot]
d7d35a9e2f
[PM-6446][deps] Platform: Update argon2 to v0.40.1 (#8073)
* [deps] Platform: Update argon2 to v0.40.1

* Update inclusion in context isolation

* Ensure node-gyp available for mac builds

Mac runners seem to have progressed above python 3.12, which removed `distutils`. We need to ensure it's installed for node-gyp compilations.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2024-06-24 13:28:34 -04:00
Alex Morask
fa1a6359bc
[AC-2774] [AC-2781] Consolidated issues for Consolidated Billing (#9717)
* Rename provider client components for brevity

* Make purchased seats dynamic on create client component

* Fix access and empty state for service users

* Refactor manage client subscription dialog

* Fixed manage subscription dialog errors

* Make unassigned seats dynamic for create client dialog

* Expanded invoice statuses

* Update invoice header on invoices component
2024-06-24 11:15:53 -04:00
renovate[bot]
043a7a39ff
[deps] Autofill: Update tldts to v6.1.29 (#9800)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-24 10:18:09 -04:00
renovate[bot]
5d73a0df1e
[deps] Tools: Update electron to v30.1.2 (#9773)
* [deps] Tools: Update electron to v30.1.2

* Bump version in electron-builder

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-24 12:15:33 +02:00
aj-rosado
ce75800aec
Added aria-expanded attribute to options button on web send add edit (#9732) 2024-06-24 10:34:52 +01:00
Ike
705a02086e
[PM-7693] Remove cookie from Duo connector (#9699)
* utilizing locale service in duo

* refactor launchDuoUri method

* Add cookie information back in ext. and desktop to support backwards compatibility

* Update duo-redirect.ts

fixing comment
2024-06-21 14:56:27 -07:00
Conner Turnbull
87932cf926
Update email on sponsored families signup to update on change (#9649) 2024-06-21 14:01:04 -04:00
github-actions[bot]
248bf56b95
Autosync the updated translations (#9761)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-21 08:06:02 +00:00
github-actions[bot]
783c31683a
Autosync the updated translations (#9760)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-21 08:03:59 +00:00
github-actions[bot]
f4a4e3b822
Autosync the updated translations (#9759)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-21 08:02:10 +00:00
Ike
d74435dba7
[PM-8924] Login component tab and keyboard navigation fixes (#9707)
* tab and keyboard navigation fixes

* PM-8924 - Improve login component keyboard and mouse navigation scenarios

Co-authored-by: Ike Kottlowski <ikottlowski@bitwarden.com>

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-06-20 14:20:54 -07:00
Nick Krantz
82f8641926
[PM-8615] Filters Accessibility tweaks (#9538)
* wrap filters in a role="toolbar" & add aria label

* announce deactivated org message when presented to the user
2024-06-20 14:21:22 -05:00
Thomas Avery
1763324a89
[SM-654] Individual secret permissions (#9527)
* update secret service

* Add new method to access policy selector service

* Add individual secret permission management to secret dialog

* add secret.service tests
2024-06-20 12:43:41 -05:00
Bitwarden DevOps
b70d227b86
Bumped client version(s) (#9751) 2024-06-20 16:57:26 +00:00
rr-bw
9fc89aa450
[PM-4952] Remove Password Component Bug Fixes (#9697)
* fix button padding

* convert to arrow functions
2024-06-20 09:04:35 -07:00
Jake Fink
b306554675
[PM-6789] finish key rotation distribution and fix legacy user (#9498)
* finish key rotation distribution and fix legacy user

* add ticket to TODO

* PR feedback: docs and renaming

* fix webauthn tests

* add test for send service

* add await to test
2024-06-20 11:36:24 -04:00
SmithThe4th
eadb1fa4ef
[PM-7215] User with Can View permission can remove passkey or delete URIs from UI, though it isn't saved (#9607)
* Removed - button on passkeys and uris when user has view only access, disabled cog button and made input fields on uris readonly when user has view only access

(cherry picked from commit 077edd77c1)

* switched to use viewonly to hide remove button

(cherry picked from commit dbd854494f)
2024-06-20 10:59:11 -04:00
✨ Audrey ✨
639debe91b
[PM-9008] factor generator-extensions into separate libraries (#9724) 2024-06-20 10:49:23 -04:00
SmithThe4th
8bd2118d77
reverted user verification for passkeys (#9734) 2024-06-20 10:35:45 -04:00
Oscar Hinton
cbb2fa9442
[PM-8972] Migrate callouts to the new CL callout (#9710)
* Migrate callouts to the new CL callout
2024-06-20 15:45:48 +02:00
cyprain-okeke
593dc3c716
[AC-2721] [Defect] Apply subscription status updates in provider subscription details (#9729)
* Resolve the pending cancellation status

* Add the contact information
2024-06-20 13:50:10 +01:00
Daniel James Smith
8d04731633
[PM-6568][PM-8820][Tech-Debt] Migrate all tools owned toasts to use CL ToastService instead of PlatformUtilsService (#9405)
* Migrate all tools owned toasts to use CL ToastService instead of PlatformUtilsService

* Fix test that was missing a mock

* Fix double checking file and file-content selection

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-19 18:28:47 +02:00
KiruthigaManivannan
7e3ba087ec
PM-4950 Migrate Hint Component (#9303)
* PM-4950 Migrate Hint Component

* PM-4950 Updated Anon layout changes

* PM-4950 Addressed review comments

* PM-4950 - Tweak form control + add comment.

* PM-4950 - Address PR feedback

* PM-4950 - Move canActivate up a level.

* PM-4950 - Consolidate route under AnonLayoutWrapperComponent path from merging in main.

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Todd Martin <tmartin@bitwarden.com>
2024-06-19 11:42:16 -04:00
vinith-kovan
97002c8852
[PM 4973] migrate change kdf component (#8485)
* chnage kdf component migration

* chnage kdf component migration

* change kdf component migration

* migrating change-kdf component

* migrating change-kdf component

* migrating change-kdf component

---------

Co-authored-by: Todd Martin <tmartin@bitwarden.com>
2024-06-19 11:35:22 -04:00
KiruthigaManivannan
dfd4479a9c
PM-4960 Migrate Verify Recover Delete Component (#9171)
* PM-4960 Migrate Verify Recover Delete Component

* PM-4960 Minor fix

* PM-4960 Addressed review comments
2024-06-19 11:18:31 -04:00
renovate[bot]
a427ec371a
[deps] Platform (CL): Update @compodoc/compodoc to v1.1.25 (#8966)
* [deps] Platform (CL): Update @compodoc/compodoc to v1.1.25

* Fix compodoc errors

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Vicki League <vleague@bitwarden.com>
2024-06-19 09:00:56 -04:00
Bitwarden DevOps
4a25db4ec0
Bumped client version(s) (#9725) 2024-06-18 23:30:19 +00:00
aj-rosado
1a37d02556
[AC-2504] Add new members access report card (#9335)
* Added new report card and FeatureFlag for MemberAccessReport

* Add new "isEnterpriseOrgGuard"

* Add member access icon

* Show upgrade organization dialog for enterprise on member access report click

* verify member access featureflag on enterprise org guard

* add comment with TODO information for follow up task

* Improved readability, removed path to wrong component and refactored buildReports to use the productType

* added TODO to remove the feature flag on cleanup

* changing ProductType to ProductTierType on isEnterpriseOrgGuard
2024-06-18 22:13:55 +01:00
Bitwarden DevOps
08cdecf514
Bumped client version(s) (#9720) 2024-06-18 19:10:10 +00:00
Bitwarden DevOps
9696b640fd
Bumped client version(s) (#9719) 2024-06-18 18:50:28 +00:00
Bitwarden DevOps
efe4d4a214
Bumped client version(s) (#9716) 2024-06-18 18:33:13 +00:00
Merissa Weinstein
96f1aa073c
[PM-8391] turn on enableCipherKeyEncryption flag (#9362)
* turn on enableCipherKeyEncryption flag

* turn enableCipherKeyEncryption flag on in desktop config

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2024-06-18 12:11:10 -05:00
Nick Krantz
2bec2c5605
fix sync service provider (#9713) 2024-06-18 10:15:38 -05:00
Nick Krantz
c219addc1c
[PM-2664] Hide Owners column below desktop viewports (#8923)
* hide owners row below desktop viewports

* hide collection owner on smaller screens
2024-06-18 08:23:02 -05:00
renovate[bot]
6091958d22
[PM-8955][deps] Tools: Update electron to v30.1.1 (#9683)
* [deps] Tools: Update electron to v30.1.1

* Bump version in electron-builder

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-18 10:56:01 +00:00
rr-bw
2a0e21b4bb
[PM-5085] Create InputPasswordComponent (#9630)
* setup for InputPasswordComponent and basic story

* add all input fields

* add translated error messages

* update validation

* add password-callout

* update hint text

* use PolicyService in component

* setup SetPasswordComponent

* remove div

* add default button text

* add mocks for InputPassword storybook

* simplify ngOnInit

* change param and use PolicyApiService

* check for breaches and validate against policy

* user toastService

* use useValue for mocks

* hash before emitting

* validation cleanup and use PreloadedEnglishI18nModule

* add ngOnDestroy

* create validateFormInputsDoNotMatch fn

* update validateFormInputsComparison and add deprecation jsdocs

* rename validator fn

* fix bugs in validation fn

* cleanup and re-introduce services/logic

* toggle password inputs together

* update hint help text

* remove SetPassword test

* remove master key creation / hashing

* add translations to browser/desktop

* mock basic password-strength functionality

* add check for controls

* hash before emitting

* type the EventEmitter

* use DEFAULT_KDF_CONFIG

* emit master key

* clarify comment

* update password mininum help text to match org policy requirement
2024-06-17 14:56:24 -07:00
Jake Fink
75615902a3
fix email 2fa validation (#9702) 2024-06-17 17:26:52 -04:00
Jake Fink
8440759602
add back env selector to 2fa (#9701) 2024-06-17 17:25:58 -04:00
Jake Fink
0c6e296dc3
add validation to form (#9691) 2024-06-17 17:23:25 -04:00
aj-rosado
26186618f5
[PM-245] Fixed validation on navigate back on browser send add edit (#9605)
* Fixed validation on navigate back on browser send add edit

* simplified expression using nullish-resolution
2024-06-17 21:38:35 +01:00
Cesar Gonzalez
90d619acb5
[PM-8027] Inline menu appears within input fields that do not relate to user login (#9110)
* [PM-8027] Inlin menu appears within input fields that do not relate to user login

* [PM-8027] Inlin menu appears within input fields that do not relate to user login

* [PM-8027] Inlin menu appears within input fields that do not relate to user login

* [PM-8027] Working through logic heuristics that will help us determine login form fields

* [PM-8027] Fixing jest test

* [PM-8027] Reworking inline menu to qualify and setup the listeners for each form field after page deatils have been collected

* [PM-8027] Cleaning up implementation details

* [PM-8027] Cleaning up implementation details

* [PM-8027] Cleaning up implementation details

* [PM-8027] Updating update of page details after mutation to act on an idle moment in the browser

* [PM-8027] Updating how we guard against excessive getPageDetails calls

* [PM-8027] Refining how we identify a username login form field

* [PM-8027] Refining how we identify a password login form field

* [PM-8027] Refining how we identify a username login form field

* [PM-8027] Fixing jest tests for the overlay

* [PM-8027] Fixing jest tests for the collectPageDetails method

* [PM-8027] Removing unnecessary code

* [PM-8027] Removing unnecessary code

* [PM-8027] Adding jest test to validate new behavior

* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Working through jest tests for the InlineMenuFieldQualificationService

* [PM-8027] Finalization of Jest test for the implementation

* [PM-8027] Fixing a typo

* [PM-8027] Incorporating a feature flag to allow us to fallback to the basic inline menu fielld qualification method if needed

* [PM-8027] Incorporating a feature flag to allow us to fallback to the basic inline menu fielld qualification method if needed

* [PM-8027] Fixing issue with username fields not qualifyng as a valid login field if a viewable password field is not present

* [PM-8027] Fixing an issue where a field that has no form and no visible password fields should be qualified if a single password field exists in the page

* [PM-8027] Fixing an issue where a field that has no form and no visible password fields should be qualified if a single password field exists in the page

* [PM-8869] Autofill features broken on Safari

* [PM-8869] Autofill features broken on Safari

* [PM-5189] Fixing an issue found within Safari

* [PM-8027] Reverting flag from a fallback flag to an enhancement feature flag

* [PM-8027] Fixing jest tests
2024-06-17 18:49:29 +00:00
Bernd Schoolmann
1970abf723
[PM-4370] Implement PRF key rotation (#9517)
* Add prf key rotation

* Fix tests

* Re-add comment

* Remove encrypted private key from webauthnlogincredentialresponse

* Refactor to use rotateablekeyset

* Move key rotation logic to webauthn-login-admin service

* Fix type error

* Add parameter validation

* Add documentation

* Add input validation

* Add tests
2024-06-17 20:47:06 +02:00
Will Martin
06410a0633
[CL-118][CL-164][PM-8019] collapsible side navigation (#6383) 2024-06-17 14:10:50 -04:00
Bitwarden DevOps
3bfdc50d5d
Bumped client version(s) (#9700) 2024-06-17 18:01:01 +00:00
Tom
c26669cf60
Moving the config command and adding the error for server config when logged in (#9347) 2024-06-17 11:00:19 -04:00
Todd Martin
4e19c3ef52
[PM-7387] Hide Master Password tab for users without MP (#9555) 2024-06-17 10:41:22 -04:00
github-actions[bot]
f2bf4322b9
Autosync the updated translations (#9687)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-17 12:50:07 +00:00
github-actions[bot]
94dcc89747
Autosync the updated translations (#9686)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-17 12:49:04 +00:00
github-actions[bot]
b35b89bb66
Autosync the updated translations (#9685)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-17 12:46:28 +00:00
vinith-kovan
18b56c0b5a
Bug fix - Yubikey code obscured (#9624) 2024-06-16 14:33:43 -04:00
KiruthigaManivannan
1976843f75
PM-8482 Change KDF Confirmation no longer has browser validation (#9485)
* PM-8482 Change KDF Confirmation no longer has browser validation

* PM-8482 - ChangeKdfConfirmationComponent - use form invalid instead of manual form valid check

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-06-16 14:32:08 -04:00
Todd Martin
66dc01cc62
[PM-7930] Add ability to pop out extension to user decryption options component (#9037)
* Added app-pop-out to components

* Removed debugging.

* Removed pop-out from login via auth request.

* Undid header changes.

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2024-06-16 14:01:48 -04:00
github-actions[bot]
aab9b0e73c
Autosync the updated translations (#9641)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-16 07:18:57 +00:00
Jared Snider
b15cac627f
Auth/ Fix web route data configuration issues for SSO comp and Accept Emergency comp (#9671) 2024-06-15 11:10:00 -04:00
Robyn MacCallum
afe9a1768a
[SM-1305] Add Kubernetes and Rust to the integrations page (#9611)
* Add Kubernetes and Rust to the integrations page

* Fix integrations page tests
2024-06-14 16:54:52 -04:00
Jared Snider
0dd476588d
PM-8886 - SsoComponent - fix missing form validation (#9665) 2024-06-14 16:17:54 -04:00
Jake Fink
1043a582c1
[PM-7879, PM-7635] Add server verification for master password to user verification (#9523)
* add MP server verification

* add tests and minor service enhancements

* fix tests

* fix initializations for cli and browser

* fix CLI

* pr feedback
2024-06-14 16:06:55 -04:00
rr-bw
e38a39f7c6
adjust w (#9657) 2024-06-14 12:50:05 -07:00
Conner Turnbull
f484dd491b
[PM-8830] Billing Enums Rename (#9612)
* Renamed ProductType to ProductTierType

* Renamed Product properties to ProductTier

* Moved product-tier-type.enum.ts to billing folder

* Added ProductType enum
2024-06-14 15:43:40 -04:00
Bitwarden DevOps
e521d702ba
Bumped client version(s) (#9668) 2024-06-14 19:41:36 +00:00
Nick Krantz
90cdd9343b
[Fix] Storybook: product navigation errors (#9664)
* fix product switcher stories by adding sync service mock

* remove redundant await
2024-06-14 14:16:13 -05:00
Jared Snider
dda17885f9
PM-8867 - RecoverDelete comp - fix missing page title (#9660) 2024-06-14 14:06:56 -04:00
Bitwarden DevOps
966737c2e2
Bumped client version(s) (#9661) 2024-06-14 17:58:33 +00:00
Jared Snider
a95ca524c6
PM-8866 - Fix Recover delete component submit missing form validation. (#9658) 2024-06-14 13:49:27 -04:00
Cesar Gonzalez
6e7239e05e
[PM-8885] Hardcode Fallback to TreeWalker Strategy for PageCollection details (#9652) 2024-06-14 12:08:13 -05:00
Bitwarden DevOps
977712873b
Bumped client version(s) (#9655) 2024-06-14 16:58:44 +00:00
Alex Morask
af53df09ac
[AC-1944] Add provider billing history component (#9520)
* Add provider-billing-history.component

* Implement provider client invoice export
2024-06-14 12:27:49 -04:00
Jared Snider
215bbc2f8e
Auth/PM-7324 - Registration with Email Verification - Registration Start Component Implementation (#9573)
* PM-7324 - Register new registration start comp at signup route on web

* PM-7324 - Add registerSendVerificationEmail logic in API service layer.

* PM-7324 - Update registration start comp to actually send information to API and trigger email.

* PM-7324 - progress on opt in for marketing emails redesign.

* PM-7324 - Add feature flag and feature flag guard to sign up route.

* PM-7324 - RegistrationEnvSelector - emit initial value

* PM-7324 - Registration Start comp - wire up setReceiveMarketingEmailsByRegion logic.

* PM-7324 - Registration start html - use proper link for email pref management.

* PM-7324 - Translate text

* PM-7324 - Design pass

* PM-7324 - design pass v2

* PM-7324 - Update Tailwind config to add availability of anon layout to desktop and browser extension

* PM-7324 - Desktop - AppRoutingModule - Add new signup route protected by the email verification feature flag.

* PM-7324 - BrowserExtension - AppRoutingModule - Add signup route protected by feature flag

* PM-7324 - Feature flag all register page navigations to redirect users to the new signup page.

* PM-7324 - Update AnonLayoutWrapperComponent constructor logic to avoid passing undefined values into I18nService.t method

* PM-7324 - Accept org invite web comp - adjust register url and qParams

* PM-7324 - Add AnonLayoutWrapperData to desktop & browser since we don't need titleId.

* PM-7324 - Revert anon layout wrapper comp changes as they were made separately and merged to main.

* PM-7234 - Fix registration start component so the login route works for the browser extension.

* PM-7324 - Registration start story now building again + fix storybook warning around BrowserAnimationsModule

* PM-7324 - Registration Start - add missing tw-text-main to fix dark mode rendering.

* PM-7324 - Update storybook docs

* PM-7324 - Get stub of registration finish component so that the verify email has something to land on.

* PM-7324 - Registration start - receive marketing materials should never be required.

* PM-7324 - Add finish signup route + required translations to desktop & browser.

* PM-7324 - AnonLayoutWrapperComponent - Resolve issues where navigating to a sibling anonymous route wouldn't update the AnonLayoutWrapperData.

* PM-7324 - Remove unnecessary array

* PM-7324  - Per PR feedback, improve setReceiveMarketingEmailsByRegion

* PM-7324 - Per PR feedback, inject login routes via route data

* PM-7324 - Document methods in account api service

* PM-7324 - PR feedback - jsdoc tweaks
2024-06-14 11:40:56 -04:00
Cesar Gonzalez
eb96f7dbfb
[PM-8869] Fix broken autofill cache invalidation features on Safari (#9643)
* [PM-8869] Autofill features broken on Safari

* [PM-8869] Autofill features broken on Safari
2024-06-14 10:26:41 -05:00
renovate[bot]
9ef8404b7b
[deps] Tools: Update electron to v30 - abandoned (#8764)
* [deps] Tools: Update electron to v30

* Bump version in electron-builder.json

* Update to electron 30.1.0

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Hinton <hinton@users.noreply.github.com>
2024-06-14 17:16:29 +02:00
Nick Krantz
94438d4138
[PM-8208] Fix: Product Navigation flash (#9587)
* wait until a sync is complete to render the product switcher content

* refactor unneeded observables into their own variable

* do not show product switcher button until content is loaded

* use `ReplaySubject` to ensure that `syncCompleted$` last value is always used
2024-06-14 08:24:50 -05:00
Daniel García
e3b425069c
[PM-8870] Fix argon2 in desktop (#9628) 2024-06-14 11:36:26 +02:00
github-actions[bot]
fb4987b7b1
Autosync the updated translations (#9642)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-14 08:21:47 +00:00
github-actions[bot]
5523447c43
Autosync the updated translations (#9640)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-14 08:06:44 +00:00
Rui Tomé
f85b7b314c
[AC-1658] Update list command to show only organizations where the user is a member (#9453)
* Refactor list organizations command to use organizationService.memberOrganizations$

* Deprecate OrganizationService.getAll method and update CLI get command to use the organizations observable
2024-06-14 15:38:50 +10:00
Shane Melton
2333059885
[PM-8831] Hide trashed items from new vault popup lists (#9633) 2024-06-13 14:11:18 -07:00
Bitwarden DevOps
d266868dd8
Bumped client version(s) (#9636) 2024-06-13 20:26:52 +00:00
Shane Melton
2ff9c3bb76
[AC-2771] [AC-2772] Provider Restriction Fixes (#9635)
* [AC-2771] Do not make API request when restricted provider is not a member of the org

* [AC-2771] Fix console errors when switching organizations

* [AC-2772] Fix org vault for providers who are members
- Show vault filters
- Hide header search bar
- Show create new item button
2024-06-13 13:18:49 -07:00
Bernd Schoolmann
84e9778669
[PM-4139] Remove approve device logins setting and enable it by default (#9495)
* Remove login with device setting and enable it by default

* Remove unused i18n message
2024-06-13 18:05:05 +00:00
Shane Melton
e56a3386a2
[AC-2763] Allow providers who are also members access to items (#9585)
* [AC-2763] Do not restrict providers if they are also a member of the organization

* [AC-2763] Reduce branching complexity

* [AC-2763] Remove explicit restrict provider access checks in Vault

We can safely fall back organization helpers for cipher access as it already accounts for provider users who are members.
2024-06-13 07:21:14 -07:00
Thomas Rittson
89aa6220ca
[AC-2740] Add device-approval to bw serve (#9512)
* Extract bw serve endpoint configuration to a configurator class

* Add device-approval endpoints to bw serve
2024-06-13 11:32:51 +10:00
Thomas Rittson
b35930074c
[PM-8457] [PM-8608] Members page - remove paging logic / fix search (#9515)
* update admin console members page to use Component Library
  components and tools, including virtual scroll and table filtering

* temporarily duplicate the base component to avoid impacting
  other subclasses
2024-06-13 08:09:35 +10:00
Shane Melton
6687ef5978
[PM-7683] Fix dynamic item defects (#9575)
* [PM-8639] Add data-testid attribute for test automation

* [PM-8669] Add autofill aria label

* [PM-8674] Show autofill menu options for card/identities when not in the autofill suggestion list

* [PM-8635] Hide menu items when copy cipher field directive is disabled

* [PM-8636] Disable copy menu dropdown when no items available to copy

* [CL-309] Add title override to bitBadge

* [PM-8669] Update menu-item directive disabled input

* [PM-7683] Fix race condition for remainingCiphers$

* [PM-7683] Use strict equality check
2024-06-12 14:33:18 -07:00
Conner Turnbull
4d27824064
Revert "[PM-5024] tax info component migration (#8199)" (#9603)
This reverts commit 99dc88688a.
2024-06-12 12:04:48 -04:00
Jake Fink
c1d3659a28
initialize subscription after setting initial values (#9579) 2024-06-12 11:50:23 -04:00
Conner Turnbull
a7912ad10c
Revert "Upload license dialog not closing bug fix (#9588)" (#9602)
This reverts commit bece072086.
2024-06-12 16:22:46 +01:00
KiruthigaManivannan
dd5d01283e
PM-4954 Migrate SSO Component (#9126)
* PM-4954 Migrate SSO Component

* PM-4954 Updated anon layout changes

* PM-4954 Updated oss routing module

* PM-4954 Addressed review comments

* PM-4954 - SSO Comp - adjust to use form control accessor.

* PM-4954 - SsoComp - update form control accessor to use type safe approach.

* PM-4954 - Move canActivate up a level

* PM-4954 - Consolidate route under AnonLayoutWrapperComponent path after merging in main.

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2024-06-12 19:46:58 +05:30
vinith-kovan
ae688d9e9e
[PM-4961]anon-layout login component migrated (#9167)
* anaon-layout login component migrated

* Login component migration

* Login component migration

---------

Co-authored-by: Ike Kottlowski <ikottlowski@bitwarden.com>
2024-06-12 18:59:44 +05:30
KiruthigaManivannan
d5e0ab74a4
PM-1943 Migrate Recover Delete Component (#9169)
* PM-1943 Migrate Recover Delete Component

* PM-1943 Anon layout changes done

* PM-1943 - await navigate

* PM-1943 - Add new anon layout wrapper env selector.

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-06-12 18:37:08 +05:30
Bitwarden DevOps
88dc574982
Bumped client version(s) (#9596) 2024-06-12 12:54:20 +00:00
Conner Turnbull
f85c4877e2
Updated certain billing callsites to get billing history instead (#9443) 2024-06-12 07:52:59 -04:00
vinith-kovan
99dc88688a
[PM-5024] tax info component migration (#8199)
* tax info component migration

* tax info component migration

* tax info component migration

* PM-5024 Updated form controls in the component

---------

Co-authored-by: KiruthigaManivannan <kiruthiga.manivannan@kovanlabs.com>
2024-06-12 13:28:23 +05:30
vinith-kovan
bece072086
Upload license dialog not closing bug fix (#9588) 2024-06-12 12:19:33 +05:30
Cesar Gonzalez
3b0005b48c
[PM-8518] Autofill scripts do not inject into sub frames on install (#9459)
* [PM-8518] Autofill scripts do not inject into sub-frames on install

* [PM-8518] Implementing jest tests for added BrowserApi methods

* [PM-8518] Adding generic typing to tabSendMessage call
2024-06-11 15:50:03 -05:00
Cesar Gonzalez
fe82dbe2b9
[PM-8510] Implement collect page details observable (#9452)
* Working through a POC of a collectPageDetails observable

* Implementing collect page details observable

* [PM-8510] Implement collectPageDetails observable

* [PM-8510] Adding documentation to newly created collectPageDetailsFromTab method

* [PM-8510] Removing unnecessary file

* [PM-8510] Implementing Jest tests for the collectPageDetailsFromTab$ method

* [PM-8510] Implementing Jest tests for the collectPageDetailsFromTab$ method

* [PM-8510] Implementing Jest tests for the collectPageDetailsFromTab$ method

* [PM-8510] Implementing Jest tests for the collectPageDetailsFromTab$ method

* [PM-8510] Removing unnecessary property

* [PM-8510] Adding subscription reference to current tab component

* [PM-8510] Fixing jest tests
2024-06-11 20:00:05 +00:00
rr-bw
9b0250d4fd
Check undefined data properties before i18n (#9590)
* remove duplicate route

* check for undefined before translation
2024-06-11 12:06:02 -07:00
vinith-kovan
19d863c9ef
[PM-4956] two factor component migration (#9204)
* two factor component migration

* two factor component migration

* two factor component migration

* two factor component migration

* two factor component migration
2024-06-11 23:25:58 +05:30
vinith-kovan
832abcd955
[PM-2057] update two factor email dialog (#9547)
* migrating two factor email component

* two factor email component migration

* two factor email component migration

* two factor email component migration

* two factor email component migration
2024-06-11 23:17:55 +05:30
Tom
e6803e05ee
[PM-8593] CLI - Logout needs to reset active account (#9503)
* On logging out the account service active account needs set to null

* Auth service logout back to old spot and account switch after cleaning the state
2024-06-11 13:36:31 -04:00
Alex Morask
f6702cd2d7
[AC-2595] [AC-2596] Empty clients placeholder and setup provider hint (#9505)
* Added empty state to providers clients page

* Added bitForm to Setup component and added billing email hint
2024-06-11 10:36:31 -04:00
Nick Krantz
cbc34950fb
add check for PersonalOwnershipPolicy in vault filters (#9570) 2024-06-10 14:25:21 -05:00
Jason Ng
841edc1058
[PM-7102] Create Add/Edit container for Item v2 work (#9541)
* set up new add-edit-v2 component
2024-06-10 14:23:29 -04:00
Vincent Salucci
b169207b74
[AC-2647] Remove Flexible Collections MVP code (#9518)
* chore: organization.ts, remove refs to flexibleCollections and isManager, refs AC-2647

* chore: clean up callers of removed methods from organization.ts, refs AC-2647

* chore: access-selector, remove fc input and update permissionList param, refs AC-2647

* chore: update permissionList caller, update group-add-edit fc refs, and remove accessAll, refs AC-2647

* chore: update member-dialog fc callers, refs AC-2647

* chore: update bulk-collections-dialog fc callers, refs AC-2647

* chore: update collection-dialog fc callers, refs AC-2647

* chore: update simple fc caller to misc files, refs AC-2647

* chore: update member-dialog fc callers, refs AC-2647

* chore: remove accessAll references and update callers, refs AC-2647

* chore: update comment to specify v1 usage, refs AC-2647

* chore: remove unused message keys and code calls to use those messages, refs AC-2647

* chore: remove readonly false from access-selector model map function, refs AC-2647
2024-06-10 11:59:20 -05:00
Shane Melton
19f2d2aefc
[PM-8379] Update vault popup items service to track loading state (#9528) 2024-06-10 09:55:12 -07:00
renovate[bot]
700acc069b
[deps] Autofill: Update tldts to v6.1.25 (#9559)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-10 10:24:14 -04:00
vinith-kovan
b49b6b370f
[PM-4952] Migrate-remove-password-component (#9305)
* migrating remove-password component

* add loading state

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-06-10 19:42:10 +05:30
Rui Tomé
eef1e511b5
[AC-2286] [Defect] - CLI: User creating a collection through the CLI does not have access to the collection (#9409)
* Send current Org user Id on collection creation through CLI

* Run npm prettier

* Add organization services to CreateCommand creation on ServeCommand

* Refactor organization data models to include organizationUserId property

* Refactor create command to utilize the OrganizationUserId on the Organization object

* Add users to collection request in edit command

* fix: organization.data test update to correct deserialization, refs AC-2286

---------

Co-authored-by: Vincent Salucci <vincesalucci21@gmail.com>
2024-06-07 14:14:21 -05:00
Thomas Avery
769d67af39
[SM-1292] Add secret view dialog (#9445)
* Add secret view dialog

* Use secret view dialog
2024-06-07 10:32:26 -05:00
Cesar Gonzalez
d30b947dd7
[PM-8498] Moving content script-specific FIDO2 code from Vault to Autofill ownership (#9431)
* [PM-8498] Moving content script-specific FIDO2 code from Vault to Autofill ownership

* [PM-8498] Adjusting jest test reference for webauth-utils
2024-06-07 08:47:38 -05:00
Daniel James Smith
28e8f8f364
[PM-7240] Create new export component [UI changes] (#9285)
* Move/replace submit and userVerification logic from web into the BaseExportComponent

Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop

* Move/replace submit and userVerification logic from web into the BaseExportComponent

Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop

* Create export-browser-v2 component

Copy existing `export-browser`-component
Add `popup-page` and -`header` and -`footer`
Add missing imports as page is marked as standalone
Route to new page when feature flag enabled

* Remove duplicate verifyUser methods

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-06-07 09:17:00 -04:00
github-actions[bot]
8361c0bd29
Autosync the updated translations (#9543)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-07 10:21:13 +00:00
github-actions[bot]
9f10569e9c
Autosync the updated translations (#9545)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-07 06:46:25 +00:00
github-actions[bot]
31c04dfd14
Autosync the updated translations (#9544)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-07 06:12:30 +00:00
Shane Melton
c8b2807487
[PM-8665] Show toast when favorite is toggled (#9537) 2024-06-06 14:25:23 -07:00
Nick Krantz
3457941634
show family icon for free orgs in filter chips (#9532) 2024-06-06 15:30:02 -05:00
Nick Krantz
a5591dc4bc
[PM-8592] Deactivated state not showing (#9533)
* refactor vault state observables into a single variable to remove multiple subscriptions

* add clarification comment

* fix comment to be accurate
2024-06-06 15:28:29 -05:00
Justin Baur
ba3d21094e
[PM-7541] Move Last Desktop Settings (#9310)
* Clone Initial Data In `runMigrator`

- When using test cases, mutating the input data causes problems.

* Migrate `minimizeOnCopy` & `browserIntegrationEnabled`

* Update From Main

* Move Fingerprint Setting

- No Migration Yet

* Add Fingerprint to Migrations

* Convert Messaging to `async`

* Switch to calling `Boolean` for Map Function

* Catch Errors

* Remove LogService
2024-06-06 14:26:17 -04:00
Shane Melton
79968c2d32
[PM-8335] Show autofill suggestion when no autofill login items present (#9521) 2024-06-06 10:43:55 -07:00
KiruthigaManivannan
c8eac6fa12
PM-4977 Migrate Preferences component (#8663)
* PM-4977 Migrate Preferences component

* PM-4977 Addressed the review comments

* PM-4977 Updated css in preferences html

* PM-4977 Removed the class applied on bit-hint
2024-06-06 20:46:59 +05:30
Nick Krantz
a7b45a44e3
[PM-8594] use singular version of the copy for filters (#9509)
* use singular for collection and type

* use singular verbiage for cipher type

* use type translations for singularity
2024-06-06 09:39:21 -05:00
KiruthigaManivannan
47e66bfeb4
AC-2723 Defect Range Too large error toast on reporting events is not being displayed (#9478) 2024-06-06 20:05:21 +05:30
vinith-kovan
c06211829f
[PM 5023] migrate payment component (#8345)
* payment component migration

* payment component migration

* payment component migration
2024-06-06 19:29:54 +05:30
KiruthigaManivannan
6fadee7cb4
PM-2055 Update Two Factor Authenticator Dialog (#8972)
* PM-2055 Update Two Factor Authenticator Dialog

* PM-2055 Added close to disable two factor

* PM-2055 Added a event emitter to capture enabled status
2024-06-06 09:53:29 -04:00
KiruthigaManivannan
a1442194ae
PM-2047 Migrated Change Avatar component (#8522)
* PM-2047 Migrated Change Avatar component

* PM-2047 Addressed the review comments

* PM-2047 Changed the file name

* PM-2047 Removed form promise
2024-06-06 19:23:02 +05:30
KiruthigaManivannan
d58103dfb1
AC-2702 Defect Full Header name is not visible for require sso component (#9479) 2024-06-06 18:57:04 +05:30
KiruthigaManivannan
f2bd16a0c4
PM-1938 Migrate Accept Emergency Component (#9177)
* PM-1938 Migrate Accept Emergency Component

* PM-1938 Updated OSS routing module

* PM-1938 Updated anon layout path and removed width

* PM-1938 Addressed review comments

* PM-1938 - Move canActivate up a level.

* PM-1938 - Consolidate routing after merging in main.

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-06-06 18:45:17 +05:30
KiruthigaManivannan
d8a86cdb7e
PM-8478 Defect Visually more padding needed around bit avatar (#9481) 2024-06-06 18:18:13 +05:30
Maciej Zieniuk
323b59de71
SM-1213 Add Bitwarden Secrets Manager tip to CLI help (#9307)
* SM-1213 Add Bitwarden Secrets Manager tip to help

* SM-1213: Moved SM tip before examples
2024-06-06 09:40:51 +02:00
Will Martin
472a7a9d4d
[CL-302] respect bottom padding in scrollable popup-layout (#9514) 2024-06-05 17:17:24 -04:00
Cesar Gonzalez
ce69b25d54
[PM-8519] Inline menu fails to update credentials after saving credentials when unlocking extension (#9462)
* Add Back Foreground & Background Derived State

* Do Dependency Injection

* Defend `map` Calls

* Remove Folder Change

* Add Helper For Preparing a Record For Use in `forkJoin`

* Update & Test CryptoService Changes

* Delete Unused Code

* Update DeviceTrustService

* Update CipherService

* Make `userPublicKey$` Public

* Rename convertValues File

* Switch to `MonoTypeOperatorFunction`

* Remove Unnecessary `async`

* Remove Unnecessary Mock

* Update libs/common/src/platform/abstractions/crypto.service.ts

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

* Add `convertValues` Tests

* Add Doc Comments

* Convert to `function`'s

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

* Fix Test Typos

* Add param doc

* Update Test Name

* Add `@throws` Docs

* [PM-8519] Inline Menu fails to Update Credentials After Saving New Cipher When Unlocking Extension

* Revert "Merge branch 'reintroduce-foreground-background-derived' into autofill/pm-8519-inline-menu-fails-to-update-credentials-after-saving-credentials-when-unlocking-extension"

This reverts commit 53b060dac1, reversing
changes made to 15b9a237b8.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
2024-06-05 15:14:34 -05:00
Victoria League
d3f1992ad5
[CL-294] Make section-header work across clients (#9386) 2024-06-05 15:07:00 -04:00
KiruthigaManivannan
6e55733873
PM-4951 Migrate Recover Two Factor Component (#9170)
* PM-4951 Migrate Recover Two Factor Component

* PM-4951 Addressed review comments

* PM-4951 Addressed review comments

* update route

* add type safety to data properties

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-06-05 10:52:04 -07:00
vinith-kovan
1cec69e377
[PM 2164] api-key component migration (#8562)
* api-key component migration

* api-key component migration

* api-key component migration

* api-key component migration
2024-06-05 22:44:33 +05:30
vinith-kovan
24fb3f71f1
[PM-2057] update two factor email dialog (#8974)
* migrating two factor email component

* two factor email component migration

* two factor email component migration

* two factor email component migration
2024-06-05 22:29:51 +05:30
Shane Melton
1cfbcf4ee0
[PM-8334] Sort ciphers after autofill (#9511)
* [PM-8334] Add localData$ to CipherService and watch it for updates

* Fix leftover tw-fixed class

* [PM-8334] Fix tests
2024-06-05 08:10:36 -07:00
Justin Baur
1aaa88a64d
[PM-7837] Move SyncService to Platform Ownership (#9055)
* Move

* Update  References In Unowned Files

* Update  References In Vault Files

* Update Web AppComponent

* Add Import
2024-06-05 10:48:12 -04:00
Jason Ng
cb0927ac5d
[PM-8553] browser v2 search bar defects (#9506)
* update no results icon and no results scrolling
* update v2 search so the term persist when the user clicks into an item and exits the item
2024-06-05 10:06:52 -04:00
vinith-kovan
7e86c0afd4
[PM-5014] Download license component migration (#8443)
* Download license component migration

* download license dialog component migration

* download license dialog component migration
2024-06-05 13:45:08 +05:30
Shane Melton
f059d136b2
[PM-8485] [PM-7683] Dynamic list items - Org Details (#9466)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip

* [PM-8485] Introduce new PopupCipherView

* [PM-8485] Use new PopupCipherView in items service

* [PM-8485] Add org icon for items that belong to an organization

* [PM-8485] Fix tests

* [PM-8485] Remove share operator from cipherViews$
2024-06-04 14:34:48 -07:00
Nick Krantz
d0c1325f0c
update icons for folder & collection filters (#9508) 2024-06-04 16:26:39 -05:00
Shane Melton
6eb94078f6
[PM-8456] [PM-7683] Dynamic list items - 3 dot menu (#9422)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip
2024-06-04 14:21:14 -07:00
Shane Melton
d1a9d6f613
[PM-8455] [PM-7683] Dynamic list items - Copy Action (#9410)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-7683] Move disabled logic into own method
2024-06-04 14:09:09 -07:00
KiruthigaManivannan
fc2953a126
AC-2680 Custom permission manage account recovery no longer auto triggers the manage users (#9477) 2024-06-04 15:55:35 -04:00
vinith-kovan
9322dacbd4
[PM 5011][PM-8562] migrate user subscription component (#9499)
* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog
2024-06-04 23:26:20 +05:30
rr-bw
13c2c2ecaa
[PM-8236] Allow for additional data properties (#9278)
* allow for additional properties

* create interface for DataProperties and extend AnonLayouWrapperData

* move data properties to RouterService

* add docs

* add comment

* rewrite comment
2024-06-04 08:38:54 -07:00
renovate[bot]
be5507411b
[deps] Platform: Update @types/node to v20 (#9428)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 08:27:05 -05:00
renovate[bot]
24f0a7478b
[deps] Platform: Update Rust crate anyhow to v1.0.86 (#9375)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 12:18:36 +02:00
renovate[bot]
7627afbfec
[deps] Platform: Update Rust crate base64 to v0.22.1 (#9376)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-03 14:33:25 -04:00
Bitwarden DevOps
99639b537f
Bumped client version(s) (#9486) 2024-06-03 18:10:48 +00:00
Jared Snider
9d35a8895e
Auth/PM-8367 - Email Verification - Integrate Registration Self Hosted Env Selector + new Self Hosted Env Settings Dialog into Registration Start (#9361)
* PM-8367 - WIP - initial comp creation

* PM-8367 - Majority of new registration self hosted env config dialog working

* PM-8367 - RegistrationEnvSelectorComponent - add method handleSelfHostedEnvConfigDialogResult and add toast for happy path.

* PM-8367 - Add validation TODO

* PM-8367 - RegistrationSelfHostedEnvConfigDialogComponent - Add validator

* PM-8367 - RegEnvSelector - Only show self hosted if the client is browser or desktop since we will be using the selector on web as well.

* PM-8367 - Registration start comp - add env selector

* PM-8367 - Registration start - add proper import for standalone comps.

* PM-8367 - Registration Start - get storybook fixed with registration env selector

* PM-8367 - Add self hosted server to web translations only for storybook

* PM-8367 - Add more storybook examples and update docs (WIP - need to test self hosted selection)

* PM-8367 - Registration Start - update stories

* PM-8367 - Env Selector now emits selected region so that parent comps can listen to it if needed.

* PM-8367 - Registration Start - wire up handler for selectedRegionChange so that the parent comp can successfully track isSelfHost and hide / show the terms / privacy policy checkbox

* PM-8367 - TODO cleanup

* PM-8367 - Registration start docs - stage gate is two words.

* PM-8367 - Per working session with Will, move top level provided services to app level instead of module level to solve dialog null injector errors.

* PM-8367 - Storybook working for self hosted env dialog

* PM-8367 - Add dialog scroll feature to bitDialog and implement in self hosted env dialog.

* PM-8367 - Revert bit dialog changes and scroll implementation.

* PM-8367 - Tweak registration start docs

* PM-8367 - Remove unused changeDetectorRef

* PM-8367 - Add docs per PR feedback
2024-06-03 13:05:27 -04:00
Jared Snider
f691854387
Auth - PM-7392 & PM-7436 - Token Service - Desktop - Add disk fallback for secure storage failures (#8913)
* PM-7392 - EncryptSvc - add new method for detecting if a simple string is an enc string.

* PM-7392 - TokenSvc - add checks when setting and retrieving the access token to improve handling around the access token encryption.

* PM-7392 - (1) Clean up token svc (2) export access token key type for use in tests.

* PM-7392 - Get token svc tests passing; WIP more tests to come for new scenarios.

* PM-7392 - Access token secure storage to disk fallback WIP but mostly functional besides weird logout behavior.

* PM-7392 - Clean up unnecessary comment

* PM-7392 - TokenSvc - refresh token disk storage fallback

* PM-7392 - Fix token service tests in prep for adding tests for new scenarios.

* PM-7392 - TokenSvc tests - Test new setRefreshToken scenarios

* PM-7392 - TokenSvc - getRefreshToken should return null or a value - not undefined.

* PM-7392 - Fix test name.

* PM-7392 - TokenSvc tests - clean up test names that reference removed refresh token migrated flag.

* PM-7392 - getRefreshToken tests done.

* PM-7392 - Fix error quote

* PM-7392 - TokenSvc tests - setAccessToken new scenarios tested.

* PM-7392 - TokenSvc - getAccessToken - if secure storage errors add error to log.

* PM-7392 - TokenSvc tests - getAccessToken - all new scenarios tested

* PM-7392 - EncryptSvc - test new stringIsEncString method

* PM-7392 - Main.ts - fix circ dep issue.

* PM-7392 - Main.ts - remove comment.

* PM-7392 - Don't re-invent the wheel and simply use existing isSerializedEncString static method.

* PM-7392 - Enc String - (1) Add handling for Nan in parseEncryptedString (2) Added null handling to isSerializedEncString. (3) Plan to remove encrypt service implementation

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* PM-7392 - Remove encrypt service method

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* PM-7392 - Actually fix circ dep issues with Justin. Ty!

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* PM-7392 - TokenSvc - update to use EncString instead of EncryptSvc + fix tests.

* PM-7392 - TokenSvc - (1) Remove test code (2) Refactor decryptAccessToken method to accept access token key and error on failure to pass required decryption key to method.

* PM-7392 - Per PR feedback and discussion, do not log the user out if hte refresh token cannot be found. This will allow users to continue to use the app until their access token expires and we will error on trying to refresh it. The app will then still work on a fresh login for 55 min.

* PM-7392 - API service - update doAuthRefresh error to clarify which token cannot be refreshed.

* PM-7392 - Fix SetRefreshToken case where a null input would incorrectly trigger a fallback to disk.

* PM-7392 - If the access token cannot be refreshed due to a missing refresh token or API keys, then surface an error to the user and log it so it isn't a silent failure + we get a log.

* PM-7392  - Fix CLI build errors

* PM-7392 - Per PR feedback, add missing tests (thank you Jake for writing these!)

Co-authored-by: Jake Fink <jfink@bitwarden.com>

* PM-7392 - Per PR feedback, update incorrect comment from 3 releases to 3 months.

* PM-7392 - Per PR feedback, remove links.

* PM-7392 - Per PR feedback, move tests to existing describe.

* PM-7392 - Per PR feedback, adjust all test names to match naming convention.

* PM-7392 - ApiService - refreshIdentityToken - log error before swallowing it so we have a record of it.

* PM-7392 - Fix copy for errorRefreshingAccessToken

* PM-7392 - Per PR feedback, move error handling toast responsibility to client specific app component logic reached via messaging.

* PM-7392 - Swap logout reason from enum to type.

* PM-7392 - ApiService - Stop using messaging to trigger toast to let user know about refresh access token errors; replace with client specific callback logic.

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>

* PM-7392 - Per PR feedback, adjust enc string changes and tests.

* PM-7392 - Rename file to be type from enum

* PM-7392 - ToastService - we need to await the activeToast.onHidden observable so return the activeToast from the showToast.

* PM-7392 - Desktop AppComp - cleanup messaging

* PM-7392 - Move Logout reason custom type to auth/common

* PM-7392 - WIP - Enhancing logout callback to consider the logout reason + move show toast logic into logout callback

* PM-7392 - Logout callback should simply pass along the LogoutReason instead of handling it - let each client's message listener handle it.

* PM-7392 - More replacements of expired with logoutReason

* PM-7392 - More expired to logoutReason replacements

* PM-7392 - Build new handlers for displaying the logout reason for desktop & web.

* PM-7392 - Revert ToastService changes

* PM-7392 - TokenSvc - Replace messageSender with logout callback per PR feedback.

* PM-7392 - Desktop App comp - replace toast usage with simple dialog to guarantee users will see the reason for them being logged out.

* PM-7392 - Web app comp - fix issue

* PM-7392 - Desktop App comp - don't show cancel btn on simple dialogs.

* PM-7392 - Desktop App comp - Don't open n simple dialogs.

* PM-7392 - Fix browser build

* PM-7392 - Remove logout reason from CLI as each logout call handles messaging on its own.

* PM-7392 - Previously, if a security stamp was invalid, the session was marked as expired. Restore that functionality.

* PM-7392 - Update sync service logoutCallback to include optional user id.

* PM-7392 - Clean up web app comp

* PM-7392 - Web - app comp - only handle actually possible web logout scenarios.

* PM-7392 - Browser Popup app comp - restore done logging out message functionality + add new default logout message

* PM-7392 - Add optional user id to logout callbacks.

* PM-7392 - Main.background.ts - add clarifying comment.

* PM-7392 - Per feedback, use danger simple dialog type for error.

* PM-7392 - Browser Popup - add comment clarifying expectation of seeing toasts.

* PM-7392 - Consolidate invalidSecurityStamp error handling

* PM-7392 - Per PR feedback, REFRESH_ACCESS_TOKEN_ERROR_CALLBACK can be completely sync. + Refactor to method in main.background.

* PM-7392 - Per PR feedback, use a named callback for refreshAccessTokenErrorCallback in CLI

* PM-7392 - Add TODO

* PM-7392 - Re-apply bw.ts changes to new service-container.

* PM-7392 - TokenSvc - tweak error message.

* PM-7392 - Fix test

* PM-7392 - Clean up merge conflict where I duplicated dependencies.

* PM-7392 - Per discussion with product, change default logout toast to be info

* PM-7392 - After merge, add new logout reason to sync service.

* PM-7392 - Remove default logout message per discussion with product since it isn't really visible on desktop or browser.

* PM-7392 - address PR feedback.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2024-06-03 12:36:45 -04:00
Alex Morask
010b55d39d
Prevent Provider from viewing client organization payment method and billing history (#9442) 2024-06-03 11:10:54 -04:00
Alex Morask
28de91888a
[AC-1939] Manage provider payment information (#9415)
* Added select-payment-method.component in shared lib

Because we're going to be implementing the same functionality for providers and orgs/users, I wanted to start moving some of this shared functionality into libs so it can be accessed in both web and bit-web. Additionally, the Stripe and Braintree functionality has been moved into their own services for more central management.

* Added generalized manage-tax-information component to shared lib

* Added generalized add-account-credit-dialog component to shared libs

* Added generalized verify-bank-account component to shared libs

* Added dialog for selection of provider payment method

* Added provider-payment-method component

* Added provider-payment-method component to provider layout
2024-06-03 11:01:14 -04:00
DanHillesheim
aee9720a6d
Revert "Vault - Trial initiation content updates" (#9421) 2024-06-03 08:34:51 -06:00
Nick Krantz
748eb00223
[PM-6826] Vault filter refresh (#9365)
* add initial type filter

- use `bit-select` while the chip component is being developed

* get cipherTypes$ from service

- integrate with user settings

* initial add of folder selection

* initial add of vault selection

* initial add of collections filter

* update `VaultPopupListFilterService` to `VaultPopupListFiltersService`

* integrate hasFilterApplied$

* intermediate commit of integration to the filters component

* do not return the tree when the value is null

* return null when the updated option is null

* update vault-popup-list to conform to the chip select structure

* integration of bit-chip-select

* move "no folder" option to the end of the list

* show danger icon for deactivated organizations

* show deactivated warning when the filtered org is disabled

* update documentation

* use pascal case for constants

* store filter values as full objects rather than just id

- This allows secondary logic to be applied when filters are selected

* move filter form into service to be the source of truth

* fix tests after adding "jest-preset-angular/setup-jest"

* remove logic to have dynamic cipher type filters

* use ProductType enum

* invert conditional for less nesting

* prefer `decryptedCollections$` over getAllDecrypted

* update comments

* use a `filterFunction$` observable rather than having to pass filters back to the service

* fix children testing

* remove check for no folder

* reset filter form when filter component is destroyed

* add takeUntilDestroyed for organization valueChanges

* allow takeUntilDestroyed to use internal destroy ref

- The associated unit tests needed to be configured with TestBed rather than just `new Service()` for this to work

* use controls object for type safety
2024-06-03 09:20:14 -05:00
github-actions[bot]
3835a9ddaf
Autosync the updated translations (#9472)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:32:32 +00:00
github-actions[bot]
c72e8df619
Autosync the updated translations (#9471)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:31:23 +00:00
github-actions[bot]
f172612b19
Autosync the updated translations (#9470)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:30:49 +00:00
Anders Åberg
0d492b4454
Fix PM-8134: Change b64 to b64url (#9193) 2024-06-01 13:07:36 -04:00