* 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)
* 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>
* turn on enableCipherKeyEncryption flag
* turn enableCipherKeyEncryption flag on in desktop config
---------
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
* 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
* [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
* 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
* [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
* [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
* 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
* 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>
* [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$
* [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-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