Branch:
11-21-test
11-21-test
202505-notifications-refactor
250807-notif-strict
264-UI
5019
AC-1086-the-remove-individual-vault-enterprise-policy-prevents-service-users-and-provider-admins-from-creating-new-vault-items-via-the-provider-portal
AC-217-Migrate-Cards-To-Banners
AC-2400-Migrate-families-for-enterprise-setup-component
Ac-1410/update_planresponsemodel_on_client
Auth/pm-1339/rotate-device-keys
BEEEP-automated-browser-release-to-stores
BRE-1022-SP-fallback
BRE-285-create-flatpak-distibution-method
BRE-494
BRE-863-Automate-Chrome-releases
CL-10-button-group-CVA-example
CL-122-common-components-module
CL-132-resizable-sidebar
CL-298-async-actions-2-0-context-string
CL-58-improvement-make-icon-button-compatible-with-bit-suffix-directive
CL-668-responsive-toggle-group
CL-671-remove-body-width
CL-69/nav-group-animations
CL-896
CL-94-async-actions-2-0-di-boundaries
CL-XXX/Enable-bitAction-on-ItemContentComponent
CL-badge-alignment
CLOUDOPS-838
Client-Integrations/pm-2733-master-password-does-not-reprompt-on-edit-after-cancelling-mp-reprompt-dialog
Customize-the-Phishing--Alert
DEVOPS-1573_add-web-build-script
DEVOPS-462-Add_code_signing_to_the_MacOS_CLI
DEVOPS-952-update-build-workflows-to-run-as-soon-as-rc-is-cut
EC-1069-cannot-save-an-item-to-a-collection-in-the-org-vault-view
EC-543-beeep-bitwarden-as-passkey-authenticator
EC-627-beeep-use-uri-for-vault-navigation-filtering
EC-649-beeep-routeable-dialogs
EC-855-cl-radio-group-block-support
ENG-72-commit-message-hook
ExtensionAcctSwitching
InnovationMenuItemChanges
PM-1034-tde-flow-3-v2
PM-11199-add-perm-value-to-table-admin-console
PM-11438
PM-11503-Defect-Organization-Automatic-Sync-verbiage-is-misleading
PM-11525-Estimated-tax-shown-to-customers-potentially-incorrect
PM-11889-Refactor-Loading-Indicator-from-organization-plans-change-plan-dialog-components
PM-1203-replace-mp-confirmation-with-verification-code
PM-1223-investigate-ability-to-add-support-for-mediated-conditional-ui
PM-1223-investigate-ability-to-add-support-for-mediated-conditional-ui-cg
PM-12403
PM-1245
PM-12681
PM-12765
PM-12985-testing-reports
PM-13156-2
PM-13246
PM-13272
PM-13273
PM-13455
PM-13755-revoked-members-counted-as-seat
PM-14164
PM-14619
PM-14622-rf-opt-state
PM-14891-Sales-Tax-Estimation-For-Organizations
PM-14892-Sales-Tax-Estimation-For-Clients
PM-14894-Drop-Sales-Tax-Database-Tables
PM-14952
PM-1500
PM-15077-passkey-save-error-on-oracle-cloud
PM-15090
PM-15126-second-attempt
PM-15126-tighten-scope-of-our-client-build-pipelines-to-remove-reliance-on-secrets
PM-15498
PM-15498-2
PM-15840-Defect-When-Free-Families-org-reached-max-collection-count-clicking-Upgrade-button-navigates-to-a-spinning-Subscription-page
PM-15943
PM-15943-3
PM-16104
PM-16164
PM-16921
PM-17732
PM-17735
PM-18027
PM-18325/allow-local-appx-signing
PM-19158-Archive-menu-option
PM-19180
PM-19521
PM-1978-ui-flow-non-discoverable-passkeys
PM-19923]AutoFocusOnSearch
PM-21017
PM-21408
PM-21719]-Assign-collection-visibility
PM-21800-Password-generator-on-Generator-tab-copies-spaces
PM-21950-Defect-Browser-After-importing-and-landing-on-Vault-Settings-back-button-navigation-goes-to-Import-screen-again
PM-2207-acoroiu-review
PM-2207-cg-edit
PM-22143-Tools-Refactor-TS-Enums-to-be-const-object-IMPORT-ONLY
PM-23686
PM-23748
PM-23851-False-Requirement-to-Pop-Out-Extension-When-Using-Send-Files
PM-24173-Defect-Length-min-numbers-and-min-special-fields-allow-any-values
PM-24269
PM-2427-fix-sso-prevalidate-path
PM-24501-multi-cipher
PM-24508
PM-24560
PM-24618-CLI-reveal-email-CLI-flag
PM-24646-add-licensed-browser-release
PM-24646-research-how-to-build-all-clients-in-gpl-and-proprietary-licensed-versions
PM-25256
PM-25481-Tools-Update-copy-in-Admin-Console-export-page
PM-25521-Enable-new-importer-for-Chrome-on-MacOS-and-Linux-only
PM-25525-DEBT-Fix-SystemServiceProvider-dependency-injection
PM-25525-DEBT-LOGGING-Fix-SystemServiceProvider-dependency-injection
PM-25534-export-member-list
PM-25575-BEEP-duplicate-login-detection
PM-25685
PM-25686
PM-25693
PM-26250-Explore-options-to-enable-direct-importer-for-mac-app-store-build
PM-2637-initial-refactor
PM-26474
PM-26515
PM-26516-non-premium-desktop-archive
PM-26650
PM-26651
PM-26989-Add-Support-For-Arc-Browser-on-MacOS
PM-27248-Defect-An-unhandled-error-is-returned-when-a-MSP-tries-to-import-data
PM-27310-potentially-drop-use-of-i-frame-and-render-notification-bar-in-shadow-dom
PM-27334-Code-signing-electron-changes-to-bundle-the-exe
PM-2749-full-width-persist-on-sso
PM-27819
PM-2814-remove-configapiservice
PM-2814-remove-configapiservice-v2
PM-28182-Add-success-page
PM-28183-Migrate-the-filters-and-search
PM-28374-add-report-false-positive-button
PM-28391-persistent-ignore-phishing-sites
PM-28428
PM-2844-beeep-add-custom-error-codes-for-server-api-exceptions
PM-28548-update-phishing-list-to-links
PM-29033
PM-29214
PM-29283
PM-29509-lo-impact-remove-ts-strict-ignore-in-fido-2-content-messaging-messenger-ts-1-err-137-loc-11-4
PM-29510-lo-impact-remove-ts-strict-ignore-in-fido-2-utils-webauthn-utils-ts-3-err-130-loc-31-3
PM-29512-lo-impact-remove-ts-strict-ignore-in-popup-fido-2-fido-2-cipher-row-component-ts-5-err-56-loc-50-6
PM-29514-lo-impact-remove-ts-strict-ignore-in-overlay-notifications-content-overlay-notifications-content-service-ts-5-err-286-loc-52-9
PM-29515-lo-impact-remove-ts-strict-ignore-in-overlay-inline-menu-iframe-content-autofill-inline-menu-iframe-service-ts-5-err-482-loc-54-8
PM-29516-lo-impact-remove-ts-strict-ignore-in-utils-index-ts-7-err-485-loc-74-8
PM-29782/sign-appx-in-ci
PM-29784/enable-cross-appx-packaging
PM-29785/windows-webauthn-wrapper
PM-29786/generic-autofill-provider-lib
PM-29800
PM-29951-desktop-archive-flag-off
PM-29972-update-ciphers-on-archive
PM-3169-browser-extension-show-login-decryption-options-in-extension-popup-and-not-in-extension-tab
PM-3445-loginState-error
PM-3644-beeep-experiment-with-reactive-syncing
PM-3728-add-backward-compatibility-check
PM-3978-handle-move-to-org
PM-4025
PM-4039/remove-individual-item-encryption-flag
PM-4057-loginState-error
PM-4060-native-rust-POC-implementation-of-desktop-webauthn
PM-4060-native-rust-POC-implementation-of-desktop-webauthn-macos
PM-4060-native-rust-POC-implementation-of-desktop-webauthn-macos-objc2
PM-4060-native-rust-POC-implementation-of-desktop-webauthn-windows
PM-4110
PM-4226
PM-4240
PM-4276-passkey-popup-use-browser-overlap
PM-4295-popout-offscreen
PM-4358-revert-undefined-uv-check
PM-4401-re-add-manual-zone-execution
PM-4532-investigate-add-support-for-native-mac-os-credential-manager-in-desktop-application
PM-5009-Migrate-billing-component
PM-5010-Migrate-subscription-component
PM-5017-migrate-organization-plans-component
PM-5024-migrate-tax-info-component
PM-530
PM-5653/test-PR
PM-6113-build-rust-authenticator-and-client-to-support-i-os-and-android-passkey-provider-implementation
PM-6113-build-rust-authenticator-and-client-to-support-i-os-and-android-passkey-provider-implementation-features
PM-6271-propose-cipher-versioning-scheme
PM-6271-propose-cipher-versioning-scheme-data-layer
PM-662
PM-7157-Expose-AnonLayout-through-index.js
PM-7853-Clients-Hide-Send-from-navigation-when-user-is-subject-to-the-disable-Send-policy
PM-9022-scaffold-the-extension-and-build-pipeline
PM-9032-swift-extension-add-ui-to-handle-desktop-not-being-open
PM-9476-desktop-setup-obj-c-library-statically-bound-and-callable-from-desktop-native-module
POC/cipher-versioning
PS-1076-folder-service-refactors
PS-1086-add-account-observables-to-account-service
PS-1086-crypto-service-refactors
PS-1086/add-observable-to-vault-timeout-settings-service
PS-2247-correct-typos-in-EN_GB-EN_IN
PS-280
PS-55-8-3
PS-55-EncryptedExport
PS-589-2fa-device-verification-settings
PS-589-add-2fa-new-device-login-settings-flag
PS-589-add-2fa-new-device-login-settings-web
RELEASE-1200/update-browser-release-asset-name
S-972-clients-update-translation-keys-to-match-content
SG-1012
SG-163
SG-168/login-with-device-request
SG-65/resgitration-form-reusable
SG-714
SG-714-Fix
SG-714-GPG
SM-10995]-Remove-Feature-Flag-VBMA
SM-1301-getbyidsevent
SM-1415-EventLogs
SM-1548-SecretViewSlow
SM-1570
SM-1588-Secrets-list.component
SM-1599-VirtualScroll
SM-1743-featureflag-disablesm
SM-264
SM-264-UI
SM-408/until-destroy
SM-612-ProductSwitcherHighlights
SM-614
SM-646-sidebar
SM-73
SM-846
SM-867-UUID
SM-910
SM-923
SM-95-ProjectList
SM-95-ProjectsList
SM-954-SeparateGettingStartedPage
SM-Jest
SecretsService
aa-branch-2
abortfido
ac-1102-automatic-sync-is-visible-for-self-hosted-families-orgs
ac-1218-add-ability-to-delete-provider-portals
ac-1753/Automatically-assign-provider-pricing-to-new-org
ac-2101-update-welcome-emails-from-trial-initiation-and-org-creation
ac-2709-upgrade-from-2-person-free-org
ac-2721-apply-subscription-status-updates-in-provider-subscription-details
ac-2957-delete-the-feature-flag-PM-5864-dollar-threshold
ac/ac-1595/bypass-sso-identifier-copy-update
ac/ac-1662/can-delete-port-ffc
ac/pm-17168/revoking-user-is-not-synced-immediately-via-push-notification
ac/pm-19814/improved-warning-popup-ui
ac/pm-20633/rename-individual-vault
ac/pm-22390/fix-device-approval-perm
ac/pm-22392/fix-cli-manage-device-approvals
ac/pm-22434/remove-item-org-ff
ac/pm-26364-Extension-UI-for-Auto-confirm
ac/pm-26365-Auto-confirm-extension-one-time-setup-dialog
ac/pm-26463-members-component-refactor
ac/pm-2790-use-master-password-policy-in-account-recovery
ac/state-provider-framework-policy-service
ac/strong-typed-guids
ac1454-2fa-directory
acoroiu/poc-simple-vault-indexing
acostarj-patch-1-cs-clients
acostarj-text-update
add-application-lifetime-service
add-banner-service
add-error-check-for-invalid-cipher-key
add-gitlens-settings
add-key-value-pair-importer
add-logging-around-main-background
add-opentelemetry
add-purpose-enc-string-type
add-qa-urls-to-selfhosted-exclusion
add-risk-over-time-chart
add-root-dir-to-libs
add-secure-logging
add-storage-lib
add-tool-manifest
add-url-filtering
add-window-menu-id
addison/esm-exp
adjust-trial-icon
admin-console-user-key-migration
agalles/test-workflows-feature
agalles/test-workflows-sticky
agalles/troubleshooting-20250415
aj-test-workflow-update
alt-EC-457-component-library-icon-butttons-custom-tw-plugin
anders-oxc-prettier
anders-oxlint
anders/cxp-extension
anders/eslint-cache
anders/eslint2
anders/extension-signing
anders/increase-passkey-limit
anders/ipc1
anders/kvc
anders/kvc2
anders/logs-silent
anders/mac
anders/new-macos-sdk
anders/oxc-prettier
anders/passkey-debugger
anders/passkey-window-working-mergetest
anders/passkeys
anders/pm-7673-create
anders/pnpm
anders/poc-unlock
anders/rust-cache
anders/sign1
anders/sign2
anders/sign3
anders/sign4
anders/ssh-ux
anders/test-bug
anders/test1
anders/unlock-prf-3
anders/win-passkey-poc
anders/win-passkey-poc-clean
anders/win-sign
anders/win2
anders/win3
anders/win4
angular-di-mv3
api-lib
appid-logging-build
arch/copilot-instruction
arch/group-webpack
arch/kiro
arch/localization-migrators
arch/migrate-desktop-settings
arch/ng-localize
arch/poc-form-builder
arch/takeuntil-migrator
arch/test-fail-console
arch/tools-abstract-strict
attachrend
audreyality/claude-code-experiment
auth-circ-deps
auth/PM-5187/double-popout-twofactor-mail
auth/PM-6296/fix-unavailable-biometrics-in-clamshell-mode-3
auth/PM-7084/two-factor-refactor
auth/add-logout-reason
auth/add-sync-for-standard-auth-requests
auth/add-tde-offboarding-check-to-2fa
auth/beeep/flatpak-devel-yaml
auth/beeep/hide-linux-tray-icon-setting
auth/claude-component-service-architecutre
auth/desktop-debug
auth/device-on-all-requests
auth/pm-10964/explicitly-define-userId-on-org-create
auth/pm-10964/set-userid-org-acceptange
auth/pm-11537/increase-passkey-limit
auth/pm-11940/migrate-registration-to-sdk
auth/pm-14873/registration-add-reseller-provider-portal-invite-support
auth/pm-14922/sdk-login-with-password-demo
auth/pm-14938/proof-of-concept-notification-architecture
auth/pm-14943/auth-request-extension-dialog-approve-debug
auth/pm-16536/login-comp-mp-entry-screen-auto-fill-doesnt-change-email-subtitle
auth/pm-16783/tech-debt-fixes-toast-service
auth/pm-17111/add-browser-to-list-of-approving-clients-v2
auth/pm-17172/extension-acct-switcher-lock-now-btn-not-showing-disabled-style
auth/pm-17464/remove-snap-sso-handler
auth/pm-1779/remove-window-post-message-from-sso
auth/pm-18576/fix-missing-userid-on-remove-password
auth/pm-18654/new-ui-desktop-tde-jit-errors-with-missing-org-sso-id-v2
auth/pm-18720/change-password-component-non-dialog-v2
auth/pm-18720/change-password-component-non-dialog-v3
auth/pm-18986/ui-refresh-extension-webauthn-2fa-fix-old-styles
auth/pm-19057/poc
auth/pm-19057/test-1
auth/pm-19209/revert-to-original-message
auth/pm-19398/managed-environement-not-displayed-on-browser-client
auth/pm-194/account-stories
auth/pm-19555/defect-clicking-log-out-button
auth/pm-19617/speed-up-local-host-config
auth/pm-20109/increase-2fa-webauthn-security-key-limit
auth/pm-20532/tech-breakdown-poc-token-based-send-authn-and-authz
auth/pm-22222/email-not-sent-for-cli
auth/pm-22663/auth-consolidate-login-comp-routing
auth/pm-22723/policy-service-updates
auth/pm-23620/auth-request-answering-service-temp
auth/pm-23907/token-to-sync-delay
auth/pm-24103/remove-get-user-key
auth/pm-26141/proof-of-concept-marketing-initiated-premium-flow
auth/pm-26209/bugfix-desktop-error-on-auth-request-approval
auth/pm-26578/http-redirect-cloud
auth/pm-27086/input-password-use-new-km-data-types
auth/pm-2772/stop-process-reload-on-bio-cancel
auth/pm-2875/remember-me-option
auth/pm-3387/invalid-auth-request-error
auth/pm-3519/move-auth-request-api-methods
auth/pm-3707/fix-icon-size
auth/pm-3797/emergency-access-refactor
auth/pm-3916/firefox-pin-issues
auth/pm-4530/attemtp-to-fix-sso-in-snap-desktop
auth/pm-5217/biometrics-on-different-account
auth/pm-5991/fix-account-switcher-logout
auth/pm-6188/move-two-factor-service-to-popup
auth/pm-6484/update-di-for-cryptoservice
auth/pm-6491/jit-sso-browser
auth/pm-6688/account-service-as-primary-account-source
auth/pm-6789/use-legacy-key-for-migration
auth/pm-7608/account-security-settings-change
auth/pm-7882/email-verification-removal
auth/pm-8111/browser-refresh-login-component
auth/pm-8115/desktop-extension-ui-refresh-self-hosted-setup-dialog
auth/pm-8225/ipc-warnings
auth/pm-8225/send-userkey-to-desktop-on-unlock
auth/pm-8225/timeout-dev-mode
auth/pm-8225/typesafe-commands
auth/pm-8285/remove-extra-clearing-of-state
auth/pm-8341/radio-buttons-to-checkboxes
auth/pm-8882/add-tde-logging
auth/pm-9019/safari-login-with-device-bugfix
auth/pm-9115/implement-view-data-persistence-in-2FA-flows
auth/pm-9576/qa-artifacts
auth/qa-test/passkey-uv
auth/remove-twoFactorProvider-property
auth/security-stamp-disk-state
auth/setUserDecryptionOptions
auth/state-provider-key-connector
auto-merge-renovate
autofill-user-key-definition-migration
autofill/PM-17187-autofill-new-identity
autofill/PM-19511-show-existing-items
autofill/PM-19511-with-exclude
autofill/PM-20367
autofill/PM-21846-center-unlock-vault-modal
autofill/PM-24656-detect-login-fields-with-webauthn-name
autofill/PM-24720-autofill-after-focus-alternative
autofill/PM-24720-non-blocking-page-details-collection
autofill/PM-25072-autofill-password-potterybarn
autofill/PM-26053-new-login-defect
autofill/PM-26348-zoom-autofill-password
autofill/PM-26503-medium-blocks-events
autofill/PM-27365-convert-list.scss-to-css-file
autofill/PM-28079-track-specified-attributes
autofill/PM-28080-debounce-overlay-setup
autofill/PM-9034-implement-passkey-for-unlocked-accounts-jholland-tests
autofill/anders-passkey-unlock
autofill/atdb
autofill/atdb_v2
autofill/autotype-security
autofill/beeep/autofill-identity-card-from-keyboard-shortcut
autofill/beep-lastpass-import-poc
autofill/beep-rearchitect-extension-messaging
autofill/beep/pm-5189-fix-issues-present-with-inline-menu-rendering-in-iframe
autofill/dialog-box-fix
autofill/for-nick
autofill/implement-collect-page-details-observable
autofill/log-cipher-decryption
autofill/migrate-autofill-on-page-load
autofill/mv3-required-poc-changes
autofill/notifications-rework-overlay-content-service-integration
autofill/pm-10068-remove-send-response-usages
autofill/pm-10418-expiration-date-on-cards-does-not-autofill-the-correct-format
autofill/pm-12352-remove-legacy-overlay-background
autofill/pm-12352-remove-legacy-overlay-background-minimal
autofill/pm-12763-modify-autofill-animation
autofill/pm-17641/fix-ssh-agent-default-socket-path
autofill/pm-17641/fix-ssh-agent-default-socket-path-only
autofill/pm-17789
autofill/pm-19255
autofill/pm-19255-variables
autofill/pm-21845
autofill/pm-2319-implement-autofill-overlay-poc
autofill/pm-26227/autotype-strict-type-keyboard-input
autofill/pm-27200/add-autotype-electron-unit-tests
autofill/pm-2753-prompt-to-save-login-credentials-silently-drops-data-on-network-error
autofill/pm-27549/autotype-remove-mvp-ff
autofill/pm-27655/autotype-integration-tests
autofill/pm-28076/autotype-remove-shift-modifier-key
autofill/pm-29177/enable-rust-pre-commit-hooks
autofill/pm-29288/error-dialog-desktop-already-running
autofill/pm-29587/desktop-ci-electron-builds-developer-mode-on-prs
autofill/pm-30131/add-ci-workflow-install-run-desktop-client
autofill/pm-30133/add-ci-workflow-install-run-desktop-client-macos
autofill/pm-5056-edge-and-opera-users-cannot-override-default-browser-autofill
autofill/pm-5189-duplicate-overlay-elements-shown-when-focusing-iframe-field
autofill/pm-5582-verify-usage-of-window-object-in-browser-popup-utils
autofill/pm-5740-update-local-back-storage-service-to-trigger-observable-updates
autofill/pm-5742-rework-usage-of-extension-apis-that-are-not-callable-within-service-workers-get-extension-views
autofill/pm-6122-rework-call-for-match-media-within-notification-background
autofill/pm-6426-create-alarms-manager-and-update-usage-of-long-lived-timeouts
autofill/pm-7138-implement-separate-main-background-instance-within-popup-for-get-bg-service-calls
autofill/pm-73-improve-detection-of-new-login
autofill/pm-7581-validate-cache-state-from-external-context-within-local-backed-session-storage
autofill/pm-934-autofill-not-working-until-page-has-been-refreshed
autofill/pm-934-autofill-not-working-until-page-has-been-refreshed-rework
autofill/poc-auto-submit-filled-form-alt
autofill/poc-firefox-mv3
autofill/refactor/generator
autofill/spike-mv3
autofill/spike-mv3-part-2
autofill/spike-mv3-part-4
autofill/spike-mv3-part-5
autofill/spike-mv3-working-session
autotype-demo
backport/fix/mv2-unlock-on-autofill
bc/anon-layout-with-logo-slot
bc/group-mjml-updates
beeep-autofill-debug
beeep-chip-focus-redirection-after-selection
beeep-focus-headings-after-load
beeep-performance-improvements
beeep/cipher-service-refactor
beeep/developer-tooling-feature-flags
beeep/enhanced-a11y-form-fields
beeep/files
beeep/import-selection
beeep/plausible
beeep/rust-fido2-desktop
beeep/typesafe-i18n
beep/rails-nav
better-passkey-auth
billing/PM-28509/replace-premium-upgrade-flow-desktop
billing/PM-29609/create-reusable-plan-cards
billing/csp-update
billing/pm-19484/Sspacing-off-for-pending-cancellation-badge
billing/pm-24033/update-premium-subscription-page-m2
billing/pm-24098-remove-getOrgKey-from-the-key-service
billing/pm-24350-discrepancy-between-estimated-tax-values-for-product-vs-marketing
billing/pm-27911/subscription-details-for-secrets-manager-with-free-password-manager
billing/pm-29061/remove-24996-feature-flag
bre-1037/update-rc-deploy-trigger
bre-1371_optimize-workflows
browser-ext-message-symbols
browser-mv3-messaging
browser-rc-heartbeat
browser-rc-wasm
bug/PS-1823-allowing-diacritics-on-email-domain
bug/derived-state
bug/webpack-config-for-fastmail
build-execution-context
catalina-after-angular-16
catalina-before-angular-16
catalina-browserslist-test
change-return-of-refresh-logic
change-tap-to-mergemap
change/PM-1102
cherry-pick-auth-request-fix
chromium-conflicts
cl-ra
cl/copy-field
cl/section-stack
claude/dirt-pm-27284-claude-1-session-011CUaHfLuKZghJYCJpUtcZd
claude/make-newapplications-optional-011CUcmXM8m4juUdrcr4qyCv
claude/review-merged-prs-011CUcFEum5zpdxzgRcQRWct
claude/review-run-report-changes-011CUcUFkD9eAFPENxSQozh4
cli-macos-signing
client-type-library
close-window-debugging
cloudops-437
clps-remove-angular-dep
commit-message-hook
common-nx
community/PM-11497/default-collection-check-saving-item
community/PM-2043-fix-additional-chars-clipboard
community/PM-2714/fix-move-item-to-nofolder
community/PM-7413/fix-report-page-not-retrieving-data-on-refresh
community/PM-959/prevent-new-line-feed-copying
community/pm-11628/fix-set-password-on-sso
community/pm-12617/chromium-browser-integration-linux
community/pm-12751/fix-snap-home-permissions
community/pm-13266/fix-logmeonce-csv-import
community/pm-1560/snapcraft-cli-sso-fix
community/pm-2539/fix-snap-plugs
core-test-utils-lib
coroiu/PM-22593-improve-initialization-process-for-database-and-repositories
coroiu/allow-rust-cache-disable
coroiu/beeep-desktop-browser-ipc-channel
coroiu/beeep-iterators
coroiu/experiment-with-dynamic-badge-calculators
coroiu/fix-refresh-clearing-badge
coroiu/group-lowdb
coroiu/ipc-ping-example
coroiu/performance-measure
coroiu/play-around-with-remote-sdk
coroiu/poc-api-service-cookie-fetching
coroiu/remove-deps
coroiu/remove-unsafe-from-extern
coroiu/remove-using-from-rc
coroiu/wasm-tracing
create-guid-type
creep-content-script-poc
crowdin-auto-sync
crowdin-auto-sync-web
ddg-files-modified-test
dependabot/npm_and_yarn/follow-redirects-1.15.5
desktop-devtools-enabled
desktop-ui-refresh
desktop-ui-updates
desktop/pm-18769/migrate-vault-filters
dev-mode-example
dev/kreynolds/tunnel_proto
dev/kreynolds/tunnel_proto_v2
dh-communications-with-key-connector
dirt/pm-17577/test-deployment
dirt/pm-19322/accessibility
dirt/pm-19810/member-access-report-csv
dirt/pm-19996/app-icons-on-risk-insights
dirt/pm-20132/member-count-must-includes-invited-users
dirt/pm-20577/report-summmary-for-db
dirt/pm-20578/report-summary-for-db
dirt/pm-20580/risk-insights-use-save-services
dirt/pm-20630/my-items-in-report
dirt/pm-21287/ngrx-poc
dirt/pm-23002/first-run-prompt
dirt/pm-23264/display-cipher-name
dirt/pm-23273/display-username-in-event-logs
dirt/pm-23375/replace-drawer-with-dialog
dirt/pm-23602/collection-name-in-event-logs
dirt/pm-23603/group-names-in-event-logs
dirt/pm-23822/org-integration-api-service
dirt/pm-23824/integration-and-configuration-data
dirt/pm-24655/hec-connection-delete
dirt/pm-26676/risk-insights-refresh-when-org-changes
dirt/pm-26676/risk-insights-refresh-when-org-changes-2
dirt/pm-27706/columns-for-new-apps-dialog
dirt/pm-27739/application-icons-not-rendering
dirt/pm-27803/disabled-activity-states
dirt/pm-28548/phishing-blocker-support-links
dirt/pm-29021/phishing-blocker-guard-updates
dirt/risk-insights-saving-reports-outline
dirt/update-risk-insight-models
ds/CL-330/close-select-on-scroll
ds/cl-235/slider
ds/cl-435/windows-shake-test
ds/compact-mode-2
ds/compact-mode-user-setting
ds/full-screen-dialog
ds/popup-siderbar-test
ds/prevent-copy-masked-field
ds/test-chromatic
ds/update-ds-codeowners
duo-sdk-upgrade
dwbit-patch-1
electron-hook-afterpack-test-for-chrome-sandbox-issue
environment-service-url-set-refactor
event-target-mock
example-documentation
explicit-userId-on-master-password-decryption
extension-signing
extract-serialization-library-from-common
extract-utils-from-common
fastlane-desktop-test
feature-passkey-provider
feature-personal-item-clone
feature-tde-merge-testing
feature/EC-14-collections
feature/PM-1209-lastpass-import-into-existing-folder-collection
feature/PM-191-desktop-envs
feature/PM-25865-migrate-send-list-desktop-migration
feature/PM-27794-create-send-component-desktop-migration
feature/PM-55-extract-token-api-calls-from-api-service-v2
feature/PM-55-refactor-identity-api-methods-out-of-api-service
feature/all-cores-multithreaded-decryption
feature/autofill-tester
feature/biometrics-rework
feature/browser-angular-di
feature/decrypt-cipher
feature/decrypt-refactor
feature/decrypt-test
feature/i18n-component-template
feature/manifest-experiment
feature/org-admin-refresh-v3
feature/phishing-detection
feature/phishing-detection-exemptions
feature/rust-ipc2-experiment
feature/seperate-connectors
feature/trust
feature/trusted-device-encryption-rc
feature/unix-biometrics
feature/windows-native-passkeys-provider
firefox-extension-test
fix-15485
fix-auth-circular-references
fix-autofill-signing-with-main
fix-ci
fix-export-service-import
fix-logout-on-biometrics-state-service
fix-never-domain-location
fix-registration-start-this-typo
fix-ts58-platform
fix-unawaited-promises-crypto-service
fix/medium-click-issue
get-the-known-phishing-domain-from-the-server
global-state-library
graphite-test
handle-unix-not-found-error
hide-mac-failed-on-cli
hotfix-rc-browser
hotfix-rc-desktop
idphost
iinuwa/win-passkey-poc
iinuwa/win-passkey-uv
impl-sdk-engines
implement-account-service
improve-options-type-safety
improve-session-syncer-observables
individual-vault-item-encryption-version-test
inline-menu-test-from-browser-rc-branch
innovation/archive/desktop-work
innovation/archive/web-work
innovation/opaque
innovation/user-achievements/event-stream-prototype
input-password-suggestion
introduce-inversify
key-definition-enhancements
kiro-localize
km/15084-testing
km/PM-25698/snap-sleep
km/auth-move-initial-password
km/auto-kdf-qa
km/beeep/amd64-targz
km/beeep/biometrics-flatpak-test
km/beeep/clean-agent-rewrite
km/beeep/drop-masterkey-auth-request
km/beeep/epheremal-value-store-rust
km/beeep/experimental-memfd-ssh
km/beeep/fido2-deps
km/beeep/fido2-rust-v2
km/beeep/hide-unsupported-options
km/beeep/llm-agent
km/beeep/qr-login
km/beeep/read-cache
km/beeep/send-image-preview
km/beeep/write-cache
km/beeep/zip-encrypted-export
km/beeep/zip-import
km/biometrics-testflight-builds
km/browser-integration-flatpak
km/build-linux-desktop-native-natively
km/cose
km/crypto-next-testbed
km/ddg-tmp
km/decrypt-obj
km/decrypt-to-file-data
km/default-argon2
km/disable-anti-tracing
km/disable-legacy-ciphers
km/disable-process-isolation
km/electron-fuse
km/encrypt-coverage
km/encrypt-only-string
km/encstring-cleanup
km/encstring-remove-decrypt
km/encstring-remove-decrypt-1
km/encstring-remove-decrypt-2
km/fido2-client
km/fido2-desktop-plumbing
km/fix-desktop
km/fix-i18n-data-recovery
km/fix-provider-key-observable
km/fix-ssh-crash-on-login
km/low-kdf-testing
km/maybe-fix-proc-reload
km/move-keygen-ownership
km/mp-jit-trust-prompt
km/package-type-qa
km/plausability-check
km/pm-104
km/pm-10408/ssh-generator-with-modern-generator-infrastructure
km/pm-10414/app-info-extended
km/pm-10924/biometrics-key-not-cleared-when-disabled
km/pm-12238/process-reload-when-cancelling-auth
km/pm-14445
km/pm-14445-crypto
km/pm-14448/remove-appimage
km/pm-14612
km/pm-15112/fix-web-refresh
km/pm-15584/fix-safari-bio
km/pm-18017/show-key-connector-domain-for-new-sso-users
km/pm-2094/windows-hello-focus
km/pm-21772-show-key-connector-domain-for-new-sso-users
km/pm-23618
km/pm-25385
km/pm-27236-account-registration-v2-key-connector
km/pm-27283-reactive-available-vauilt-timeout-actions
km/pm-540/disable-biometrics-when-failing-bio-auth-on-setup
km/pm-pm-15994/move-encrypt-service
km/poc-flight-recorder
km/poc-windows-hello-2
km/process-reload-dev
km/refactor-symmetric-encrypt-interface
km/refactor-symmetric-keys-3
km/refactor-symmetric-keys-4
km/remove-container-service
km/remove-legacy-crypto
km/remove-rsa-encrypt
km/remove-unused-functions
km/rename-encrypt-to-bytes
km/replace-encstring-with-unsigned-shared-key
km/rsa-extract-public-key
km/secitem-poc
km/secure_memory
km/signing-upgrade
km/simplify-linux-biometrics
km/ssh-agent-bugfixes
km/ssh-auto-hide
km/strict-non-null
km/tde-offboarding-fix
km/tde-trust-prompt
km/test
km/test-arm
km/test-arm64
km/test-ddg
km/test-drop-encrypted-object
km/test-swift
km/tmp-biometrics-fixed
km/tmp-flatpak
km/tmp-mac-dmg-browser
km/tmp-move-all-teams
km/tmp-move-auth
km/tmp-newkey
km/tmp-ownership-2
km/validate-args
lastpass-sso
lastpassimporter
linux-rpm-arm64-build-test
local-phishing-data-gh-action
log-to-storage-2024.7.1
logout-lib
logout-library
logout-reason-circular-imports
lt/knip
m/cl/submit-width
m/login-bootstrap
mac-build-test
main
main-branch-for-BRE49
manyorgdomains
mer/browser-refresh/beta-3
mer/pre-release-flag-on
messaging-docs
messaging-update-cg
move-folder-state-to-folder-service
namespaced-state-service
nathan/autofill-fix
neuronull/beeep/clippy-pedantic-autofill-desktop
neuronull/ci-build-desktop-build-dev
neuronull/ci-desktop-native-add-cargo-machete
neuronull/desktop-native-clean-unused-deps
neuronull/test-ci-cargo-deny-check
neuronull/test-pr-for-index.d.ts-generate-check
neuronull/testing-tracing-macos-provider
neuronull/true-up-napi-index.d.ts
no-firefox-mv3
notifications-bar-mv3
notifications-mv3
nov-6-known-good-main-desktop-build-test
nx-integration-testing
observable-token-service
on-installed-message-injection-poc
optimize-workflows
origin/billing/PM-5093/send-trial-initiation-email
passkey-window-loadurl
platform/PM-2910/unblock-account-switching
platform/add-comments-to-renovate
platform/add-prerequisites-to-issue-templates
platform/addison/PM-12624/update-codeowners
platform/adjust-ignoredeps
platform/config-device-identifier
platform/disable-patch-updates
platform/exclude-package-lock-from-codeowners
platform/handle-401-refresh-token
platform/mark-activeuserstate-deprecated
platform/pm-11936/remove-token-refresh-before-sync
platform/pm-14640/npm-ignore-patch
platform/pm-21683/add-duckduckgo-extension-device-type
platform/pm-22534/move-account-activity-to-memory
platform/pm-25424/revert-changes
platform/pm-27943/handle-electron-store-errors
platform/pm-6484/firefox-reprompt
platform/pm-7646/revert-ipc-changes
platform/revert-2025.3.1
platform/safari-native-messaging-docs
playwright
pm-11417-customers-expiration-date-in-admin-console-changing-to-next-invoice-date
pm-12767
pm-13785-after-submitting-the-payment-method-the-blank-add-payment-method-modal-pops-up-again
pm-13868-remove-upgrade-password-manager-flag
pm-15166-build-bw-musl
pm-15808-Show-suspended-org-modals-for-orgs-in-unpaid-and-canceled-status
pm-18047-blank-loading-modal-briefly-shown-before-the-upgrade-modal
pm-18701-optional-payment-modal-after-signup
pm-19497-reset-search-x-browser
pm-22968-ui-when-MSP-BUP-is-suspended-feature-flag
pm-23023
pm-24033-update-premium-subscription-page-m2
pm-24216-WEB-BEEEP-Improve-the-Code-Quality-of-the-Upgrade-Dialog
pm-25166-deprecate-premium-banner
pm-25269
pm-2537-region-selector-dropdown
pm-25909-commercial-desktop
pm-26476
pm-28077-more-ignoredInputTypes-in-CollectAutofillContentService
pm-28831
pm-29236
pm-3612-cg
pm-5347/vault/fix-p1336-to-asn1-der-conversion
pm-5559-cg
pm-5620
pm-7369/revert-snap-description-change
pm-8458-default-clear-clipboard-5min-strings
pm/CL-91-table-pagination
poc/observable-based-update-service
poc/search-query-language
poc/searchable-decorator
poc/structurizr
prevent-failure-from-corrupted-cipher-key
production-api-connections
ps-1081/split-out-api-methods-into-api
ps-1081/split-out-api-methods-into-api-service
ps-1082/transition-cipherService-into-providing-observables
ps/BEEEP-sos-dialog
ps/CL-131/bit-row-selector
ps/CL-135/cl-standalone-comps
ps/CL-135/migration-docs
ps/CL-175/bit-layout-horizontal-scroll
ps/CL-209/nav-item-deadzone
ps/CL-210/base-font-size
ps/PM-14166-add-brave-vivaldi
ps/PM-3530/popup-persistance-examples
ps/PM-4406/select-dropdown-browser-zoom
ps/angular-jest-browser
ps/app-shell-code-owner
ps/beeep-browser-recover
ps/beeep-compodoc
ps/bit-menu-scroll-story
ps/cli-module-es2020
ps/clone-prototype-of-memory-stored-objects
ps/electron-39-workaround
ps/electron-update
ps/fix-browser-account-switching
ps/forbid-direct-api-service
ps/forward-conditional-create
ps/include-previous-in-derive-callbacks
ps/item-truncate-default-slot
ps/list-unnecessary-save-warnings-to-state-providers
ps/mac-passkey
ps/move-org-switcher
ps/nullable-factory
ps/on-lock-on-logout-interfaces
ps/pm-11661/fill-buffer
ps/pm-15333/portable-desktop
ps/pm-19659/server-notifications-readme
ps/pm-2910/migrate-environment-service
ps/pm-5533/migrate-asym-user-keys
ps/pm-5536/config-service
ps/pm-5537/desktop-biometrics-state-service
ps/pm-7486/detect-libsecret-service
ps/pm-7486/detect-libsecret-service-debugging
ps/pm-7546/fix-cipher-upsert
ps/pm-7826/expose-user-environment
ps/pm-7826/notifications-service-refactor
ps/pm-7826/token-service-obs
ps/pm-7837/sync-service-auth
ps/pm-7926/fix-browser-logout
ps/pm-7985/vault-not-loading
ps/pm-8003/process-reload-only-when-cancelled
ps/pm-9048/enable-account-switching-for-safari
ps/raise-tsconfig-target
ps/remove-node-fetch
ps/responsive-account-settings
ps/resume-popup-url
ps/section
ps/service-worker-sessions-are-not-recovered
ps/state-provider-updates-in-sync-with-observable
ps/strict-config
ps/test-sdk-ipc-through-proxy
ps/ts-strict-common-abstract
ps/user-verification-stories
ps/vault-health-dashboard
ps/web-subresource-integrity
radio-buttons-block-option
rc-without-electron
reduce-desktop-disk-writes
refactor-biometric-service-method-names
refactor-merge-build-filter
refactor-move-build-filter
refresh-token-logging
regen-package-lock
release-management-fix
reload-config-on-set-urls-from-storage
remove-annotated-keys-from-memory
remove-autofill-shortcut-from-platform-utils
remove-clippy-allow-crypto
remove-notification-feature-flags
remove-session-sync
remove-session-sync-suggestion-clearable
reno-major-jest
renovate-docker
renovate/actions-checkout-6.x
renovate/actions-setup-node-6.x
renovate/babel-loader-10.x
renovate/bitwarden-russh-digest
renovate/chalk-5.x
renovate/chromaui-action-13.x
renovate/chrome-0.x
renovate/commander-14.x
renovate/concurrently-9.x
renovate/dotnet-monorepo
renovate/dtolnay-rust-toolchain-digest
renovate/electron-39.x
renovate/electron-fuses-2.x
renovate/electron-rebuild-4.x
renovate/electron-store-11.x
renovate/gio-0.x
renovate/inquirer-13.x
renovate/inquirer-8.x
renovate/jest
renovate/jsdom-27.x
renovate/koa-json-2.x
renovate/koa-router-15.x
renovate/koa__multer-2.x
renovate/koa__router-12.x
renovate/lock-file-maintenance
renovate/major-dotnet-monorepo
renovate/major-github-artifact-actions
renovate/major-jest
renovate/major-nx-monorepo
renovate/major-storybook-monorepo
renovate/minor-and-patch-linting-updates
renovate/minor-github-actions-updates
renovate/napi
renovate/papaparse-5.x
renovate/rsa-0.x
renovate/russh-cryptovec-0.x
renovate/sha2-0.x
renovate/storybook-test-runner-0.x
renovate/type-fest-5.x
renovate/vite-tsconfig-paths-6.x
renovate/windows
renovate/yao-pkg-pkg-6.x
responsive-vault--filters
responsive-web-vault
restrict-imports
revert-10342-auth/pm-8316/fix-account-switcher-on-vault-logout-timeout
revert-10653-auth/pm-8316/fix-account-switcher-on-vault-logout-timeout
revert-12161-PM-13938-exceptPasswordPermission
revert-12379-crowdin-auto-sync-browser
revert-13612-tools/pm-18456/unassigned-items-reports
revert-13922-fix/check-device-id-falsy-values
revert-14414-crowdin-auto-sync-browser
revert-14521-PM-20514-ux-updating-item-with-1-matching-login-edit-permission
revert-15851-revert-15844-BRE-1022-replace-sps
revert-17123-tools/PM-23258/import-items-vs-data-verbiage
revert-17571-renovate/cc-1.x
revert-4209
revert-5400-renovate/gh-minor
revert-8073-renovate/argon2-0.x
revert-8546-revert-8534-CLOUDOPS-1369-remove-r-2-bucket-secrets-and-upload-procedure-from-the-artifacts-github-workflows
revert-8685-ac-1218-add-ability-to-delete-provider-portals-emaillink
risk-insights-demo-1
risk-insights-final-demo
run-chrome-updates-in-angular
sandbox/vault-filter-example
saveinbutton
sdk-pass-generation
serialization-library
set-rust-nightly-version
settings-modal
sg/SG-643
shane/experiment/vault-state
shane/experiment/vault-state-v2
skip-listening-to-flag-changes-during-login
sm-10995]-FeatureFlagRemoval
sm-150-updatingUItoUseNewResponseStructure
sm-264-master
sm-bulk-move-to-project
sm-jest-mock-extended
sm/CL-82-icon-component
sm/PM-145-confirm-safe-site
sm/SM-616-export-extension
sm/SM-830-bulk-SM-uncheck
sm/crypto-refactor
sm/fix-onboarding
sm/secrets-access
snap-extra-files
split-large-event-upload-requests
sso-device-key-callback-poc
state-library
state-provider-service
storage-core-library-2
storage-service-get$
structural-request-result
synced-unlock-state
task/BRE-284
temp-zhHant-testing-branch
test-PM-12423-for-loop
test-codeowner-branch
test-coop-coep
test-safari-build
test_2
tmp/account-cryptographic-state
tools/PM-10938/1pux-ssh-key-import
tools/PM-13712/validation-minimal-reproduction
tools/PM-14470/mark-critical-apps
tools/PM-14927/display-critical-app-count
tools/PM-15091/db-feature-flag
tools/PM-16822/Replace-account-service
tools/PM-16898/cleanup-circular-dependencies
tools/PM-6415/legacy-send-state-provider
tools/PM-7875/add-info-where-parse-failed-lp-import
tools/PM-9604/PM-9604-paid-subscription-not-navigating-reports
tools/bounds
tools/cl-608/allow-custom-icons-in-toasts
tools/generator/organize-types-and-data
tools/internal-generator-docs
tools/pm-14001/fix-zero-checked-bug
tools/pm-15979/restore-min-max-attributes
tools/pm-16484/risk-insights-at-risk-count-fix
tools/pm-18656/remove-individual-vault-policy
tools/pm-19081/replace-new-send-button-with-NewSendDropdown-component
tools/pm-19223/aggregate-by-domain
tools/pm-20344/export-attachments-with-same-filename
tools/pm-21776/update-send-access-copy
tools/pm-23918/password-authentication
tools/pm-27220/export-filetype-simple-dropdown
tools/pm-27251/clean-up-sdk-generator
tools/pm-5716/add-help-icon-to-import-page
tools/pm-728/cli-config-server-error
tools/pm-919/cli-send-get-file
tools/pm-xxxx/introduce-bitwarden-encrypted-json-importer
tools/prototypes/ecs-log
totp-autofill-remove-onload-suggestions
try-out-requiring-token-presence-in-searches
uif/CL-277/bit-item-group-keyboard-nav
uif/CL-707/signals-auto-migrate
uif/CL-822/fix-popover-initial-position
uif/CL-841/landing-layout-component
uif/CL-852/chip-toggle
uif/CL-853/windows-title-bar
uif/CL-854/page-header-component
uif/CL-854/page-header-web-usage
uif/CL-923/more-flakey-chromatic-fixes
uif/CL-939/icon-refresh
uif/CL-961/nested-menus
uif/add-desktop-header-slot
uif/add-tooltip-delay
uif/apply-button-styles
uif/cl-349/popover-arrow
uif/cva
uif/design-tokens-exploration
uif/desktop-migration-header
uif/desktop-migration-routing
uif/eslint-forbid-libs-components
uif/fix-flicker-on-load
uif/generator-min-validator
uif/group-force-active
uif/onpush-nav
uif/pm-19437/access-selector-spacing-workflow-test
uif/pm-24178/menu-item-dialog
uif/pm-24178/menu-item-dialog-v2
uif/strict-angular-templates
uif/test-disabled-binding-on-input
uif/update-layout-bg
uif/vault-drawer
update-1pux-ssh-pr
update-firefox-mv3
update-license-file
update-message-strings-app-restart
use-bit-subject-in-state-service
use-bit-subject-in-state-service-suggestion
use-original-key-in-folder-rotate
use-sdk-for-encrypt-decrypt
user-configurable-log-levels
v0-attachments-upload
vault-decryption-errors
vault-decryption-rc-weirdness
vault-user-key-migration
vault/7732
vault/AC-2607
vault/PM-11206
vault/PM-12281
vault/PM-17216
vault/PM-24178/fix-modal-focus
vault/PM-25012/cipher_versioning
vault/PM-26200
vault/PM-5433
vault/PM-6110
vault/PM-7906
vault/addtl-logging-for-pm15635
vault/cli-old-attachment-build
vault/experiment/collapsable-filters
vault/mod-on-state-providers
vault/pm-10426/implement-edit-item-view-admin-console-vault
vault/pm-11388/defect-section-headers-are-missing
vault/pm-11462/defect-getting-mp-reprompt-on-edit
vault/pm-1235-auth-flow-discoverable-passkeys
vault/pm-12717/cloning-item-takes-you-back-to-original
vault/pm-1400-ac-experiment
vault/pm-1401/failed-sync-warning-component
vault/pm-1401/refactor-sync-service
vault/pm-22756/copy-click-listener
vault/pm-2400/sdk-cipher-encryption-json-import-fix
vault/pm-24000/test-sdk-await-fix
vault/pm-24963/fix-access-intelligence-tab
vault/pm-24978/corrupt-attachments
vault/pm-25081/vault-skeleton-loaders
vault/pm-25688/folder-api-models
vault/pm-27632/sdk-cipher-ops
vault/pm-28847/all-regions
vault/pm-29209/fix-persistent-berry
vault/pm-4185/regression-testing
vault/pm-4788
vault/pm-5072/update-minimum-server-version-for-cipher-key-encryption
vault/pm-9675/experiment
vault/use-sdk-sharing
vgrassia/test
view-cache-docs
web-app-checksum
web-copy-updates-to-clarify-vault-definition
web-vault-login-page-updates
workflow-file-usage-test
write-logs-to-storage
1.31.2
2.20.2
2022.05.0
a916476
browser-v2022.05.0
browser-v2022.10.0
browser-v2022.10.1
browser-v2022.12.0
browser-v2022.12.1
browser-v2022.5.0
browser-v2022.6.0
browser-v2022.6.1
browser-v2022.8.0
browser-v2022.9.0
browser-v2022.9.1
browser-v2023.1.0
browser-v2023.10.0
browser-v2023.10.1
browser-v2023.10.2
browser-v2023.12.0
browser-v2023.12.1
browser-v2023.2.0
browser-v2023.2.1
browser-v2023.3.0
browser-v2023.3.1
browser-v2023.4.0
browser-v2023.5.0
browser-v2023.5.1
browser-v2023.7.0
browser-v2023.7.1
browser-v2023.8.2
browser-v2023.8.3
browser-v2023.9.0
browser-v2023.9.1
browser-v2023.9.2
browser-v2024.1.0
browser-v2024.1.1
browser-v2024.10.0
browser-v2024.10.1
browser-v2024.11.0
browser-v2024.11.1
browser-v2024.11.2
browser-v2024.12.0
browser-v2024.12.1
browser-v2024.12.2
browser-v2024.12.3
browser-v2024.12.4
browser-v2024.2.0
browser-v2024.2.1
browser-v2024.3.1
browser-v2024.4.1
browser-v2024.4.2
browser-v2024.5.0
browser-v2024.5.1
browser-v2024.5.2
browser-v2024.6.0
browser-v2024.6.1
browser-v2024.6.2
browser-v2024.6.3
browser-v2024.7.0
browser-v2024.7.1
browser-v2024.8.0
browser-v2024.8.1
browser-v2024.8.2
browser-v2024.9.0
browser-v2024.9.1
browser-v2025.1.0
browser-v2025.1.1
browser-v2025.1.2
browser-v2025.1.3
browser-v2025.1.4
browser-v2025.10.0
browser-v2025.10.1
browser-v2025.10.2
browser-v2025.11.0
browser-v2025.11.1
browser-v2025.12.0
browser-v2025.2.0
browser-v2025.2.1
browser-v2025.2.2
browser-v2025.3.0
browser-v2025.3.1
browser-v2025.3.2
browser-v2025.4.0
browser-v2025.5.0
browser-v2025.5.1
browser-v2025.6.0
browser-v2025.6.1
browser-v2025.7.0
browser-v2025.7.1
browser-v2025.8.0
browser-v2025.8.1
browser-v2025.8.2
browser-v2025.9.0
cli-hotfix-v1.19.1
cli-v2022.10.0
cli-v2022.11.0
cli-v2022.6.0
cli-v2022.6.1
cli-v2022.6.2
cli-v2022.8.0
cli-v2022.9.0
cli-v2023.1.0
cli-v2023.10.0
cli-v2023.12.0
cli-v2023.12.1
cli-v2023.2.0
cli-v2023.3.0
cli-v2023.4.0
cli-v2023.5.0
cli-v2023.7.0
cli-v2023.8.2
cli-v2023.9.0
cli-v2023.9.1
cli-v2024.1.0
cli-v2024.10.0
cli-v2024.11.0
cli-v2024.11.1
cli-v2024.12.0
cli-v2024.2.0
cli-v2024.2.1
cli-v2024.3.1
cli-v2024.4.0
cli-v2024.4.1
cli-v2024.6.0
cli-v2024.6.1
cli-v2024.7.0
cli-v2024.7.1
cli-v2024.7.2
cli-v2024.8.0
cli-v2024.8.1
cli-v2024.8.2
cli-v2024.9.0
cli-v2025.1.0
cli-v2025.1.1
cli-v2025.1.2
cli-v2025.1.3
cli-v2025.10.0
cli-v2025.11.0
cli-v2025.12.0
cli-v2025.2.0
cli-v2025.3.0
cli-v2025.4.0
cli-v2025.5.0
cli-v2025.6.0
cli-v2025.6.1
cli-v2025.7.0
cli-v2025.8.0
cli-v2025.9.0
desktop-mac-v2025.4.2
desktop-v2022.10.0
desktop-v2022.10.1
desktop-v2022.11.0
desktop-v2022.12.0
desktop-v2022.5.0
desktop-v2022.5.1
desktop-v2022.6.0
desktop-v2022.6.1
desktop-v2022.6.2
desktop-v2022.8.0
desktop-v2022.8.1
desktop-v2022.9.0
desktop-v2022.9.1
desktop-v2023.1.0
desktop-v2023.1.1
desktop-v2023.10.0
desktop-v2023.10.1
desktop-v2023.12.0
desktop-v2023.12.1
desktop-v2023.2.0
desktop-v2023.3.0
desktop-v2023.3.1
desktop-v2023.3.2
desktop-v2023.4.0
desktop-v2023.5.0
desktop-v2023.5.1
desktop-v2023.7.0
desktop-v2023.7.1
desktop-v2023.8.2
desktop-v2023.8.3
desktop-v2023.8.4
desktop-v2023.9.0
desktop-v2023.9.1
desktop-v2023.9.2
desktop-v2023.9.3
desktop-v2024.1.0
desktop-v2024.10.0
desktop-v2024.10.1
desktop-v2024.10.2
desktop-v2024.11.0
desktop-v2024.11.1
desktop-v2024.11.2
desktop-v2024.12.0
desktop-v2024.12.1
desktop-v2024.2.0
desktop-v2024.2.1
desktop-v2024.3.0
desktop-v2024.3.2
desktop-v2024.4.0
desktop-v2024.4.1
desktop-v2024.4.3
desktop-v2024.5.0
desktop-v2024.6.0
desktop-v2024.6.1
desktop-v2024.6.2
desktop-v2024.6.3
desktop-v2024.6.4
desktop-v2024.7.0
desktop-v2024.7.1
desktop-v2024.8.0
desktop-v2024.8.1
desktop-v2024.8.2
desktop-v2024.9.0
desktop-v2025.1.0
desktop-v2025.1.1
desktop-v2025.1.2
desktop-v2025.1.3
desktop-v2025.1.4
desktop-v2025.10.0
desktop-v2025.11.0
desktop-v2025.11.1
desktop-v2025.11.2
desktop-v2025.12.0
desktop-v2025.2.0
desktop-v2025.2.1
desktop-v2025.3.0
desktop-v2025.3.1
desktop-v2025.4.2
desktop-v2025.5.0
desktop-v2025.5.1
desktop-v2025.6.0
desktop-v2025.6.1
desktop-v2025.7.0
desktop-v2025.8.0
desktop-v2025.8.1
desktop-v2025.8.2
desktop-v2025.9.0
tools/PM-7543/reproduce-bug
v0.0.1
v0.0.10
v0.0.11
v0.0.12
v0.0.13
v0.0.14
v0.0.15
v0.0.16
v0.0.2
v0.0.3
v0.0.4
v0.0.5
v0.0.6
v0.0.7
v0.0.8
v0.0.9
v1.0.0
v1.0.1
v1.0.5
v1.1.0
v1.1.1
v1.10.0
v1.10.1
v1.10.2
v1.11.0
v1.11.1
v1.11.2
v1.12.0
v1.12.2
v1.12.3
v1.13.0
v1.13.1
v1.13.4
v1.13.5
v1.14.0
v1.14.1
v1.14.2
v1.14.3
v1.15.0
v1.15.1
v1.15.2
v1.15.3
v1.16.0
v1.16.1
v1.16.2
v1.16.4
v1.16.6
v1.17.0
v1.17.1
v1.17.2
v1.17.3
v1.18.0
v1.19.0
v1.19.1
v1.2.0
v1.2.1
v1.2.2
v1.20.0
v1.20.1
v1.21.0
v1.21.1
v1.21.2
v1.21.3
v1.21.4
v1.22.0
v1.22.1
v1.22.2
v1.23.0
v1.23.1
v1.24.0
v1.24.1
v1.24.2
v1.24.3
v1.24.4
v1.24.6
v1.25.0
v1.25.1
v1.25.2
v1.25.3
v1.25.4
v1.25.5
v1.25.6
v1.25.7
v1.26.0
v1.26.1
v1.26.2
v1.26.3
v1.26.4
v1.26.5
v1.26.6
v1.27.0
v1.28.0
v1.29.0
v1.3.0
v1.30.0
v1.30.1
v1.30.2
v1.30.3
v1.31.0
v1.32.0
v1.32.1
v1.33.1
v1.33.2
v1.33.3
v1.34.0
v1.35.0
v1.35.1
v1.35.2
v1.36.0
v1.37.0
v1.38.0
v1.39.0
v1.39.1
v1.39.2
v1.39.3
v1.4.0
v1.40.0
v1.40.1
v1.41.0
v1.42.2
v1.43.1
v1.43.2
v1.43.3
v1.43.4
v1.44.0
v1.44.1
v1.44.2
v1.44.3
v1.45.0
v1.46.0
v1.46.1
v1.46.2
v1.47.0
v1.47.1
v1.48.0
v1.48.1
v1.49.0
v1.49.1
v1.5.0
v1.50.0
v1.51.0
v1.51.1
v1.52.0
v1.52.1
v1.53.0
v1.54.0
v1.55.0
v1.56.0
v1.56.1
v1.56.2
v1.56.3
v1.56.4
v1.56.5
v1.56.6
v1.57.0
v1.58.0
v1.6.0
v1.6.1
v1.7.0
v1.8.0
v1.8.1
v1.8.2
v1.9.0
v1.9.1
v1.9.8
v2.0.0
v2.1.0
v2.1.1
v2.10.0
v2.10.1
v2.11.0
v2.12.0
v2.13.0
v2.13.1
v2.13.2
v2.14.0
v2.15.1
v2.16.0
v2.16.1
v2.16.2
v2.17.0
v2.17.1
v2.18.0
v2.18.1
v2.18.2
v2.19.0
v2.2.0
v2.20.0
v2.20.1
v2.20.3
v2.20.4
v2.21.0
v2.21.1
v2.22.0
v2.22.1
v2.22.2
v2.22.3
v2.23.0
v2.24.0
v2.24.1
v2.24.2
v2.24.3
v2.24.4
v2.25.0
v2.25.1
v2.26.0
v2.26.1
v2.26.2
v2.27.0
v2.28.0
v2.28.1
v2.3.0
v2.4.0
v2.5.0
v2.6.0
v2.6.1
v2.7.0
v2.7.1
v2.8.0
v2.9.0
vNext
web-hotfix-v2.24.1
web-v
web-v2022.10.0
web-v2022.10.1
web-v2022.10.2
web-v2022.11.0
web-v2022.11.1
web-v2022.11.2
web-v2022.12.0
web-v2022.6.0
web-v2022.6.2
web-v2022.8.0
web-v2022.8.1
web-v2022.9.0
web-v2022.9.1
web-v2022.9.2
web-v2023.1.0
web-v2023.1.1
web-v2023.10.0
web-v2023.10.1
web-v2023.10.2
web-v2023.12.0
web-v2023.2.0
web-v2023.3.0
web-v2023.4.0
web-v2023.4.1
web-v2023.4.2
web-v2023.5.0
web-v2023.5.1
web-v2023.7.0
web-v2023.7.1
web-v2023.8.0
web-v2023.8.2
web-v2023.8.3
web-v2023.8.4
web-v2023.9.0
web-v2023.9.1
web-v2023.9.2
web-v2024.1.0
web-v2024.1.1
web-v2024.1.2
web-v2024.10.0
web-v2024.10.1
web-v2024.10.2
web-v2024.10.3
web-v2024.10.4
web-v2024.10.5
web-v2024.11.0
web-v2024.11.1
web-v2024.11.2
web-v2024.12.0
web-v2024.12.1
web-v2024.2.0
web-v2024.2.1
web-v2024.2.2
web-v2024.2.3
web-v2024.2.4
web-v2024.2.5
web-v2024.3.0
web-v2024.3.1
web-v2024.4.0
web-v2024.4.1
web-v2024.4.2
web-v2024.5.0
web-v2024.5.1
web-v2024.6.0
web-v2024.6.1
web-v2024.6.2
web-v2024.6.3
web-v2024.7.0
web-v2024.7.1
web-v2024.7.2
web-v2024.7.3
web-v2024.8.0
web-v2024.8.1
web-v2024.8.2
web-v2024.8.3
web-v2024.9.1
web-v2024.9.2
web-v2025.1.0
web-v2025.1.1
web-v2025.1.2
web-v2025.10.0
web-v2025.10.1
web-v2025.11.0
web-v2025.11.1
web-v2025.11.3
web-v2025.11.4
web-v2025.11.5
web-v2025.12.0
web-v2025.12.1
web-v2025.2.0
web-v2025.2.1
web-v2025.2.2
web-v2025.3.0
web-v2025.3.1
web-v2025.4.0
web-v2025.4.1
web-v2025.4.2
web-v2025.5.0
web-v2025.5.1
web-v2025.6.0
web-v2025.6.1
web-v2025.6.2
web-v2025.7.0
web-v2025.7.1
web-v2025.7.2
web-v2025.8.0
web-v2025.8.1
web-v2025.8.2
web-v2025.8.3
web-v2025.9.0
web-v2025.9.1
${ noResults }
243 Commits (11-21-test)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
b622c38c6f
|
[PM-4229] Autofill Overlay MVP (#6507)
* [PM-3914] Refactor Browser Extension Popouts * [PM-3914] Refactor Browser Extension Popouts * [PM-3914] Refactor Browser Extension Popouts * [PM-3914] Adding enums for the browser popout type * [PM-3914] Making the methods for getting a window in a targeted manner public * [PM-3914] Refactoing implementation * [PM-3914] Updating deprecated api call * [PM-3914] Fixing issues found when testing behavior * [PM-3914] Reimplementing behavior based on feedback from platform team * [PM-3914] Adding method of ensuring previously opened single action window is force closed for vault item password reprompts * [PM-3914] Taking into consideration feedback regarding the browser popup utils service and implementating requested changes * [PM-3914] Removing unnecesssary class dependencies * [PM-3914] Adding method for uniquely setting up password reprompt windows * [PM-3914] Modifying method * [PM-3914] Adding jest tests and documentation for AuthPopoutWindow util * [PM-3914] Adding jest tests and documentation for VaultPopoutWindow * [PM-3914] Adding jest tests for the debouncing method within autofill service * [PM-3914] Adding jest tests for the new BrowserApi methods * [PM-3914] Adding jest tests to the BrowserPopupUtils class * [PM-3914] Updating inPrivateMode reference * [PM-3914] Updating inPrivateMode reference * [PM-3914] Modifying comment * [PM-3914] Moviing implementation for openCurrentPagePopout to the BrowserPopupUtils * [PM-3914] Applying feedback * [PM-3914] Applying feedback * [PM-3914] Applying feedback * [PM-3983] Refactoring implementation of `setContentScrollY` to facilitate having a potential delay * [PM-3914] Applying feedback regarding setContentScrollY to the implementation * [PM-3914] Modifying early return within the run method of the ContextMenuClickedHandler * [PM-3914] Adding test for VaultPopoutWindow * [PM-4229] Autofill Overlay MVP * [PM-2855] Add Settings to Enable Autofill Overlay (#6509) * [PM-2855] Add Settings to Enable Autofill Overlay * [PM-2855] Removing unnecessary key * [PM-3914] Applying work done within PM-4366 to facilitate opening the popout window as a popup rather than a normal window * [PM-3914] Updating the BrowserApi.removeTab method to leverage a callback structure for the promise rather than an async away structure * [PM-3036] Adding jest tests for added passkeys popout windows * [PM-3914] Adjsuting logic for turning off the warning when FIDO2 credentials are saved * [PM-3914] Fixing height to design * [PM-3914] Fixing call to Fido2 Popout * [PM-3914] Fixing add/edit from fido2 popout * [PM-3914] Fixing add/edit from fido2 popout * [PM-3914] Fixing jest tests for updated elements * [PM-3914] Reverting how context menu actions are passed to the view component * [PM-3914] Reverting re-instantiation of config service within main.background.ts * [PM-3914] Adding jest test for BrowserAPI removeTab method * [PM-3914] Adding method to handle parsing the popout url path * [PM-3914] Removing JSDOC comment elements * [PM-3914] Removing await from method call * [PM-3914] Simplifying implementation on add/edit * [PM-3032] Adding more direct reference to view item action in context menus * [PM-3034] Modify Autofill Callout to Consider Autofill Overlay Visibility (#6510) * [PM-2855] Add Settings to Enable Autofill Overlay * [PM-2855] Removing unnecessary key * [PM-3034] Modify Autofill Callout to Consider Autofill Overlay Visibility * [PM-3034] Adding translated strings * [PM-3034] Updating boolean logic for showing the callout to remove unnecessary negation of boolean statement * [PM-3914] Adjusting routing on Fido2 component to pass the singleActionPopout param to the route when opening the add-edit component * [PM-3914] Adding singleActionPopout param to the fido2 component routing * [PM-3914] Updating implementation details for how we build the extension url path * [PM-3914] Reworking implementation for isSingleActionPopoutOpen to clean up iterative logic * [PM-3914] Merging work from master and fixing merge conflicts * [PM-3914] Fixing merge conflict introduced from master * [PM-3914] Reworking closure of single action popouts to ensure they close the window instead of attempting to close the tab * [PM-3036] Implement Autofill Overlay Unlock State (#6514) * [PM-2855] Add Settings to Enable Autofill Overlay * [PM-2855] Removing unnecessary key * [PM-3034] Modify Autofill Callout to Consider Autofill Overlay Visibility * [PM-3034] Adding translated strings * [PM-3034] Add Autofill Overlay Vault Locked State * [PM-3036] Bootstrap Autofill Overlay implementation and add locked vault state * [PM-3032] Removing add/edit cipher message * [PM-3036] Fixing lint error found within overlay background * [PM-3036] Setting properties within the autofill component method to be protected * [PM-3034] Updating boolean logic for showing the callout to remove unnecessary negation of boolean statement * [PM-3036] Applying feedback from browser popout refactor PR * [PM-3036] Adding ownership over the website icon service file to the autofill team * [PM-3036] Updating the `autoFillOverlayVisibility` setting to be a client-scoped setting rather than account-scoped * [PM-3036] Reworking jest setup implementation to facilitate approach recommended within code review * [PM-3036] Updating WebsiteIconService to act as a single function reference and moving it to be under the vault team as codeowners * [PM-3032] Show Matching Logins When User Interacts with Field (#6516) * [PM-3032] Show Matching Logins When User Interacts with Field * [PM-3032] Fixing issue found when changing pages * [PM-3032] Addressing feedback within PR * [PM-3032] Addressing feedback within PR * [PM-3033] Allow User to Fill Matching Logins within Overlay (#6517) * [PM-3033] Allow User to Fill Matching Logins within Overlay * [PM-3035] Allow adding new items when no ciphers found in overlay (#6518) * [PM-2319] Refactoring implementation to leverage styles within the encapsulated custom elements rather than inline on those elements * [PM-2319] Leveraging globalThis to avoid potential DOM clobbering within implementation * [PM-2319] Fixing issue where styles can override visibility of overlay icon and list * [PM-2319] Fixing issue where styles can override visibility of overlay icon and list * [PM-2319] Implementing more secure method for ensuring overlay is visible * [PM-2319] Optimizing implementation of mutation observers on elements that need to enforce CSS styling * [PM-2319] Refactoring how we handle mutation observers to allow for a more streamlined implementation approach * [PM-2319] Implementing view cipher item initial workflow * [PM-2319] Implementing obfruscation of username within login ciphers * [PM-2747] Fixing logic error incorporated when merging in master * [PM-2130] Fixing issue with autofill service unit tests * [PM-2130] Fixing issue with autofill service unit tests * [PM-2747] Fixing issue present with notification bar merge * [PM-2130] Fixing test test for when we need to handle a password reprompt * [PM-2319] Fixing issue present with context menu handler * [PM-2319] Implementing fixes for password reprompt when autofilling from overlay * [PM-2319] Working through accessibility and focus order on overlay elements * [PM-2319] Finishing out focus redirection approach for focus out of overlay list * [PM-2319] Working through screen reader accessibility including aria attributes * [PM-2319] Adding guard to usage of extension privacy api * [PM-2319] Adding guard to usage of extension privacy api * [PM-2319] Adding aria description for fill cipher elements * [PM-2319] Refactoring implementation * [PM-2319] Working through implementation of view cipher tirggers when overlay set to view an element * [PM-2319] Refining implementation for viewing vault item from overlay * [PM-2319] Applying fix for context menu ciphers * [PM-2319] Modifying namespace for overlay icon to overlay button * [PM-2319] Refactoring OverlayButton * [PM-2319] Refactoring OverlayButton * [PM-2319] Adding translations for overlay content * [PM-2319] Refactoring OverlayBackground class * [PM-2319] Refactoring OverlayBackground class to more optimially store and retrieve cipher data for the overlay elements * [PM-2319] Refactoring OverlayBackground class * [PM-2319] Refactoring AutofillOverlayList class structure * [PM-2319] Implementing randomization of custom element names for elements injected into tab * [PM-2319] Updating how we handle referencing port messages within the OverlayIframe service * [PM-3465] Optimization of CollectPageDetails Message within Autofill * [PM-3465] Implementing caching for CollectPage details call * [PM-3465] Implementing caching for CollectPage details call * [PM-3465] Implementing method for ensuring that getPageDetails is not called when no fields appear within a frame * [PM-3465] Implementing Mutation Observer to handle updating autofill fields when DOM updates * [PM-2747] Fixing wording for webpack script * [PM-2130] - Audit, Modularize, and Refactor Core autofill.js File (#5453) * split up autofill.ts, first pass * remove modification tracking comments * lessen and localize eslint disables * additional typing and formatting * update autofill v2 with PR #5364 changes (update/i18n confirm dialogs) * update autofill v2 with PR #4155 changes (add autofill support for textarea) Co-Authored-By: Manuel <mr-manuel@outlook.it> * move commonly used string values to constants * ts cleanup * [PM-2130] Starting work to re-architect autofillv2.ts * [PM-2130] Starting work to re-architect autofillv2.ts * [PM-2130] Working through autofill collect method * [PM-2130] Marking Removal of documentUUID as dead code * [PM-2130] Refining the implementation of collect and moving broken out utils back into class implementation * [PM-2130] Applying small refactors to AutofillCollect * [PM-2130] Refining the implementation of getAutofillFieldLabelTag to help with readability of the method * [PM-2130] Implementing jest tests for AutofillCollect methods * [PM-2130] Refining implementation for AutofillCollect * [PM-2200] Unit tests for autofill content script utilities with slight refactors (#5544) * add unit tests for urlNotSecure * add test coverage command * add unit tests for canSeeElementToStyle * canSeeElementToStyle should not return true if `animateTheFilling` or `currentEl` is false * add tests for selectAllFromDoc and getElementByOpId * clean up getElementByOpId * address some typing issues * add tests for setValueForElementByEvent, setValueForElement, and doSimpleSetByQuery * clean up setValueForElement and setValueForElementByEvent * more typescript cleanup * add tests for doClickByOpId and touchAllPasswordFields * add tests for doFocusByOpId and doClickByQuery * misc fill cleanup * move functions between collect and fill utils and replace getElementForOPID for duplicate getElementByOpId * add tests for isKnownTag and isElementVisible * rename addProp and remove redundant focusElement in favor of doFocusElement * cleanup * fix checkNodeType * add tests for shiftForLeftLabel * clean up and rename checkNodeType, isKnownTag, and shiftForLeftLabel * add tests for getFormElements * clean up getFormElements * add tests for getElementAttrValue, getElementValue, getSelectElementOptions, getLabelTop, and queryDoc * clean up and rename queryDoc to queryDocument * misc cleanup and rename getElementAttrValue to getPropertyOrAttribute * rebase cleanup * prettier formatting * [PM-2130] Fixing linting issues * [PM-2130] Fixing linting issues * [PM-2130] Migrating implementation for collect methods and tests for those methods into AutofillCollect context * [PM-2130] Migrating getPropertyOrAttribute method from utils to AutofillCollect * [PM-2130] Continuing migration of methods from collect utils into AutofillCollect * [PM-2130] Rework of isViewable method to better handle behavior for how we identify if an element is currently within the viewport * [PM-2130] Filling out implementation of autofill-insert * [PM-2130] Refining AutofillInsert * [PM-2130] Implementing jest tests for AutofillCollect methods and breaking out visibility related logic to a separate service * [PM-2130] Fixing jest tests for AutofillCollect * [PM-2130] Fixing jest tests for AutofillInit * [PM-2130] Adjusting how the AutofillFieldVisibilityService class is used in AutofillCollect * [PM-2130] Working through AutofillInsert implementation * [PM-2130] Migrating methods from fill.ts to AutofillInsert * [PM-2130] Migrating methods from fill.ts to AutofillInsert * [PM-2130] Applying fix for IntersectionObserver when triggering behavior in Safari and fixing issue with how we trigger an input event shortly after filling in a field * [PM-2130] Refactoring AutofillCollect to service CollectAutofillContentService * [PM-2130] Refactoring AutofillInsert to service InsertAutofillContentService * [PM-2130] Further organization of implementation * [PM-2130] Filling out missing jest test for AutofillInit.fillForm method * [PM-2130] Migrating the last of the collect jest tests to InsertAutofillContentService * [PM-2130] Further refactoring of elements including typing information * [PM-2130] Implementing jest tests for InsertAutofillContentService * [PM-2130] Implementing jest tests for InsertAutofillContentService * [PM-2130] Organization and refactoring of methods within InsertAutofillContent * [PM-2130] Implementation of jest tests for InsertAutofillContentService * [PM-2130] Implementation of Jest Test for IntertAutofillContentService * [PM-2130] Finalizing migration of methods and jest tests from util files into Autofill serivces * [PM-2130] Cleaning up dead code comments * [PM-2130] Removing unnecessary constants * [PM-2130] Finalizing jest tests for InsertAutofillContentService * [PM-2130] Refactoring FieldVisibiltyService to DomElementVisibilityService to allow service to act in a more general manner * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Breaking out the callback method used to resolve the IntersectionObserver promise * [PM-2130] Adding a comment explaining a fix for Safari * [PM-2130] Adding a comment explaining a fix for Safari * [PM-2130] Applying changes required for PM-2762 to implementation, and ensuring jest tests exist to validate the behavior * [PM-2130] Removing usage of IntersectionObserver when identifying element visibility due to broken interactions with React Components * [PM-2130] Fixing issue found when attempting to capture the elementAtCenterPoint in determining file visibility * [PM-2100] Create Unit Test Suite for autofill.service.ts (#5371) * [PM-2100] Create Unit Test Suite for Autofill.service.ts * [PM-2100] Finishing out tests for the getFormsWithPasswordFields method * [PM-2100] Implementing tests for the doAutofill method within the autofill service * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Finishing implementatino of isUntrustedIframe method within autofill service * [PM-2100] Finishing implementation of doAutoFill method within autofill service * [PM-2100] Finishing implementation of doAutoFillOnTab method within autofill service * [PM-2100] Working through tests for generateFillScript * [PM-2100] Finalizing generateFillScript method testing * [PM-2100] Starting implementation of generateLoginFillScript * [PM-2100] Working through tests for generateLoginFillScript * [PM-2100] Finalizing generateLoginFillScript method testing * [PM-2100] Removing unnecessary jest config file * [PM-2100] Fixing jest tests based on changes implemented within PM-2130 * [PM-2100] Fixing autofill mocks * [PM-2100] Fixing AutofillService jest tests * [PM-2100] Handling missing tests within coverage of AutofillService * [PM-2100] Handling missing tests within coverage of AutofillService.generateLoginFillScript * [PM-2100] Writing tests for AutofillService.generateCardFillScript * [PM-2100] Finalizing tests for AutofillService.generateCardFillScript * [PM-2100] Adding additional tests to cover changes introduced by TOTOP autofill PR * [PM-2100] Adding jest tests for Autofill.generateIdentityFillScript * [PM-2100] Finalizing tests for AutofillService.generateIdentityFillScript * [PM-2100] Implementing tests for AutofillService * [PM-2100] Implementing tests for AutofillService.loadPasswordFields * [PM-2100] Implementing tests for AutofillService.findUsernameField * [PM-2100] Implementing tests for AutofillService.findTotpField * [PM-2100] Implementing tests for AutofillService.fieldPropertyIsPrefixMatch * [PM-2100] Finalizing tests for AutofillService * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Removal of jest transform declaration * [PM-2130] Fixing issue with autofill service unit tests * [PM-2130] Fixing issue with autofill service unit tests * [PM-2130] Fixing test test for when we need to handle a password reprompt --------- Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Cesar Gonzalez <cgonzalez@bitwarden.com> Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com> * [PM-2747] Finanlizing implementation of attribute updates on cached values * [PM-2319] Refactoring implementation to reposition OverlayIframe classes * [PM-3465] Finalizing implementation of mutation observer behavior and CollectPageDetails optimization * [PM-3465] Adding jest tests for introduced functionality * [PM-3465] Finalizing jest tests and comments within implementation * [PM-3465] Removing a TODO by incorrporating a method for deep querying for a password field element * [PM-3465] Removing a TODO by incorrporating a method for deep querying for a password field element * [PM-3285] Migrating Changes from PM-1407 into autofill v2 refactor implementation * [PM-2747] Addressing stylistic changes requested from code review * [PM-2319] Refactoring implementation * [PM-2747] Add Support for Feature Flag of Autofill Version (#5695) * [PM-2100] Create Unit Test Suite for Autofill.service.ts * [PM-2100] Finishing out tests for the getFormsWithPasswordFields method * [PM-2100] Implementing tests for the doAutofill method within the autofill service * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Finishing implementatino of isUntrustedIframe method within autofill service * [PM-2100] Finishing implementation of doAutoFill method within autofill service * [PM-2100] Finishing implementation of doAutoFillOnTab method within autofill service * [PM-2100] Working through tests for generateFillScript * split up autofill.ts, first pass * remove modification tracking comments * lessen and localize eslint disables * additional typing and formatting * update autofill v2 with PR #5364 changes (update/i18n confirm dialogs) * update autofill v2 with PR #4155 changes (add autofill support for textarea) Co-Authored-By: Manuel <mr-manuel@outlook.it> * move commonly used string values to constants * ts cleanup * [PM-2100] Finalizing generateFillScript method testing * [PM-2100] Starting implementation of generateLoginFillScript * [PM-2100] Working through tests for generateLoginFillScript * [PM-2100] Finalizing generateLoginFillScript method testing * [PM-2130] Starting work to re-architect autofillv2.ts * [PM-2130] Starting work to re-architect autofillv2.ts * [PM-2130] Working through autofill collect method * [PM-2130] Marking Removal of documentUUID as dead code * [PM-2130] Refining the implementation of collect and moving broken out utils back into class implementation * [PM-2130] Applying small refactors to AutofillCollect * [PM-2130] Refining the implementation of getAutofillFieldLabelTag to help with readability of the method * [PM-2130] Implementing jest tests for AutofillCollect methods * [PM-2130] Refining implementation for AutofillCollect * [PM-2200] Unit tests for autofill content script utilities with slight refactors (#5544) * add unit tests for urlNotSecure * add test coverage command * add unit tests for canSeeElementToStyle * canSeeElementToStyle should not return true if `animateTheFilling` or `currentEl` is false * add tests for selectAllFromDoc and getElementByOpId * clean up getElementByOpId * address some typing issues * add tests for setValueForElementByEvent, setValueForElement, and doSimpleSetByQuery * clean up setValueForElement and setValueForElementByEvent * more typescript cleanup * add tests for doClickByOpId and touchAllPasswordFields * add tests for doFocusByOpId and doClickByQuery * misc fill cleanup * move functions between collect and fill utils and replace getElementForOPID for duplicate getElementByOpId * add tests for isKnownTag and isElementVisible * rename addProp and remove redundant focusElement in favor of doFocusElement * cleanup * fix checkNodeType * add tests for shiftForLeftLabel * clean up and rename checkNodeType, isKnownTag, and shiftForLeftLabel * add tests for getFormElements * clean up getFormElements * add tests for getElementAttrValue, getElementValue, getSelectElementOptions, getLabelTop, and queryDoc * clean up and rename queryDoc to queryDocument * misc cleanup and rename getElementAttrValue to getPropertyOrAttribute * rebase cleanup * prettier formatting * [PM-2130] Fixing linting issues * [PM-2130] Fixing linting issues * [PM-2130] Migrating implementation for collect methods and tests for those methods into AutofillCollect context * [PM-2130] Migrating getPropertyOrAttribute method from utils to AutofillCollect * [PM-2130] Continuing migration of methods from collect utils into AutofillCollect * [PM-2130] Rework of isViewable method to better handle behavior for how we identify if an element is currently within the viewport * [PM-2130] Filling out implementation of autofill-insert * [PM-2130] Refining AutofillInsert * [PM-2130] Implementing jest tests for AutofillCollect methods and breaking out visibility related logic to a separate service * [PM-2130] Fixing jest tests for AutofillCollect * [PM-2130] Fixing jest tests for AutofillInit * [PM-2130] Adjusting how the AutofillFieldVisibilityService class is used in AutofillCollect * [PM-2130] Working through AutofillInsert implementation * [PM-2130] Migrating methods from fill.ts to AutofillInsert * [PM-2130] Migrating methods from fill.ts to AutofillInsert * [PM-2130] Applying fix for IntersectionObserver when triggering behavior in Safari and fixing issue with how we trigger an input event shortly after filling in a field * [PM-2130] Refactoring AutofillCollect to service CollectAutofillContentService * [PM-2130] Refactoring AutofillInsert to service InsertAutofillContentService * [PM-2130] Further organization of implementation * [PM-2130] Filling out missing jest test for AutofillInit.fillForm method * [PM-2130] Migrating the last of the collect jest tests to InsertAutofillContentService * [PM-2130] Further refactoring of elements including typing information * [PM-2130] Implementing jest tests for InsertAutofillContentService * [PM-2130] Implementing jest tests for InsertAutofillContentService * [PM-2130] Organization and refactoring of methods within InsertAutofillContent * [PM-2130] Implementation of jest tests for InsertAutofillContentService * [PM-2130] Implementation of Jest Test for IntertAutofillContentService * [PM-2130] Finalizing migration of methods and jest tests from util files into Autofill serivces * [PM-2130] Cleaning up dead code comments * [PM-2130] Removing unnecessary constants * [PM-2130] Finalizing jest tests for InsertAutofillContentService * [PM-2130] Refactoring FieldVisibiltyService to DomElementVisibilityService to allow service to act in a more general manner * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Implementing jest tests for DomElementVisibilityService * [PM-2130] Breaking out the callback method used to resolve the IntersectionObserver promise * [PM-2100] Removing unnecessary jest config file * [PM-2100] Fixing jest tests based on changes implemented within PM-2130 * [PM-2100] Fixing autofill mocks * [PM-2100] Fixing AutofillService jest tests * [PM-2100] Handling missing tests within coverage of AutofillService * [PM-2100] Handling missing tests within coverage of AutofillService.generateLoginFillScript * [PM-2100] Writing tests for AutofillService.generateCardFillScript * [PM-2100] Finalizing tests for AutofillService.generateCardFillScript * [PM-2100] Adding additional tests to cover changes introduced by TOTOP autofill PR * [PM-2100] Adding jest tests for Autofill.generateIdentityFillScript * [PM-2100] Finalizing tests for AutofillService.generateIdentityFillScript * [PM-2100] Implementing tests for AutofillService * [PM-2130] Adding a comment explaining a fix for Safari * [PM-2130] Adding a comment explaining a fix for Safari * [PM-2100] Implementing tests for AutofillService.loadPasswordFields * [PM-2100] Implementing tests for AutofillService.findUsernameField * [PM-2100] Implementing tests for AutofillService.findTotpField * [PM-2100] Implementing tests for AutofillService.fieldPropertyIsPrefixMatch * [PM-2100] Finalizing tests for AutofillService * [PM-2747] Add Support for Feature Flag of Autofill Version * [PM-2747] Adding Support for Manifest v3 within the implementation * [PM-2747] Modifying how the feature flag for autofill is named * [PM-2747] Modifying main.background.ts to load the ConfigApiService correctly * [PM-2747] Refactoring trigger of autofill scripts to be a simple immediately invoked function * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Removal of jest transform declaration * [PM-2130] Applying changes required for PM-2762 to implementation, and ensuring jest tests exist to validate the behavior * [PM-2747] Modifying how we inject the autofill scripts to ensure we are injecting into all frames within a page * [PM-2130] Removing usage of IntersectionObserver when identifying element visibility due to broken interactions with React Components * [PM-2130] Fixing issue found when attempting to capture the elementAtCenterPoint in determining file visibility * [PM-2100] Create Unit Test Suite for autofill.service.ts (#5371) * [PM-2100] Create Unit Test Suite for Autofill.service.ts * [PM-2100] Finishing out tests for the getFormsWithPasswordFields method * [PM-2100] Implementing tests for the doAutofill method within the autofill service * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Working through implementation of doAutofill method * [PM-2100] Finishing implementatino of isUntrustedIframe method within autofill service * [PM-2100] Finishing implementation of doAutoFill method within autofill service * [PM-2100] Finishing implementation of doAutoFillOnTab method within autofill service * [PM-2100] Working through tests for generateFillScript * [PM-2100] Finalizing generateFillScript method testing * [PM-2100] Starting implementation of generateLoginFillScript * [PM-2100] Working through tests for generateLoginFillScript * [PM-2100] Finalizing generateLoginFillScript method testing * [PM-2100] Removing unnecessary jest config file * [PM-2100] Fixing jest tests based on changes implemented within PM-2130 * [PM-2100] Fixing autofill mocks * [PM-2100] Fixing AutofillService jest tests * [PM-2100] Handling missing tests within coverage of AutofillService * [PM-2100] Handling missing tests within coverage of AutofillService.generateLoginFillScript * [PM-2100] Writing tests for AutofillService.generateCardFillScript * [PM-2100] Finalizing tests for AutofillService.generateCardFillScript * [PM-2100] Adding additional tests to cover changes introduced by TOTOP autofill PR * [PM-2100] Adding jest tests for Autofill.generateIdentityFillScript * [PM-2100] Finalizing tests for AutofillService.generateIdentityFillScript * [PM-2100] Implementing tests for AutofillService * [PM-2100] Implementing tests for AutofillService.loadPasswordFields * [PM-2100] Implementing tests for AutofillService.findUsernameField * [PM-2100] Implementing tests for AutofillService.findTotpField * [PM-2100] Implementing tests for AutofillService.fieldPropertyIsPrefixMatch * [PM-2100] Finalizing tests for AutofillService * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Modyfing placement of autofill-mocks * [PM-2100] Removal of jest transform declaration * [PM-2747] Applying a fix for a race condition that can occur when loading the notification bar and autofiller script login * [PM-2747] Reverting removal of autofill npm action. Now this will force usage of autofill-v2 regardless of whether a feature flag is set or not * [PM-2747] Fixing logic error incorporated when merging in master * [PM-2130] Fixing issue with autofill service unit tests * [PM-2130] Fixing issue with autofill service unit tests * [PM-2747] Fixing issue present with notification bar merge * [PM-2130] Fixing test test for when we need to handle a password reprompt * [PM-2747] Fixing wording for webpack script * [PM-2747] Addressing stylistic changes requested from code review * [PM-2747] Addressing stylistic changes requested from code review --------- Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> * [PM-3285] Applying stylistic changes suggested by code review for the feature flag implementation * [PM-3285] Adding temporary console log to validate which version is being used * [PM-2319] Adjusting translation content * [PM-3465] Implementing a methodology for sorting the autofill field elements after awaiting the results of each element * [PM-3465] Implementing a methodology for sorting the autofill field elements after awaiting the results of each element * [PM-3465] Implementing a methodology for using cached field values when requerying DOM for elements * [PM-2319] Adjusting translation content * [PM-2319] Adding typing information for OverlayBackground * [PM-2319] Removing unnecesssary methods within OverlayBackground and AutofillOverlayContentService * [PM-2319] Refactoring implementation and incorpoarting BrowserApi class more effectively * [PM-2319] Fixing issue found with opening overaly element during reprompt of vault item * [PM-2319] Fixing issue found with auth status not updating when overlay is initializing * [PM-2319] Implementing a method for initializing the overlay with the user auth status * [PM-2319] Fixing issue where shadowRoot elements might not initialize overlay on setup * [PM-2319] Implementing await for runFillScriptAction * [PM-2319] Implementing methodology for having list of elements hide after user starts inputting within field * [PM-2319] Removing unnecesssary methods within OverlayBackground and AutofillOverlayContentService * [PM-2319] Fixing tab focus issue * [PM-2319] Fixing issue where page details would unload sooner than desired * [PM-2319] Fixing tab focus issues present on page details * [PM-2319] Adjusting how we iterate over cipher data * [PM-2319] Refactoring overlay background * [PM-2319] Adding typing information for OverlayBackground * [PM-2319] Adding typing information for OverlayBackground * [PM-2319] Refactoring and optimizing for loops * [PM-2319] Refactoring and optimizing how we listen for overlay element ports * [PM-2319] Implementing method for ensuring overlay removes itself if user scrolls focused input element out of viewport * [PM-2319] Replacing usage of foreach for a regular for loop * [PM-2319] Replacing usage of foreach for a regular for loop * [PM-2319] Refactoring forEach loops within CollectAutofillContent and moving autofill utils to a top level * [PM-2319] Refactoring getRandomCustomElementName util method * [PM-2319] Refactoring implementation * [PM-2319] Refactoring implementation * [PM-2319] Replacing hardcoded values for events with constant enum * [PM-2319] Adding reduced animation declaration for fill * [PM-2319] Adjusting implementation of mutation observer to better handle insertion of elements around overlay * [PM-2319] Fixing jest test * [PM-2319] Implementing method for ensuring tab focus from the overlay button can move to the correct place * [PM-2319] Refactoring implementation * [PM-3285] Removing temporary console log indicating which version of autofill the user is currently loading * [PM-3465] Adding scripting api reference to the manifest v3 json file * [PM-2319] Splitting shared logic within the overlay page implementations to act as a parent class for the overlay button and list pages * [PM-2319] Updating file names for page scripts * [PM-2319] Updating file names for page scripts * [PM-2319] Fixing issues present with overlay background when updating auth status * [PM-2319] Refactoring implementation * [PM-2319] Fixing cache invalidation issues present with the collect page details optimization * [PM-3465] Updating implementation to deal with cache invalidation issues * [PM-3465] Implementing jest tests for added collect autofill content class elements * [PM-3465] Removing scripting API permissiong within manifest v3 json file * [PM-2319] Adding scripting api to manifest v3 * [PM-2319] Fixing issue present with non visible fields having an overlay element * [PM-3465] Implementing method for removing cached page details if the window location has updated * [PM-3465] Fixing issue found with query selector generated while collecting page details * [PM-2319] Commenting out code that overrides default browser autofill behavior in chrome * [PM-3465] Fixing jest tests * [PM-3465] Fixing jest tests * [PM-2319] Adding typing information for OverlayBackground * [PM-2319] Updating typing information for the Overlay Background * [PM-2319] Adding typing information for notification changes * [PM-2319] Finalizing OverlayBackground typing info and removing browser autofill override method * [PM-2319] Refining typing information within different service classes * [PM-2319] Finalizing typing information within implementation * [PM-2319] Further refinement and fixes for icon element * [PM-2319] Fixing issue where submission of form and presentation of notification bar can offset the overlay element * [PM-2319] Fixing issues present with keyboard focus and determining when to open the overlay upon user interaction * [PM-2319] Adding in change to fix issue where autofill is occurring when iframes exist * [PM-2319] Implementing lazy load of UI elements * [PM-2319] Fixing issue present with lazy loading of cipher elements * [PM-2319] Fixing issue present with lazy loading of cipher elements * [PM-2319] Modifying offset for the ciphers list container * [PM-2319] Fixing issue encountered with autofilling using keyboard * [PM-2319] Modifying initialization of iframe element * [PM-2319] Fixing an issue where login ciphers that do not contain a user name will not display within the overlay list * [PM-2855] [PM-3034] Add Setting to Enable Autofill Overlay (#6194) * [PM-2855] Add Settings to Enable Autofil Overlay * [PM-2855] Adding feature flag for overlay * [PM-2855] Implementing autofill overlay setting within browser extension * [PM-2855] Implementing autofill overlay appearance setting * [PM-2855] Implementing behavior within autofill overlay to conditionally display either the icon or the full list on focus of an element * [PM-2855] Implementing a fix for when focus changes with the form field visible * [PM-2855] Modifying rules for how the callout appears within the current-tab component * [PM-2855] Modifying enum for autofill overlay appearance * [PM-2855] Implementing check to ensure autofill overlay setting is not visible if the feature flag is not set * [PM-2855] Fixing jest tests within implementation * [PM-2855] Modifying how we pull the overlay appearance information for the end user * [PM-2855] Applying changes to the structure for how the overlay settings are identified and verified * [PM-2855] Applying changes to the structure for how the overlay settings are identified and verified * [PM-2855] Adding translations content * [PM-2855] Modifying implementation for how autofill settings populate and present themselves * [PM-2855] Modifying implementation for how autofill settings populate and present themselves * [PM-2855] Adding the ability to override autofill permissions within Chrome as an opt-in * [PM-2855] Modifying message sent when vault item reprompt popout is opened * [PM-2855] Fixing issue encountered with how we handle lazy loading vaul items * [PM-2855] Fixing issue present when iframe is updating position when the window focus changes * [PM-3982] Implement Autofill Overlay unit tests (#6337) * [PM-2319] Jest Tests for Autofill Overlay MVP * [PM-2319] Jest test stubs for OverlayBackground * add tests and cleanup (#6341) * [PM-3983] Implementing test for `updateAutofillOverlayCiphers` * [PM-3983] Implementing test for `updateAutofillOverlayCiphers` * [PM-3983] Working through jest tests for overlay background * [PM-3983] Adding jest tests for OverlayBackground * [PM-3983] Adding jest tests for OverlayBackground; * [PM-3983] Adding jest tests for getAuthStatus * [PM-3983] Adding jest tests for getAuthStatus * [PM-3983] Adding jest tests for getTranslations * [PM-3983] Finalizing jest tests for OverlayBackground * [PM-3983] Finalizing jest tests for OverlayBackground * [PM-3982] Updating unit tests within AutofillInit * [PM-3982] Adding jest tests for AutofillOverlayIframeElement, AutofillOverlayButtonIframe, and AutofillOverlayListIframe * [PM-3982] Adding jest tests for the AutofillOverlayIframeService class * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3992] AutofillOverlayContentService class unit tests * [PM-3982] Filling out unit tests for the AutofillService class * [PM-3982] Implementing unit tests for the AutofillOverlayPageElement custom element class * [PM-3982] Updating elements to better allow for testing of the AutofillOverlayList and AutofillOverlayButton classes * [PM-3982] Adding jest tests for AutofillOverlayList custom element class * [PM-3982] Adding jest tests for AutofillOverlayList custom element class * [PM-3982] Adding jest tests for the AutofillOverlayButton custom element class * [PM-3982] Adding jest tests for the AutofillOverlayButton custom element class * [PM-3982] Updating obsolete snapshot * add tests for AutofillOverlayIframeService * [PM-3982] Refactoring * [PM-3982] Refactoring --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> * [PM-2319] Adjusting implementation for how we open the unlock popout to facilitate skipping the notification * [PM-2319] Adjusting typing information within the OverlayBackground class and fixing issue found within the AutofillOverlayList implementation * [PM-2319] Adjusting JSDOC comment within NotificationBackground * [PM-2319] Refactoring OverlayBackground tests * [PM-2319] Refactoring OverlayBackground tests * [PM-2319] Refactoring JSDOC comments * [PM-2319] Adding jest tests to modified TabsBackground class * [PM-2319] Refactoring jest tests for AutofillInit * [PM-2319] Refactoring AutofillInit JSDOC messages * [PM-2319] Applying refactors to AutofillInit * [PM-2319] Applying refactors to fying info for the AutofillOverlayIframeService * [PM-2319] Adding the ability to apply the extension theme to the overlay elements * [PM-2319] Adjusting background offset on darker themes * [PM-2319] Adjusting background offset on darker themes * [PM-2319] Adding JSDOC comments to the overlay iframe service * [PM-2319] Cleaning up implementation * [PM-2319] Cleaning up implementation * [PM-2319] Adding removal of unknown manifest key, `sandbox`, from the Firefox manifest * [PM-2319] Updating manifest v3 implementation to facilitate presentation of the overlay page elements * [PM-2319] Adding documentation to the changes to BrowserApi * [PM-2855] Removing unnecessary key * [PM-2319] Removing unnecesssary abstraction file * [PM-3035] Reverting changes to package-lock.json * [PM-3035] Reverting changes to package-lock.json * [PM-3035] Reverting added logs --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> * [PM-3032] Fixing issue with flashing background on overlay iframe list element * [PM-3032] Modifying how we determine the size of the overlay button element to facilitate smaller scaling on larger sized input elements * [PM-3032] Modifying how load actions are handled within the browser view component to clarify the triggered logic. * [PM-3032] Adjusting implementation to how we trigger copy actions * [PM-3032] Setting copyActions to be a static member of the view component class * [PM-3032] Merging in changes --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> * [PM-3914] Fixing issue within Opera where lock and login routes can persist if user opens the extension popout in a new window before locking or logging out * [PM-3914] Setting the extensionUrls that are cheked as a variable outside of the scope fo the openUlockPopout method to ensure it does not have to be rebuilt each time the method is called * [PM-4744] Page Details that Update after Mutation Observer has Triggered Do Not Update within Overlay Background (#6848) * [PM-4743] Windows Chromium Browser is Not Updating Overlay Ciphers on Tab Update (#6863) * [PM-4763] Fixing Issues with the Overlay UI Positioning and Presentation (#6864) * [PM-4763] Fixing overlay UI issues * [PM-4736] Implementing a method to ensure that the overlay is refreshed anytime the overlay has lost visibility * [PM-4763] Implementing a fix for a delayed opening of the overlay element where elements in the documentElement could potentially overlay our own UI element * [PM-4763] Implementing a fix for when the visibility of the dom changes to facilitate removing the overlay element if necessary * [PM-4763] Fixing jest tests * [PM-4763] Fixing global references * [PM-4790] Overlay not resetting on scroll of websites that do not scroll body element (#6877) * [PM-4790] Overlay not resetting on scroll of websites that do not scrollt he body element * [PM-4790] Setting up the scroll event to capture rather than setting mousewheel and touchmove events * [PM-4790] Setting up constants for referenced events * [PM-4229] Fixing issue found when collecting page details * [PM-4229] Implementing optimization to ensure we only rebuild the autofill item if the overlay needs to set the listeners on the field * [PM-4229] Adjusting copy for autofill callout message --------- Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com> Co-authored-by: Manuel <mr-manuel@outlook.it> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com> |
2 years ago |
|
|
a4b961aa0a
|
Remove EU environment feature flag from clients (#6619)
|
2 years ago |
|
|
29aabeb4f5
|
Ps/pm 2910/state framework improvements (#6860)
* Allow for update logic in state update callbacks * Prefer reading updates to sending in stream * Inform state providers when they must deserialize * Update DefaultGlobalState to act more like DefaultUserState * Fully Implement AbstractStorageService * Add KeyDefinitionOptions * Address PR feedback * More Descriptive Error --------- Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com> |
2 years ago |
|
|
90bad00cb5
|
[PM-3000] Add Environment URLs to Account Switcher (#5978)
* add server url to account switcher tab * add serverUrl to SwitcherAccount(s) * refactor serverUrl getter * cleanup urls * adjust styling * remove SwitcherAccount class * remove authenticationStatus from AccountProfile * rename to inactiveAccounts for clarity * move business logic to environmentService * use tokenService instead of stateService * cleanup type and comments * remove unused property * replace magic strings * remove unused function * minor refactoring * refactor to use environmentService insead of getServerConfig * use Utils.getHost() instead of Utils.getDomain() * create getHost() method * remove comment * get base url as fallback * resolve eslint error * Update apps/desktop/src/app/layout/account-switcher.component.html Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com> --------- Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com> |
2 years ago |
|
|
84f93edd8e
|
fix : return from submit method when pin is empty (#5769)
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com> Co-authored-by: Thomas Rittson <trittson@bitwarden.com> |
2 years ago |
|
|
161c1c63ff
|
Auth/PM-3275 - Changes to support TDE User without MP being able to Set a Password (#6281)
* PM-3275 - Policy.service - Refactor existing mapPoliciesFromToken internal logic to provide public mapPolicyFromResponse method * PM-3275 - Add new PolicyApiService.getMasterPasswordPolicyOptsForOrgUser method for use in the set password comp * PM-3275 - Update set-password.comp to use new policyApiService.getMasterPasswordPoliciesForInvitedUsers method * PM-3275 - (1) Remove post TDE AuthN set password routing logic from SSO/2FA comps as we cannot set an initial user password until after decryption in order to avoid losing the ability to decrypt existing vault items (a new user key would be created if one didn't exist in memory) (2) Add set password routing logic post TDE decryption in LoginWithDevice/Lock components (3) Add new ForceResetPasswordReason to capture this case so that we can guard against users manually navigating away from the set password screen * PM-3275 - SyncSvc - Add logic for setting forcePasswordReset reason if TDE user w/out MP went from not having MP reset permission to having it. * PM-3275 - Rename ForceResetPasswordReason enum to ForceSetPasswordReason + update all references. * PM-3275 - Removing client deprecated calls to getPoliciesByInvitedUser and helper call getMasterPasswordPoliciesForInvitedUsers * PM-3275 - PolicyAPI service - remove no longer necessary getPoliciesByInvitedUser method * PM-3275 - LockComp - TODO cleanup * PM-3275 - SSO & 2FA comp - cleanup of incorrect routing path * PM-3275 - (1) State service refactor - change getForcePasswordResetReason / setForcePasswordResetReason to be getForceSetPasswordReason / setForceSetPasswordReason (2) Sync Service - encapsulate setForceSetPasswordReasonIfNeeded logic into own method * PM-3275 - SetPassword Comp - Rename "identifier" to be "orgSsoIdentifier" for clarity * PM-3275 - SetPasswordComp - Moving routing from SSO / 2FA comps to Lock / LoginWithDevice comps results in a loss of the the OrgSsoId. However, as part of the TDE work, we added the OrgSsoId to state so use that as a fallback so we can accurately evaluate if the user needs to be auto enrolled in admin account recovery. * PM-3275 - SetPasswordComp - add a bit more context to why/when we are reading the user org sso id out of state * PM-3275 - SetPassword Comp - (1) Add forceSetPasswordReason and ForceSetPasswordReason enum as public props on the class so we can change copy text based on which is set + set forceSetPasswordReason on ngOnInit (2) Refactor ngOnInit to use a single RxJs observable chain for primary logic as the auto enroll check was occurring before the async getUserSsoOrganizationIdentifier could finish. * PM-3275 - Desktop - App comp - missed replacing getForcePasswordResetReason with getForceSetPasswordReason * PM-3275 - TDE Decryption Option Comps - must set ForceSetPasswordReason so that we can properly enforce keeping the user on the component + display the correct copy explaining the scenario to the user. * PM-3275 - All Clients - SetPasswordComp html - Update page description per product + remove no longer used ssoCompleteRegistration translation. * PM-3275 - SetPasswordComp - hopefully the final puzzle piece - must clear ForceSetPasswordReason in order to let user navigate back to vault. * PM-3275 - SyncService - Remove check for previous value of account decryption options hasManageResetPasswordPermission as when a user logged in on a trusted device after having their permissions updated, the initial setting would be true and it would cause the flag to NOT be set when it should have. * PM-3275 - TDE User Context - (1) Remove explicit navigation to set password screen from post decryption success scenarios on lock & login w/ device comps (2) Move TdeUserWithoutPasswordHasPasswordResetPermission flag setting to SSO / 2FA components to support both trusted and untrusted device scenarios (both of which are now caught by the auth guard). * PM-3275 - (1) SetPassword comp - adjust set password logic for TDE users to avoid creating a new user asymmetric key pair and setting a new private key in memory. (2) Adjust SetPasswordRequest to allow null keys * PM-3275 - Remove unused route from login with device comp * PM-3275 - Sso & 2FA comp tests - Update tests to reflect new routing logic when TDE user needs to set a password * PM-3275 - Lock comp - per PR feedback, remove unused setPasswordRoute property. * PM-3275 - SetPasswordComp - Per PR feedback, use explicit null check * PM-3275 - Per PR Feedback, rename missed forcePasswordResetReason to be forceSetPasswordReason on account model * PM-3275 - Auth guard - rename forcePasswordResetReason to forceSetPasswordReason * PM-3275 - SSO / 2FA comps - Per PR feedback, refactor Admin Force Password reset handling to be in one place above the TDE user flows and standard user flows as it applies to both. * PM-3275 - Per PR feedback, clarify 2FA routing comment * PM-3275 - Per PR feedback, update set-password comp ngOnInit switchMaps to just return promises as switchMap converts promises to observables internally. * PM-3275 - Per PR feedback, refactor set password ngOnInit observable chain to avoid using async subscribe and instead simply sequence the calls via switchMap and tap for side effects. * PM-3275 - Per PR feedback, move tap after filter so we can remove if check * PM-3275 - Per PR feedback, update policy service mapping methods to use shorthand null checking. * PM-3275 - SetPassword comp - (1) Move force set password reason logic into onSetPasswordSuccess(...) (2) On onSetPasswordSuccess, must set hasMasterPassword to true for user verification scenarios. * PM-3275 - Per PR feedback, remove new hasManageResetPasswordPermission flag from profile response and instead simply read the information off the existing profile.organizations data as the information I needed was already present. * PM-4633 - PolicyService - mapPolicyFromResponse(...) - remove incorrect null check for data. Policies with internal null data property should still be evaluated and turned into Policy objects or the policy array ends up having null values in it and it causes errors down the line on login after acct creation. |
2 years ago |
|
|
a1729c97df
|
PM-4588 - Resolve desktop issue where account menu was disabled after a user JIT provisions into a MP encryption org - simply add a menu redraw call after succesfully setting the MP and relevant keys. (#6717)
|
2 years ago |
|
|
317d652088
|
[PM-3722] Use `UserVerificationPrompt` in passkey registration dialog (#6422)
* [PM-3722] fix: wrong translation bug * [PM-3722] feat: use user verification component during creation * [PM-3722] feat: use user verification component during deletion * [PM-3722] feat: improve error handling |
2 years ago |
|
|
43edc1a893
|
[PM-105] Premium Badge Send File (#6684)
* adding the premium badge for the send item file option * Removing the unnecessary margin after seeing design spec |
2 years ago |
|
|
485be21826
|
[PM-4360] Move organization-domain and organization-user to admin console (#6630)
* Move organization-domain and organization-user to admin console |
2 years ago |
|
|
5868d76b91
|
[PM-3198][PM-3199] Rename PasswordlessLoginStrategy (#6425)
* rename to LoginWithDeviceLoginStrategy * rename LoginWithDeviceComponent * update translation for web route * rename strategy to AuthRequestLoginStrategy * rename PasswordlessLogInCredentials and PasswordlessCreateAuthRequest * rename setPasswordlessAccessCode * rename startPasswordlessLogin() in template files * rename startPasswordlessLogin() for browser template file * rename AuthenticationType.Passwordless * standardize LogInStrategy to LoginStrategy * standardize PasswordLogInStrategy to PasswordLoginStrategy * standardize SsoLogInStrategy to SsoLoginStrategy * standardize UserApiLogInStrategy to UserApiLoginStrategy * standardize naming of login credentials * rename log-in-credentials.ts to login-credentials.ts |
2 years ago |
|
|
8dd17bd55a
|
move legacy check below auth check in lock guard (#6696)
|
2 years ago |
|
|
1d2757e42b
|
Noop notifications for dev (#6671)
* Noop notifications for dev We rarely have notifications set up for development environments, this removes the error messages related to missing server notification services * Log actions in noop service * Add line breaks * Improve log messages * Ignore local config at all levels |
2 years ago |
|
|
cdcd1809f0
|
Expand account service (#6622)
* Define account service observable responsibilities * Establish account service observables and update methods * Update Account Service observables from state service This is a temporary stop-gap to avoid needing to reroute all account activity and status changes through the account service. That can be done as part of the breakup of state service. * Add matchers for Observable emissions * Fix null active account * Test account service * Transition account status to account info * Remove unused matchers * Remove duplicate class * Replay active account for late subscriptions * Add factories for background services * Fix state service for web * Allow for optional messaging This is a temporary hack until the flow of account status can be reversed from state -> account to account -> state. The foreground account service will still logout, it's just the background one cannot send messages * Fix add account logic * Do not throw on recoverable errors It's possible that duplicate entries exist in `activeAccounts` exist in the wild. If we throw on adding a duplicate account this will cause applications to be unusable until duplicates are removed it is not necessary to throw since this is recoverable. with some potential loss in current account status * Add documentation to abstraction * Update libs/common/spec/utils.ts Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com> * Fix justin's comment :fist-shake: --------- Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com> |
2 years ago |
|
|
9e290a3fed
|
[PM-4222] Make importer UI reusable (#6504)
* Split up import/export into separate modules * Fix routing and apply PR feedback * Renamed OrganizationExport exports to OrganizationVaultExport * Make import dialogs standalone and move them to libs/importer * Make import.component re-usable - Move functionality which was previously present on the org-import.component into import.component - Move import.component into libs/importer Make import.component standalone Create import-web.component to represent Web UI Fix module imports and routing Remove unused org-import-files * Renamed filenames according to export rename * Make ImportWebComponent standalone, simplify routing * Pass organizationId as Input to ImportComponent * use formLoading and formDisabled outputs * Emit an event when the import succeeds Remove Angular router from base-component as other clients might not have routing (i.e. desktop) Move logic that happened on web successful import into the import-web.component * fix table themes on desktop & browser * fix fileSelector button styles * update selectors to use tools prefix; remove unused selectors * Wall off UI components in libs/importer Create barrel-file for libs/importer/components Remove components and dialog exports from libs/importer/index.ts Extend libs/shared/tsconfig.libs.json to include @bitwarden/importer/ui -> libs/importer/components Extend apps/web/tsconfig.ts to include @bitwarden/importer/ui Update all usages * Rename @bitwarden/importer to @bitwarden/importer/core Create more barrel files in libs/importer/* Update imports within libs/importer Extend tsconfig files Update imports in web, desktop, browser and cli * Lazy-load the ImportWebComponent via both routes * Use SharedModule as import in import-web.component * File selector should be displayed as secondary * Use bitSubmit to override submit preventDefault (#6607) Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com> --------- Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com> Co-authored-by: William Martin <contact@willmartian.com> |
2 years ago |
|
|
d0e72f5554
|
[PM-4360] Move auth owned code into auth (#6595)
|
2 years ago |
|
|
ba7a211f0d
|
[PM-1222] Store passkeys in Bitwarden vault (#4715)
* [EC-598] feat: scaffold content scripting * [EC-598] feat: load page script from content script * [EC-598] feat: succesfully intercept methods * [EC-598] feat: add better support for messaging * [EC-598] feat: implement calls to new service * [EC-598] feat: add ability to return responses * [EC-598] feat: half-implemented params mapping * [EC-598] feat: add b64 conversion * [EC-598] feat: half-implemented user interfacing * [EC-598] feat: initial working user verification * [EC-598] feat: center popup * [EC-598] feat: add basic cancel button * [EC-598] feat: confirm new credentials * [EC-598] feat: add cbor-redux npm package * [EC-598] feat: initial version of credential creation * [EC-598] feat: fully working credential creation * [EC-598] feat: fully working register and assert flow * [EC-598] feat: properly check for presence * [EC-598] feat: rudimentar error handling * [EC-598] feat: transparent passthrough of platform authenticators * [EC-598] feat: improve error handling * [EC-598] feat: use browser as fallback when vault does not contain requested credential * [EC-598] feat: add fido2Key to cipher * [EC-598] feat: successfully store passkeys in vault * [EC-598] feat: implement passwordless vault auth * [EC-598] feat: add basic support for managing passkeys * [EC-598] feat: show new cipher being added * [EC-598] feat: allow user to pick which credential to use * [EC-598] feat: differntiate between resident auth and 2fa * [EC-598] feat: add some padding to popout * [EC-598] feat: allow storage of more information * [EC-598] feat: show user name as sub title * [EC-598] feat: show all available data * [EC-598] chore: clean up console logs * [EC-598] feat: fix google issues Google does not like self-signed packed format. I've removed the attestation statement all-together untill further notice. We're don't really have any statements so * [EC-598] fix: temporarily remove origin check * [EC-598] fix: user interaction not being awaited sometimes Only one handler can return a response. That handler needs to return true to indicated it's intention to eventually do so. Our issue was that multiple handlers were returning truthy values, causing a race condition. * [EC-598] fix: messenger crashing The messenger is listening to all DOM communcation, most of which is formatted differently. We were not handling these cases properly which resulted in attempts to access undefined fields. * [EC-598] feat: add basic test-case for messenger * [EC-598] feat: add test for request/response * [EC-598] feat: add initial one-way support for aborting * [EC-598] feat: add ability to throw errors across messenger * [EC-598] feat: transition to using exceptions * [EC-598] feat: add abort controller all the way to service * [EC-598] feat: ability to abort from page script * [EC-598] feat: add automatic default timeouts * [EC-598] chore: move component from generic popup fodler * [EC-598] chore: collect all passkeys stuff under common folder * [EC-598] fix: filter messages from other sources * [EC-598] chore: add small todo comment * [EC-598] feat: add timeout and UV to params * [EC-598] feat: implement full support for timeouts * [EC-598] feat: start creating separate authenticator service * [EC-598] feat: first tested rule in new authentitcator * [EC-598] feat: allow user to confirm duplication * [EC-598] feat: add check for unsupported algorithms * [EC-598] feat: add check for invalid option values * [EC-598] feat: handle unsupported pinAuth * [EC-598] feat: confirm new credentials * [EC-598] feat: rearrange order of execution * [EC-598] chore: rearrange tests * [EC-598] feat: add support for saving discoverable credential * [EC-598] feat: remove ability to duplicate excluded credentials * [EC-598] chore: rearrange tests * [EC-598] feat: add support for non-discoverable credentials * [EC-598] chore: use webauthn authenticator model as base instead of CTAP * [EC-598] feat: don't leak internal errors during creation * [EC-598] feat: tweak key data to contain separate type and algorithm * [EC-598] feat: add counter to fido2key * [EC-598] feat: complete implementation of `makeCredential` * [EC-598] feat: add ignored enterpriseAttestation param * [EC-598] feat: start implementing `getAssertion` * [EC-598] feat: add separate `nonDiscoverableId` to keys * [EC-598] fix: properly convert credentials to guid raw format * [EC-598] chore: add todo tests about deleted items * [EC-598] feat: implement missing credential checks * [EC-598] feat: add user confirmation test to assertion also rewrite to use cipher views in tests * [EC-598] feat: increment counter during assertion * [EC-598] feat: implement assertion * [EC-598] feat: add signatures to attestation * [EC-598] feat: add general error handling for attestation * [EC-598] feat: start working on new `Fido2ClientService` * [EC-598] feat: check user id length * [EC-598] feat: check origin and rp.id effective domains * [EC-598] feat: check for supported key algorithms * [EC-598] feat: hash client data and throw if aborted * [EC-598] feat: extend return from authenticator * [EC-598] feat: fully implement createCredential * [EC-598] feat: implement assertCredential * [EC-598] feat: make everything compile again * [EC-598] feat: remove orgigin * [EC-598] fix: rpId validation logic * [EC-598] fix: some smaller bugs * [EC-598] fix: flag saying authData doesnt contain attestation * [EC-598] fix: wrong flags in tests * [EC-598] fix: data not getting saved properly * [EC-598] fix: invalid signature due to double hashing * [EC-598] chore: clean up unusued function * [EC-598] feat: fully wokring non-discoverable implementation * [EC-598] feat: add initial implementation of UI sessions * [EC-598] feat: fully refactored user interface Now uses sessions instead of single request-response style communcation * [EC-598] feat: make fallback working again * [EC-598] feat: add rudimentary support for excluded credentials * [EC-598] fix: send correct excluded cipher ids * [EC-598] feat: wait for session close before closing window * [EC-598] feat: test unique signatures * [EC-598] chore: clean up old commented code * [EC-598] feat: do not exclude organization credentials * [EC-598] chore: remove unused clas * [EC-598] fix: remove platform attachment check * [EC-598] chore: rename webauthn folder to fido2 * [EC-598] chore: continue rename webauthn to fido2 * [EC-598] feat: interpret rk preferred as required Fixes GoDaddy issues * [EC-598] fix: bug preventing fallback on assertion * [EC-598] feat: inform user when no credentials are found * [EC-598] chore: add some more console logs for debugging * [EC-598] feat: very basic scroll when picking credentials * [EC-598] chore: tweak unique signature test * [EC-598] chore: tweak how unassigned rpId gets calcuated * [EC-598] fix: response prototype chains * [EC-598] feat: allow discoverable credentials to be used for non-discoverable assertions * [EC-598] fix: counter not being saved correctly * [EC-598] fix: bug in result mapping * [EC-598] feat: add support for user verifiction using MP during attestation * [EC-598] feat: add support for user verifiction using MP during assertion * [EC-598] feat: quick fix noop service * [EC-598] chore: refactor observables a little bit * [EC-598] feat: show unsupported user verification error * [EC-598] feat: add logging to fido2 authenticator * [EC-598] feat: add logging to fido2 client * [EC-598] feat: close popout directly from bg script * [EC-598] chore: clean up page-script * [EC-598] feat: add webauthn polyfill * [EC-598] feat: polyfill platform authenticator support * [EC-598] feat: only show fallback options if supported * [EC-598] fix: reponse not correctly polyfilled * [EC-598] chore: add name to polyfill classes * [EC-598] chore: update unsupported UV copy * [EC-598] fix: race condition when opening new popout * Fixed lint issues * [PM-1500] Add feature flag to enable passkeys (#5406) * Added launch darkly feature flag to passkeys implementation * fixed linter * Updated fido2 client service test to accomodate feature flag * Updated fido2client service to include unit test for feature flag * Renamed enable pass keys to fido2 vault credentials, added unit test when feature flag is not enabled * fixed failing Login domain test case * [EC-598] chore: remove unecessary return statement * [EC-598] chore: remove unnecessary eslint disable * [PM-1975] Move FIDO2 files into vault folder (#5496) * Moved fido2 models to vault in libs * Moved fido2 models to vault in libs * Moved fido2 services and abstractions to vault folder in libs * Moved fido2 popup to vault folder on the browser * Updated import path after moving files to the vault folder * Moved authenticator abstraction and service to the vault folder * Updated content and page script path * Added content script, page script and background messaging to vault * fixed lint issue * Updated reference paths * Added missing fallbacksupported property in test files * Added missing fallbacksupported to the newSession method * [PM-2560] Fix Firefox default passkeys handling (#5690) * Return callback response in addListener * Add clarifying comment * Isolate returning the callback to fido2 commands * Update apps/browser/src/platform/browser/browser-api.ts Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com> * Fix formatting --------- Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com> * [PM-1976] Display passkeys properly on the browser (#5616) * Removed passkeys from the vault types filter and added fucntion to get the count of Fido2keys and Login types * Updated build filter to take Fido2key type as a Login type * Updated icon font files * Updated vault items and view to handle changes with fido2keys * Updated add edit view for fido2keys * Prevent moving passkeys to an organization where it exists * Prevent moving passkeys to an organization where it exists * Added view for non-discoverable passkeys * Added diaglog to inform user that passkey won't be copied when cloning a non discoverable key * Muted text that shows cipher item is available for 2fa * Changed conditional to check if an organization already has the same passkey item * Muted text to align with figma designs and used rpId for the application input value * Modified checkFido2KeyExistsInOrg function to workk with discoverable and non discoverable keys * Differentiate between non-discoverable and discoverable keys when moving to an organization * Added suggested changes from PR review * Updated font files css changes * Fixed bug preventing launch bitton from working for Login types (#5639) * [PM-1574] Display passkeys on web (#5651) * Allowed discoverable Fido2key type to be displayed alongside Login type * Added view during edit for discoverable and non-discoverable passkeys * Fixed PR comments, added relvant tests to domain changes * Fixed imports and updated the launch function to use the Launchable interface * Added launch on vault filter for fido2key types * Added missing passkey text field in edit view (#5800) * [PM-1977] Display passkeys properly on the desktop (#5763) * Allowed discoverable Fido2key type to be displayed alongside Login type * Added view during edit for discoverable and non-discoverable passkeys * Fixed PR comments, added relvant tests to domain changes * Fixed imports and updated the launch function to use the Launchable interface * Added fido2key to login filter and added view display for fido2key * Added passkeys view for non discoverable passkeys and edit view for passkeys * Fixed PR comments * switched date format to short * [PM-3046] [PM-3047] Defects for discoverable and non-discoverable passkeys on desktop and web (#5847) * Added missing passkey text field in edit view (#5800) * Added dialog to clone no discoverable passkeys on web and desktop.Also, removed clone on the desktop for discoverable passkeys and added passkey view to non- discoverable passkeys on desktop during edit * Prevent cloning dialog on non fido2key ciphers * Made fido2key use website favicon if avaialble instead of the passkey icon * Do not display passkey view on clone edit for dekstop * Do not display passkey view on clone edit for browser * Prevented movement of passkeys ND or D to an organization once one exists and also made it possible for org memebers with user roles to move passkeys to an organization. (#5868) * two step passkey view was outside the conditional (#5872) * fixed merge conflict * [PM-2907] Shopify Passkey Broken on Firefox When Extension is Installed (#6003) * [PM-2907] Shopify Passkey Broken on Firefox When Extension is Installed * [PM-2907] Shopify Passkey Broken on Firefox When Extension is Installed * [PM-2907] Shopify Passkey Broken on Firefox When Extension is Installed * Added passkey fallback imaged and added extension to image name on the icons component * [PM-3155] CLI: Editing a cipher with a non-discoverable passkey causes the passkey to be removed (#6055) * Added fido2keyexport for the CLI and added the fido2key field to the login response for the CLI * Added fido2keyexport for the CLI and added the fido2key field to the login response for the CLI * Removed unneccesary code * Added non discoverable passkey to template * [PM-2270] Renamed Fido2Key.userName to Fido2Key.userDisplayName (#6005) * Renamed fido2key property username to userDisplayName * Renamed username property on fido2key object to userdisplayname * updated username to userDisplayName in fido2 export * Update libs/angular/src/vault/vault-filter/models/vault-filter.model.ts Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com> * [PM-3775] feat: import v0.4.0 (#6183) * [PM-3660] Address PR feedback (#6157) * [PM-3660] chore: simplify object assignment * [PM-3660] fix: remove unused origin field * [PM-3660] feat: add Fido2Key tests * [PM-3660] chore: convert popOut to async func * [PM-3660] chore: refactor if-statements * [PM-3660] chore: simplify closePopOut * [PM-3660] fix: remove confusing comment * [PM-3660] chore: move guid utils away from platform utils * [PM-3660] chore: use null instead of undefined * [PM-3660] chore: use `switch` instead of `if` * [EC-598] fix: popup not closing bug * [PM-1859] Refactor to credentialId (#6034) * PM-1859 Refactor to credentialId * PM-1859 Minor changes * PM-1859 Fix credentialId initialization logic * PM-1859 Added missing logic * PM-1859 Fixed logic to use credentialID instead of cipher.id * [PM-1859] fix: missing renames --------- Co-authored-by: Andreas Coroiu <andreas.coroiu@gmail.com> * [PM-1722] gracefully fail if site prompts user for passkey on load (#6089) * added error logic to look for options.mediation in page-script * moved the options mediation logic into the try catch. changed error to FallbackRequestedError * [PM-1224] Ensure Passkeys Not Requested From Iframes (#6057) * added isNotIFrame method to page-script * added NotAllowedError to assertCredential in fido2 * remove excess comments * refactor fido2-client.service. created new errorhandling method for similar code between create and assert * update types and naming convention for new method in fido2-client.service * Did a reset to previous commit withiout the refactoring to reduce code duplication, Renamed isNotIframeCheck function and fixed other commits * Revert "update types and naming convention for new method in fido2-client.service" This reverts commit |
2 years ago |
|
|
2dc94ede97
|
[PM-3538] Migrate AddOrganizationComponent Web (#6275)
Migrate add organization in provider portal to use component library. |
2 years ago |
|
|
84bafe5e73
|
[CL-104] fix overlay + virtual scroll view recycling bug (#6179)
* close menu overlay when no longer visible * prevent infinite loop in fallback-src directive * block scrolling when menu is open * disable view recycling; use reposition strategy |
2 years ago |
|
|
922de469f4
|
[PM-2169] Update Password Reprompt Modal to use Component Library (#5720)
* update password reprompt to use the dialog CL * Override showPasswordPrompt and submit method on web child classes from base classes to allow dialog work on web and modal on other clients * Override showPasswordPrompt and submit method on web child classes from base classes to allow dialog work on web and modal on other clients * Fixed lint issues * Corrected comments * Refactored passwored reprompt to use dialog service after changes to make the dialog service work on the desktop and browser * Changed access modifier from protected to protected * Refactored passwprd reprompt component to a stand alone component and fixed all references * fix merge changes * fix import aliases in password-reprompt.component.ts * fix alias typo in browser tsconfig * import from root vault alias * revert tsconfig changes * remove service abstraction and update imports * remove component from imports * Removed unneccesary show password toggle * renamed selector to use vault prefix * removed unnecessary data dismiss * merged and fixed conflicts * remove reintroduced file * Added appAutoFocus to reprompt dialog * delayed validation until submit happens --------- Co-authored-by: William Martin <contact@willmartian.com> |
2 years ago |
|
|
462daab322
|
PM-3981 - SSO/2FA Comp bugfix for user unable to be JIT created in a TDE org with a require 2FA policy. We were trying to save the Org SSO Id in all post login scenarios instead of all post login success scenarios. 2FA required is a scenario in which the login would not be successful and no account will exist in state for data to be set on. (#6439)
|
2 years ago |
|
|
0dd1aeba9f
|
[PM-4031] Add libs/importer to browser and desktop (#6373)
* Import libs/importer and instantiate ImportService * Create ImportApi and ImportService factories * Add libs/importer to desktop * [PM-4075] Setup Feature Flag for Browser Fileless Import (#6391) * Update apps/browser/src/tools/background/service_factories/import-api-service.factory.ts Co-authored-by: ✨ Audrey ✨ <ajensen@bitwarden.com> * Created non-exported ServiceCache-type for ImportApiServiceFactory --------- Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com> Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com> Co-authored-by: ✨ Audrey ✨ <ajensen@bitwarden.com> |
2 years ago |
|
|
8bef0883f5
|
Individual Vault Item Encryption Feature (#6241)
* PM-1049 - TODO: replace base component with business service
* updated server version
* disabled cipher key encryption
* add new storage to replace MasterKey with UserSymKey
* add storage for master key encrypted user symmetric key
* Begin refactor of crypto service to support new key structure
* remove provided key from getKeyForUserEncryption
* add decryption with MasterKey method to crypto service
* update makeKeyPair on crypto service to be generic
* add type to parameter of setUserKey in abstraction of crypto service
* add setUserSymKeyMasterKey so we can set the encrypted user sym key from server
* update cli with new crypto service methods
- decrypt user sym key and set when unlocking
* separate the user key in memory from user keys in storage
* add new memory concept to crypto service calls in cli
* update auth service to use new crypto service
* update register component in lib to use new crypto service
* update register component again with more crypto service
* update sync service to use new crypto service methods
* update send service to use new crypto service methods
* update folder service to use new crypto service methods
* update cipher service to use new crypto service
* update password generation service to use new crypto service
* update vault timeout service with new crypto service
* update collection service to use new crypto service
* update emergency access components to use new crypto service methods
* migrate login strategies to new key model
- decrypt and set user symmetric key if Master Key is available
- rename keys where applicable
- update unit tests
* migrate pin to use user's symmetric key instead of master key
- set up new state
- migrate on lock component
- use new crypto service methods
* update pin key when the user symmetric key is set
- always set the protected pin so we can recreate pin key from user symmetric key
- stop using EncryptionPair in account
- use EncString for both pin key storage
- update migration from old strategy on lock component
* set user symmetric key on lock component
- add missed key suffix types to crypto service methods
* migrate auto key
- add helper to internal crypto service method to migrate
* remove additional keys in state service clean
* clean up the old pin keys in more flows
- in the case that the app is updated while logged in and the user changes their pin, this will clear the old pin keys
* finish migrate auto key if needed
- migrate whenever retrieved from storage
- add back the user symmetric key toggle
* migrate biometrics key
- migrate only on retrieval
* fix crypto calls for key connector and vault timeout settings
* update change password components with new crypto service
* update assortment of leftover old crypto service calls
* update device-crypto service with new crypto service
* remove old EncKey methods from crypto service
* remove clearEncKey from crypto service
* move crypto service jsdoc to abstraction
* add org key type and new method to build a data enc key for orgs
* fix typing of bulk confirm component
* fix EncString serialization issues & various fixes
Co-authored-by: Matt Gibson <MGibson1@users.noreply.github.com>
* update account model with new keys serialization
* migrate native messaging for biometrics to use new key model
- support backwards compatibility
- update safari web extension to send user key
- add error handling
* add early exit to native messaging flow for errors
* improve error strings in crypto service
* disable disk cache for browser due to bg script/popup race conditions
* clear bio key when pin is migrated as bio is refreshed
* share disk cache to fix syncing issues between contexts
* check for ephemeral pin before process reload
* remove state no longer needed and add JSDOC
* fix linter
* add new types to tests
* remove cryptoMasterKeyB64 from account
* fix tests imports
* use master key for device approvals still
* cleanup old TODOs, add missing crypto service parameters
* fix cli crypto service calls
* share disk cache between contexts on browser
* Revert "share disk cache between contexts on browser"
This reverts commit 56a590c4919f119cb1465eb7091a4384f5d90699.
* use user sym key for account changing unlock verification
* PM-1565 Added item key property to cipher export domain (#5580)
* PM-1565 Added item key property to cipher export domain
* enabled cipher key encryption
* Updated getCipherKeyEncryptionEnabled validation to also return true if the serverVersion matches the minVersion
* Using async/await when getting decrypted ciphers on getOrganizationDecryptedExport
* Disabling CipherKey
* add tests to crypto service
* rename 'user symmetric key' with 'user key'
* remove userId from browser crypto service
* updated EncKey to UserKey where applicable
* jsdoc deprecate account properties
* use encrypt service in crypto service
* use encrypt service in crypto service
* require key in validateUserKey
* check storage for user key if missing in memory
* change isPinLockSet to union type
* move biometric check to electron crypto service
* add secondary fallback name for bio key for safari
* migrate master key if found
* pass key to encrypt service
* rename pinLock to pinEnabled
* use org key or user key for encrypting attachments
* refactor makeShareKey to be more clear its for orgs
* rename retrieveUserKeyFromStorage
* clear deprecated keys when setting new user key
* fix cipher service test
* options is nullable while setting user key
* Reordering Service creation on cli's bw.ts to fix ConfigApiService (#5684)
* more crypto service refactors
- check for auto key when getting user key
- consolidate getUserKeyFromMemory and FromStorage methods
- move bio key references out of base crypto service
- update either pin key when setting user key instead of lock component
- group deprecated methods
- rename key legacy method
* Feature/PM-1049 - TDEFflow 3 login decryption options - PR feedback changes (#5642)
* PM-1049 - PR Feedback change - Browser - replace incorrect use of routerlink with manual attribute styling to keep anchor styling + tab focus while not having a router action race condition for the log out action to complete.
* PM-1049 - PR Feedback - State Service changes - rename get/setAcctDecryptionOptions to get/setAccountDecryptionOptions
* PM-1049 - PR Feedback changes - LoginDecryptionOptionsComp - Remove unncessary appA11yTitle directives as title / aria text would be identical to the displayed inner button text.
* DeviceType - Create sets of device types which other components can reference to avoid having to manually define groups of device types.
* PM-1049 - PR Feedback Changes - Update base-login-decryption-options component to leverage async piped observables per best practices. Updated all client templates to leverage new data streams.
* PM-1049 - BaseLoginDecryptionOptionsComp - Add validation service for generic error handling
* PM-1049 - DeviceResponse mistakenly had name as a number instead of a string
* PM-1049 - First draft of creating observable based data store service for Devices so that the base login comp can leverage it instead of calling the devices API service directly (as it will be moved into the SDK in the future).
* PM-1049 - Register new DevicesService on jslib-services module for use in components.
* PM-1049 - Add new hasDevicesOfTypes call to devices data store svc + devices API service.
* PM-1049 - BaseLoginDecryptionOptionsComp - wire up call to devicesService.hasDevicesOfTypes to replace getDevices() to avoid bringing down all trusted device information unnecessarily.
* PM-1049 - LoginDecryptionOptionsComp - Web HTML - clean up loading state so it displays spinner centered properly.
* PM-1049 - LoginDecryptionOptionsComp - Desktop HTML - Don't show login initiated title while page is loading to match other clients behavior.
* PM-1049 - Devices Services - Update naming of hasDevicesOfTypes to match new name on back end + route change to getDevicesExistenseByTypes
* PM-1049 - Device Response & View models - remove keys which are going to be deprecated on the base model
* PM-1049 - DevicesService - devicesBSubject --> devicesSubject rename per PR feedback
* PM-1049 - Devices Services - correct spelling of existence (*facepalm*)
* PM-1049 - Update comment for clarity per PR feedback
* PM-1049 - DevicesSvc - UserSymKey --> UserKey rename
* PM-1049 - BaseLoginDecryptionOptions - replace user email source - get from stateService vs tokenService.
* PM-1049 - BaseLoginDecryptionOptions - Remove uncessary check for userEmail as we will always have it here otherwise everything in the app is broken.
* PM-1049 - BaseLoginDecryptionOptions - Finish cleaning up removal of user email from showReqAdminApprovalBtn$ stream
* PM-1049 - LoginDecryptionOptionsComp - HTML revisions in web & browser to better space out buttons using tailwind or top margin to avoid need for multiple async pipes and shareReplay.
* PM-1049 - DevicesService - of course all observables should have $ suffix. Facepalm.
* PM-1049 - BaseLoginDecryptionOptionsComp - Update verbiage and style of destroy observable used for hooking into ngOnDestroy lifecycle to clean up all observables
* PM-1049 - BaseLoginDecryptionOptions - PR feedback changes - refactor user email to have an underlying bSubject stream to ensure subscription/promise execution separately from the template async pipe subscribing to the stream.
* PM-1049 - DevicesApiService - getDevicesExistenceByTypes - PR feedback - explicitly convert result to boolean instead of casting.
* PM-1049 - BaseLoginDecryptionOptionsComp - Add ShareReplay for getAccountDecryptionOptions + context per PR feedback
* PM-1049 - LoginDecryptionOptionsComp - Completely back away from template async pipe reactive approach as it caused massively increased complexity for little gain. Instead, just focus on reactively pulling asynchronously retrieved data and setting page loading state simply. This just works and is so much less overhead. + Add comments re flows of the component to be done later
* PM-1049- Revert DevicesService implementation from smart data store cache service giant mess into simple, clean data passthrough service to avoid complexity and keep moving forward. YAGNI
Co-authored-by: Andreas Coroiu <andreas@andreascoroiu.com>
* PM-1049 - DeviceCryptoService - Add decryptUserKey method (WIP)
* PM-1049 - AccountDecryptionOptions - add get helpers for checking for trusted device / key connector decryption option existence.
* PM-1049 - SSO Login Strategy - added comments in setUserKey method for where we will probably be consuming device keys and determining if the device is trusted or not (i.e., if we can get a decrypted user sym key in memory)
* PM-1049 - DeviceCryptoSvc.decryptUserKey - Update method to properly use state service device key retrieval + add TODO to figure out what to do if user has previously had a device key and has cleared their local cache (which will result in the device being untrusted now)
* PM-1049 - SSO Login Strategy - add comment re future passkey login strategy support
* PM-2759 - SSO & 2FA components updated with v0 of navigation logic to send users to LoginDecryptionOptions
* PM-1049 - Account > AccountDecryptionOptions - can't create getter helper methods for determining if user has decryption options b/c of issues w/ account deserialization. Moving past b/c I can just easily check if the given options are not undefined.
* PM-2759 - Add TODOs for deprecation of id token response resetMasterPassword logic and replacement with use of accountDecryptionOptions
---------
Co-authored-by: Andreas Coroiu <andreas@andreascoroiu.com>
* PM-2582 Fix adding attachments (#5692)
* revert sharing disk cache between contexts
* fix tests
* PM-2791 Reordered service creation (#5701)
* Turned off flag in production.json
* add better tests to crypto service
* add hack to get around duplicate instances of disk cache on browser
* prevent duplicate cache deletes in browser
* fix browser state service tests
* Feature/PM-1212 - TDE - Approve with master password flow (#5706)
* PM-1212 - StateSvc - Add getUserDeviceTrustChoice && setUserDeviceTrustChoice to persist user's choice in local storage in case of refresh on login approval screens (ex: lock)
* PM-1212 - DeviceCryptoSvc - Add getUserDeviceTrustChoice && setUserDeviceTrustChoice as state service is lower level service for caching
* PM-1212 - LoginDecryptionOptionsComp - Save result of rememberEmail checkbox into local storage via deviceCryptoService.setUserDeviceTrustChoice
* PM-1212 - Lock component - after user key is set, check if user chose to establish trust, and if they did, then establish trust and reset choice.
* PM-1212 - Update naming of methods per discussion with Jake + add comment explaining intended single use retrieval and need for resetting the value.
* DeviceCryptoService - Refactor - decryptUserKey --> decryptUserKeyWithDeviceKey to match crypto service refactor naming convention
* PM-1212 - Refactor State Service per PR feedback to store trustDeviceChoiceForDecryption on Account.settings b/c the temp setting is scoped to a user.
* PM-2759 - SSO & 2FA Navigation to TDE Comp - Needs more work - Found scenarios on web with 2FA in which the expected navigation doesn't work. Adding TODO to assist in fixing
* (1) Add Trust to DeviceCryptoService name
(2) Move DeviceTrustCryptoService under auth folder
* PM-1212 - Add tests for new getUserTrustDeviceChoiceForDecryption and setUserTrustDeviceChoiceForDecryption methods + TODOs for future tests.
* PM-1212- Renaming / moving DeviceTrustCryptoService broke all the things - fixed all the client builds.
* PM-1212- Copy doc comment to abstraction per PR feedback
* PM-1212 - BaseLoginDecryptionOptions comp - remove unncessary cast to form control as apparently reactive forms now properly derives types.
* [PM-1203] Replace MP confirmation with verification code (#5656)
* [PM-1203] feat: ask for OTP if user does not have MP
* [PM-1203] feat: add backwards compatibility for accounts/servers without decryption options
* [PM-1203] feat: move hasMasterPassword to user-verification.service
* [PM-1203] fix: remove duplicate implementation from crypto service
* [PM-1203] fix: cli build
* Tweak device trust crypto service implementation to match mobile late… (#5744)
* Tweak device trust crypto service implementation to match mobile latest which results in more single responsibility methods
* Update tests to match device trust crypto service implementation changes
* update comment about state service
* update pinLockType states and add jsdocs
* add missed pinLockType changes
* [PM-1033] Org invite user creation flow 1 (#5611)
* [PM-1033] feat: basic redirection to login initiated
* [PM-1033] feat: add ui for TDE enrollment
* [PM-1033] feat: implement auto-enroll
* [PM-1033] chore: add todo
* [PM-1033] feat: add support in browser
* [PM-1033] feat: add support for desktop
* [PM-1033] feat: improve key check hack to allow regular accounts
* [PM-1033] feat: init asymmetric account keys
* [PM-1033] chore: temporary fix bug from merge
* [PM-1033] feat: properly check if user can go ahead an auto-enroll
* [PM-1033] feat: simplify approval required
* [PM-1033] feat: rewrite using discrete states
* [PM-1033] fix: clean-up and fix merge artifacts
* [PM-1033] chore: clean up empty ng-container
* [PM-1033] fix: new user identification logic
* [PM-1033] feat: optimize data fetching
* [PM-1033] feat: split user creating and reset enrollment
* [PM-1033] fix: add missing loading false statement
* [PM-1033] fix: navigation logic in sso component
* [PM-1033] fix: add missing query param
* [PM-1033] chore: rename to `ExistingUserUntrustedDevice`
* PM-1033 - fix component templates to reference `ExistingUserUntrustedDevice` so clients can build
---------
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
* remove extra partial key
* set master key on lock component
* rename key hash to password hash on crypto service
* fix cli
* rename enc user key setter in crypto service
* Adds Events & Human Readable Messages (#5746)
* [PM-1202] Hide the Master Password tab on Settings / Security (#5649)
* [PM-1203] feat: ask for OTP if user does not have MP
* [PM-1203] feat: get master password status from decryption options
* [PM-1203] feat: add backwards compatibility for accounts/servers without decryption options
* [PM-1203] feat: move hasMasterPassword to user-verification.service
* fix merge issues
* Change getUserTrustDeviceChoiceForDecryption / setUserTrustDeviceChoiceForDecryption to getShouldTrustDevice / setShouldTrustDevice (#5795)
* Auth/[PM-1260] - Existing User - Login with Trusted Device (Flow 2) (#5775)
* PM-1378 - Refactor - StateSvc.getDeviceKey() must actually convert JSON obj into instance of SymmetricCryptoKey
* TODO: BaseLoginDecryptionOptionsComponent - verify new user check doesn't improperly pick up key connector users
* PM-1260 - Add new encrypted keys to TrustedDeviceUserDecryptionOptionResponse
* PM-1260 - DeviceTrustCryptoSvc - decryptUserKeyWithDeviceKey: (1) update method to optionally accept deviceKey (2) Return null user key when no device key exists (3) decryption of user key now works in the happy path
* PM-1260 - LoginStrategy - SaveAcctInfo - Must persist device key on new account entity created from IdTokenResponse for TDE to work
* PM-1260 - SSO Login Strategy - setUserKey refactor - (1) Refactor existing logic into trySetUserKeyForKeyConnector + setUserKeyMasterKey call and (2) new trySetUserKeyWithDeviceKey method for TDE
* PM-1260 - Refactor DeviceTrustCryptoService.decryptUserKeyWithDeviceKey(...) - Add try catch around decryption attempts which removes device key (and trust) on decryption failure + warn.
* PM-1260 - Account - Add deviceKey to fromJSON
* TODO: add device key tests to account keys
* TODO: figure out state service issues with getDeviceKey or if they are an issue w/ the account deserialization as a whole
* PM-1260 - Add test suite for decryptUserKeyWithDeviceKey
* PM-1260 - Add interfaces for server responses for UserDecryptionOptions to make testing easier without having to use the dreaded any type.
* PM-1260 - SSOLoginStrategy - SetUserKey - Add check looking for key connector url on user decryption options + comment about future deprecation of tokenResponse.keyConnectorUrl
* PM-1260 - SSO Login Strategy Spec file - Add test suite for TDE set user key logic
* PM-1260 - BaseLoginStrategy - add test to verify device key persists on login
* PM-1260 - StateService - verified that settings persist properly post SSO and it's just device keys we must manually instantiate into SymmetricCryptoKeys
* PM-1260 - Remove comment about being unable to feature flag auth service / login strategy code due to circ deps as we don't need to worry about it b/c of the way we've written the new logic to be additive.
* PM-1260 - DevicesApiServiceImplementation - Update constructor to properly use abstraction for API service
* PM-1260 - Browser - AuthService - (1) Add new, required service factories for auth svc and (2) Update auth svc creation in main.background with new deps
* PM-1260 - CLI - Update AuthSvc deps
* PM-1260 - Address PR feedback to add clarity / match conventions
* PM-1260 - Resolving more minor PR feedback
* PM-1260 - DeviceTrustCryptoService - remove debug warn
* PM-1378 - DeviceTrustCryptoSvc - TrustDevice - Fix bug where we only partially encrypted the user key with the device public key b/c I incorrectly passed userKey.encKey (32 bytes) instead of userKey.key (64 bytes) to the rsaEncrypt function which lead to an encryption type mismatch when decrypting the user's private key with the 32 byte decrypted user key obtained after TDE login. (Updated happy path test to prevent this from happening again)
* PM-1260 - AccountKeys tests - add tests for deviceKey persistence and deserialization
* PM-1260 - DeviceTrustCryptoSvc Test - tweak verbiage per feedback
* PM-1260 - DeviceTrustCryptoSvc - Test verbiage tweak part 2
* Update apps/browser/src/background/service-factories/devices-api-service.factory.ts
per PR feedback
Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
---------
Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
* Defect - LockComp - After setting user key, must AWAIT retrieval of user's previous choice to have trusted the device or not. (#5804)
* [PM-2928] [PM-2929] [PM-2930] Fixes for: [PM-1203] Replace MP confirmation with verification code (#5798)
* [PM-2928] feat: hide change email if user doen't have MP
* [PM-2929] feat: hide KDF settings if user doesn't have MP
* [PM-2930] feat: remove MP copy
* Removed self-hosted check from TDE SSO config. (#5837)
* [PM-2998] Move Approving Device Check (#5822)
* Switch to retrieving approving device from token response
- Remove exist-by-types API call
- Define `HasApprovingDevices` on TDE options
* Update Naming
* Update Test
* Update Missing Names
* [PM-2908] feat: show account created toast (#5810)
* fix bug where we weren't passing MP on Restart to migrate method in lock
* fix: buffer null error (#5856)
* Auth/[pm-2759] - TDE - SSO and 2FA routing logic (#5829)
* PM-2759 - SsoComp - (1) Temp remove all TDE routing logic (2) Refactor existing navigation logic via new component utility function navigateViaCallbackOrRoute
* PM-2759 - SSO Component - Create test suite for logIn logic
* PM-2759 - SsoComp Tests - add disclaimer regarding testing private methods and props
* PM-1259 - SSO Comp - Refactor LogIn method to use functions for each navigation case for improved readability
* PM-1259 - SSO Comp Tests - Add tests for error case during login + test for new handleLoginError logic
* PM-2759 - SsoComp - Deprecate resetMasterPassword and replace with AccountDecryptionOptions logic + update tests
* PM-2759 - SsoComp + tests - Add trusted device encryption first draft handling which has login success and force password reset handling
* PM-2759 - Minor SsoComp comment and method name tweaks
* PM-2759 - BaseTwoFactorComp - (1) Comment out TDE stuff for now (2) Add test suite (3) Replace global window in base comp constructor with angular injection token for window which follows best practices and allows for mocking so the comp can be unit tested
* PM-2759 - Update child 2FA components to use angular injection token for window like base comp
* PM-2759 - TwoFactorComp - Finish testing all logic in doSubmit
* PM-2759 - TwoFactorComponent - Refactor DoSubmit method logic into multiple simple functions to make logic easier to follow
* PM-2759 - Add newtrustedDeviceOption.hasManageResetPasswordPermission property to match server changes
* PM-2759 - Flag AuthResult.resetMasterPassword property as deprecated
* PM-2759 - SSO comp - TDE routing logic - User without MP and ResetPassword permission must set a MP
* PM-2759 - Update Sso Comp tests to reflect additionally added TDE > MP set required logic (when user has no MP but they can reset other user passwords)
* PM-2759 - SsoComp - Add comment explaining the happy paths better for TDE success navigation
* PM-2759 - SsoComp - Refactor isTrustedDeviceEncEnabled logic into own method
* PM-2759 - SsoComp - As the 2FA comp passes the org id through to each route, going to standardize on doing so across the board for now to avoid any tricky scenarios down the line where it is needed and it's not present
* PM-2759 - SsoComp - Finish renaming orgIdFromState to orgIdentifier
* PM-2759 - SsoComp - update tests for forcePasswordReset flows now passing orgIdentifier as query param
* PM-2759 - SsoComp Tests - Export mockAcctDecryptionOpts permutations so we can share them across SsoComp and TwoFactorComp tests
* PM-2759 - Refactor 2FA comp post login redirect logic to match SSO component + add TDE logic
* PM-2759 - SsoComp - Refactor tests a bit for improved re-use
* PM-2759 - Sso Comp tests - can't export consts from a spec file or the other spec files that import them will re-execute the whole test suite as a nested test suite. TIL.
* PM-2759 - TwoFactorComp tests - All existing navigation scenarios + new TDE scenarios should now be tested.
* PM-2759 - Web - 2FA comp - Fix build error b/c of renamed base comp prop (identifier --> orgIdentifier)
* PM-2759 - Fix SsoLogin strategy tests b/c they were broken w/ the addition of the HasManageResetPasswordPermission prop to the TrustedDeviceOption interface
* PM-2759 - Web TwoFactorComp - goAfterLogIn method must be an arrow function to inherit the parent base component scope so that important things like angular services can be defined. Web 2FA flow does not work without this being an arrow func.
* PM-2759 - Fix typo
* PM-2759 - SsoComp and TwoFactorComp tests - move service and other mocks into the top level before each to better ensure no crossover between test states per PR feedback
* PM-2759 - SsoComp - add clarity by refactoring unclear comment
* PM-2759 - SsoComp - Per excellent PR feedback, refactor if else statements to guard statements for better readability / design
* PM-2759 - TwoFactorComp - Replace ifs with guard statements
* PM-2759 - TwoFactorComp - add clarity to comment per PR feedback
* PM-2759 - Replace use of jest.Mocked with MockProxy per PR feedback
* PM-2759 - Use unknown over any per PR feedback
* Bypass Master Password Reprompt if a user does not have a MP set (#5600)
* Add a check for a master password in PasswordRepromptService.enabled()
* Add tests for enabled()
* Update state service method call
* Use UserVerificationService to determine if a user has a master password
* rename password hash to master key hash
* fix cli build from key hash renaming
* [PM-1339] Allow Rotating Device Keys (#5806)
* Merge remote-tracking branch 'origin/feature/trusted-device-encryption' into Auth/pm-1339/rotate-device-keys
* Implement Rotation of Current Device Keys
- Detects if you are on a trusted device
- Will rotate your keys of only this device
- Allows you to still log in through SSO and decrypt your vault because the device is still trusted
* Address PR Feedback
* Move Files to Auth Ownership
* fix: getOrgKeys returning null
* [PM-3143] Trusted device encryption: Refactor reset enroll service (#5869)
* create new reset enrollment service
* refactor: login decryption options according to TODO
* feat: add tests
* PM-3143 - Add override to overriden methods
---------
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
* generate a master key from master password if needed (#5870)
* [PM-3120] fix: device key not being saved properly (#5882)
* pm-2582 Moved code to cipher service (#5818)
* Auth/pm 1050/pm 1051/remaining tde approval flows (#5864)
* fix: remove `Unauth guard` from `/login-with-device`
* Turned encryption on (#5908)
* [PM-3101] Fix autofill items not working for users without a master password (#5885)
* Add service factories for user verification services
* Update autofill service to check for existence of master password for autofill
* Update the context menu to check for existence of master password for autofill
* context menu test fixes
* [PM-3210] fix: use back navigation (#5907)
* Removed buttons (#5935)
* PM-2759 - Fix broken backwards compatibility for authResult.resetMast… (#5940)
* PM-2759 - Fix broken backwards compatibility for authResult.resetMasterPassword
* PM-2759 - Update TODO with specific tech debt task + target release date
* TDE - State Svc - setDeviceKey should support setting null for future support of clearing device key. (#5942)
* Check if a user has a mp before showing kdf warning (#5929)
* [PM-1200] Unlock settings changes for accounts without master password - clients (#5894)
* [PM-1200] chore: add comment for jake
* [PM-1200] chore: rename to `vault-timeout`
* [PM-1200] feat: initial version of `getAvailableVaultTimeoutActions`
* [PM-1200] feat: implement `getAvailableVaultTimeoutActions`
* [PM-1200] feat: change helper text if only logout is available
* [PM-1200] feat: only show available timeout actions
* [PM-1200] fix: add new service factories and dependencies
* [PM-1200] fix: order of dependencies
`UserVerificationService` is needed by `VaultTimeoutSettingsService`
* [PM-1200] feat: add helper text if no lock method added
* [PM-1200] refactor: simplify prev/new values when changing timeout and action
* [PM-1200] feat: fetch timeout action from new observable
* [PM-1200] refactor: make `getAvailableVaultTimeoutActions` private
* [PM-1200] feat: add test cases for `vaultTimeoutAction$`
* [PM-1200] feat: implement new timeout action logic
* [PM-1200] feat: add dynamic lock options to browser
* [PM-1200] feat: enable/disable action select
* [PM-1200] feat: add support for biometrics
* [PM-1200] feat: add helper text and disable unavailable options
* [PM-1200] feat: update action on unlock method changes
* [PM-1200] feat: update browser to use async pipe
* [PM-1200] fix: element not updating
* [PM-1200] feat: hide masterPassOnRestart pin option
* [PM-1200] feat: hide change master password from browser settins
* [PM-1200] feat: hide change master password from app menu
* [PM-1200] feat: logout if lock is not supported
* [PM-1200] feat: auto logout from lock screen if unlocking is not supported
* [PM-1200] feat: remove lock button from web menus
* Revert "[PM-1200] fix: element not updating"
This reverts commit b27f425f48570d0d5dbc9dedb9797023fef64d8b.
* Revert "[PM-1200] feat: update browser to use async pipe"
This reverts commit 766c15bc3dbadcf7dcef3053b148e7874f8939ce.
* [PM-1200] chore: add comment regarding detectorRef
* [PM-1200] feat: remove lock now button from browser settings
* [PM-1200] feat: add `userId` to unlock settings related methods
* [PM-1200] feat: remove non-lockable accounts from menu
* [PM-1200] fix: cli not building
---------
Co-authored-by: Todd Martin <tmartin@bitwarden.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
* [PM-3215][PM-3289] Create MasterKey from Password If Needed (#5931)
* Create MasterKey from Password
- Check if the MasterKey is stored or not
- Create it if it's not
* Add getOrDeriveKey Helper
* Use Helper In More Places
* Changed settings menu to be enabled whenever the account is not locked. (#5965)
* [PM-3169] Login decryption options in extension popup (#5909)
* [PM-3169] refactor: lock guard and add new redirect guard
* [PM-3169] feat: implement fully rewritten routing
* [PM-3169] feat: close SSO window
* [PM-3169] feat: store sso org identifier in state
* [PM-3169] fix: tests
* [PM-3169] feat: get rid of unconventional patch method
* PM-3169 - SSO & 2FA Comps - Update naming of new callback to match existing pattern + add tests for callback logic execution.
* PM-3169 - Update LockGuard to have a special exception for allowing the TDE Login with MP flow
* PM-3169 - Per discussion w/ Jake and Justin, rename login-initiated guard to be tde decryption required guard (more named for functionality vs specific route)
* PM-3169 - Add some additional context to new redirect guard scenario
* PM-3169 - Per PR feedback, replace all callback types with Promise<void> as the return values are not being used.
* PM-3169 - StateSvc - Per PR feedback, update setUserSsoOrganizationIdentifier signature to explicitly use null instead of partial<string> which doesn't do anything
* PM-3169 - Replace onSuccessfulLogin type to compile
* PM-3169 - Add clarification comment for why we are not using a query param for persisting the org identifier
* PM-3169 - Per discussion with Justin, only use memory for SsoOrgId as we don't need to persist it beyond that; tested and it worked on all 3 clients for new user TDE creation
* PM-3169 - Add missing ssoIdentifierRequired translation to desktop and browser
* PM-3169 - After discussing with Justin again, we realized that memory doesn't work on desktop if user refreshes app or closes and re-opens it so must use disk.
* PM-3169 - Per PR feedback, remove hasEverHadUserKey logic as we can just leverage existing getUserKey method to check if we have a user key or not; tested all guards in browser and web with no issues
* PM-3169 - Per design discussion with Danielle, move account created toast after successful account creation vs on load of page.
---------
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
* [PM-3314] Fixed missing MP prompt on lock component (#5966)
* Updated lock component to handle no master password.
* Added a comment.
* Add Missing Slash (#5967)
* Fix AdminAuthRequest Serialization on Desktop (#5970)
- toJSON isn't being called by ElectronStorageService
- Force it's conversion to JSON earlier so it happens for all storage methods
* Fix issue where we were incorrectly calling setRememberEmailValues in the AdminAuthRequest state - no need to do this as the email is already saved to state. By calling this method, we would actually overwrite the already saved email with null as the user's choice to remember email wasn't persisted through SSO on the login service. (#5972)
* PM-3329 - Restore everHadUserKey logic from PM-3169 which I incorrectly removed in order to fix routing logic so that user can lock and land on the lock screen properly (#5979)
* PM-3210 - TDE - LoginWithDevice routing fix - Mirror PR #5950 in just simply providing a back action on click which works for all app generated scenarios (#5982)
* PM-3332 - TDE - SsoLoginStrategy - For existing admin auth reqs, must… (#5980)
* PM-3332 - TDE - SsoLoginStrategy - For existing admin auth reqs, must manually handle 404 error case to prevent app from hanging and clear the local state if the admin auth req in the DB has been purged; i.e., it should fail silently.
* Add TODO for SSO Login Strategy tests
* PM-3331 - TDE - Firefox - Browser extension - fix access denied error… (#5984)
* PM-3331 - TDE - Firefox - Browser extension - fix access denied error on popup load which was caused by the canAccessFeature guard failing to lookup the TDE feature flag as the server config was returning null even after a successful server call as only returned the value if the user was unauthenticated for some reason
* PM-3331 - After discussion with Andre, further refactor ConfigService logic to always return the latest information from the server so that requests for feature flag data will always get the most up to date information.
* PM-3345 - TDE - Desktop - Biometrics setting submenu tweak - do not s… (#5988)
* PM-3345 - TDE - Desktop - Biometrics setting submenu tweak - do not show require MP or PIN entry on restart if user doesn't have at least one of those options b/c otherwise user can get into a bad state where they cannot unlock
* PM-3345 - TDE - Desktop - Settings comp - if user turns off PIN and Biometric is on + require PIN on restart is enabled then must turn that setting off to prevent bad user state
* PM-3345 - Final tweak to logic
* [PM-2852] Final merge from Key Migration branch to TDE Feature Branch (#5977)
* [PM-3121] Added new copy with exclamation mark
* [PM 3219] Fix key migration locking up the Desktop app (#5990)
* Only check to migrate key on VaultTimeout startup
* Remove desktop specific check
* PM-3332 - LoginWithDevice - Add error handling logic around admin auth request retrieval similar to sso login strategy to prevent error state and allow re-creation of an admin auth request if it has been purged from the server for whatever reason. (#5991)
* PM-3355 - TDE - Browser JIT Account Creation - Browser create user logic still had logic for simply closing the extension tab but as we no longer open the login decryption options in a tab we needed to update the logic here to navigate the user directly onto the vault. (#5993)
* Add distinctUntilChanged to fix multiple value changes for biometrics firing (#5999)
* Add optional chaining to master key (#6007)
* PM-3369 - TDE - Persist user's choice to trust device to state when user ma… (#6000)
* PM-3369 - Persist user's choice to trust device to state when user makes choice + persist previous choices out of state
* PM-3369 - Must set trust device in state on load if it's never been set before
* PM-3369 - Refactor BaseLoginDecOptions to properly set trust device choice in state on load
* Update libs/angular/src/auth/components/base-login-decryption-options.component.ts
Co-authored-by: Jake Fink <jfink@bitwarden.com>
---------
Co-authored-by: Jake Fink <jfink@bitwarden.com>
* Updated email change component to getOrDeriveMasterKey (#6009)
* [PM-3330] Force Update to Lockable Accounts on PIN/Biometric Update (#6006)
* Add Listener For Events that Need To Redraw the Menu
* Send redrawMenu Message When Pin/Biometrics Updated
* DeviceTrustCryptoService - don't worry about checking if a device should establish trust or not if the user doesn't have trusted device encryption on (#6010)
* Auth / pm 3351 / TDE Login - Browser & Desktop vault sync issue fix (#6002)
* PM-3351 - TDE Login on desktop and browser via SSO comp with no 2FA should trigger sync like standard onSuccessfulLogin process used to so user lands on vault with data.
* PM-3351 - 2FA Comp - Refactor onSuccessfulLogin logic to only execute in the success path just like the SSO component + adding specific onSuccessfulLoginTde flow just like SSO comp. + removed unnecessary calls to loginService.clearValues(). Added browser & desktop definitions for onSuccessfulLoginTde which is just a fullSync kick off.
* TODO
* PM-3351 - remove await to restore code back to previous state without hang.
* PM-3351 - 2FA Comp - Don't await onSuccessfulLoginTde b/c it causes a hang
* PM-3351 - remove sso comp incorrect todo
* PM-3351 - SsoComp - don't await onSuccessfulLoginTde for browsers sake
* PM-3351 - SsoComp - remove awaits from onSuccessfulLoginTde and onSuccessfulLogin to avoid any hangs on desktop and browser
* PM-3351 - Convert onSuccessfulLoginTde to promise<void> as its return is not used + refactor all to be consistent and clearly communciate that the sync won't be awaited.
* PM-3351 - Convert onSuccessfulLogin to promise<void> and update all methods accordingly to more clearly indicate that the syncs and any other logic won't be awaited.
* [PM-3356] Fallback to OTP When MasterPassword Hasn't Been Used (#6017)
* Fallback to OTP When MasterPassword Hasn't Been Used
* Update Test and Rename Method
* Revert "DeviceTrustCryptoService - don't worry about checking if a device should establish trust or not if the user doesn't have trusted device encryption on (#6010)" (#6020)
This reverts commit 6ec22f95702050c12716f79c7d7454835f9b2807.
* PM-3390 - TDE - Redraw desktop after user creation to update isLocked checks and get menu to be enabled properly (#6018)
* [PM-3383] Hide Change Password menu option for user with no MP (#6022)
* Hide Change Master Password menu item on desktop when a user doesn't have a master password.
* Renamed variable for consistency.
* Updated to base logic on account.
* Fixed menubar
* Resolve merge errors in crypto service spec
* Fixed autofill to use new method on userVerificationService (#6029)
* conflict resolution
* missing file
* PM-3456 - TDE Admin Auth Req Flow - FF dead object issue - The foreground popup must retrieve the long lived background services for the new TDE services (the AuthRequestCryptoService service fixes this issue, but the DeviceTrustCryptoService should have been added to services.module as well) (#6037)
* skip auto key check when using biometrics on browser (#6041)
* Added comments for backward compatibility removal. (#6039)
* Updated warning message. (#6059)
* Tde pr feedback (#6051)
* move pin migration to the crypto service
* refactor config service logic
* refactor lock component load logic
* rename key connector methods
* add date to backwards compat todo
* update backwards compat todo
* don't specify defaults in redirectGuard
* nit
* add null & undefined check for userid before using the account
* fix ui tests
* add todo for tech debt
* add todo comment
* Fix storybook per PR feedback
* Desktop & Browser - lock comp - add optional chaining check for focusable input - user can just have biometric and not have a MP or a PIN so must support that.
* Main.background.ts - remove duplicate instantiations of the userVerificationApiService and userVerificationService which were added in two separate PRs
* Per PR feedback - (1) Browser app routing module - fix incorrect import for redirect guard (2) Created index.ts file for auth guards to simplify imports and updated imports
* Per PR feedback, (1) Update jslib-services.module to provide actual instance of VaultTimeoutService (2) Update init service to use concrete VaultTimeoutService vs abstraction.
Co-authored-by: Matt Gibson <git@mgibson.dev>
* Per PR feedback - update services module AuthRequestCryptoService and DeviceTrustCryptoService to use shorthand format.
* Per PR feedback, add devicesService to main background and update services module to ensure the popup leverages the background devicesService
---------
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Matt Gibson <git@mgibson.dev>
* Updated message keys for CrowdIn to pick them up. (#6066)
* TDE PR Feedback resolutions round 2 (#6068)
* Per PR feedback - main.background.ts - move userVerificationService and userVerificationApiService to correct location
* Per PR feedback - JS lib services + vault timeout service updates - (1) Correctly type callbacks based on injection tokens (2) Update vault timeout service to have proper types based on injection tokens
* Per PR Feedback - update web init service to inject actual VaultTimeoutService vs abstraction similar to what we did for desktop here:
|
2 years ago |
|
|
c75f6c28eb
|
[PM-3730] Master Password Re-prompt Enabled Items Invoke Popup Window Automatically When Autofill on Page Load is Enabled (#6189)
* [PM-3730] MPR-enabled items invoke the pop-out window automatically when autofill on-page-load is enabled * [PM-3730] Updating vault item views to ensure that autofill on page load setting is not confusing to users * [PM-3730] Setting up toast message to appear when user opts to turn on master password reprompt * [PM-3730] Ensuring that toast messages do not show when the autofill on page load value is not on * [PM-3730] Updating copy and adding help text below the autofill on page load field within vault items in the extension |
2 years ago |
|
|
8c06508435
|
[PM-3726] Force migration of legacy user's encryption key (#6195)
* [PM-3726] migrate legacy user's encryption key * [PM-3726] add 2fa support and pr feedback * [PM-3726] revert launch.json & webpack.config changes * [PM-3726] remove update key component - also remove card in vault since legacy users can't login * [PM-3726] Fix i18n & PR feedback * [PM-3726] make standalone component * [PM-3726] linter * [PM-3726] missing await * [PM-3726] logout legacy users with vault timeout to never * [PM-3726] add await * [PM-3726] skip auto key migration for legacy users * [PM-3726] pr feedback * [PM-3726] move check for web into migrate method --------- Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com> |
2 years ago |
|
|
d21cc261e6
|
[PM-2532][PM-2430][Desktop] Fix Region Selector Issues (#5824)
* pull in a11y changes from PR #5532 * add focus to popup when selected via keyboard * make popup close upon outside click * prevent close() from running twice on click * pull in typo fix changes from PR #5530 (addressing PM-2433) * add class to make backdrop transparent * Change toggle button and dialog buttons for region selection (#5532) * `<a>` elements without `href` don't take focus, currently making the region selection trigger not operable with keyboard - changing to `<button>` * region buttons now convey their state (selected or not) with `aria-pressed` Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com> * remove span * cleanup browser styles * cleanup desktop styles --------- Co-authored-by: Patrick H. Lauke <redux@splintered.co.uk> |
2 years ago |
|
|
4a8741e7b6
|
PM-3444 - TDE - Admin Acct Recovery should prompt users to change MP for non MP decryption flows (#6109)
* PM-3444 - SSO Login Strategy - Should setForcePasswordResetReason if server sends it down so that the auth.guard can direct the user accordingly after decryption * PM-3444 - (1) Sso Comp - Adjust force password reset logic to handle the only scenario that can occur here - admin acct recovery - not weak mp (can't evaluate as user won't have entered it yet) (2) Add comments explaining the scenarios + update tests. * PM-3444 - Update SSO Login strategy to only check for ForceResetPasswordReason.AdminForcePasswordReset as that's the only scenario that can happen here. * PM-3444 - Finish updating tests to pass * PM-3444 - Resolve PR feedback by updating ForceResetPasswordReason comments |
2 years ago |
|
|
16fe609867
|
added checked or unchecked validation to send hide email policy subscriber (#6317)
|
2 years ago |
|
|
21c4f3576f
|
HideEmail enable validation moved to UpdateFormValues (#6310)
|
2 years ago |
|
|
3507d318e5
|
[PM-3625] Remove ClientType.DirectoryConnector (#6099)
|
2 years ago |
|
|
c9245df8d3
|
[PM-3878] Setting send password to null if it is empty (#6276)
* setting send password to null if it is empty * Using Utils.IsNullOrWhiteSpace to verify name and password on SendAddEdit. Removed unnecessary setting password as null on desktop |
2 years ago |
|
|
931a2258e2
|
[PM-3883] Fix ConfigService.serverConfig$ initial values and error handling (#6272)
* Always fetch ServerConfig from server, use stored value as fallback * Handle errors in server fetch |
2 years ago |
|
|
30d8168c2e
|
[PM-3600] Try to get key in master password reprompt check (#6087)
* Add check to hasMasterPasswordAndMasterKeyHash to make sure getMasterKey() has a value * Try getting or deriving the key on password reprompt |
2 years ago |
|
|
61e1bc1a1c
|
[AC-1479][BEEEP] Refactor ConfigService to improve observable usage (#5602)
* refactor ConfigService to use observables * make environmentService.urls a ReplaySubject --------- Co-authored-by: Hinton <hinton@users.noreply.github.com> |
2 years ago |
|
|
5440e372f6
|
[PM-3804] Remove Server Flag Icons (#6207)
* remove flags from web component * remove selectedRegionImageName from web component * remove input * delete image files and update browser translation * update translation and popup width for destkop/browser * remove translations * revert width on dialog |
2 years ago |
|
|
30e8a906ab
|
[PM-3442] Change AnonAddy to addy.io (#6027)
* Update anon-addy-forwarder.ts * Update generator.component.ts |
2 years ago |
|
|
5f78aeaef2
|
[PM-2805] Migrate add edit send to Component Library (#6004)
* Converted add-edit send component dialog into a bit-dialog * Updated Send AddEdit text fields to Component Library * Migrated Share and Options fields to ComponentLibrary on SendAddEdit * Migrated footer buttons to ComponentLibrary on SendAddEdit * Updated web's SendAddEdit component file fields * Replaced file upload with component library * Changed SendAddEdit to use Reactive Forms on web * Changed browser SendAddEdit to use ReactiveForms * Update SendAddEdit on desktop to use ReactiveForms * Added AppA11yTitle to button on web SendAddEdit * Initial efflux-dates web change to ComponentLibrary * Corrected delete button to check if it is in EditMode on SendAddEdit * Using BitLink on options button * Corrected typo on send add edit desktop * Replaced efflux-dates with datetime-local input on SendAddEdit web, browser and desktop * Removed efflux dates * Added firefox custom date popout message on DeletionDate to SendAddEdit browser component * moved desktop's new send data reload from send to SendAddEdit component * removing unnecessary attributes and spans from Send AddEdit web * removed redundant try catch from add edit and unnecessary parameter from close * Added type for date select options * Removed unnecessary classes and swapped bootstrap classes by corresponding tailwind classes * Removed unnecessary code * Added file as required field Submit only closes popup on success * Added pre validations at start of submit * PM-3668 removed expiration date from required * PM-3671 not defaulting maximum access count to 0 * PM-3669 Copying the link from link method * Removed required tag from html and added to formgroup * PM-3679 Checking if is not EditMode before validating if FormGroup file value is set * PM-3691 Moved error validation to web component as browser and desktop need to show popup error * PM-3696 - Disabling hide email when it is unset and has policy to not allow hiding * PM-3694 - Properly setting default value for dates on Desktop when changing from an existing send * Disabling hidden required fields * [PM-3800] Clearing password on new send |
2 years ago |
|
|
e8a5c5b337
|
[PM-3586] Fix short MP not showing minLength (#6086)
* Fix short MP not showing minLength Added path to include the mininum password length defined as const in our Utils * Introduce previousMinimumPasswordLength and use a minLength for MP * Rename previousMinimumPasswordLength to originalMinimumPasswordLength |
2 years ago |
|
|
255a7381b3
|
[PM-3609] [Tech-Debt] Add types to password and username generator (#6090)
* Create and use GeneratorOptions Selection between `password`and `username` * Use PasswordGeneratorOptions * Declare and use UsernameGeneratorOptions |
2 years ago |
|
|
1d7360bfdd
|
[PS-1438] Prevent new line feed when selecting and copying passwords (#3460)
* Prevent new line feed when selecting password * Prevent new line feed when copying password |
2 years ago |
|
|
302b0dfe74
|
PM-3623 - VaultTimeoutInputComp - resolve double value changes emission issue which was causing double dialogs to be shown when the user chose never as a vault timeout option by not emitting the setting of the custom hours & min values based on the user's non-custom timeout choice. + Add interface for form value to replace any. (#6098)
|
2 years ago |
|
|
3340af8084
|
PM-3585 Improve state migrations (#5009)
* WIP: safer state migrations
Co-authored-by: Justin Baur <justindbaur@users.noreply.github.com>
* Add min version check and remove old migrations
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
* Add rollback and version checking
* Add state version move migration
* Expand tests and improve typing for Migrations
* Remove StateMigration Service
* Rewrite version 5 and 6 migrations
* Add all but initial migration to supported migrations
* Handle stateVersion location in migrator update versions
* Move to unique migrations directory
* Disallow imports outside of state-migrations
* Lint and test fixes
* Do not run migrations if we cannot determine state
* Fix desktop background StateService build
* Document Migration builder class
* Add debug logging to migrations
* Comment on migrator overrides
* Use specific property names
* `npm run prettier` 🤖
* Insert new migration
* Set stateVersion when creating new globals object
* PR comments
* Fix migrate imports
* Move migration building into `migrate` function
* Export current version from migration definitions
* Move file version concerns to migrator
* Update migrate spec to reflect new version requirements
* Fix import paths
* Prefer unique state data
* Remove unnecessary async
* Prefer to not use `any`
---------
Co-authored-by: Justin Baur <justindbaur@users.noreply.github.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
|
2 years ago |
|
|
3930189c4e
|
PM-3632 - Vault Timeout Input comp (all clients) - resolve bug where logic which was supposed to initialize the custom vault timeout timeframe if coming from a previously selected numeric timeout was not working properly. (#6102)
|
2 years ago |
|
|
708eb21a49
|
[PM-2400] Region Selector Image Quality (#5846)
* update destop images * update images on browser * update images on web vault * revert to previous height * merge master * upload new images with same aspect-ratio |
2 years ago |
|
|
e215828e85
|
[PM-3533] Support onboarding Key Connector users with existing master passwords (#6082)
* Added checks for new KeyConnector URL in all references to the legacy one. * Updated KeyConnector logoutCallback to be a Promise * Removed extra dependencies from KeyConnectorService * Made the logout callback async. * Adjusted logic to handle having a master password. * Updated not to return error if master key is not found. * Undid change to callback to reduce scope of this change. * Cleaned up functions. * Updated tests. * Updated comments. * Updated comments. * Updated to use getKeyConnectorUrl helper. |
2 years ago |
|
|
019d4c2932
|
Use useClass instead of useFactory (#6076)
|
2 years ago |
|
|
5665576147
|
Trusted Device Encryption feature (#5950)
* PM-1049 - Create first display draft of login-decryption-options base and web components (no data loading or user actions wired up yet; WIP) * PM-1049 - Update DeviceResponse to match latest properties on backend * PM-1049 - Add getDevices call to retrieve all user devices to API service * PM-1049 - WIP on figuring out login decryption options component requirements * PM-1049 - Add empty login decryption options to desktop * PM-1049 - Desktop - Update "Log in initiated" translation to be "Login Initiated" per figma and product request * PM-1049 - Desktop - login decryption options component html done * PM-1049 - Move login-decryption-options in web into own folder * PM-1049 - Browser - created html for login-decryption-options component * PM-1049 - Move newly created getDevices() method out of api.service into proper place in new devices-api.service. * PM-1049 -Comment cleanup and TODO added * PM-1049 - Comment cleanup and dependency cleanup across all login-decryption-options comps * PM-1049 - WIP of building out needed response and regular models for saving new UserDecryptionOptions on the Account in state. * PM-1049 - Update all User Decryption Options response and state models in light of the back end changes from a list to an object. Web building now with decryption options stored on state under the account successfully. Must now build out state service methods for retrieving / setting account decryption options for use elsewhere. * PM-1049 - State Service - setup setters / getters for UserDecryptionOptions off the account * PM-1049 - StateService - replace User with Acct for decryption options * PM-1049 - Create domain models vs using response models as response models have a response property w/ the full response nested underneath which we don't need to persist for the user decryption options stored on the account. * PM-1049 - AcctDecryptionOptions now persist across page refreshes of the login-initiated page to act similarly to refreshes on the lock screen. Accomplished via persisting AcctDecryptionOptions in local storage -- still cleared on logout. * PM-1049 - IdTokenResponse - only userDecryptionOptions if they exist on the response from the server; I saw a few instances where it did not. Wasn't able to replicate consistently, but I put this check here to be safe. * PM-1049 - Login Initiated route can only be accessed if user is AuthN w/ locked vault + TDE feature flag is on. * PM-1049 - LoginDecryptionOptions - (1) Wire up loading logic (2) Retrieve User Acct Decryption options to determine whether or not to show request admin approval btn and approve w/ MP (3) Write up future logic for requestAdminApproval (4) approveWithMasterPassword takes you to the lock screen to login. * PM-1049 - Apply same guards as in web to login-decryption-options in desktop & browser. * PM-1049 - (1) Updated dependencies in parent BaseLoginDecryptionOptionsComponent class + child components (2) Retrieve userEmail b/c needed for displaying which email the user is logging in with (3) Add log out functionality (4) Add comments regarding future implementation details for each login approval flow. * PM-1049 - Web/Browser/Desktop LoginDecryptionOptions - (1) Wire up approval buttons (2) Add conditional margins (3) Loading spinner added (4) Display userEmail + "not you" logout link * PM-1049 - Add TODOs for future changes needed as part of the Login Approval flows for TDE * PM-1049 - TODO: replace base component with business service * add new storage to replace MasterKey with UserSymKey * add storage for master key encrypted user symmetric key * Begin refactor of crypto service to support new key structure * remove provided key from getKeyForUserEncryption * add decryption with MasterKey method to crypto service * update makeKeyPair on crypto service to be generic * add type to parameter of setUserKey in abstraction of crypto service * add setUserSymKeyMasterKey so we can set the encrypted user sym key from server * update cli with new crypto service methods - decrypt user sym key and set when unlocking * separate the user key in memory from user keys in storage * add new memory concept to crypto service calls in cli * update auth service to use new crypto service * update register component in lib to use new crypto service * update register component again with more crypto service * update sync service to use new crypto service methods * update send service to use new crypto service methods * update folder service to use new crypto service methods * update cipher service to use new crypto service * update password generation service to use new crypto service * update vault timeout service with new crypto service * update collection service to use new crypto service * update emergency access components to use new crypto service methods * migrate login strategies to new key model - decrypt and set user symmetric key if Master Key is available - rename keys where applicable - update unit tests * migrate pin to use user's symmetric key instead of master key - set up new state - migrate on lock component - use new crypto service methods * update pin key when the user symmetric key is set - always set the protected pin so we can recreate pin key from user symmetric key - stop using EncryptionPair in account - use EncString for both pin key storage - update migration from old strategy on lock component * set user symmetric key on lock component - add missed key suffix types to crypto service methods * migrate auto key - add helper to internal crypto service method to migrate * remove additional keys in state service clean * clean up the old pin keys in more flows - in the case that the app is updated while logged in and the user changes their pin, this will clear the old pin keys * finish migrate auto key if needed - migrate whenever retrieved from storage - add back the user symmetric key toggle * migrate biometrics key - migrate only on retrieval * fix crypto calls for key connector and vault timeout settings * update change password components with new crypto service * update assortment of leftover old crypto service calls * update device-crypto service with new crypto service * remove old EncKey methods from crypto service * remove clearEncKey from crypto service * move crypto service jsdoc to abstraction * add org key type and new method to build a data enc key for orgs * fix typing of bulk confirm component * fix EncString serialization issues & various fixes Co-authored-by: Matt Gibson <MGibson1@users.noreply.github.com> * update account model with new keys serialization * migrate native messaging for biometrics to use new key model - support backwards compatibility - update safari web extension to send user key - add error handling * add early exit to native messaging flow for errors * improve error strings in crypto service * disable disk cache for browser due to bg script/popup race conditions * clear bio key when pin is migrated as bio is refreshed * share disk cache to fix syncing issues between contexts * check for ephemeral pin before process reload * remove state no longer needed and add JSDOC * fix linter * add new types to tests * remove cryptoMasterKeyB64 from account * fix tests imports * use master key for device approvals still * cleanup old TODOs, add missing crypto service parameters * fix cli crypto service calls * share disk cache between contexts on browser * Revert "share disk cache between contexts on browser" This reverts commit |
2 years ago |
|
|
acd169b113
|
update link for Web and Browser (#5779)
|
2 years ago |
|
|
a4fcd62c99
|
[CL-106] use CL's DialogService in Desktop & Browser (#5875)
* remove libs/angular dialog service; move simple dialog types to CL * update DialogServiceAbstraction imports to CL * update imports in libs/angular to use CL * colocate simple dialog types * move SimpleConfigurableDialog files under SimpleDialog * remove CL import alias from CL src * update imports * run prettier * convert SimpleDialog enums to types * replace DialogServiceAbstraction with DialogService * restrict libs/angular imports in CL * add deprecation note to ModalService * Delete BrowserDialogService * Remove ElectronDialogService * update browser and desktop services.module * remove os.EOL in simple dialog * change SimpleDialogCloseType to boolean * remove close type |
2 years ago |
|
|
8593966a71
|
PM-171 remove confirmation alerts for restoring an item (#5799)
* remove confirmation alerts for restoring an item from trash and remove bulk-restore-dialog from vault individual and org |
2 years ago |