passbolt-browser-extension 3.0.6 → 4.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +34 -18
- package/.github/workflows/release.yaml +17 -0
- package/.github/workflows/release_candidate.yaml +17 -0
- package/.gitlab-ci/jobs/build.yml +42 -0
- package/.gitlab-ci/jobs/publish.yml +38 -0
- package/.gitlab-ci/jobs/release.yml +21 -0
- package/.gitlab-ci/jobs/review.yml +25 -0
- package/.gitlab-ci/jobs/test.yml +32 -0
- package/.gitlab-ci/scripts/bin/publish.sh +63 -0
- package/.gitlab-ci/scripts/bin/review.sh +52 -0
- package/.gitlab-ci/scripts/bin/slack-status-messages.sh +33 -0
- package/.gitlab-ci/scripts/lib/git-helpers.sh +29 -0
- package/.gitlab-ci/scripts/lib/set-env.sh +25 -0
- package/.gitlab-ci/scripts/lib/version-check.sh +25 -0
- package/.gitlab-ci.yml +15 -16
- package/.jpmignore +5 -1
- package/CHANGELOG.md +993 -6
- package/Gruntfile.js +239 -149
- package/README.md +18 -1
- package/RELEASE_NOTES.md +23 -0
- package/crowdin.yml +21 -0
- package/i18next-parser.config.js +22 -0
- package/jest.config.json +29 -0
- package/package.json +95 -55
- package/src/all/_locales/de/messages.json +10 -0
- package/src/all/_locales/en/messages.json +10 -0
- package/src/all/_locales/es/messages.json +10 -0
- package/src/all/_locales/fr/messages.json +10 -0
- package/src/all/_locales/it/messages.json +10 -0
- package/src/all/_locales/ja/messages.json +10 -0
- package/src/all/_locales/ko/messages.json +10 -0
- package/src/all/_locales/locales.test.js +43 -0
- package/src/all/_locales/lt/messages.json +10 -0
- package/src/all/_locales/nl/messages.json +10 -0
- package/src/all/_locales/pl/messages.json +10 -0
- package/src/all/_locales/pt/messages.json +10 -0
- package/src/all/_locales/ro/messages.json +10 -0
- package/src/all/_locales/ru/messages.json +10 -0
- package/src/all/_locales/sv/messages.json +10 -0
- package/src/all/background_page/controller/InformMenuController/InformMenuController.js +147 -0
- package/src/all/background_page/controller/account/getAccountController.js +55 -0
- package/src/all/background_page/controller/account/getAccountController.test.js +91 -0
- package/src/all/background_page/controller/account/getAndInitializeAccountLocaleController.js +70 -0
- package/src/all/background_page/controller/account/getAndInitializeAccountLocaleController.test.js +75 -0
- package/src/all/background_page/controller/account/updatePrivateKeyController.js +127 -0
- package/src/all/background_page/controller/account/updatePrivateKeyController.test.js +317 -0
- package/src/all/background_page/controller/account/verifyAccountPassphraseController.js +68 -0
- package/src/all/background_page/controller/account/verifyAccountPassphraseController.test.js +59 -0
- package/src/all/background_page/controller/accountRecovery/abortAndInitiateNewAccountRecoveryController.js +61 -0
- package/src/all/background_page/controller/accountRecovery/abortAndInitiateNewAccountRecoveryControllerr.test.js +46 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGenerateOrganizationKeyController.js +73 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGenerateOrganizationKeyController.test.js +48 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGetRequestController.js +69 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGetRequestController.test.js +57 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGetUserRequestsController.js +64 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryGetUserRequestsController.test.js +78 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoverySaveOrganizationPolicyController.js +210 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoverySaveOrganizationPolicyController.test.js +304 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoverySaveUserSettingController.js +104 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoverySaveUserSettingController.test.js +110 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryValidateOrganizationPrivateKeyController.js +64 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryValidateOrganizationPrivateKeyController.test.js +113 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryValidatePublicKeyController.js +53 -0
- package/src/all/background_page/controller/accountRecovery/accountRecoveryValidatePublicKeyController.test.js +89 -0
- package/src/all/background_page/controller/accountRecovery/continueAccountRecoveryController.js +68 -0
- package/src/all/background_page/controller/accountRecovery/continueAccountRecoveryController.test.js +66 -0
- package/src/all/background_page/controller/accountRecovery/getOrganizationPolicyController.js +56 -0
- package/src/all/background_page/controller/accountRecovery/getOrganizationPolicyController.test.js +41 -0
- package/src/all/background_page/controller/accountRecovery/hasUserPostponedUserSettingInvitationController.js +50 -0
- package/src/all/background_page/controller/accountRecovery/hasUserPostponedUserSettingInvitationController.test.js +32 -0
- package/src/all/background_page/controller/accountRecovery/isLostPassphraseCaseController.js +53 -0
- package/src/all/background_page/controller/accountRecovery/isLostPassphraseCaseController.test.js +58 -0
- package/src/all/background_page/controller/accountRecovery/postponeUserSettingInvitationController.js +50 -0
- package/src/all/background_page/controller/accountRecovery/postponeUserSettingInvitationController.test.js +28 -0
- package/src/all/background_page/controller/accountRecovery/recoverAccountController.js +199 -0
- package/src/all/background_page/controller/accountRecovery/recoverAccountController.test.js +204 -0
- package/src/all/background_page/controller/accountRecovery/reviewRequestController.js +236 -0
- package/src/all/background_page/controller/accountRecovery/reviewRequestController.test.js +306 -0
- package/src/all/background_page/controller/app/appInitController.js +39 -10
- package/src/all/background_page/controller/app/appInitController.test.js +98 -0
- package/src/all/background_page/controller/auth/authCheckStatusController.js +3 -4
- package/src/all/background_page/controller/auth/authIsAuthenticatedController.js +2 -3
- package/src/all/background_page/controller/auth/authIsMfaRequiredController.js +2 -4
- package/src/all/background_page/controller/auth/authLoginController.js +130 -0
- package/src/all/background_page/controller/auth/authLoginController.test.js +164 -0
- package/src/all/background_page/controller/auth/authLogoutController.js +62 -0
- package/src/all/background_page/controller/auth/authLogoutController.test.js +55 -0
- package/src/all/background_page/controller/auth/authVerifyServerKeyController.js +120 -0
- package/src/all/background_page/controller/auth/authVerifyServerKeyController.test.js +61 -0
- package/src/all/background_page/controller/auth/authenticationEventController.js +67 -0
- package/src/all/background_page/controller/auth/generateSsoKitController.js +80 -0
- package/src/all/background_page/controller/auth/generateSsoKitController.test.js +100 -0
- package/src/all/background_page/controller/auth/requestHelpCredentialsLostController.js +54 -0
- package/src/all/background_page/controller/auth/requestHelpCredentialsLostController.test.js +42 -0
- package/src/all/background_page/controller/autofill/AutofillController.js +134 -0
- package/src/all/background_page/controller/autofill/AutofillController.test.js +149 -0
- package/src/all/background_page/controller/clipboard/clipboardController.js +53 -0
- package/src/all/background_page/controller/clipboard/clipboardController.test.js +68 -0
- package/src/all/background_page/controller/comment/createCommentController.js +57 -0
- package/src/all/background_page/controller/comment/createCommentController.test.js +105 -0
- package/src/all/background_page/controller/comment/deleteCommentController.js +66 -0
- package/src/all/background_page/controller/comment/deleteCommentController.test.js +105 -0
- package/src/all/background_page/controller/comment/getCommentsByRessourceIdController.js +68 -0
- package/src/all/background_page/controller/comment/getCommentsByRessourceidController.test.js +99 -0
- package/src/all/background_page/controller/crypto/checkPassphraseController.js +61 -0
- package/src/all/background_page/controller/crypto/checkPassphraseController.test.js +47 -0
- package/src/all/background_page/controller/crypto/downloadUserPrivateKeyController.js +70 -0
- package/src/all/background_page/controller/crypto/downloadUserPrivateKeyController.test.js +70 -0
- package/src/all/background_page/controller/crypto/downloadUserPublicKeyController.js +67 -0
- package/src/all/background_page/controller/crypto/downloadUserPublicKeyController.test.js +64 -0
- package/src/all/background_page/controller/crypto/getKeyInfoController.js +63 -0
- package/src/all/background_page/controller/crypto/getKeyInfoController.test.js +39 -0
- package/src/all/background_page/controller/crypto/getUserKeyInfoController.js +71 -0
- package/src/all/background_page/controller/crypto/getUserKeyInfoController.test.js +61 -0
- package/src/all/background_page/controller/crypto/getUserPrivateKeyController.js +63 -0
- package/src/all/background_page/controller/crypto/getUserPrivateKeyController.test.js +64 -0
- package/src/all/background_page/controller/crypto/validatePrivateGpgKeyRecoverController.js +74 -0
- package/src/all/background_page/controller/crypto/validatePrivateGpgKeyRecoverController.test.js +70 -0
- package/src/all/background_page/controller/crypto/validatePrivateGpgKeySetupController.js +114 -0
- package/src/all/background_page/controller/crypto/validatePrivateGpgKeySetupController.test.js +142 -0
- package/src/all/background_page/controller/export/exportResourcesFileController.js +50 -70
- package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.js +75 -0
- package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.test.data.js +25 -0
- package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.test.js +104 -0
- package/src/all/background_page/controller/extension/getExtensionVersionController.js +51 -0
- package/src/all/background_page/controller/extension/getExtensionVersionController.test.js +28 -0
- package/src/all/background_page/controller/extension/isExtensionFirstInstallController.js +51 -0
- package/src/all/background_page/controller/extension/isExtensionFirstInstallController.test.js +45 -0
- package/src/all/background_page/controller/extension/onExtensionInstalledController.js +107 -0
- package/src/all/background_page/controller/extension/onExtensionInstalledController.test.js +109 -0
- package/src/all/background_page/controller/extension/onExtensionUpdateAvailableController.js +56 -0
- package/src/all/background_page/controller/extension/onExtensionUpdateAvailableController.test.js +76 -0
- package/src/all/background_page/controller/folder/folderCreateController.js +24 -21
- package/src/all/background_page/controller/group/groupUpdateController.js +53 -43
- package/src/all/background_page/controller/group/groupUpdateController.test.data.js +70 -0
- package/src/all/background_page/controller/group/groupUpdateController.test.js +169 -0
- package/src/all/background_page/controller/import/importResourcesFileController.js +75 -76
- package/src/all/background_page/controller/informCallToActionController/informCallToActionController.js +99 -0
- package/src/all/background_page/controller/locale/getLocaleController.js +58 -0
- package/src/all/background_page/controller/mfaPolicy/hasUserPostponedUserSettingInvitationController.js +50 -0
- package/src/all/background_page/controller/mfaPolicy/hasUserPostponedUserSettingInvitationController.test.js +32 -0
- package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.js +51 -0
- package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.test.data.js +21 -0
- package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.test.js +37 -0
- package/src/all/background_page/controller/mfaPolicy/mfaGetPolicyController.js +51 -0
- package/src/all/background_page/controller/mfaPolicy/mfaGetPolicyController.test.js +38 -0
- package/src/all/background_page/controller/mfaPolicy/postponeUserSettingMfaInvitationController.js +49 -0
- package/src/all/background_page/controller/mfaPolicy/postponeUserSettingMfaInvitationController.test.js +28 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupGetTotpCodeController.js +54 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupGetTotpCodeController.test.js +44 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupRemoveProviderController.js +58 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupRemoveProviderController.test.js +56 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyOtpCodeController.js +56 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyOtpCodeController.test.js +57 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyProviderController.js +58 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyProviderController.test.js +59 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyTotpCodeController.js +56 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyTotpCodeController.test.js +57 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyYubikeyCodeController.js +59 -0
- package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyYubikeyCodeController.test.js +56 -0
- package/src/all/background_page/controller/move/moveController.js +17 -15
- package/src/all/background_page/controller/move/moveFolderController.js +80 -71
- package/src/all/background_page/controller/move/moveResourcesController.js +83 -62
- package/src/all/background_page/controller/move/moveResourcesController.test.js +117 -0
- package/src/all/background_page/controller/organizationSettings/getOrganizationSettingsController.js +55 -0
- package/src/all/background_page/controller/organizationSettings/getOrganizationSettingsController.test.js +45 -0
- package/src/all/background_page/controller/passwordExpiry/deletePasswordExpirySettingsController.js +55 -0
- package/src/all/background_page/controller/passwordExpiry/deletePasswordExpirySettingsController.test.js +66 -0
- package/src/all/background_page/controller/passwordExpiry/getOrFindPasswordExpirySettingsController.js +56 -0
- package/src/all/background_page/controller/passwordExpiry/getOrFindPasswordExpirySettingsController.test.js +113 -0
- package/src/all/background_page/controller/passwordExpiry/savePasswordExpirySettingsController.js +62 -0
- package/src/all/background_page/controller/passwordExpiry/savePasswordExpirySettingsController.test.js +108 -0
- package/src/all/background_page/controller/passwordPolicies/findPasswordPoliciesController.js +58 -0
- package/src/all/background_page/controller/passwordPolicies/findPasswordPoliciesController.test.js +90 -0
- package/src/all/background_page/controller/passwordPolicies/getOrFindPasswordPoliciesController.js +88 -0
- package/src/all/background_page/controller/passwordPolicies/getOrFindPasswordPoliciesController.test.js +177 -0
- package/src/all/background_page/controller/passwordPolicies/savePasswordPoliciesController.js +54 -0
- package/src/all/background_page/controller/passwordPolicies/savePasswordPoliciesController.test.js +87 -0
- package/src/all/background_page/controller/port/generatePortIdController.js +91 -0
- package/src/all/background_page/controller/port/generatePortIdController.test.js +123 -0
- package/src/all/background_page/controller/port/removePortController.js +105 -0
- package/src/all/background_page/controller/port/removePortController.test.js +162 -0
- package/src/all/background_page/controller/publicWebsiteSignIn/publicWebsiteSignInController.js +50 -0
- package/src/all/background_page/controller/publicWebsiteSignIn/publicWebsiteSignInController.test.js +45 -0
- package/src/all/background_page/controller/rbac/findMeController.js +55 -0
- package/src/all/background_page/controller/rbac/findMeController.test.js +49 -0
- package/src/all/background_page/controller/recover/abortAndRequestHelpController.js +55 -0
- package/src/all/background_page/controller/recover/abortAndRequestHelpController.test.js +42 -0
- package/src/all/background_page/controller/recover/completeRecoverController.js +64 -0
- package/src/all/background_page/controller/recover/completeRecoverController.test.js +77 -0
- package/src/all/background_page/controller/recover/generateRecoverAccountRecoveryRequestKeyController.js +74 -0
- package/src/all/background_page/controller/recover/generateRecoverAccountRecoveryRequestKeyController.test.js +52 -0
- package/src/all/background_page/controller/recover/hasRecoverUserEnabledAccountRecoveryController.js +51 -0
- package/src/all/background_page/controller/recover/hasRecoverUserEnabledAccountRecoveryController.test.js +42 -0
- package/src/all/background_page/controller/recover/importRecoverPrivateKeyController.js +86 -0
- package/src/all/background_page/controller/recover/importRecoverPrivateKeyController.test.js +148 -0
- package/src/all/background_page/controller/recover/requestAccountRecoveryController.js +74 -0
- package/src/all/background_page/controller/recover/requestAccountRecoveryController.test.js +66 -0
- package/src/all/background_page/controller/recover/startRecoverController.js +114 -0
- package/src/all/background_page/controller/recover/startRecoverController.test.js +137 -0
- package/src/all/background_page/controller/rememberMe/getUserRememberMeLatestChoiceController.js +55 -0
- package/src/all/background_page/controller/rememberMe/getUserRememberMeLatestChoiceController.test.js +50 -0
- package/src/all/background_page/controller/resource/resourceCreateController.js +53 -47
- package/src/all/background_page/controller/resource/resourceUpdateController.js +44 -39
- package/src/all/background_page/controller/resource/setResourcesExpiryDateController.js +74 -0
- package/src/all/background_page/controller/resource/setResourcesExpiryDateController.test.js +94 -0
- package/src/all/background_page/controller/resourceGridSetting/getResourceGridUserSettingController.js +53 -0
- package/src/all/background_page/controller/resourceGridSetting/getResourceGridUserSettingController.test.js +60 -0
- package/src/all/background_page/controller/resourceGridSetting/setResourceGridUserSettingController.js +56 -0
- package/src/all/background_page/controller/resourceGridSetting/setResourceGridUserSettingController.test.js +51 -0
- package/src/all/background_page/controller/secret/pownedPasswordController.js +54 -0
- package/src/all/background_page/controller/secret/pownedPasswordController.test.js +61 -0
- package/src/all/background_page/controller/secret/secretDecryptController.js +39 -46
- package/src/all/background_page/controller/secret/secretDecryptController.test.js +180 -0
- package/src/all/background_page/controller/setup/completeSetupController.js +63 -0
- package/src/all/background_page/controller/setup/completeSetupController.test.js +77 -0
- package/src/all/background_page/controller/setup/downloadRecoverKitController.js +59 -0
- package/src/all/background_page/controller/setup/downloadRecoverKitController.test.js +57 -0
- package/src/all/background_page/controller/setup/generateSetupKeyPairController.js +93 -0
- package/src/all/background_page/controller/setup/generateSetupKeyPairController.test.js +98 -0
- package/src/all/background_page/controller/setup/getAccountRecoveryOrganizationPolicyController.js +51 -0
- package/src/all/background_page/controller/setup/getAccountRecoveryOrganizationPolicyController.test.js +41 -0
- package/src/all/background_page/controller/setup/getAndInitSetupLocaleController.js +76 -0
- package/src/all/background_page/controller/setup/getAndInitSetupLocaleController.test.js +107 -0
- package/src/all/background_page/controller/setup/getUserPassphrasePoliciesController.js +54 -0
- package/src/all/background_page/controller/setup/getUserPassphrasePoliciesController.test.js +40 -0
- package/src/all/background_page/controller/setup/importSetupPrivateKeyController.js +94 -0
- package/src/all/background_page/controller/setup/importSetupPrivateKeyController.test.js +153 -0
- package/src/all/background_page/controller/setup/setSetupAccountRecoveryUserSettingController.js +98 -0
- package/src/all/background_page/controller/setup/setSetupAccountRecoveryUserSettingController.test.js +71 -0
- package/src/all/background_page/controller/setup/setSetupLocaleController.js +63 -0
- package/src/all/background_page/controller/setup/setSetupLocaleController.test.js +57 -0
- package/src/all/background_page/controller/setup/setSetupSecurityTokenController.js +55 -0
- package/src/all/background_page/controller/setup/setSetupSecurityTokenController.test.js +32 -0
- package/src/all/background_page/controller/setup/signInSetupController.js +85 -0
- package/src/all/background_page/controller/setup/signInSetupController.test.js +104 -0
- package/src/all/background_page/controller/setup/startSetupController.js +120 -0
- package/src/all/background_page/controller/setup/startSetupController.test.js +168 -0
- package/src/all/background_page/controller/setup/verifyImportedKeyPassphraseController.js +72 -0
- package/src/all/background_page/controller/setup/verifyImportedKeyPassphraseController.test.js +63 -0
- package/src/all/background_page/controller/share/shareFoldersController.js +62 -53
- package/src/all/background_page/controller/share/shareFoldersController.test.data.js +113 -0
- package/src/all/background_page/controller/share/shareFoldersController.test.js +242 -0
- package/src/all/background_page/controller/share/shareResourcesController.js +32 -32
- package/src/all/background_page/controller/share/shareResourcesController.test.data.js +129 -0
- package/src/all/background_page/controller/share/shareResourcesController.test.js +255 -0
- package/src/all/background_page/controller/sso/activateSsoSettingsController.js +61 -0
- package/src/all/background_page/controller/sso/activateSsoSettingsController.test.js +72 -0
- package/src/all/background_page/controller/sso/deleteLocalSsoKitController.js +52 -0
- package/src/all/background_page/controller/sso/deleteLocalSsoKitController.test.js +29 -0
- package/src/all/background_page/controller/sso/deleteSsoSettingsController.js +59 -0
- package/src/all/background_page/controller/sso/deleteSsoSettingsController.test.js +52 -0
- package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.js +56 -0
- package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.test.data.js +51 -0
- package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.test.js +38 -0
- package/src/all/background_page/controller/sso/getLocalSsoProviderConfiguredController.js +62 -0
- package/src/all/background_page/controller/sso/getLocalSsoProviderConfiguredController.test.js +51 -0
- package/src/all/background_page/controller/sso/getQualifiedSsoLoginErrorController.js +56 -0
- package/src/all/background_page/controller/sso/getQualifiedSsoLoginErrorController.test.js +75 -0
- package/src/all/background_page/controller/sso/hasSsoLoginErrorController.js +53 -0
- package/src/all/background_page/controller/sso/hasSsoLoginErrorController.test.js +46 -0
- package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.js +58 -0
- package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.test.data.js +35 -0
- package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.test.js +67 -0
- package/src/all/background_page/controller/sso/ssoAuthenticationController.js +159 -0
- package/src/all/background_page/controller/sso/ssoAuthenticationController.test.js +342 -0
- package/src/all/background_page/controller/sso/testSsoAuthenticationController.js +72 -0
- package/src/all/background_page/controller/sso/testSsoAuthenticationController.test.js +109 -0
- package/src/all/background_page/controller/sso/updateLocalSsoProviderController.js +56 -0
- package/src/all/background_page/controller/sso/updateLocalSsoProviderController.test.js +53 -0
- package/src/all/background_page/controller/subscription/subscriptionController.js +53 -0
- package/src/all/background_page/controller/tabsController.js +15 -14
- package/src/all/background_page/controller/tag/tagController.js +115 -0
- package/src/all/background_page/controller/toolbarController.js +228 -39
- package/src/all/background_page/controller/toolbarController.test.js +210 -0
- package/src/all/background_page/controller/user/getOrFindLoggedInUserController.js +56 -0
- package/src/all/background_page/controller/user/getOrFindLoggedInUserController.test.js +92 -0
- package/src/all/background_page/controller/user/updateUserController.js +57 -0
- package/src/all/background_page/controller/user/updateUserController.test.js +88 -0
- package/src/all/background_page/controller/user/updateUserLocalStorageController.js +56 -0
- package/src/all/background_page/controller/user/updateUserLocalStorageController.test.js +62 -0
- package/src/all/background_page/controller/userPassphrasePolicies/findUserPassphrasePoliciesController.js +52 -0
- package/src/all/background_page/controller/userPassphrasePolicies/findUserPassphrasePoliciesController.test.js +70 -0
- package/src/all/background_page/controller/userPassphrasePolicies/saveUserPassphrasePoliciesController.js +55 -0
- package/src/all/background_page/controller/userPassphrasePolicies/saveUserPassphrasePoliciesController.test.js +76 -0
- package/src/all/background_page/controller/webIntegration/webIntegrationController.js +54 -0
- package/src/all/background_page/error/GpgKeyError.js +1 -1
- package/src/all/background_page/error/badSignatureMessageGpgKeyError.js +22 -0
- package/src/all/background_page/error/deleteDryRunError.js +10 -8
- package/src/all/background_page/error/error.js +14 -6
- package/src/all/background_page/error/externalServiceError.js +17 -0
- package/src/all/background_page/error/externalServiceUnavailableError.js +17 -0
- package/src/all/background_page/error/fileFormatError.js +1 -1
- package/src/all/background_page/error/fileTypeError.js +1 -1
- package/src/all/background_page/error/importError.js +2 -2
- package/src/all/background_page/error/invalidMasterPasswordError.js +4 -4
- package/src/all/background_page/error/keyIsExpiredError.js +1 -1
- package/src/all/background_page/error/mfaAuthenticationRequiredError.js +10 -4
- package/src/all/background_page/error/notFoundError.js +3 -4
- package/src/all/background_page/error/outdatedSsoKitError.js +22 -0
- package/src/all/background_page/error/passboltBadResponseError.js +7 -3
- package/src/all/background_page/error/passboltServiceUnavailableError.js +4 -3
- package/src/all/background_page/error/passboltSubscriptionError.js +19 -0
- package/src/all/background_page/error/serverKeyChangedError.js +1 -1
- package/src/all/background_page/error/ssoDisabledError.js +21 -0
- package/src/all/background_page/error/ssoProviderMismatchError.js +22 -0
- package/src/all/background_page/error/ssoSettingsChangedError.js +21 -0
- package/src/all/background_page/error/userAbortsOperationError.js +2 -2
- package/src/all/background_page/error/userAlreadyLoggedInError.js +21 -0
- package/src/all/background_page/error/wrongOrganizationRecoveryKeyError.js +23 -0
- package/src/all/background_page/event/accountRecoveryEvents.js +89 -0
- package/src/all/background_page/event/actionLogEvents.js +11 -8
- package/src/all/background_page/event/appBootstrapEvents.js +6 -6
- package/src/all/background_page/event/appEvents.js +250 -5
- package/src/all/background_page/event/authEvents.js +125 -74
- package/src/all/background_page/event/clipboardEvents.js +21 -17
- package/src/all/background_page/event/commentEvents.js +25 -38
- package/src/all/background_page/event/configEvents.js +31 -24
- package/src/all/background_page/event/exportResourcesEvents.js +13 -30
- package/src/all/background_page/event/favoriteEvents.js +8 -12
- package/src/all/background_page/event/folderEvents.js +25 -25
- package/src/all/background_page/event/groupEvents.js +32 -31
- package/src/all/background_page/event/importResourcesEvents.js +12 -7
- package/src/all/background_page/event/informCallToActionEvents.js +60 -0
- package/src/all/background_page/event/informMenuEvents.js +99 -0
- package/src/all/background_page/event/keyringEvents.js +56 -95
- package/src/all/background_page/event/localeEvents.js +61 -0
- package/src/all/background_page/event/mfaEvents.js +77 -0
- package/src/all/background_page/event/mobileEvents.js +77 -0
- package/src/all/background_page/event/multiFactorAuthenticationEvents.js +11 -8
- package/src/all/background_page/event/organizationSettingsEvents.js +38 -0
- package/src/all/background_page/event/passwordPoliciesEvents.js +41 -0
- package/src/all/background_page/event/portEvents.js +30 -0
- package/src/all/background_page/event/pownedPasswordEvents.js +30 -0
- package/src/all/background_page/event/publicWebsiteSignInEvents.js +30 -0
- package/src/all/background_page/event/quickAccessEvents.js +110 -30
- package/src/all/background_page/event/recoverEvents.js +114 -102
- package/src/all/background_page/event/rememberMeEvents.js +29 -0
- package/src/all/background_page/event/resourceEvents.js +59 -27
- package/src/all/background_page/event/resourceTypeEvents.js +10 -7
- package/src/all/background_page/event/roleEvents.js +15 -13
- package/src/all/background_page/event/secretEvents.js +25 -17
- package/src/all/background_page/event/setupEvents.js +98 -131
- package/src/all/background_page/event/shareEvents.js +23 -46
- package/src/all/background_page/event/subscriptionEvents.js +57 -0
- package/src/all/background_page/event/tabEvents.js +13 -29
- package/src/all/background_page/event/tagEvents.js +32 -18
- package/src/all/background_page/event/themeEvents.js +15 -13
- package/src/all/background_page/event/userEvents.js +95 -74
- package/src/all/background_page/event/webIntegrationEvents.js +38 -0
- package/src/all/background_page/index.html +0 -1
- package/src/all/background_page/index.js +68 -88
- package/src/all/background_page/model/account/accountModel.js +46 -10
- package/src/all/background_page/model/accountRecovery/accountRecoveryModel.js +181 -0
- package/src/all/background_page/model/actionLog/actionLogModel.js +9 -7
- package/src/all/background_page/model/auth/authModel.js +33 -29
- package/src/all/background_page/model/auth/authModel.test.js +40 -0
- package/src/all/background_page/model/comment/commentModel.js +4 -4
- package/src/all/background_page/model/config.js +33 -28
- package/src/all/background_page/model/desktopTransfer/desktopTransferModel.js +34 -0
- package/src/all/background_page/model/desktopTransfer/desktopTransferModel.test.js +50 -0
- package/src/all/background_page/model/entity/account/abstractAccountEntity.js +312 -0
- package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.js +268 -0
- package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.test.data.js +51 -0
- package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.test.js +123 -0
- package/src/all/background_page/model/entity/account/accountEntity.js +112 -112
- package/src/all/background_page/model/entity/account/accountEntity.test.data.js +60 -0
- package/src/all/background_page/model/entity/account/accountEntity.test.js +126 -0
- package/src/all/background_page/model/entity/account/accountKitEntity.js +118 -0
- package/src/all/background_page/model/entity/account/accountKitEntity.test.data.js +25 -0
- package/src/all/background_page/model/entity/account/accountKitEntity.test.js +101 -0
- package/src/all/background_page/model/entity/account/accountRecoverEntity.js +260 -0
- package/src/all/background_page/model/entity/account/accountRecoverEntity.test.data.js +72 -0
- package/src/all/background_page/model/entity/account/accountSetupEntity.js +242 -0
- package/src/all/background_page/model/entity/account/accountSetupEntity.test.data.js +65 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.js +159 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.test.data.js +50 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.test.js +62 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.js +375 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.test.data.js +170 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.test.js +179 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.js +175 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.test.data.js +85 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.test.js +117 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.js +177 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.test.data.js +76 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.test.js +41 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordDecryptedDataEntity.js +166 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordDecryptedDataEntity.test.data.js +29 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.js +172 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.test.data.js +75 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.test.js +87 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordsCollection.js +205 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordsCollection.test.js +160 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestCreateEntity.js +126 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.js +232 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.data.js +102 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.fixtures.js +38 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.js +101 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestsCollection.js +196 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestsCollection.test.js +165 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.js +189 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.test.data.js +92 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.test.js +65 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponsesCollection.js +196 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.js +193 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.test.data.js +45 -0
- package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.test.js +125 -0
- package/src/all/background_page/model/entity/accountRecovery/pendingAccountRecoveryRequestEntity.js +106 -0
- package/src/all/background_page/model/entity/accountRecovery/pendingAccountRecoveryRequestEntity.test.js +72 -0
- package/src/all/background_page/model/entity/actionLog/abstractActionLogEntity.js +31 -24
- package/src/all/background_page/model/entity/actionLog/actionLogsCollection.js +39 -32
- package/src/all/background_page/model/entity/actionLog/defaultActionLog.test.js +9 -16
- package/src/all/background_page/model/entity/actionLog/defaultActionLogEntity.js +11 -13
- package/src/all/background_page/model/entity/actionLog/permissionsUpdatedActionLogEntity.js +28 -26
- package/src/all/background_page/model/entity/auth/auth.test.data.js +23 -0
- package/src/all/background_page/model/entity/authenticationToken/authenticationTokenEntity.js +94 -20
- package/src/all/background_page/model/entity/authenticationToken/authenticationTokenEntity.test.js +99 -0
- package/src/all/background_page/model/entity/avatar/avatarEntity.js +17 -44
- package/src/all/background_page/model/entity/avatar/avatarEntity.test.js +126 -49
- package/src/all/background_page/model/entity/avatar/update/avatarUpdateEntity.js +22 -18
- package/src/all/background_page/model/entity/comment/commentEntity.js +32 -27
- package/src/all/background_page/model/entity/comment/commentEntity.test.js +18 -25
- package/src/all/background_page/model/entity/comment/comments.test.data.js +45 -0
- package/src/all/background_page/model/entity/comment/commentsCollection.js +34 -27
- package/src/all/background_page/model/entity/comment/commentsCollection.test.js +5 -12
- package/src/all/background_page/model/entity/export/exportResourcesFileEntity.js +130 -42
- package/src/all/background_page/model/entity/favorite/favoriteEntity.js +18 -42
- package/src/all/background_page/model/entity/favorite/favoriteEntity.test.js +113 -59
- package/src/all/background_page/model/entity/folder/external/externalFolderEntity.js +87 -41
- package/src/all/background_page/model/entity/folder/external/externalFolderEntity.test.js +85 -20
- package/src/all/background_page/model/entity/folder/external/externalFoldersCollection.js +73 -31
- package/src/all/background_page/model/entity/folder/external/externalFoldersCollection.test.js +16 -15
- package/src/all/background_page/model/entity/folder/folderEntity.js +55 -46
- package/src/all/background_page/model/entity/folder/folderEntity.test.js +364 -205
- package/src/all/background_page/model/entity/folder/foldersCollection.js +53 -41
- package/src/all/background_page/model/entity/folder/foldersCollection.test.js +21 -26
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyCollection.js +88 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyCollection.test.js +40 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.js +309 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.data.js +33 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.fixtures.js +111 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.js +89 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyPairEntity.js +140 -0
- package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyPairEntity.test.js +57 -0
- package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.js +215 -0
- package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.test.data.js +33 -0
- package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.test.js +87 -0
- package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.js +22 -20
- package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.test.fixtures.js +17 -2
- package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.test.js +4 -12
- package/src/all/background_page/model/entity/gpgkey/privateGpgkeyEntity.js +83 -0
- package/src/all/background_page/model/entity/gpgkey/privateGpgkeyEntity.test.js +49 -0
- package/src/all/background_page/model/entity/group/groupEntity.js +37 -31
- package/src/all/background_page/model/entity/group/groupEntity.test.data.js +42 -0
- package/src/all/background_page/model/entity/group/groupEntity.test.fixtures.js +1 -1
- package/src/all/background_page/model/entity/group/groupEntity.test.js +2 -9
- package/src/all/background_page/model/entity/group/groupsCollection.js +44 -34
- package/src/all/background_page/model/entity/group/groupsCollection.test.js +5 -12
- package/src/all/background_page/model/entity/group/transfer/groupDeleteTransfer.js +29 -24
- package/src/all/background_page/model/entity/group/transfer/groupDeleteTransfer.test.js +6 -15
- package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.js +27 -24
- package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.test.data.js +24 -0
- package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.test.js +1 -8
- package/src/all/background_page/model/entity/group/update/groupUpdateEntity.js +35 -30
- package/src/all/background_page/model/entity/group/update/groupUpdateEntity.test.js +6 -13
- package/src/all/background_page/model/entity/groupUser/change/groupUserChangeEntity.js +19 -18
- package/src/all/background_page/model/entity/groupUser/change/groupUserChangeEntity.test.js +2 -9
- package/src/all/background_page/model/entity/groupUser/change/groupUserChangesCollection.js +25 -22
- package/src/all/background_page/model/entity/groupUser/groupUserEntity.js +28 -22
- package/src/all/background_page/model/entity/groupUser/groupUserEntity.test.fixtures.js +1 -1
- package/src/all/background_page/model/entity/groupUser/groupUserEntity.test.js +2 -9
- package/src/all/background_page/model/entity/groupUser/groupUsersEntity.test.data.js +38 -0
- package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.js +36 -28
- package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.test.fixtures.js +1 -1
- package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.test.js +2 -9
- package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfer.test.js +9 -16
- package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransferEntity.js +17 -17
- package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfersCollection.js +19 -17
- package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfersCollection.test.js +3 -10
- package/src/all/background_page/model/entity/import/importResourcesFileEntity.js +39 -32
- package/src/all/background_page/model/entity/import/importResourcesFileEntity.test.js +10 -15
- package/src/all/background_page/model/entity/locale/localeEntity.js +91 -0
- package/src/all/background_page/model/entity/locale/localeEntity.test.js +55 -0
- package/src/all/background_page/model/entity/locale/localesCollection.js +96 -0
- package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.data.js +42 -0
- package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.js +142 -0
- package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.test.js +66 -0
- package/src/all/background_page/model/entity/mfa/mfaEnabledProviderEntity.js +104 -0
- package/src/all/background_page/model/entity/mfa/mfaEnabledProviderEntity.test.js +45 -0
- package/src/all/background_page/model/entity/mfa/mfaPolicyEntity.data.js +24 -0
- package/src/all/background_page/model/entity/mfa/mfaPolicyEntity.js +120 -0
- package/src/all/background_page/model/entity/mfa/mfaProviderEntity.js +86 -0
- package/src/all/background_page/model/entity/mfa/mfaProviderEntity.test.data.js +21 -0
- package/src/all/background_page/model/entity/mfa/mfaProviderEntity.test.js +49 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.js +70 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.test.data.js +29 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.test.js +51 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.js +66 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.test.data.js +21 -0
- package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.test.js +54 -0
- package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.js +67 -0
- package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.test.data.js +20 -0
- package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.test.js +67 -0
- package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.js +66 -0
- package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.test.data.js +21 -0
- package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.test.js +49 -0
- package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.js +256 -0
- package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.test.data.js +254 -0
- package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.test.js +53 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceCollection.test.data.js +22 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceCollection.test.js +46 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.js +110 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.test.data.js +36 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.test.js +104 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourcesCollection.js +147 -0
- package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourcesCollection.test.js +69 -0
- package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.js +110 -0
- package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.test.data.js +24 -0
- package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.test.js +80 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.js +145 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.test.data.js +33 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.test.js +88 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.js +204 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.test.data.js +26 -0
- package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.test.js +106 -0
- package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionEntity.js +28 -26
- package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionEntity.test.js +6 -13
- package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionsCollection.js +33 -27
- package/src/all/background_page/model/entity/permission/change/permissionChangeEntity.js +26 -22
- package/src/all/background_page/model/entity/permission/change/permissionChangesCollection.js +37 -32
- package/src/all/background_page/model/entity/permission/change/permissionChangesCollection.test.js +88 -105
- package/src/all/background_page/model/entity/permission/permissionEntity.js +53 -39
- package/src/all/background_page/model/entity/permission/permissionEntity.test.js +9 -16
- package/src/all/background_page/model/entity/permission/permissionsCollection.js +89 -70
- package/src/all/background_page/model/entity/permission/permissionsCollection.test.js +49 -55
- package/src/all/background_page/model/entity/permission/transfer/permissionTransfer.test.js +9 -16
- package/src/all/background_page/model/entity/permission/transfer/permissionTransferEntity.js +17 -17
- package/src/all/background_page/model/entity/permission/transfer/permissionTransfersCollection.js +19 -17
- package/src/all/background_page/model/entity/permission/transfer/permissionTransfersCollection.test.js +3 -10
- package/src/all/background_page/model/entity/plaintext/plaintextEntity.js +50 -8
- package/src/all/background_page/model/entity/profile/profileEntity.js +36 -30
- package/src/all/background_page/model/entity/profile/profileEntity.test.js +198 -114
- package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.js +81 -0
- package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.test.data.js +20 -0
- package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.test.js +44 -0
- package/src/all/background_page/model/entity/resource/external/externalResourceEntity.js +70 -36
- package/src/all/background_page/model/entity/resource/external/externalResourceEntity.test.js +50 -16
- package/src/all/background_page/model/entity/resource/external/externalResourcesCollection.js +32 -28
- package/src/all/background_page/model/entity/resource/external/externalResourcesCollection.test.js +4 -11
- package/src/all/background_page/model/entity/resource/resourceEntity.js +115 -57
- package/src/all/background_page/model/entity/resource/resourceEntity.test.js +8 -15
- package/src/all/background_page/model/entity/resource/resourcesCollection.js +148 -39
- package/src/all/background_page/model/entity/resource/resourcesCollection.test.data.js +66 -0
- package/src/all/background_page/model/entity/resource/resourcesCollection.test.js +135 -26
- package/src/all/background_page/model/entity/resourceType/resourceTypeEntity.js +23 -17
- package/src/all/background_page/model/entity/resourceType/resourceTypeEntity.test.js +9 -16
- package/src/all/background_page/model/entity/resourceType/resourceTypesCollection.js +95 -30
- package/src/all/background_page/model/entity/resourceType/resourceTypesCollection.test.js +158 -0
- package/src/all/background_page/model/entity/secret/needed/neededSecretEntity.js +20 -18
- package/src/all/background_page/model/entity/secret/needed/neededSecretsCollection.js +23 -20
- package/src/all/background_page/model/entity/secret/resource/resourceSecretsCollection.js +37 -28
- package/src/all/background_page/model/entity/secret/secretEntity.js +20 -19
- package/src/all/background_page/model/entity/secret/secretEntity.test.data.js +27 -0
- package/src/all/background_page/model/entity/secret/secretEntity.test.js +13 -20
- package/src/all/background_page/model/entity/secret/secretsCollection.js +37 -28
- package/src/all/background_page/model/entity/securityToken/SecurityTokenEntity.test.data.js +23 -0
- package/src/all/background_page/model/entity/securityToken/securityTokenEntity.js +17 -16
- package/src/all/background_page/model/entity/securityToken/securityTokenEntity.test.js +7 -14
- package/src/all/background_page/model/entity/sso/ssoKitClientPart.test.data.js +31 -0
- package/src/all/background_page/model/entity/sso/ssoKitClientPartEntity.js +274 -0
- package/src/all/background_page/model/entity/sso/ssoKitClientPartEntity.test.js +131 -0
- package/src/all/background_page/model/entity/sso/ssoKitServerPart.test.data.js +18 -0
- package/src/all/background_page/model/entity/sso/ssoKitServerPartEntity.js +169 -0
- package/src/all/background_page/model/entity/sso/ssoKitServerPartEntity.test.js +87 -0
- package/src/all/background_page/model/entity/sso/ssoLoginUrlEntity.js +127 -0
- package/src/all/background_page/model/entity/sso/ssoLoginUrlEntity.test.js +89 -0
- package/src/all/background_page/model/entity/subscription/subscriptionEntity.js +113 -0
- package/src/all/background_page/model/entity/subscription/subscriptionEntity.test.js +75 -0
- package/src/all/background_page/model/entity/subscription/update/updateSubscriptionEntity.js +108 -0
- package/src/all/background_page/model/entity/subscription/update/updateSubscriptionEntity.test.js +55 -0
- package/src/all/background_page/model/entity/tag/tagEntity.js +20 -17
- package/src/all/background_page/model/entity/tag/tagEntity.test.data.js +31 -0
- package/src/all/background_page/model/entity/tag/tagEntity.test.js +16 -23
- package/src/all/background_page/model/entity/tag/tagsCollection.js +87 -46
- package/src/all/background_page/model/entity/tag/tagsCollection.test.js +199 -133
- package/src/all/background_page/model/entity/theme/change/ChangeThemeEntity.js +18 -18
- package/src/all/background_page/model/entity/theme/themeEntity.js +18 -17
- package/src/all/background_page/model/entity/theme/themeEntity.test.js +18 -17
- package/src/all/background_page/model/entity/theme/themesCollection.js +37 -28
- package/src/all/background_page/model/entity/totp/totpDto.test.data.js +29 -0
- package/src/all/background_page/model/entity/totp/totpEntity.js +202 -0
- package/src/all/background_page/model/entity/totp/totpEntity.test.js +111 -0
- package/src/all/background_page/model/entity/transfer/transferEntity.js +218 -0
- package/src/all/background_page/model/entity/transfer/transferEntity.test.js +111 -0
- package/src/all/background_page/model/entity/user/actionLog/loggedUserEntity.js +27 -24
- package/src/all/background_page/model/entity/user/actionLog/loggedUserEntity.test.js +6 -13
- package/src/all/background_page/model/entity/user/transfer/userDeleteTransfer.js +28 -25
- package/src/all/background_page/model/entity/user/transfer/userDeleteTransfer.test.js +9 -18
- package/src/all/background_page/model/entity/user/userEntity.js +113 -40
- package/src/all/background_page/model/entity/user/userEntity.test.fixtures.js +40 -5
- package/src/all/background_page/model/entity/user/userEntity.test.js +49 -20
- package/src/all/background_page/model/entity/user/usersCollection.js +41 -34
- package/src/all/background_page/model/entity/user/usersCollection.test.fixtures.js +18 -2
- package/src/all/background_page/model/entity/user/usersCollection.test.js +7 -14
- package/src/all/background_page/model/entity/worker/workerEntity.js +194 -0
- package/src/all/background_page/model/entity/worker/workerEntity.test.data.js +26 -0
- package/src/all/background_page/model/entity/worker/workerEntity.test.js +97 -0
- package/src/all/background_page/model/export/resources/argon2.test-lib.js +50 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/abstractRowComposer.js +3 -1
- package/src/all/background_page/model/export/resources/csvRowComposer/csv1PasswordRowComposer.test.js +3 -10
- package/src/all/background_page/model/export/resources/csvRowComposer/csv1passwordRowComposer.js +4 -5
- package/src/all/background_page/model/export/resources/csvRowComposer/csvBitWardenRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvBitWardenRowComposer.test.js +36 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvChromiumRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvChromiumRowComposer.test.js +34 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvDashlaneRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvDashlaneRowComposer.test.js +35 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvKdbxRowComposer.js +12 -6
- package/src/all/background_page/model/export/resources/csvRowComposer/csvKdbxRowComposer.test.js +30 -10
- package/src/all/background_page/model/export/resources/csvRowComposer/csvLastPassRowComposer.js +4 -5
- package/src/all/background_page/model/export/resources/csvRowComposer/csvLastPassRowComposer.test.js +2 -9
- package/src/all/background_page/model/export/resources/csvRowComposer/csvLogMeOnceRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvLogMeOnceRowComposer.test.js +36 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvMozillaPlatformRowComposer.js +61 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvMozillaPlatformRowComposer.test.js +39 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvNordpassRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvNordpassRowComposer.test.js +36 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvSafariRowComposer.js +52 -0
- package/src/all/background_page/model/export/resources/csvRowComposer/csvSafariRowComposer.test.js +35 -0
- package/src/all/background_page/model/export/resources/resourcesCsvExporter.js +22 -7
- package/src/all/background_page/model/export/resources/resourcesCsvExporter.test.js +24 -21
- package/src/all/background_page/model/export/resources/resourcesKdbxExporter.js +55 -11
- package/src/all/background_page/model/export/resources/resourcesKdbxExporter.test.js +127 -29
- package/src/all/background_page/model/export/resourcesExporter.js +4 -4
- package/src/all/background_page/model/favorite/favoriteModel.js +8 -6
- package/src/all/background_page/model/folder/folderModel.js +73 -55
- package/src/all/background_page/model/folder/folderModel.test.js +25 -29
- package/src/all/background_page/model/gpgAuthHeader.js +31 -34
- package/src/all/background_page/model/gpgAuthToken.js +13 -12
- package/src/all/background_page/model/gpgauth.js +72 -133
- package/src/all/background_page/model/group/groupModel.js +11 -13
- package/src/all/background_page/model/import/resources/csvRowParser/abstractCsvRowParser.js +4 -2
- package/src/all/background_page/model/import/resources/csvRowParser/csv1PasswordRowParser.js +6 -6
- package/src/all/background_page/model/import/resources/csvRowParser/csv1PasswordRowParser.test.js +7 -14
- package/src/all/background_page/model/import/resources/csvRowParser/csvBitWardenRowParser.js +65 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvBitWardenRowParser.test.js +74 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvChromiumRowParser.js +63 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvChromiumRowParser.test.js +69 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvDashlaneRowParser.js +68 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvDashlaneRowParser.test.js +71 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvKdbxRowParser.js +39 -15
- package/src/all/background_page/model/import/resources/csvRowParser/csvKdbxRowParser.test.js +53 -10
- package/src/all/background_page/model/import/resources/csvRowParser/csvLastPassRowParser.js +10 -8
- package/src/all/background_page/model/import/resources/csvRowParser/csvLastPassRowParser.test.js +2 -9
- package/src/all/background_page/model/import/resources/csvRowParser/csvLogMeOnceRowParser.js +66 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvLogMeOnceRowParser.test.js +74 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvMozillaPlatformRowParser.js +63 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvMozillaPlatformRowParser.test.js +67 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvNordpassRowParser.js +79 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvNordpassRowParser.test.js +74 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvSafariRowParser.js +65 -0
- package/src/all/background_page/model/import/resources/csvRowParser/csvSafariRowParser.test.js +71 -0
- package/src/all/background_page/model/import/resources/kdbx/kdbx-content-error-not-protected.kdbx +0 -0
- package/src/all/background_page/model/import/resources/kdbx/kdbx-protected-password.kdbx +0 -0
- package/src/all/background_page/model/import/resources/kdbx/kdbx-windows-with-totp-protected-password.kdbx +0 -0
- package/src/all/background_page/model/import/resources/kdbx/kdbx-with-totp-protected-password.kdbx +0 -0
- package/src/all/background_page/model/import/resources/resourcesCsvImportParser.js +36 -20
- package/src/all/background_page/model/import/resources/resourcesCsvImportParser.test.js +46 -40
- package/src/all/background_page/model/import/resources/resourcesKdbxImportParser.js +64 -35
- package/src/all/background_page/model/import/resources/resourcesKdbxImportParser.test.js +125 -35
- package/src/all/background_page/model/import/resourcesImportParser.js +6 -6
- package/src/all/background_page/model/import/resourcesImportParser.test.js +6 -16
- package/src/all/background_page/model/keyring.js +90 -214
- package/src/all/background_page/model/locale/localeModel.js +137 -0
- package/src/all/background_page/model/log.js +14 -35
- package/src/all/background_page/model/mobileTransfer/mobileTransferModel.js +63 -0
- package/src/all/background_page/model/multiFactorAuthentication/multiFactorAuthenticationModel.js +84 -4
- package/src/all/background_page/model/multiFactorAuthentication/multiFactorAuthenticationModel.test.js +84 -0
- package/src/all/background_page/model/organizationSettings/organizationSettingsModel.js +94 -0
- package/src/all/background_page/model/passwordExpiry/passwordExpiryResourceModel.js +49 -0
- package/src/all/background_page/model/passwordExpiry/passwordExpiryResourceModel.test.js +62 -0
- package/src/all/background_page/model/passwordExpiry/passwordExpirySettingsModel.js +110 -0
- package/src/all/background_page/model/passwordExpiry/passwordExpirySettingsModel.test.js +243 -0
- package/src/all/background_page/model/passwordPolicies/passwordPoliciesModel.js +86 -0
- package/src/all/background_page/model/passwordPolicies/passwordPoliciesModel.test.js +231 -0
- package/src/all/background_page/model/rbac/RbacModel.js +75 -0
- package/src/all/background_page/model/request.js +3 -3
- package/src/all/background_page/model/resource/resourceModel.js +186 -138
- package/src/all/background_page/model/resourceType/resourceTypeModel.js +20 -9
- package/src/all/background_page/model/role/roleModel.js +6 -6
- package/src/all/background_page/model/setup/setupModel.js +94 -41
- package/src/all/background_page/model/share/shareModel.js +165 -0
- package/src/all/background_page/model/sso/ssoDryRunModel.js +53 -0
- package/src/all/background_page/model/sso/ssoKitServerPartModel.js +71 -0
- package/src/all/background_page/model/sso/ssoLoginModel.js +46 -0
- package/src/all/background_page/model/sso/ssoSettingsModel.js +88 -0
- package/src/all/background_page/model/subscription/subscriptionModel.js +81 -0
- package/src/all/background_page/model/tag/tagModel.js +21 -17
- package/src/all/background_page/model/theme/themeModel.js +16 -11
- package/src/all/background_page/model/toolbar.js +8 -16
- package/src/all/background_page/model/user/userModel.js +88 -29
- package/src/all/background_page/model/user.js +78 -191
- package/src/all/background_page/model/userPassphrasePolicies/userPassphrasePoliciesModel.js +57 -0
- package/src/all/background_page/model/userPassphrasePolicies/userPassphrasePoliciesModel.test.js +136 -0
- package/src/all/background_page/model/userSettings/userSettings.js +80 -34
- package/src/all/background_page/model/userSettings/userSettings.test.js +26 -25
- package/src/all/background_page/pagemod/accountRecoveryBootstrapPagemod.js +79 -0
- package/src/all/background_page/pagemod/accountRecoveryBootstrapPagemod.test.js +96 -0
- package/src/all/background_page/pagemod/accountRecoveryPagemod.js +61 -0
- package/src/all/background_page/pagemod/accountRecoveryPagemod.test.js +87 -0
- package/src/all/background_page/pagemod/appBootstrapPagemod.js +104 -0
- package/src/all/background_page/pagemod/appBootstrapPagemod.test.js +124 -0
- package/src/all/background_page/pagemod/appPagemod.js +111 -56
- package/src/all/background_page/pagemod/appPagemod.test.js +184 -0
- package/src/all/background_page/pagemod/authBootstrapPagemod.js +77 -51
- package/src/all/background_page/pagemod/authBootstrapPagemod.test.js +110 -0
- package/src/all/background_page/pagemod/authPagemod.js +61 -35
- package/src/all/background_page/pagemod/authPagemod.test.js +86 -0
- package/src/all/background_page/pagemod/filePagemod.js +24 -31
- package/src/all/background_page/pagemod/filePagemod.test.js +53 -0
- package/src/all/background_page/pagemod/informCallToActionPagemod.js +59 -0
- package/src/all/background_page/pagemod/informCallToActionPagemod.test.js +67 -0
- package/src/all/background_page/pagemod/informMenuPagemod.js +59 -0
- package/src/all/background_page/pagemod/informMenuPagemod.test.js +69 -0
- package/src/all/background_page/pagemod/pagemod.js +127 -0
- package/src/all/background_page/pagemod/pagemod.test.js +58 -0
- package/src/all/background_page/pagemod/pagemodManager.js +110 -0
- package/src/all/background_page/pagemod/pagemodManager.test.js +197 -0
- package/src/all/background_page/pagemod/publicWebsiteSignInPagemod.js +100 -0
- package/src/all/background_page/pagemod/publicWebsiteSignInPagemod.test.js +111 -0
- package/src/all/background_page/pagemod/quickAccessPagemod.js +74 -38
- package/src/all/background_page/pagemod/quickAccessPagemod.test.js +104 -0
- package/src/all/background_page/pagemod/recoverBootstrapPagemod.js +75 -41
- package/src/all/background_page/pagemod/recoverBootstrapPagemod.test.js +98 -0
- package/src/all/background_page/pagemod/recoverPagemod.js +48 -35
- package/src/all/background_page/pagemod/recoverPagemod.test.js +73 -0
- package/src/all/background_page/pagemod/setupBootstrapPagemod.js +75 -41
- package/src/all/background_page/pagemod/setupBootstrapPagemod.test.js +98 -0
- package/src/all/background_page/pagemod/setupPagemod.js +46 -35
- package/src/all/background_page/pagemod/setupPagemod.test.js +73 -0
- package/src/all/background_page/pagemod/webIntegrationPagemod.js +82 -35
- package/src/all/background_page/pagemod/webIntegrationPagemod.test.js +119 -0
- package/src/all/background_page/sdk/i18n.js +68 -0
- package/src/all/background_page/sdk/port/portManager.js +187 -0
- package/src/all/background_page/sdk/port/portManager.test.data.js +32 -0
- package/src/all/background_page/sdk/port/portManager.test.js +160 -0
- package/src/all/background_page/sdk/port.js +154 -74
- package/src/all/background_page/sdk/port.test.js +158 -0
- package/src/all/background_page/sdk/scriptExecution.js +125 -94
- package/src/all/background_page/sdk/scriptExecution.test.js +143 -0
- package/src/all/background_page/sdk/storage.js +16 -16
- package/src/all/background_page/service/account/buildApiClientOptionsService.js +37 -0
- package/src/all/background_page/service/account/buildApiClientOptionsService.test.js +83 -0
- package/src/all/background_page/service/account/getDecryptedUserPrivateKeyService.js +38 -0
- package/src/all/background_page/service/account/getDecryptedUserPrivateKeyService.test.js +44 -0
- package/src/all/background_page/service/account/getLegacyAccountService.js +67 -0
- package/src/all/background_page/service/account/updateSsoCredentialsService.js +88 -0
- package/src/all/background_page/service/accountRecovery/buildApprovedAccountRecoveryUserSettingEntityService.js +115 -0
- package/src/all/background_page/service/accountRecovery/buildApprovedAccountRecoveryUserSettingEntityService.service.test.js +83 -0
- package/src/all/background_page/service/accountRecovery/decryptPrivateKeyPasswordDataService.js +74 -0
- package/src/all/background_page/service/accountRecovery/decryptPrivateKeyPasswordDataService.test.js +125 -0
- package/src/all/background_page/service/accountRecovery/decryptResponseDataService.js +66 -0
- package/src/all/background_page/service/accountRecovery/decryptResponseDataService.test.js +112 -0
- package/src/all/background_page/service/accountRecovery/getRequestLocalAccountService.js +52 -0
- package/src/all/background_page/service/accountRecovery/getRequestLocalAccountService.test.js +77 -0
- package/src/all/background_page/service/accountRecovery/parseAccountRecoveryUrlService.js +61 -0
- package/src/all/background_page/service/accountRecovery/parseAccountRecoveryUrlService.test.js +60 -0
- package/src/all/background_page/service/api/abstract/abstractService.js +13 -10
- package/src/all/background_page/service/api/abstract/abstractService.test.js +8 -16
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryContinueService.js +52 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.js +155 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.test.data.js +25 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.test.js +59 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryPrivateKeyPasswordService.js +52 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryRequestService.js +122 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryResponseService.js +50 -0
- package/src/all/background_page/service/api/accountRecovery/accountRecoveryUserService.js +54 -0
- package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.js +47 -0
- package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.test.data.js +69 -0
- package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.test.js +52 -0
- package/src/all/background_page/service/api/accountSettings/accountSettingsService.js +31 -4
- package/src/all/background_page/service/api/actionLog/actionLogService.js +3 -3
- package/src/all/background_page/service/api/auth/authService.js +47 -13
- package/src/all/background_page/service/api/auth/authService.test.js +103 -0
- package/src/all/background_page/service/api/comment/commentService.js +4 -3
- package/src/all/background_page/service/api/favorite/favoriteService.js +4 -4
- package/src/all/background_page/service/api/folder/folderService.js +8 -9
- package/src/all/background_page/service/api/group/groupService.js +16 -12
- package/src/all/background_page/service/api/group/groupService.test.js +6 -11
- package/src/all/background_page/service/api/mobileTransferService/mobileTransferService.js +84 -0
- package/src/all/background_page/service/api/move/moveService.js +5 -5
- package/src/all/background_page/service/api/multiFactorAuthentication/multiFactorAuthenticationPolicyService.js +53 -0
- package/src/all/background_page/service/api/multiFactorAuthentication/multiFactorAuthenticationService.js +82 -2
- package/src/all/background_page/service/api/organizationSettings/organizationSettingsService.js +58 -0
- package/src/all/background_page/service/api/passwordExpiry/passwordExpiryResourceService.js +52 -0
- package/src/all/background_page/service/api/passwordExpiry/passwordExpiryResourceService.test.js +82 -0
- package/src/all/background_page/service/api/passwordExpiry/passwordExpirySettingsService.js +72 -0
- package/src/all/background_page/service/api/passwordExpiry/passwordExpirySettingsService.test.js +157 -0
- package/src/all/background_page/service/api/passwordPolicies/passwordPoliciesService.js +92 -0
- package/src/all/background_page/service/api/passwordPolicies/passwordPoliciesService.test.js +127 -0
- package/src/all/background_page/service/api/resource/resourceLocalStorageUpdateService.js +112 -0
- package/src/all/background_page/service/api/resource/resourceLocalStorageUpdateService.test.js +109 -0
- package/src/all/background_page/service/api/resource/resourceService.js +6 -6
- package/src/all/background_page/service/api/resourceType/resourceTypeService.js +2 -2
- package/src/all/background_page/service/api/role/roleService.js +2 -2
- package/src/all/background_page/service/api/setup/setupService.js +51 -22
- package/src/all/background_page/service/api/share/shareService.js +35 -3
- package/src/all/background_page/service/api/sso/ssoDryRunService.js +68 -0
- package/src/all/background_page/service/api/sso/ssoKitServerPartService.js +81 -0
- package/src/all/background_page/service/api/sso/ssoLoginService.js +67 -0
- package/src/all/background_page/service/api/sso/ssoSettingsService.js +105 -0
- package/src/all/background_page/service/api/subscription/subscriptionService.js +63 -0
- package/src/all/background_page/service/api/tag/tagService.js +3 -3
- package/src/all/background_page/service/api/user/userService.js +21 -58
- package/src/all/background_page/service/api/userPassphrasePolicies/userPassphrasePoliciesService.js +63 -0
- package/src/all/background_page/service/api/userPassphrasePolicies/userPassphrasePoliciesService.test.js +121 -0
- package/src/all/background_page/service/app/parseAppUrlService.js +66 -0
- package/src/all/background_page/service/app/parseAppUrlService.test.js +155 -0
- package/src/all/background_page/service/auth/parseAuthUrlService.js +37 -0
- package/src/all/background_page/service/auth/parseAuthUrlService.test.js +56 -0
- package/src/all/background_page/service/auth/startLoopAuthSessionCheckService.js +76 -0
- package/src/all/background_page/service/auth/startLoopAuthSessionCheckService.test.js +91 -0
- package/src/all/background_page/service/auth.js +20 -106
- package/src/all/background_page/service/cache/resourceInProgressCache.service.js +117 -0
- package/src/all/background_page/service/cache/resourceInProgressCache.service.test.js +102 -0
- package/src/all/background_page/service/crypto/checkPassphraseService.js +52 -0
- package/src/all/background_page/service/crypto/compareGpgKeyService.js +40 -0
- package/src/all/background_page/service/crypto/compareGpgKeyService.test.js +51 -0
- package/src/all/background_page/service/crypto/cryptoRandomValuesService.js +30 -0
- package/src/all/background_page/service/crypto/cryptoRandomValuesService.test.js +26 -0
- package/src/all/background_page/service/crypto/decryptMessageService.js +97 -0
- package/src/all/background_page/service/crypto/decryptMessageService.test.js +189 -0
- package/src/all/background_page/service/crypto/decryptPrivateKeyService.js +45 -0
- package/src/all/background_page/service/crypto/decryptPrivateKeyService.test.js +41 -0
- package/src/all/background_page/service/crypto/decryptSsoPassphraseService.js +77 -0
- package/src/all/background_page/service/crypto/decryptSsoPassphraseService.test.js +105 -0
- package/src/all/background_page/service/crypto/encryptMessageService.js +63 -0
- package/src/all/background_page/service/crypto/encryptMessageService.test.js +149 -0
- package/src/all/background_page/service/crypto/encryptPrivateKeyService.js +40 -0
- package/src/all/background_page/service/crypto/encryptPrivateKeyService.test.js +61 -0
- package/src/all/background_page/service/crypto/encryptSsoPassphraseService.js +52 -0
- package/src/all/background_page/service/crypto/encryptSsoPassphraseService.test.js +63 -0
- package/src/all/background_page/service/crypto/generateGpgKeyPairService.js +85 -0
- package/src/all/background_page/service/crypto/generateGpgKeyPairService.test.js +112 -0
- package/src/all/background_page/service/crypto/generateSsoIvService.js +27 -0
- package/src/all/background_page/service/crypto/generateSsoIvService.test.js +41 -0
- package/src/all/background_page/service/crypto/generateSsoKeyService.js +32 -0
- package/src/all/background_page/service/crypto/generateSsoKeyService.test.js +43 -0
- package/src/all/background_page/service/crypto/getGpgKeyCreationDateService.js +41 -0
- package/src/all/background_page/service/crypto/getGpgKeyCreationDateService.test.js +59 -0
- package/src/all/background_page/service/crypto/getGpgKeyInfoService.js +152 -0
- package/src/all/background_page/service/crypto/getGpgKeyInfoService.test.data.js +100 -0
- package/src/all/background_page/service/crypto/getGpgKeyInfoService.test.js +155 -0
- package/src/all/background_page/service/crypto/revokeGpgKeyService.js +35 -0
- package/src/all/background_page/service/crypto/revokeGpgKeyService.test.js +35 -0
- package/src/all/background_page/service/crypto/signGpgKeyService.js +31 -0
- package/src/all/background_page/service/crypto/signGpgKeyService.test.js +41 -0
- package/src/all/background_page/service/crypto/signMessageService.js +55 -0
- package/src/all/background_page/service/crypto/signMessageService.test.js +94 -0
- package/src/all/background_page/service/crypto/verifyGpgKeyService.js +34 -0
- package/src/all/background_page/service/crypto/verifyGpgKeyService.test.js +99 -0
- package/src/all/background_page/service/crypto/verifyMessageSign.js +56 -0
- package/src/all/background_page/service/crypto/verifyMessageSign.test.data.js +44 -0
- package/src/all/background_page/service/crypto/verifyMessageSign.test.js +116 -0
- package/src/all/background_page/service/file/fileService.js +67 -0
- package/src/all/background_page/service/file/fileService.test.js +66 -0
- package/src/all/background_page/service/indexedDB_storage/ssoDataStorage.js +290 -0
- package/src/all/background_page/service/invitation/postponeUserSettingInvitationService.js +60 -0
- package/src/all/background_page/service/invitation/postponeUserSettingInvitationService.test.js +52 -0
- package/src/all/background_page/service/localStorage/localStorageService.js +73 -0
- package/src/all/background_page/service/localStorage/localStorageService.test.js +102 -0
- package/src/all/background_page/service/local_storage/AccountLocalStorage.test.js +216 -0
- package/src/all/background_page/service/local_storage/accountLocalStorage.js +118 -0
- package/src/all/background_page/service/local_storage/authStatusLocalStorage.js +8 -21
- package/src/all/background_page/service/local_storage/folderLocalStorage.js +20 -34
- package/src/all/background_page/service/local_storage/groupLocalStorage.js +17 -31
- package/src/all/background_page/service/local_storage/passwordExpirySettingsLocalStorage.js +73 -0
- package/src/all/background_page/service/local_storage/passwordExpirySettingsLocalStorage.test.js +72 -0
- package/src/all/background_page/service/local_storage/passwordGeneratorLocalStorage.js +36 -0
- package/src/all/background_page/service/local_storage/passwordPoliciesLocalStorage.js +98 -0
- package/src/all/background_page/service/local_storage/rbacLocalStorage.js +109 -0
- package/src/all/background_page/service/local_storage/rbacLocalStorage.test.js +68 -0
- package/src/all/background_page/service/local_storage/resourceLocalStorage.js +89 -44
- package/src/all/background_page/service/local_storage/resourceTypeLocalStorage.js +17 -29
- package/src/all/background_page/service/local_storage/ressourceGridSettingLocalStorage.js +70 -0
- package/src/all/background_page/service/local_storage/rolesLocalStorage.js +17 -29
- package/src/all/background_page/service/local_storage/userLocalStorage.js +25 -36
- package/src/all/background_page/service/local_storage/userRememberMeLatestChoiceLocalStorage.js +82 -0
- package/src/all/background_page/service/local_storage/userRememberMeLatestChoiceLocalStorage.test.js +74 -0
- package/src/all/background_page/service/passphrase/getPassphraseService.js +152 -0
- package/src/all/background_page/service/passphrase/getPassphraseService.test.js +258 -0
- package/src/all/background_page/service/passwordExpirySettings/passwordExpirySettingsGetOrFindService.js +49 -0
- package/src/all/background_page/service/passwordExpirySettings/passwordExpirySettingsGetOrFindService.test.js +45 -0
- package/src/all/background_page/service/progress/progressService.js +120 -0
- package/src/all/background_page/service/progress/progressService.test.js +69 -0
- package/src/all/background_page/service/publicWebsite/parsePublicWebsiteUrlService.js +35 -0
- package/src/all/background_page/service/publicWebsite/parsePublicWebsiteUrlService.test.js +48 -0
- package/src/all/background_page/service/recover/buildAccountRecoverService.js +33 -0
- package/src/all/background_page/service/recover/buildAccountRecoverService.test.js +43 -0
- package/src/all/background_page/service/recover/parseRecoverUrlService.js +69 -0
- package/src/all/background_page/service/recover/parseRecoverUrlService.test.js +94 -0
- package/src/all/background_page/service/secret/decryptAndParseResourceSecretService.js +60 -0
- package/src/all/background_page/service/secret/decryptAndParseResourceSecretService.test.js +83 -0
- package/src/all/background_page/service/secret/pownedService.js +63 -0
- package/src/all/background_page/service/secret/pownedService.test.js +77 -0
- package/src/all/background_page/service/sessionStorage/userMeSessionStorageService.js +94 -0
- package/src/all/background_page/service/sessionStorage/userMeSessionStorageService.test.js +146 -0
- package/src/all/background_page/service/sessionStorage/workersSessionStorage.js +205 -0
- package/src/all/background_page/service/sessionStorage/workersSessionStorage.test.js +138 -0
- package/src/all/background_page/service/session_storage/passphraseStorageService.js +176 -0
- package/src/all/background_page/service/session_storage/passphraseStorageService.test.js +252 -0
- package/src/all/background_page/service/session_storage/ssoKitTemporaryStorageService.js +82 -0
- package/src/all/background_page/service/setup/buildAccountSetupService.js +32 -0
- package/src/all/background_page/service/setup/buildAccountSetupService.test.js +43 -0
- package/src/all/background_page/service/setup/parseSetupUrlService.js +62 -0
- package/src/all/background_page/service/setup/parseSetupUrlService.test.js +61 -0
- package/src/all/background_page/service/sso/generateSsoKitService.js +73 -0
- package/src/all/background_page/service/sso/generateSsoKitService.test.js +72 -0
- package/src/all/background_page/service/sso/popupHandlerService.js +164 -0
- package/src/all/background_page/service/sso/popupHandlerService.test.js +230 -0
- package/src/all/background_page/service/sso/qualifySsoLoginErrorService.js +49 -0
- package/src/all/background_page/service/systemRequirementService/systemRequirementService.js +30 -0
- package/src/all/background_page/service/systemRequirementService/systemRequirementService.test.js +37 -0
- package/src/all/background_page/service/tab/tabService.js +99 -0
- package/src/all/background_page/service/tab/tabService.test.js +239 -0
- package/src/all/background_page/service/ui/browserExtensionIcon.service.js +66 -0
- package/src/all/background_page/service/ui/browserTab.service.js +46 -0
- package/src/all/background_page/service/ui/browserTab.service.test.js +81 -0
- package/src/all/background_page/service/ui/quickAccess.service.js +94 -0
- package/src/all/background_page/service/validator/appEmailValidatorService.js +67 -0
- package/src/all/background_page/service/validator/appEmailValidatorService.test.js +61 -0
- package/src/all/background_page/service/webIntegration/parseWebIntegrationUrlService.js +44 -0
- package/src/all/background_page/service/webIntegration/parseWebIntegrationUrlService.test.js +56 -0
- package/src/all/background_page/service/webNavigation/webNavigationService.js +33 -0
- package/src/all/background_page/service/webNavigation/webNavigationService.test.js +58 -0
- package/src/all/background_page/service/worker/workerService.js +146 -0
- package/src/all/background_page/service/worker/workerService.test.js +191 -0
- package/src/all/background_page/utils/array/deduplicateObjects.js +8 -8
- package/src/all/background_page/utils/array/deduplicateObjects.test.js +13 -13
- package/src/all/background_page/utils/array/splitBySize.js +2 -2
- package/src/all/background_page/utils/assertions.js +161 -0
- package/src/all/background_page/utils/assertions.test.data.js +19 -0
- package/src/all/background_page/utils/assertions.test.js +238 -0
- package/src/all/background_page/utils/format/base64.js +10 -9
- package/src/all/background_page/utils/format/binaryConvert.js +47 -0
- package/src/all/background_page/utils/format/emailaddress.js +61 -50
- package/src/all/background_page/utils/format/string.js +202 -158
- package/src/all/background_page/utils/lock.js +33 -28
- package/src/all/background_page/utils/openpgp/openpgpAssertions.js +314 -0
- package/src/all/background_page/utils/openpgp/openpgpAssertions.test.js +576 -0
- package/src/all/background_page/utils/promise/promiseTimeoutService.js +71 -0
- package/src/all/background_page/utils/promise/promiseTimeoutService.test.js +105 -0
- package/src/all/{data/js/quickaccess/popup/components/HomePage → background_page/utils/url}/canSuggestUrl.js +57 -24
- package/src/all/{data/js/quickaccess/popup/components/HomePage → background_page/utils/url}/canSuggestUrl.test.js +14 -3
- package/src/all/background_page/utils/url/hasSameOriginUrl.js +27 -0
- package/src/all/background_page/utils/uuid.js +12 -11
- package/src/all/background_page/utils/validatorRules.js +4 -4
- package/src/all/common/polyfill/browserPolyfill.js +31 -0
- package/src/all/common/polyfill/scriptingPolyfill.js +115 -0
- package/src/all/common/polyfill/scriptingPolyfill.test.js +125 -0
- package/src/all/common/polyfill/sessionStoragePolyfill.js +78 -0
- package/src/all/common/polyfill/sessionStoragePolyfill.test.js +203 -0
- package/src/all/contentScripts/js/app/AccountRecovery.js +40 -0
- package/src/all/{content_scripts → contentScripts}/js/app/App.js +14 -23
- package/src/all/contentScripts/js/app/BrowserIntegration.js +26 -0
- package/src/all/{content_scripts → contentScripts}/js/app/Login.js +14 -22
- package/src/all/contentScripts/js/app/PublicWebsiteSignIn.js +26 -0
- package/src/all/{content_scripts → contentScripts}/js/app/Recover.js +14 -22
- package/src/all/{content_scripts → contentScripts}/js/app/Setup.js +15 -23
- package/src/all/contentScripts/js/controller/connectPortController.js +37 -0
- package/src/all/contentScripts/js/controller/connectPortController.test.js +51 -0
- package/src/all/contentScripts/js/message/messageEventHandler.js +63 -0
- package/src/all/contentScripts/js/message/messageEventHandler.test.data.js +30 -0
- package/src/all/contentScripts/js/message/messageEventHandler.test.js +154 -0
- package/src/all/contentScripts/js/message/messageEventHandlerConstructorMock.test.data.js +18 -0
- package/src/all/contentScripts/js/service/messageService.js +76 -0
- package/src/all/contentScripts/js/service/messageService.test.js +54 -0
- package/src/all/locales/de-DE/common.json +94 -0
- package/src/all/locales/en-UK/common.json +94 -0
- package/src/all/locales/es-ES/common.json +94 -0
- package/src/all/locales/fr-FR/common.json +94 -0
- package/src/all/locales/it-IT/common.json +94 -0
- package/src/all/locales/ja-JP/common.json +94 -0
- package/src/all/locales/ko-KR/common.json +94 -0
- package/src/all/locales/lt-LT/common.json +94 -0
- package/src/all/locales/nl-NL/common.json +94 -0
- package/src/all/locales/pl-PL/common.json +94 -0
- package/src/all/locales/pt-BR/common.json +94 -0
- package/src/all/locales/ro-RO/common.json +94 -0
- package/src/all/locales/ru-RU/common.json +94 -0
- package/src/all/locales/sv-SE/common.json +94 -0
- package/src/all/webAccessibleResources/js/app/AccountRecovery.js +30 -0
- package/src/all/{data → webAccessibleResources}/js/app/App.js +5 -25
- package/src/all/webAccessibleResources/js/app/Download.js +33 -0
- package/src/all/webAccessibleResources/js/app/InFormCallToAction.js +29 -0
- package/src/all/webAccessibleResources/js/app/InFormMenu.js +29 -0
- package/src/all/{data → webAccessibleResources}/js/app/Login.js +5 -24
- package/src/all/webAccessibleResources/js/app/QuickAccess.js +37 -0
- package/src/all/{data → webAccessibleResources}/js/app/Recover.js +4 -21
- package/src/all/{data → webAccessibleResources}/js/app/Setup.js +4 -21
- package/src/all/webAccessibleResources/js/lib/port.js +187 -0
- package/src/all/webAccessibleResources/js/lib/port.test.js +152 -0
- package/src/all/{data → webAccessibleResources}/js/themes/stylesheet.js +49 -34
- package/src/all/webAccessibleResources/passbolt-iframe-account-recovery.html +24 -0
- package/src/all/webAccessibleResources/passbolt-iframe-app.html +67 -0
- package/src/all/webAccessibleResources/passbolt-iframe-file.html +10 -0
- package/src/all/webAccessibleResources/passbolt-iframe-in-form-call-to-action.html +12 -0
- package/src/all/webAccessibleResources/passbolt-iframe-in-form-menu.html +12 -0
- package/src/all/{data → webAccessibleResources}/passbolt-iframe-login.html +2 -2
- package/src/all/{data → webAccessibleResources}/passbolt-iframe-recover.html +2 -2
- package/src/all/{data → webAccessibleResources}/passbolt-iframe-setup.html +2 -2
- package/src/all/webAccessibleResources/quickaccess.html +16 -0
- package/src/chrome/manifest.json +18 -14
- package/src/chrome-mv3/index.js +60 -0
- package/src/chrome-mv3/manifest.json +60 -0
- package/src/chrome-mv3/serviceWorker.js +14 -0
- package/src/firefox/manifest.json +21 -16
- package/src/safari/manifest.json +50 -0
- package/test/fixtures/pgpKeys/keys.js +419 -0
- package/test/jest-webextension-force-runtime-id-setup-files.js +5 -0
- package/{.jest.custom-kdbx-environment.js → test/jest.custom-kdbx-environment.js} +3 -15
- package/test/jest.setup.js +60 -0
- package/test/matchers/extendExpect.js +31 -0
- package/test/matchers/toBeEqualToOpenpgpKey.js +46 -0
- package/test/matchers/toBeOpenpgpKeySignedBy.js +42 -0
- package/test/matchers/toBeOpenpgpPrivateKey.js +34 -0
- package/test/matchers/toBeOpenpgpPublicKey.js +34 -0
- package/test/matchers/toBeOpenpgpRevokedKey.js +34 -0
- package/test/matchers/toThrowEntityValidationErrorOnProperties.js +41 -0
- package/test/mocks/mockAlarms.js +101 -0
- package/test/mocks/mockApiResponse.js +31 -0
- package/test/mocks/mockCryptoKey.js +62 -0
- package/test/mocks/mockEventListener.js +40 -0
- package/test/mocks/mockExtension.js +60 -0
- package/test/mocks/mockNavigatorLocks.js +30 -0
- package/test/mocks/mockSsoDataStorage.js +86 -0
- package/test/mocks/mockStorage.js +74 -0
- package/test/mocks/mockTextEncoder.js +18 -0
- package/test/mocks/mockWebExtensionPolyfill.js +77 -0
- package/webpack-content-scripts.browser-integration.config.js +57 -0
- package/webpack-content-scripts.config.js +16 -5
- package/webpack-content-scripts.public-website-sign-in.config.js +57 -0
- package/webpack-data.config.js +24 -7
- package/webpack-data.download.config.js +59 -0
- package/webpack-data.in-form-call-to-action.config.js +63 -0
- package/webpack-data.in-form-menu.config.js +63 -0
- package/webpack.background-page.config.js +62 -0
- package/webpack.service-worker.config.js +62 -0
- package/.jest.config.json +0 -5
- package/.jest.transform.js +0 -7
- package/dist/chrome/empty +0 -0
- package/dist/chrome/passbolt-3.0.6-debug.crx +0 -0
- package/dist/chrome/passbolt-3.0.6.crx +0 -0
- package/dist/chrome/passbolt-3.0.6.zip +0 -0
- package/dist/firefox/empty +0 -0
- package/dist/firefox/passbolt-3.0.6-debug.zip +0 -0
- package/dist/firefox/passbolt-3.0.6.zip +0 -0
- package/src/all/background_page/app.js +0 -162
- package/src/all/background_page/controller/authController.js +0 -92
- package/src/all/background_page/controller/browserSettingsController.js +0 -47
- package/src/all/background_page/controller/fileController.js +0 -134
- package/src/all/background_page/controller/passphrase/passphraseController.js +0 -82
- package/src/all/background_page/controller/progress/progressController.js +0 -65
- package/src/all/background_page/controller/recover/recoverController.js +0 -167
- package/src/all/background_page/controller/setup/setupController.js +0 -199
- package/src/all/background_page/error/passboltApiFetchError.js +0 -16
- package/src/all/background_page/event/debugEvents.js +0 -169
- package/src/all/background_page/event/pagmodEvents.js +0 -23
- package/src/all/background_page/event/siteSettingsEvents.js +0 -61
- package/src/all/background_page/model/crypto.js +0 -179
- package/src/all/background_page/model/entity/abstract/entity.js +0 -99
- package/src/all/background_page/model/entity/abstract/entity.test.js +0 -86
- package/src/all/background_page/model/entity/abstract/entityCollection.js +0 -144
- package/src/all/background_page/model/entity/abstract/entityCollection.test.js +0 -107
- package/src/all/background_page/model/entity/abstract/entityCollectionError.js +0 -40
- package/src/all/background_page/model/entity/abstract/entityCollectionError.test.js +0 -55
- package/src/all/background_page/model/entity/abstract/entitySchema.js +0 -412
- package/src/all/background_page/model/entity/abstract/entitySchema.test.js +0 -266
- package/src/all/background_page/model/entity/abstract/entityValidationError.js +0 -81
- package/src/all/background_page/model/entity/abstract/entityValidationError.test.js +0 -64
- package/src/all/background_page/model/entity/gpgkey/generate/generateGpgkeyEntity.js +0 -128
- package/src/all/background_page/model/entity/role/roleEntity.js +0 -162
- package/src/all/background_page/model/entity/role/roleEntity.test.js +0 -84
- package/src/all/background_page/model/entity/role/rolesCollection.js +0 -140
- package/src/all/background_page/model/entity/setup/setupEntity.js +0 -360
- package/src/all/background_page/model/entity/setup/setupEntity.test.js +0 -87
- package/src/all/background_page/model/entity/user/account/userAcountEntity.js +0 -131
- package/src/all/background_page/model/group.js +0 -165
- package/src/all/background_page/model/groupForm.js +0 -331
- package/src/all/background_page/model/key.js +0 -337
- package/src/all/background_page/model/openpgp/OpenpgpModel.js +0 -73
- package/src/all/background_page/model/share.js +0 -171
- package/src/all/background_page/model/siteSettings.js +0 -80
- package/src/all/background_page/model/tabStorage.js +0 -82
- package/src/all/background_page/model/worker.js +0 -124
- package/src/all/background_page/pagemod/appBoostrapPagemod.js +0 -100
- package/src/all/background_page/pagemod/clipboardPagemod.js +0 -37
- package/src/all/background_page/pagemod/debugPagemod.js +0 -45
- package/src/all/background_page/sdk/jsonQ.js +0 -66
- package/src/all/background_page/sdk/l10n.js +0 -17
- package/src/all/background_page/sdk/page-mod.js +0 -337
- package/src/all/background_page/sdk/random.js +0 -11
- package/src/all/background_page/sdk/self.js +0 -10
- package/src/all/background_page/sdk/tab.js +0 -77
- package/src/all/background_page/sdk/worker.js +0 -84
- package/src/all/background_page/service/api/apiClient/apiClient.js +0 -351
- package/src/all/background_page/service/api/apiClient/apiClient.test.js +0 -92
- package/src/all/background_page/service/api/apiClient/apiClientOptions.js +0 -111
- package/src/all/background_page/service/api/apiClient/apiClientOptions.test.js +0 -48
- package/src/all/background_page/service/group.js +0 -72
- package/src/all/background_page/service/share.js +0 -216
- package/src/all/background_page/utils/csrfToken/csrfToken.js +0 -61
- package/src/all/background_page/vendors.js +0 -32
- package/src/all/content_scripts/js/bootstrap.js +0 -81
- package/src/all/data/config-debug.html +0 -308
- package/src/all/data/js/clipboard/clipboard.js +0 -29
- package/src/all/data/js/debug/common.js +0 -76
- package/src/all/data/js/debug/debug.js +0 -387
- package/src/all/data/js/debug/file.js +0 -82
- package/src/all/data/js/debug/profiles.js +0 -820
- package/src/all/data/js/file/fileIframe.js +0 -29
- package/src/all/data/js/include/config-debug.js +0 -20
- package/src/all/data/js/lib/loadscript.js +0 -38
- package/src/all/data/js/lib/message.js +0 -120
- package/src/all/data/js/lib/port.js +0 -231
- package/src/all/data/js/lib/pwnedpasswords.js +0 -34
- package/src/all/data/js/lib/request.js +0 -151
- package/src/all/data/js/lib/secretComplexity.js +0 -209
- package/src/all/data/js/quickaccess/popup/Popup.js +0 -215
- package/src/all/data/js/quickaccess/popup/components/AnimatedSwitch/AnimatedSwitch.js +0 -189
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.js +0 -210
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.js +0 -329
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.js +0 -210
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.js +0 -204
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.js +0 -210
- package/src/all/data/js/quickaccess/popup/components/FilterResourcesByTagPage/FilterResourcesByTagPage.js +0 -329
- package/src/all/data/js/quickaccess/popup/components/Header/Header.js +0 -50
- package/src/all/data/js/quickaccess/popup/components/HomePage/HomePage.js +0 -296
- package/src/all/data/js/quickaccess/popup/components/LoginPage/LoginPage.js +0 -142
- package/src/all/data/js/quickaccess/popup/components/MoreFiltersPage/MoreFiltersPage.js +0 -84
- package/src/all/data/js/quickaccess/popup/components/PassphraseDialog/PassphraseDialog.js +0 -181
- package/src/all/data/js/quickaccess/popup/components/PassphraseDialog/PassphraseDialog.test.js +0 -49
- package/src/all/data/js/quickaccess/popup/components/PrivateRoute/PrivateRoute.js +0 -37
- package/src/all/data/js/quickaccess/popup/components/ResourceCreatePage/ResourceCreatePage.js +0 -274
- package/src/all/data/js/quickaccess/popup/components/ResourceCreatePage/ResourceCreatePage.test.js +0 -186
- package/src/all/data/js/quickaccess/popup/components/ResourceViewPage/ResourceViewPage.js +0 -296
- package/src/all/data/js/quickaccess/popup/components/Search/Search.js +0 -41
- package/src/all/data/js/quickaccess/popup/components/Search/Search.test.js +0 -44
- package/src/all/data/js/quickaccess/popup/components/SimpleBar/SimpleBar.js +0 -35
- package/src/all/data/js/quickaccess/popup/contexts/AppContext.js +0 -6
- package/src/all/data/js/quickaccess/quickaccess.js +0 -335
- package/src/all/data/js/themes/stylesheet_legacy.js +0 -86
- package/src/all/data/passbolt-iframe-app.html +0 -52
- package/src/all/data/passbolt-iframe-clipboard.html +0 -14
- package/src/all/data/passbolt-iframe-file.html +0 -14
- package/src/all/data/quickaccess.html +0 -15
- package/src/all/data/vendors/browser-polyfill.js +0 -1187
- package/src/all/data/vendors/dom-testing-library-event.js +0 -363
- package/src/all/data/vendors/download.js +0 -167
- package/src/all/data/vendors/farbtastic.js +0 -345
- package/src/all/data/vendors/jquery-filestyle.js +0 -387
- package/src/all/data/vendors/jquery.js +0 -10872
- package/src/all/data/vendors/react-dom.production.min.js +0 -239
- package/src/all/data/vendors/react.production.min.js +0 -32
- package/src/all/data/vendors/sha.js +0 -45
- package/src/all/data/vendors/validator.js +0 -817
- package/src/all/data/vendors/xregexp-all.js +0 -4487
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passbolt ~ Open source password manager for teams
|
|
3
|
+
* Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
4
|
+
*
|
|
5
|
+
* Licensed under GNU Affero General Public License version 3 of the or any later version.
|
|
6
|
+
* For full copyright and license information, please see the LICENSE.txt
|
|
7
|
+
* Redistributions of files must retain the above copyright notice.
|
|
8
|
+
*
|
|
9
|
+
* @copyright Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
10
|
+
* @license https://opensource.org/licenses/AGPL-3.0 AGPL License
|
|
11
|
+
* @link https://www.passbolt.com Passbolt(tm)
|
|
12
|
+
* @since 3.6.0
|
|
13
|
+
*/
|
|
14
|
+
import Entity from "passbolt-styleguide/src/shared/models/entity/abstract/entity";
|
|
15
|
+
import EntitySchema from "passbolt-styleguide/src/shared/models/entity/abstract/entitySchema";
|
|
16
|
+
|
|
17
|
+
const ENTITY_NAME = "AccountRecoveryPrivateKeyPassword";
|
|
18
|
+
const FOREIGN_MODEL_ORGANIZATION_KEY = "AccountRecoveryOrganizationKey";
|
|
19
|
+
const FINGERPRINT_LENGTH = 40;
|
|
20
|
+
/**
|
|
21
|
+
* Entity related to the account recovery private key password
|
|
22
|
+
*/
|
|
23
|
+
class AccountRecoveryPrivateKeyPasswordEntity extends Entity {
|
|
24
|
+
/**
|
|
25
|
+
* @inheritDoc
|
|
26
|
+
*/
|
|
27
|
+
constructor(accountRecoveryPrivateKeyPasswordDto, options = {}) {
|
|
28
|
+
super(EntitySchema.validate(
|
|
29
|
+
AccountRecoveryPrivateKeyPasswordEntity.ENTITY_NAME,
|
|
30
|
+
accountRecoveryPrivateKeyPasswordDto,
|
|
31
|
+
AccountRecoveryPrivateKeyPasswordEntity.getSchema()
|
|
32
|
+
), options);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Get entity schema
|
|
37
|
+
* @returns {Object} schema
|
|
38
|
+
*/
|
|
39
|
+
static getSchema() {
|
|
40
|
+
return {
|
|
41
|
+
"type": "object",
|
|
42
|
+
"required": [
|
|
43
|
+
"recipient_foreign_model",
|
|
44
|
+
"recipient_fingerprint",
|
|
45
|
+
"data"
|
|
46
|
+
],
|
|
47
|
+
"properties": {
|
|
48
|
+
"id": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"format": "uuid"
|
|
51
|
+
},
|
|
52
|
+
"private_key_id": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"format": "uuid"
|
|
55
|
+
},
|
|
56
|
+
"recipient_foreign_model": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"enum": [AccountRecoveryPrivateKeyPasswordEntity.FOREIGN_MODEL_ORGANIZATION_KEY]
|
|
59
|
+
},
|
|
60
|
+
"recipient_foreign_key": {
|
|
61
|
+
"type": "string",
|
|
62
|
+
"format": "uuid"
|
|
63
|
+
},
|
|
64
|
+
"recipient_fingerprint": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"length": FINGERPRINT_LENGTH
|
|
67
|
+
},
|
|
68
|
+
"data": {
|
|
69
|
+
"type": "string"
|
|
70
|
+
},
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/*
|
|
76
|
+
* ==================================================
|
|
77
|
+
* Serialization
|
|
78
|
+
* ==================================================
|
|
79
|
+
*/
|
|
80
|
+
/**
|
|
81
|
+
* Return a DTO ready to be sent to API or content code
|
|
82
|
+
* @returns {object}
|
|
83
|
+
*/
|
|
84
|
+
toDto() {
|
|
85
|
+
return Object.assign({}, this._props);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Customizes JSON stringification behavior
|
|
90
|
+
* @returns {*}
|
|
91
|
+
*/
|
|
92
|
+
toJSON() {
|
|
93
|
+
return this.toDto();
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/*
|
|
97
|
+
* ==================================================
|
|
98
|
+
* Dynamic properties getters
|
|
99
|
+
* ==================================================
|
|
100
|
+
*/
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Get id
|
|
104
|
+
* @returns {(string|null)} uuid if set
|
|
105
|
+
*/
|
|
106
|
+
get id() {
|
|
107
|
+
return this._props.id || null;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Get the private key id
|
|
112
|
+
* @returns {(string|null)} uuid if set
|
|
113
|
+
*/
|
|
114
|
+
get privateKeyId() {
|
|
115
|
+
return this._props.private_key_id || null;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Get recipient foreign key
|
|
120
|
+
* @returns {(string|null)} uuid if set
|
|
121
|
+
*/
|
|
122
|
+
get recipientForeignKey() {
|
|
123
|
+
return this._props.recipient_foreign_key || null;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Get data
|
|
128
|
+
* @returns {string} armored pgp message
|
|
129
|
+
*/
|
|
130
|
+
get data() {
|
|
131
|
+
return this._props.data;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Get recipient foreign model
|
|
136
|
+
* @returns {(string|null)} i.e. AccountRecoveryOrganizationKey
|
|
137
|
+
*/
|
|
138
|
+
get recipientForeignModel() {
|
|
139
|
+
return this._props.recipient_foreign_model;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Get the recipient kes's fingerprint
|
|
144
|
+
* @returns {(string)}
|
|
145
|
+
*/
|
|
146
|
+
get recipientFingerprint() {
|
|
147
|
+
return this._props.recipient_fingerprint;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/*
|
|
151
|
+
* ==================================================
|
|
152
|
+
* Static properties getters
|
|
153
|
+
* ==================================================
|
|
154
|
+
*/
|
|
155
|
+
/**
|
|
156
|
+
* AccountRecoveryPrivateKeyPasswordEntity.ENTITY_NAME
|
|
157
|
+
* @returns {string}
|
|
158
|
+
*/
|
|
159
|
+
static get ENTITY_NAME() {
|
|
160
|
+
return ENTITY_NAME;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* AccountRecoveryPrivateKeyPasswordEntity.FOREIGN_MODEL_ORGANIZATION_KEY
|
|
165
|
+
* @returns {string}
|
|
166
|
+
*/
|
|
167
|
+
static get FOREIGN_MODEL_ORGANIZATION_KEY() {
|
|
168
|
+
return FOREIGN_MODEL_ORGANIZATION_KEY;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export default AccountRecoveryPrivateKeyPasswordEntity;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passbolt ~ Open source password manager for teams
|
|
3
|
+
* Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
4
|
+
*
|
|
5
|
+
* Licensed under GNU Affero General Public License version 3 of the or any later version.
|
|
6
|
+
* For full copyright and license information, please see the LICENSE.txt
|
|
7
|
+
* Redistributions of files must retain the above copyright notice.
|
|
8
|
+
*
|
|
9
|
+
* @copyright Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
10
|
+
* @license https://opensource.org/licenses/AGPL-3.0 AGPL License
|
|
11
|
+
* @link https://www.passbolt.com Passbolt(tm)
|
|
12
|
+
* @since 3.6.0
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import {v4 as uuidv4} from "uuid";
|
|
16
|
+
import {pgpKeys} from "../../../../../../test/fixtures/pgpKeys/keys";
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* The Test Account Recovery Organization gpg key is used to encrypt the private key password.
|
|
20
|
+
* The Ada gpg key is used to sign the encrypted message.
|
|
21
|
+
* The private key password belong to the private key of Ada.
|
|
22
|
+
* Clear text password: {type":"account-recovery-private-key-password-decrypted-data","version":"v1","domain":"https://passbolt.local","private_key_user_id":"f848277c-5398-58f8-a82a-72397af2d450","private_key_fingerprint":"03F60E958F4CB29723ACDF761353B5B15D9B054F","private_key_secret":"f7cf1fa06f973a9ecbb5f0e2bc6d1830532e53ad50da231036bd6c8c00dd7c7dc6c07b04004615cd6808bea2cb6a4ce4c46f7f36b8865292c0f7a28cd6f56112","created":"2022-04-21T14:45:15.205Z"}
|
|
23
|
+
*/
|
|
24
|
+
export const createAccountRecoveryPrivateKeyPasswordDto = (data = {}) => {
|
|
25
|
+
const defaultData = {
|
|
26
|
+
private_key_id: uuidv4(),
|
|
27
|
+
recipient_foreign_model: "AccountRecoveryOrganizationKey",
|
|
28
|
+
recipient_foreign_key: uuidv4(),
|
|
29
|
+
recipient_fingerprint: pgpKeys.account_recovery_organization.fingerprint,
|
|
30
|
+
data: "-----BEGIN PGP MESSAGE-----\n\nwcFMA9FTFjWeSbtEAQ//VSqqOOI6k4fKpaoyV+5meMIkMQ5xjBDigtwMA9gt\nadSaZLpYBRxtY7ZJmVfDwzd9xHEXm1leAkmdxEGdJnjHzK/DJPncOhGUexXQ\nSdLv6SpiieWKI15wvETT2xRylmvg6YqhLQYaFRfU3UO5AT6hywwExy/npvmi\nKmlx4ICdfaEYI1R16b/K3JjWFR4ftKrx80831JpQ6xu/QGNx2FS5ipZeCfcq\n57M6U5AeR/mFFn68zigwSYPzs6XzmI8epQd5pC+O0JHTRWDodi/MIZ23Vow9\njU1ESpFO+APXyzg5Fo9J8vk4Fie+HHRymKIHDp/U113Ldd/X8ZNV48F0X6/n\ngg/zO7nxkkNN7mW9VjMZekBI8SEnw2kHO9KtTzTPAjncaYiJBcbQDCHZM9cr\nHV+v3mEI7n4fYu0FusmDQSY35t2U+nJx9Y5piPWXwHtiBK4BaKTG5Dbdoe9u\nV1MW9IK8JPPXErIAzIFA4Lpfgz5erwczRmD01uBxb8+a8fEsiZ3xGJz+1+1b\n+1Vnpf/Ihkr8m0jnkxGk/ubnLoe8RzTFsi06Uz5Raumw5nbbl3MEwgwXGpeE\n7Ov/hYJqObUvJ74HTSgC3QtBu4byJyvRAk1Jl64Fkgv0Y+tk+fWOc6VOSJR7\nYqOyIPDvBa5YUtkK9PF6vDGU4F3p7eeey5W1hqVwXQXSw2YBMNavAynVq7Rg\na7n/R7ia5GH3KpvYGhHCPuP5ciI+/eRMa+xj+Zd30u9ZOkAXgnTACCUdRmia\n7cbU1qRPyXahpmMn3Z71CoX0Nj6hecOmw4F43DynXOPtAzJX9fypp7IFLduS\ndRAgE8SYg5Vgnc9iNjhP1DNbf34WgeUW/X/OpxS6R1qtJXP3DOIgkQBfOD1L\nW6dYRi6vws1fS2Jrb1cRdKQ7zMWBnoPK7q9Tl4oITSxZ8NJf3NskeZw/Fk2I\nXEUgarkhg7ObqpSit29TY6PcdvKMLodFWeWcY9iOO3EIKWUyjStTCijirDc8\nxcmo92DKc1m1u6hwIlkiSRjxfCjrxNl5OFhJIiANqhrqfcFBYPbdo+esoHYo\nA7w0NmW9SLU4WyKLJlj3Ev+UggmeFaKGiSznv3VdElPnmqiPr+pdJimvN68y\njalYqBoovAgB3FWE4fWR/1v+GI2kdZlwabys+9YGN+XEj1gbA30gNhIB9Z5y\nYuk9FLeZ8K8wqcyo85aARqZdjkRhvz79B+X27WGNKRS78FimF92AJZZdFqwg\nmE3wyjBtqkfkixawzl6mz/1RqhAznAjZdP9hW/b8rq6HIf0pHvKnxGIkI3n8\nFrFkE6X0e/mWnNmKnICq7AsCSOfJAPn13YqLRttCmYDN5Nfur/uFWIBbwdTs\nD38IxELy1bJJzqKeiIJNw+EYXgpcYXI3U4GHiwalGUPwCMCuZAylDmYN4yUJ\nnRTgnkoWEeIsTMWq3tFl+xhcTpLJ1I6TL6OyKM2r7t5Qr9f7245LMMOvxY1z\nmQ5bBbWxf7Oi1NFqNym8Rdtfgcm3eV9EXd7VUCevBU4H7b4NotntaSf6tNh1\nDIStYQd7eSgqYN95kwNvuE0gM8RkxxpFVQe75DBXmLpZysfRFqBZW8YcV90D\n0zdhqmX+dMyE55csMkQawjU3YElfDTTVl7pxOLZ85CzTXW+r4d8kuK/tq2aX\nANhOTBiEYeLy4bzu0nIkem2He5ld3hq/JLgorziKF0JfVIHcGs00FvUuu2C0\nRcPARgJkkofliygGHUqBIaI+On0dpQE+iyV26Pb6KVP6HAZdyDqVfQHf7AdG\nm5znDw4DC62w1M97p/hhIyUtl4cIjplQ+Mru8pNvHZREXyzmFkGDypG7NlSu\nGHawhE3/S1yG8Qkk2dnG5Yqp9u+fm4O6rdji8ti0vGBUEyozhncH4z5Y+xJE\ncL+MlK2TIETPedwDylRZccJhz5P/L8hzkmxI9mWFW+ZimffwiYnPm3Sv17t6\nbGmDD4rG33cN1cgquNbqL73/vvCaghRxfXj2ndLW9lCn186I9vZURaFd0wsd\n/ZazEYxuudCjTE2BsSN7ApGhj8LJr1dWwiJVaKzs/PnWJV563Y9RtjxEJ156\ngOsGFf0DYcZc/TtQY1i/BVg=\n=Ar7O\n-----END PGP MESSAGE-----"
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
return Object.assign(defaultData, data);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export const defaultAccountRecoveryPrivateKeyPasswordDto = (data = {}) => {
|
|
37
|
+
const defaultData = {
|
|
38
|
+
id: uuidv4(),
|
|
39
|
+
};
|
|
40
|
+
return createAccountRecoveryPrivateKeyPasswordDto({
|
|
41
|
+
...defaultData,
|
|
42
|
+
...data
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* The Test Account Recovery Organization gpg key is used to encrypt the private key password.
|
|
48
|
+
* The Betty gpg key is used to sign the encrypted message.
|
|
49
|
+
* The private key password belong to the private key of Betty.
|
|
50
|
+
* Clear text password: {"type":"account-recovery-private-key-password-decrypted-data","version":"v1","domain":"https://passbolt.local","private_key_user_id":"e97b14ba-8957-57c9-a357-f78a6e1e1a46","private_key_fingerprint":"A754860C3ADE5AB04599025ED3F1FE4BE61D7009","private_key_secret":"96946dd4d62e1ef5815c25ec8c5152a3abf5d80795f112719b92b0eb86d5d1102e68baab3486025886769bc05177ae7825e484420e58bf5a4692f30021425b85","created":"2022-04-24T13:16:48.469Z"}
|
|
51
|
+
*/
|
|
52
|
+
export const bettyAccountRecoveryPrivateKeyPasswordDto = (data = {}) => {
|
|
53
|
+
const defaultData = {
|
|
54
|
+
data: "-----BEGIN PGP MESSAGE-----\n\nwcFMA9FTFjWeSbtEARAAkq3PEASasM5AV0QXiRy+9TLqEMnRsQKpkWmrN/yQ\nBSh2vH5IiBR/5nMr4f391wdBzEUX8vsHOK93RFXuXlR7EsqYE18jirQ7qjJv\nnH26nKw4beiJKLuy0A9mcDVLOyFUsmL0zbTI9vp9G2HJ/vruZKx0wT9n9Gmf\nu5NGdRHGUWtRNTV/rmgomvdGHiLsdBL25xwOQZE823GYY1yIs9QGIzzgQ7l7\nhT7/rKBkLeS4WssVZEervUfKvwcg4y7N5dbjhVR/kZm9NVsIgQXSVuC/m3G8\nkYFsDRK3MB8O5+ijZuKUfaCsWMIn96b910fC68lkgjypDpSXDFoakoqtxdUR\n4txsSghIxiugig87KfuEJfDtHujGJfZ365EQ00ARYUrzBwboGd830s5UftfV\n+K0BuArt1I1VDgIUocixyfthrPBtdAnc3xzUgTM4OR7Ie6BgrRdLW4bFjaTe\nT31fL8QDNkTOknjbt6OgXAwToautu5yrO7FX8PaKpz+WPszlqVTKrKFFZcxD\n0bAzqZS0RbKximmuTJXKWvtgr4LQEiPTZCfkknWZH1OvNtTY+qD9JFPsMams\njsTSuBsSQttRxrc4YTgu+SNUAXNiGuX67w47VUpL1bWA3w3QAmEmpwAH0s5q\npBVF7IemG9JDcaC9D5QBD5BJg38uRs2cwz9Oej9dLyLSw2YBgwkcoFMq8N2O\nilc31YFyqye+HnpKiPWQDP/SLyL3YXRAO7Iu9919ARJgArT7F6UIdNkMu9Ro\n8dBH5PX0Cns0VFX1x8mws5ZmxVaOgupmeoaUQSNBTZ57+OLbK2GGen3B3xyk\nDjfrCxpcECQ2r7H3PlAfCIqpk9FiZdTyWgjJa6Mq4IpxlZDsmFAZEQl7r0ZT\nUBXdx4T44eY5ScviHumeB++n/P4s/vLJ3KW2nKIe7jRhpAQjM/ETu5caYvev\njgSmQKObQtrFupGTawi6KZV75e4QIwcorJZMMitT7deUKCyDzQ8ty3gJsNdw\nGoxMrQCyYaOKHuBnMymaraPT5VtFU21EmXXoMW7H7I9SSRnN6cTPVfEpFfFl\ncQUTSvw9Xd9FfF5tHECl1iOmcZjgydzq+4+fM8GA2P7YMnG5hrViLDDxycfP\n7E4+tNM9EMsDVWd6afdP9WiMZdIBtVMbk+ieaQthkzZcEbtEZL8O/rEVLWj6\nfgcz3ecsLZH0fPIk9mgg9q8WwOHGjSk6zXmUfxr+2hgj9zg25um0UWlSaZB7\nbCnW52LuxtWLL9sDBFSrGyBbIjwyF+g3zUdaP/ujzjolzu/3plJuVuKvdZ4D\nUz6usBskhMcygkqxqKxhY1BeWsX5tzRLnZEz3iCvs5YKHsQifZZbaTysaddX\nbBxFCXauoVfG0tMmp0+js01+Vw+9vqHuZVnjSGczo8P9mXY4E6WFI/jtbW4T\napzFN5fmbU/T3fSigbB223DCAbrFddxmaBQrPPLSSd0o/mGx+swm//QPt7Zr\nRKeFZzqKo2jwVNRWBXOvfE0JRpFK18e/5hhxr+euhgGMLrbIg86b1hYZDVcE\nnryQfW41B0zE8rO8vFs7FWr5PhCFiWofryp3MGLf9v8c4fSR3WWH9ushd/TZ\nMVb6Fg+yc//P3nLW8KinjwquIzadBVV+mnK/jfS4YHcvDyXrvp4/PatNHYzd\nv1XsUSpgsUNMFHfYUCYnR4iicYXiD0fBrNIZHEkrT2LRK3LIL3EbOy5z0pz7\nMofyO+VneB3I63baih/Fwv3NEp4HrZSdVUer+wzvblT7zEvf5woJh6h6SWwK\n7LctUd2dqgN5PQdgWY+oyFRC09ncFW6Wg4mGZ+wa898hwi91ZAwqc0YjOP3f\nyMdd37HmMvtsSmHwN6aHSa7yz88NaJTe4h9P4Gm8s6rIkdWnmXkTedHUF0ya\nLV5mD/qaP6UJMmcy0dNCOoA8cqf5AYPnDez0dg8CEzrO/NSXLEC0FsJSy2NZ\nkMXITx85j9baJjxNU2ucyxraCmP5fFg9r/8j1raE5KXGAuGXUWbfoH/txupQ\nwv+yJcY/TJ618pP8MtgjgmMllczWai27WlHpucQn7R6nl5u8+us0Vx7qktDe\nLbiX0dVls2TmnrqaDwjdkS8=\n=DKmX\n-----END PGP MESSAGE-----",
|
|
55
|
+
};
|
|
56
|
+
return defaultAccountRecoveryPrivateKeyPasswordDto({
|
|
57
|
+
...defaultData,
|
|
58
|
+
...data
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* The Test Account Recovery Organization gpg key is used to encrypt the private key password.
|
|
64
|
+
* Clear text password: {"type":"not-a-valid-decrypted-data-entity-type","version":"v1","domain":"https://passbolt.local","private_key_user_id":"f848277c-5398-58f8-a82a-72397af2d450","private_key_fingerprint":"03F60E958F4CB29723ACDF761353B5B15D9B054F","private_key_secret":"f7cf1fa06f973a9ecbb5f0e2bc6d1830532e53ad50da231036bd6c8c00dd7c7dc6c07b04004615cd6808bea2cb6a4ce4c46f7f36b8865292c0f7a28cd6f56112","created":"2022-04-24T20:22:54.324Z"}
|
|
65
|
+
*/
|
|
66
|
+
export const secretSubstitutionAttackAccountRecoveryPrivateKeyPasswordDto = (data = {}) => {
|
|
67
|
+
const defaultData = {
|
|
68
|
+
data: "-----BEGIN PGP MESSAGE-----\n\nwcFMA9FTFjWeSbtEAQ/+NFBdfWsHpLPFl7NrysmueomBu4JWiy21vfDrlbBX\nIE1RDXSi57nTVc48dUJUSff6mRZEjaTvlAf3JjsVhc47rbbFO5DRvY8xq2l0\n00YL/90ZLi881EjsV07DfCE3kzhOZZBIrExx68pF/jOxJsRh8fBbq80ElrvY\nZDBNPemIPp6CnZnRGiqNxgECylF928qj3QVYSH/JlvdV3GZOH0MOMw+6iom5\nGMIuHop8vOowbWUyOTHA3SPMLZb7rXzNmDwYsgJF6VGfFDNVOkcXJydDLVLw\nC8LwM1KLVCxKBVR112N0LAsCGrPcB/ZR+/6YHlozxmwGLWQvSnpDFLrgKnLb\ns44YOs2tN5n2OwiXGCxkIaW7pF1oWnVB1ygIA0iGWxfLE2b66e5GUwSlAvkU\np1NlZlg5CcIsBKmr5RRG6LzuM1RjNmvw9x7BtV8hOCzLknrOCxGclLmZHsX4\nTDJJpmRxtPmIwHRtEsG5f4Yf5MEmasYWj4SvNcE92sGbJR1dFeTanSrt4ULJ\nt36f6Hmgb+8pFpJZOWlnHf0kjCfvmnp4KkUPHfwWQ/Rh+u8yQn9YmOk3QlKY\nSiU5C6ae26HGWmjpSxY5TxIlK2Tu6g1eXODJUHi4rPA+yHXPQN96IaqmcQhp\na+Lyvyr4awy7QDS6NnmoHrfIeJYBMK6NwuUfv/7CzJvSwRMBH3+QpUSybq5g\nhSbN+uZhoGXP8HNXK1rOkzUgZKmQt/geuFoX+wWFtXCBGTID8DcVSMStrOoj\n5vC+kD3xuKOCjYbZTAYwZXLuDEL0RP14PbxL7pmSNzVWTHk5+5V9rehBAP0m\nl4BQWan84DjN5+Bc7QC0AZqJFL39jKIKG1kdWuvZbVYLJGivwTnYUvUYEYgw\nnu8rg9fOttcdMMdo8gCQq46yaItAJOU0CMDFBqzw10gLHswi+qgt9Fjx9ovY\nosYiE9mKCoDigUDknylq8twqQCsGj9BF/QctwW0ExhXCc8ryetV+f1jCrM3z\najrVVuN/JgBr5wXCxeYPIY4dmCf6VEf3XlEdjggHBfzMwGtoxv9S8skCLJVp\nuukqSNv0EcuBQnidrYk5gLvTeuwrffHZKP+cKil9YIJlBFt0CNwIZ+r+t7Wg\nAGSwYRowfT1YGoxofXoKpLA4/aOlCKU1nr/1Drn5YbSVGcdP1wGhgvHbzyBG\nneibYnDajT31fPU2IY0P0DoyY9xgqDn762GLr9B9mhE3kkomG3swMzYA6BuK\nCA794XE/QY11RWTdLqncwcTayqBFYTOW8TyMHIeDRA9kxnQG1ozC6teyZEkm\nMR/BkOEbgA==\n=hQcu\n-----END PGP MESSAGE-----"
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
return defaultAccountRecoveryPrivateKeyPasswordDto({
|
|
72
|
+
...defaultData,
|
|
73
|
+
...data
|
|
74
|
+
});
|
|
75
|
+
};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passbolt ~ Open source password manager for teams
|
|
3
|
+
* Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
4
|
+
*
|
|
5
|
+
* Licensed under GNU Affero General Public License version 3 of the or any later version.
|
|
6
|
+
* For full copyright and license information, please see the LICENSE.txt
|
|
7
|
+
* Redistributions of files must retain the above copyright notice.
|
|
8
|
+
*
|
|
9
|
+
* @copyright Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
10
|
+
* @license https://opensource.org/licenses/AGPL-3.0 AGPL License
|
|
11
|
+
* @link https://www.passbolt.com Passbolt(tm)
|
|
12
|
+
* @since 3.6.0
|
|
13
|
+
*/
|
|
14
|
+
import EntitySchema from "passbolt-styleguide/src/shared/models/entity/abstract/entitySchema";
|
|
15
|
+
import EntityValidationError from "passbolt-styleguide/src/shared/models/entity/abstract/entityValidationError";
|
|
16
|
+
import AccountRecoveryPrivateKeyPasswordEntity from "./accountRecoveryPrivateKeyPasswordEntity";
|
|
17
|
+
|
|
18
|
+
describe("AccountRecoveryPrivateKeyPassword entity", () => {
|
|
19
|
+
it("schema must validate", () => {
|
|
20
|
+
EntitySchema.validateSchema(AccountRecoveryPrivateKeyPasswordEntity.ENTITY_NAME, AccountRecoveryPrivateKeyPasswordEntity.getSchema());
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
it("constructor works if valid minimal DTO is provided", () => {
|
|
24
|
+
const dto = {
|
|
25
|
+
"recipient_foreign_model": "AccountRecoveryOrganizationKey",
|
|
26
|
+
"recipient_fingerprint": "28FBD1034880416B2B8CA75A289BCE03F3C0893F",
|
|
27
|
+
"data": "-----BEGIN PGP MESSAGE-----\n\nwcFMAxYTR81eetNbAQ\/\/TEWCA7W1kx7IzcZi4nmT92IZbdpzCBSQt5htSCoJ\nFfzGd27yeDT2GoEtmxmkG+gEak8ci0Jxa9FECaYDBzG4ixEDfDMfWqw\/WK2w\nj04oja+0qCAimV2nyItSYoaK5aZj8vL97V6U\/7YcraC9QTNY1Kd8RDPeL32D\nO2dpquPDLx5uMAmMoSZWruNCGqqJPjxMcxc2PBco+GJMcaGcYa5Y3+YueNpZ\nIIS0PbMpgiJlVvYzZywYC5lkIKFadVeV6MNkMmJfWB4VHq2Hoo3poZVP1rZV\n6cU7a7UuG4W3UUmezxQGQ6WAjh+qzkQHXrwI3cgU14du9sTCh8occwcPhG1C\nj8ljcTJqexQxA91TSj2UqhAnyB9yzZRcoh38bj\/OyGQmtiwxEFIzUymSi2pt\nysjJOZ7lB1Oh2l4vbgxJoNxtgvzY+3dsNXL510x793Hev3X2YcbO\/TJoy6G9\n89cuocJ1dlLIHqrfri43y1V0ZTfoa\/vigma4Qa5kUtB1tN0j38z+6tcjiz\/s\n8RJmXUK2bfHhvEbuc\/YnDDltpiZHc3QUtbj5TV2m+fO0ad2jVqxsi4eZid\/V\n\/WDUrAxRzY7xNRTRQQDbnT831NZeZbYobCpfPqU8ylF9iv\/V4lsyNYFrU0ne\n37JRFzl3cOY+jlqxGHaAF9\/mC3b3D3DmlZ+kOOQ7lE\/SwaoBAuDaJRsKzNqj\nTz8UFif5iwrEQY5BNzYd+zwGVzMlVP\/RNXR2YlAHx5lPMylgI73RDMoMZ4RT\nb7AQB9DqgobZI3dh3B90XqjkRiy3VJ\/nMhwknaZc6onJQgl2O\/ULie9kh69U\n1ojIkN+SHFCl42T1iT2eN08QUPffDVTMvT103WlX+MW8FV6CmF+TcDRUexs3\nT\/2EvFlxP6QTG41vLk4Sm3xce7rEZHiJ9hRrF26xVfT5jM+7z149lP5J8mgA\nARSBj2jlO7P1afQX+5RyYR+guD9LN95qMsNJwukTCzIo1AhE7yywf7b8v3a6\nXyanZo+TbDqxnJlozEMsdyGBwBn7UX6Erv072cZadO\/ZG2RBkbgiBGZ5hAjg\nPqwRAkfzDNa4WhsE9Crqs5ROy6IsDBGuAa8\/as0oCzIV+Ou4BPzKHfQDQS6U\nT0R+48sVAZAYY7TqaNHvf+3nlqMyssaK0SPm2fg3DZXPM2pcDatCFb4gVElC\n1qbG8pRIBmS\/NYr8m7IBnazDs9L6lYAjybuHes6cPqasDmHKha6DKl1P6jX+\nEeDxA0AVL4rZdUCt1fpEcFR\/R\/o4uDDLO8NGiHwM3MnbNI8G0SQy8q\/NhI11\nzWXyDeAR6hHKYC4h6WCCTFxe364PWLjQ5PGOLeAfeWEPCDZmP6U99kwoiOUu\ni8UuoIAFon3lIOXZnJ3ZtAcQ5UJ3gNcJH1EImZFdYtRgLo3GOPjBcNqGbmCu\n4xo+yMGy9Y8YJZM9HakKAChmHf01J3DAwNfUm8Rhx5w+NBQRm0aJ319wsACH\nlLEYvv+bVfPkNTvW\/vWND9eOPGI0Q8o=\n=AOt0\n-----END PGP MESSAGE-----\n"
|
|
28
|
+
};
|
|
29
|
+
const entity = new AccountRecoveryPrivateKeyPasswordEntity(dto);
|
|
30
|
+
expect(entity.toDto()).toEqual(dto);
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
it("constructor works if valid DTO is provided with optional fields", () => {
|
|
34
|
+
const dto = {
|
|
35
|
+
"id": "0dcde494-2231-43da-9bc5-6b39654b2a32",
|
|
36
|
+
"recipient_foreign_model": "AccountRecoveryOrganizationKey",
|
|
37
|
+
"recipient_foreign_key": "10801423-4151-42a4-99d1-86e66145a08c",
|
|
38
|
+
"recipient_fingerprint": "28FBD1034880416B2B8CA75A289BCE03F3C0893F",
|
|
39
|
+
"data": "-----BEGIN PGP MESSAGE-----\n\nwcFMAxYTR81eetNbAQ\/\/TEWCA7W1kx7IzcZi4nmT92IZbdpzCBSQt5htSCoJ\nFfzGd27yeDT2GoEtmxmkG+gEak8ci0Jxa9FECaYDBzG4ixEDfDMfWqw\/WK2w\nj04oja+0qCAimV2nyItSYoaK5aZj8vL97V6U\/7YcraC9QTNY1Kd8RDPeL32D\nO2dpquPDLx5uMAmMoSZWruNCGqqJPjxMcxc2PBco+GJMcaGcYa5Y3+YueNpZ\nIIS0PbMpgiJlVvYzZywYC5lkIKFadVeV6MNkMmJfWB4VHq2Hoo3poZVP1rZV\n6cU7a7UuG4W3UUmezxQGQ6WAjh+qzkQHXrwI3cgU14du9sTCh8occwcPhG1C\nj8ljcTJqexQxA91TSj2UqhAnyB9yzZRcoh38bj\/OyGQmtiwxEFIzUymSi2pt\nysjJOZ7lB1Oh2l4vbgxJoNxtgvzY+3dsNXL510x793Hev3X2YcbO\/TJoy6G9\n89cuocJ1dlLIHqrfri43y1V0ZTfoa\/vigma4Qa5kUtB1tN0j38z+6tcjiz\/s\n8RJmXUK2bfHhvEbuc\/YnDDltpiZHc3QUtbj5TV2m+fO0ad2jVqxsi4eZid\/V\n\/WDUrAxRzY7xNRTRQQDbnT831NZeZbYobCpfPqU8ylF9iv\/V4lsyNYFrU0ne\n37JRFzl3cOY+jlqxGHaAF9\/mC3b3D3DmlZ+kOOQ7lE\/SwaoBAuDaJRsKzNqj\nTz8UFif5iwrEQY5BNzYd+zwGVzMlVP\/RNXR2YlAHx5lPMylgI73RDMoMZ4RT\nb7AQB9DqgobZI3dh3B90XqjkRiy3VJ\/nMhwknaZc6onJQgl2O\/ULie9kh69U\n1ojIkN+SHFCl42T1iT2eN08QUPffDVTMvT103WlX+MW8FV6CmF+TcDRUexs3\nT\/2EvFlxP6QTG41vLk4Sm3xce7rEZHiJ9hRrF26xVfT5jM+7z149lP5J8mgA\nARSBj2jlO7P1afQX+5RyYR+guD9LN95qMsNJwukTCzIo1AhE7yywf7b8v3a6\nXyanZo+TbDqxnJlozEMsdyGBwBn7UX6Erv072cZadO\/ZG2RBkbgiBGZ5hAjg\nPqwRAkfzDNa4WhsE9Crqs5ROy6IsDBGuAa8\/as0oCzIV+Ou4BPzKHfQDQS6U\nT0R+48sVAZAYY7TqaNHvf+3nlqMyssaK0SPm2fg3DZXPM2pcDatCFb4gVElC\n1qbG8pRIBmS\/NYr8m7IBnazDs9L6lYAjybuHes6cPqasDmHKha6DKl1P6jX+\nEeDxA0AVL4rZdUCt1fpEcFR\/R\/o4uDDLO8NGiHwM3MnbNI8G0SQy8q\/NhI11\nzWXyDeAR6hHKYC4h6WCCTFxe364PWLjQ5PGOLeAfeWEPCDZmP6U99kwoiOUu\ni8UuoIAFon3lIOXZnJ3ZtAcQ5UJ3gNcJH1EImZFdYtRgLo3GOPjBcNqGbmCu\n4xo+yMGy9Y8YJZM9HakKAChmHf01J3DAwNfUm8Rhx5w+NBQRm0aJ319wsACH\nlLEYvv+bVfPkNTvW\/vWND9eOPGI0Q8o=\n=AOt0\n-----END PGP MESSAGE-----\n"
|
|
40
|
+
};
|
|
41
|
+
const entity = new AccountRecoveryPrivateKeyPasswordEntity(dto);
|
|
42
|
+
expect(entity.toDto()).toEqual(dto);
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it("constructor returns validation error if dto required fields are missing", () => {
|
|
46
|
+
try {
|
|
47
|
+
new AccountRecoveryPrivateKeyPasswordEntity({});
|
|
48
|
+
} catch (error) {
|
|
49
|
+
expect(error instanceof EntityValidationError).toBe(true);
|
|
50
|
+
expect(error.hasError('recipient_foreign_model', 'required')).toBe(true);
|
|
51
|
+
expect(error.hasError('recipient_fingerprint', 'required')).toBe(true);
|
|
52
|
+
expect(error.hasError('data', 'required')).toBe(true);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
it("constructor returns validation error if dto fields are invalid", () => {
|
|
57
|
+
try {
|
|
58
|
+
new AccountRecoveryPrivateKeyPasswordEntity({'id': 'not-valid-uuid'});
|
|
59
|
+
expect(false).toBe(true);
|
|
60
|
+
} catch (error) {
|
|
61
|
+
expect((error instanceof EntityValidationError)).toBe(true);
|
|
62
|
+
expect(error.hasError('id', 'format')).toBe(true);
|
|
63
|
+
}
|
|
64
|
+
try {
|
|
65
|
+
new AccountRecoveryPrivateKeyPasswordEntity({'recipient_foreign_model': 'not-valid-recipient_foreign_model'});
|
|
66
|
+
expect(false).toBe(true);
|
|
67
|
+
} catch (error) {
|
|
68
|
+
expect((error instanceof EntityValidationError)).toBe(true);
|
|
69
|
+
expect(error.hasError('recipient_foreign_model', 'enum')).toBe(true);
|
|
70
|
+
}
|
|
71
|
+
try {
|
|
72
|
+
new AccountRecoveryPrivateKeyPasswordEntity({'recipient_foreign_key': 'not-valid-uuid'});
|
|
73
|
+
expect(false).toBe(true);
|
|
74
|
+
} catch (error) {
|
|
75
|
+
expect((error instanceof EntityValidationError)).toBe(true);
|
|
76
|
+
expect(error.hasError('recipient_foreign_key', 'format')).toBe(true);
|
|
77
|
+
}
|
|
78
|
+
try {
|
|
79
|
+
new AccountRecoveryPrivateKeyPasswordEntity({'data': 42});
|
|
80
|
+
expect(false).toBe(true);
|
|
81
|
+
} catch (error) {
|
|
82
|
+
expect((error instanceof EntityValidationError)).toBe(true);
|
|
83
|
+
expect(error.hasError('data', 'type')).toBe(true);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passbolt ~ Open source password manager for teams
|
|
3
|
+
* Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
4
|
+
*
|
|
5
|
+
* Licensed under GNU Affero General Public License version 3 of the or any later version.
|
|
6
|
+
* For full copyright and license information, please see the LICENSE.txt
|
|
7
|
+
* Redistributions of files must retain the above copyright notice.
|
|
8
|
+
*
|
|
9
|
+
* @copyright Copyright (c) 2022 Passbolt SA (https://www.passbolt.com)
|
|
10
|
+
* @license https://opensource.org/licenses/AGPL-3.0 AGPL License
|
|
11
|
+
* @link https://www.passbolt.com Passbolt(tm)
|
|
12
|
+
* @since 3.6.0
|
|
13
|
+
*/
|
|
14
|
+
import EntityCollection from "passbolt-styleguide/src/shared/models/entity/abstract/entityCollection";
|
|
15
|
+
import AccountRecoveryPrivateKeyPasswordEntity from "./accountRecoveryPrivateKeyPasswordEntity";
|
|
16
|
+
import EntitySchema from "passbolt-styleguide/src/shared/models/entity/abstract/entitySchema";
|
|
17
|
+
import EntityCollectionError from "passbolt-styleguide/src/shared/models/entity/abstract/entityCollectionError";
|
|
18
|
+
import deduplicateObjects from "../../../utils/array/deduplicateObjects";
|
|
19
|
+
|
|
20
|
+
const ENTITY_NAME = 'AccountRecoveryPrivateKeyPassword';
|
|
21
|
+
const RULE_UNIQUE_ID = 'unique_id';
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Entity Collection related to the account recovery private key password
|
|
25
|
+
*/
|
|
26
|
+
class AccountRecoveryPrivateKeyPasswordsCollection extends EntityCollection {
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
* @throws {EntityCollectionError} Build Rule: Ensure all items in the collection are unique by ID.
|
|
30
|
+
*/
|
|
31
|
+
constructor(accountRecoveryPrivateKeyPasswordsCollectionDto, options = {}) {
|
|
32
|
+
super(EntitySchema.validate(
|
|
33
|
+
AccountRecoveryPrivateKeyPasswordsCollection.ENTITY_NAME,
|
|
34
|
+
accountRecoveryPrivateKeyPasswordsCollectionDto,
|
|
35
|
+
AccountRecoveryPrivateKeyPasswordsCollection.getSchema()
|
|
36
|
+
), options);
|
|
37
|
+
|
|
38
|
+
/*
|
|
39
|
+
* Check if items ids are unique
|
|
40
|
+
* Why not this.push? It is faster than adding items one by one
|
|
41
|
+
*/
|
|
42
|
+
const ids = this._props.map(accountRecoveryPrivateKeyPassword => accountRecoveryPrivateKeyPassword.id);
|
|
43
|
+
ids.sort().sort((a, b) => {
|
|
44
|
+
if (a === b) {
|
|
45
|
+
throw new EntityCollectionError(0, AccountRecoveryPrivateKeyPasswordsCollection.RULE_UNIQUE_ID, `AccountRecoveryPrivateKeyPassword id ${a} already exists.`);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
// Directly push into the private property _items[]
|
|
49
|
+
this._props.forEach(accountRecoveryPrivateKeyPassword => {
|
|
50
|
+
this._items.push(new AccountRecoveryPrivateKeyPasswordEntity(accountRecoveryPrivateKeyPassword, {clone: false}));
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
// We do not keep original props
|
|
54
|
+
this._props = null;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Get accountRecoveryPrivateKeyPasswords entity schema
|
|
59
|
+
*
|
|
60
|
+
* @returns {Object} schema
|
|
61
|
+
*/
|
|
62
|
+
static getSchema() {
|
|
63
|
+
return {
|
|
64
|
+
"type": "array",
|
|
65
|
+
"items": AccountRecoveryPrivateKeyPasswordEntity.getSchema(),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Get accountRecoveryPrivateKeyPasswords
|
|
71
|
+
* @returns {Array<AccountRecoveryPrivateKeyPasswordEntity>}
|
|
72
|
+
*/
|
|
73
|
+
get accountRecoveryPrivateKeyPasswords() {
|
|
74
|
+
return this._items;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Get all the ids of the accountRecoveryPrivateKeyPasswords in the collection
|
|
79
|
+
*
|
|
80
|
+
* @returns {Array<string>}
|
|
81
|
+
*/
|
|
82
|
+
get ids() {
|
|
83
|
+
return this._items.map(r => r.id);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/*
|
|
87
|
+
* ==================================================
|
|
88
|
+
* Sanitization
|
|
89
|
+
* ==================================================
|
|
90
|
+
*/
|
|
91
|
+
/**
|
|
92
|
+
* Sanitize resources dto:
|
|
93
|
+
* - Deduplicate the resources by id.
|
|
94
|
+
*
|
|
95
|
+
* @param {Array} dto The resources dto
|
|
96
|
+
* @returns {Array}
|
|
97
|
+
*/
|
|
98
|
+
static sanitizeDto(dto) {
|
|
99
|
+
if (!Array.isArray(dto)) {
|
|
100
|
+
return [];
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return deduplicateObjects(dto, 'id');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/*
|
|
107
|
+
* ==================================================
|
|
108
|
+
* Assertions
|
|
109
|
+
* ==================================================
|
|
110
|
+
*/
|
|
111
|
+
/**
|
|
112
|
+
* Assert there is no other resource with the same id in the collection
|
|
113
|
+
*
|
|
114
|
+
* @param {AccountRecoveryPrivateKeyPasswordEntity} accountRecoveryPrivateKeyPassword
|
|
115
|
+
* @throws {EntityValidationError} if a resource with the same id already exist
|
|
116
|
+
*/
|
|
117
|
+
assertUniqueId(accountRecoveryPrivateKeyPassword) {
|
|
118
|
+
if (!accountRecoveryPrivateKeyPassword.id) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
const length = this.accountRecoveryPrivateKeyPasswords.length;
|
|
122
|
+
let i = 0;
|
|
123
|
+
for (; i < length; i++) {
|
|
124
|
+
const existingResource = this.accountRecoveryPrivateKeyPasswords[i];
|
|
125
|
+
if (existingResource.id && existingResource.id === accountRecoveryPrivateKeyPassword.id) {
|
|
126
|
+
throw new EntityCollectionError(i, AccountRecoveryPrivateKeyPasswordsCollection.RULE_UNIQUE_ID, `account recovery private key password id ${accountRecoveryPrivateKeyPassword.id} already exists.`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/*
|
|
132
|
+
* ==================================================
|
|
133
|
+
* Setters
|
|
134
|
+
* ==================================================
|
|
135
|
+
*/
|
|
136
|
+
/**
|
|
137
|
+
* Push a copy of the resource to the list
|
|
138
|
+
* @param {object} accountRecoveryPrivateKeyPassword DTO or AccountRecoveryPrivateKeyPasswordEntity
|
|
139
|
+
*/
|
|
140
|
+
push(accountRecoveryPrivateKeyPassword) {
|
|
141
|
+
if (!accountRecoveryPrivateKeyPassword || typeof accountRecoveryPrivateKeyPassword !== 'object') {
|
|
142
|
+
throw new TypeError(`accountRecoveryPrivateKeyPasswordsCollection push parameter should be an object.`);
|
|
143
|
+
}
|
|
144
|
+
if (accountRecoveryPrivateKeyPassword instanceof AccountRecoveryPrivateKeyPasswordEntity) {
|
|
145
|
+
accountRecoveryPrivateKeyPassword = accountRecoveryPrivateKeyPassword.toDto(); // deep clone
|
|
146
|
+
}
|
|
147
|
+
const accountRecoveryPrivateKeyPasswordEntity = new AccountRecoveryPrivateKeyPasswordEntity(accountRecoveryPrivateKeyPassword); // validate
|
|
148
|
+
|
|
149
|
+
// Build rules
|
|
150
|
+
this.assertUniqueId(accountRecoveryPrivateKeyPasswordEntity);
|
|
151
|
+
|
|
152
|
+
super.push(accountRecoveryPrivateKeyPasswordEntity);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Remove a accountRecoveryPrivateKeyPassword identified by an Id
|
|
157
|
+
* @param accountRecoveryPrivateKeyPasswordId
|
|
158
|
+
*/
|
|
159
|
+
remove(accountRecoveryPrivateKeyPasswordId) {
|
|
160
|
+
const i = this.items.findIndex(item => item.id === accountRecoveryPrivateKeyPasswordId);
|
|
161
|
+
this.items.splice(i, 1);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Remove multiple accountRecoveryPrivateKeyPasswords identified by their Ids
|
|
166
|
+
* @param {Array} accountRecoveryPrivateKeyPasswordIds
|
|
167
|
+
*/
|
|
168
|
+
removeMany(accountRecoveryPrivateKeyPasswordIds) {
|
|
169
|
+
for (const i in accountRecoveryPrivateKeyPasswordIds) {
|
|
170
|
+
this.remove(accountRecoveryPrivateKeyPasswordIds[i]);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* @param {string} foreignModel
|
|
176
|
+
* @returns {AccountRecoveryPrivateKeyPasswordEntity}
|
|
177
|
+
*/
|
|
178
|
+
filterByForeignModel(foreignModel) {
|
|
179
|
+
const filterPrivateKeyPasswordByRecipientForeignModel = accountRecoveryPrivateKeyPassword => accountRecoveryPrivateKeyPassword.recipientForeignModel === foreignModel;
|
|
180
|
+
return this.items.find(filterPrivateKeyPasswordByRecipientForeignModel);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/*
|
|
184
|
+
* ==================================================
|
|
185
|
+
* Static getters
|
|
186
|
+
* ==================================================
|
|
187
|
+
*/
|
|
188
|
+
/**
|
|
189
|
+
* AccountRecoveryPrivateKeyPasswordsCollection.ENTITY_NAME
|
|
190
|
+
* @returns {string}
|
|
191
|
+
*/
|
|
192
|
+
static get ENTITY_NAME() {
|
|
193
|
+
return ENTITY_NAME;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* AccountRecoveryPrivateKeyPasswordsCollection.RULE_UNIQUE_ID
|
|
198
|
+
* @returns {string}
|
|
199
|
+
*/
|
|
200
|
+
static get RULE_UNIQUE_ID() {
|
|
201
|
+
return RULE_UNIQUE_ID;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
export default AccountRecoveryPrivateKeyPasswordsCollection;
|