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.
Files changed (1168) hide show
  1. package/.eslintrc.json +34 -18
  2. package/.github/workflows/release.yaml +17 -0
  3. package/.github/workflows/release_candidate.yaml +17 -0
  4. package/.gitlab-ci/jobs/build.yml +42 -0
  5. package/.gitlab-ci/jobs/publish.yml +38 -0
  6. package/.gitlab-ci/jobs/release.yml +21 -0
  7. package/.gitlab-ci/jobs/review.yml +25 -0
  8. package/.gitlab-ci/jobs/test.yml +32 -0
  9. package/.gitlab-ci/scripts/bin/publish.sh +63 -0
  10. package/.gitlab-ci/scripts/bin/review.sh +52 -0
  11. package/.gitlab-ci/scripts/bin/slack-status-messages.sh +33 -0
  12. package/.gitlab-ci/scripts/lib/git-helpers.sh +29 -0
  13. package/.gitlab-ci/scripts/lib/set-env.sh +25 -0
  14. package/.gitlab-ci/scripts/lib/version-check.sh +25 -0
  15. package/.gitlab-ci.yml +15 -16
  16. package/.jpmignore +5 -1
  17. package/CHANGELOG.md +993 -6
  18. package/Gruntfile.js +239 -149
  19. package/README.md +18 -1
  20. package/RELEASE_NOTES.md +23 -0
  21. package/crowdin.yml +21 -0
  22. package/i18next-parser.config.js +22 -0
  23. package/jest.config.json +29 -0
  24. package/package.json +95 -55
  25. package/src/all/_locales/de/messages.json +10 -0
  26. package/src/all/_locales/en/messages.json +10 -0
  27. package/src/all/_locales/es/messages.json +10 -0
  28. package/src/all/_locales/fr/messages.json +10 -0
  29. package/src/all/_locales/it/messages.json +10 -0
  30. package/src/all/_locales/ja/messages.json +10 -0
  31. package/src/all/_locales/ko/messages.json +10 -0
  32. package/src/all/_locales/locales.test.js +43 -0
  33. package/src/all/_locales/lt/messages.json +10 -0
  34. package/src/all/_locales/nl/messages.json +10 -0
  35. package/src/all/_locales/pl/messages.json +10 -0
  36. package/src/all/_locales/pt/messages.json +10 -0
  37. package/src/all/_locales/ro/messages.json +10 -0
  38. package/src/all/_locales/ru/messages.json +10 -0
  39. package/src/all/_locales/sv/messages.json +10 -0
  40. package/src/all/background_page/controller/InformMenuController/InformMenuController.js +147 -0
  41. package/src/all/background_page/controller/account/getAccountController.js +55 -0
  42. package/src/all/background_page/controller/account/getAccountController.test.js +91 -0
  43. package/src/all/background_page/controller/account/getAndInitializeAccountLocaleController.js +70 -0
  44. package/src/all/background_page/controller/account/getAndInitializeAccountLocaleController.test.js +75 -0
  45. package/src/all/background_page/controller/account/updatePrivateKeyController.js +127 -0
  46. package/src/all/background_page/controller/account/updatePrivateKeyController.test.js +317 -0
  47. package/src/all/background_page/controller/account/verifyAccountPassphraseController.js +68 -0
  48. package/src/all/background_page/controller/account/verifyAccountPassphraseController.test.js +59 -0
  49. package/src/all/background_page/controller/accountRecovery/abortAndInitiateNewAccountRecoveryController.js +61 -0
  50. package/src/all/background_page/controller/accountRecovery/abortAndInitiateNewAccountRecoveryControllerr.test.js +46 -0
  51. package/src/all/background_page/controller/accountRecovery/accountRecoveryGenerateOrganizationKeyController.js +73 -0
  52. package/src/all/background_page/controller/accountRecovery/accountRecoveryGenerateOrganizationKeyController.test.js +48 -0
  53. package/src/all/background_page/controller/accountRecovery/accountRecoveryGetRequestController.js +69 -0
  54. package/src/all/background_page/controller/accountRecovery/accountRecoveryGetRequestController.test.js +57 -0
  55. package/src/all/background_page/controller/accountRecovery/accountRecoveryGetUserRequestsController.js +64 -0
  56. package/src/all/background_page/controller/accountRecovery/accountRecoveryGetUserRequestsController.test.js +78 -0
  57. package/src/all/background_page/controller/accountRecovery/accountRecoverySaveOrganizationPolicyController.js +210 -0
  58. package/src/all/background_page/controller/accountRecovery/accountRecoverySaveOrganizationPolicyController.test.js +304 -0
  59. package/src/all/background_page/controller/accountRecovery/accountRecoverySaveUserSettingController.js +104 -0
  60. package/src/all/background_page/controller/accountRecovery/accountRecoverySaveUserSettingController.test.js +110 -0
  61. package/src/all/background_page/controller/accountRecovery/accountRecoveryValidateOrganizationPrivateKeyController.js +64 -0
  62. package/src/all/background_page/controller/accountRecovery/accountRecoveryValidateOrganizationPrivateKeyController.test.js +113 -0
  63. package/src/all/background_page/controller/accountRecovery/accountRecoveryValidatePublicKeyController.js +53 -0
  64. package/src/all/background_page/controller/accountRecovery/accountRecoveryValidatePublicKeyController.test.js +89 -0
  65. package/src/all/background_page/controller/accountRecovery/continueAccountRecoveryController.js +68 -0
  66. package/src/all/background_page/controller/accountRecovery/continueAccountRecoveryController.test.js +66 -0
  67. package/src/all/background_page/controller/accountRecovery/getOrganizationPolicyController.js +56 -0
  68. package/src/all/background_page/controller/accountRecovery/getOrganizationPolicyController.test.js +41 -0
  69. package/src/all/background_page/controller/accountRecovery/hasUserPostponedUserSettingInvitationController.js +50 -0
  70. package/src/all/background_page/controller/accountRecovery/hasUserPostponedUserSettingInvitationController.test.js +32 -0
  71. package/src/all/background_page/controller/accountRecovery/isLostPassphraseCaseController.js +53 -0
  72. package/src/all/background_page/controller/accountRecovery/isLostPassphraseCaseController.test.js +58 -0
  73. package/src/all/background_page/controller/accountRecovery/postponeUserSettingInvitationController.js +50 -0
  74. package/src/all/background_page/controller/accountRecovery/postponeUserSettingInvitationController.test.js +28 -0
  75. package/src/all/background_page/controller/accountRecovery/recoverAccountController.js +199 -0
  76. package/src/all/background_page/controller/accountRecovery/recoverAccountController.test.js +204 -0
  77. package/src/all/background_page/controller/accountRecovery/reviewRequestController.js +236 -0
  78. package/src/all/background_page/controller/accountRecovery/reviewRequestController.test.js +306 -0
  79. package/src/all/background_page/controller/app/appInitController.js +39 -10
  80. package/src/all/background_page/controller/app/appInitController.test.js +98 -0
  81. package/src/all/background_page/controller/auth/authCheckStatusController.js +3 -4
  82. package/src/all/background_page/controller/auth/authIsAuthenticatedController.js +2 -3
  83. package/src/all/background_page/controller/auth/authIsMfaRequiredController.js +2 -4
  84. package/src/all/background_page/controller/auth/authLoginController.js +130 -0
  85. package/src/all/background_page/controller/auth/authLoginController.test.js +164 -0
  86. package/src/all/background_page/controller/auth/authLogoutController.js +62 -0
  87. package/src/all/background_page/controller/auth/authLogoutController.test.js +55 -0
  88. package/src/all/background_page/controller/auth/authVerifyServerKeyController.js +120 -0
  89. package/src/all/background_page/controller/auth/authVerifyServerKeyController.test.js +61 -0
  90. package/src/all/background_page/controller/auth/authenticationEventController.js +67 -0
  91. package/src/all/background_page/controller/auth/generateSsoKitController.js +80 -0
  92. package/src/all/background_page/controller/auth/generateSsoKitController.test.js +100 -0
  93. package/src/all/background_page/controller/auth/requestHelpCredentialsLostController.js +54 -0
  94. package/src/all/background_page/controller/auth/requestHelpCredentialsLostController.test.js +42 -0
  95. package/src/all/background_page/controller/autofill/AutofillController.js +134 -0
  96. package/src/all/background_page/controller/autofill/AutofillController.test.js +149 -0
  97. package/src/all/background_page/controller/clipboard/clipboardController.js +53 -0
  98. package/src/all/background_page/controller/clipboard/clipboardController.test.js +68 -0
  99. package/src/all/background_page/controller/comment/createCommentController.js +57 -0
  100. package/src/all/background_page/controller/comment/createCommentController.test.js +105 -0
  101. package/src/all/background_page/controller/comment/deleteCommentController.js +66 -0
  102. package/src/all/background_page/controller/comment/deleteCommentController.test.js +105 -0
  103. package/src/all/background_page/controller/comment/getCommentsByRessourceIdController.js +68 -0
  104. package/src/all/background_page/controller/comment/getCommentsByRessourceidController.test.js +99 -0
  105. package/src/all/background_page/controller/crypto/checkPassphraseController.js +61 -0
  106. package/src/all/background_page/controller/crypto/checkPassphraseController.test.js +47 -0
  107. package/src/all/background_page/controller/crypto/downloadUserPrivateKeyController.js +70 -0
  108. package/src/all/background_page/controller/crypto/downloadUserPrivateKeyController.test.js +70 -0
  109. package/src/all/background_page/controller/crypto/downloadUserPublicKeyController.js +67 -0
  110. package/src/all/background_page/controller/crypto/downloadUserPublicKeyController.test.js +64 -0
  111. package/src/all/background_page/controller/crypto/getKeyInfoController.js +63 -0
  112. package/src/all/background_page/controller/crypto/getKeyInfoController.test.js +39 -0
  113. package/src/all/background_page/controller/crypto/getUserKeyInfoController.js +71 -0
  114. package/src/all/background_page/controller/crypto/getUserKeyInfoController.test.js +61 -0
  115. package/src/all/background_page/controller/crypto/getUserPrivateKeyController.js +63 -0
  116. package/src/all/background_page/controller/crypto/getUserPrivateKeyController.test.js +64 -0
  117. package/src/all/background_page/controller/crypto/validatePrivateGpgKeyRecoverController.js +74 -0
  118. package/src/all/background_page/controller/crypto/validatePrivateGpgKeyRecoverController.test.js +70 -0
  119. package/src/all/background_page/controller/crypto/validatePrivateGpgKeySetupController.js +114 -0
  120. package/src/all/background_page/controller/crypto/validatePrivateGpgKeySetupController.test.js +142 -0
  121. package/src/all/background_page/controller/export/exportResourcesFileController.js +50 -70
  122. package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.js +75 -0
  123. package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.test.data.js +25 -0
  124. package/src/all/background_page/controller/exportAccount/exportDesktopAccountController.test.js +104 -0
  125. package/src/all/background_page/controller/extension/getExtensionVersionController.js +51 -0
  126. package/src/all/background_page/controller/extension/getExtensionVersionController.test.js +28 -0
  127. package/src/all/background_page/controller/extension/isExtensionFirstInstallController.js +51 -0
  128. package/src/all/background_page/controller/extension/isExtensionFirstInstallController.test.js +45 -0
  129. package/src/all/background_page/controller/extension/onExtensionInstalledController.js +107 -0
  130. package/src/all/background_page/controller/extension/onExtensionInstalledController.test.js +109 -0
  131. package/src/all/background_page/controller/extension/onExtensionUpdateAvailableController.js +56 -0
  132. package/src/all/background_page/controller/extension/onExtensionUpdateAvailableController.test.js +76 -0
  133. package/src/all/background_page/controller/folder/folderCreateController.js +24 -21
  134. package/src/all/background_page/controller/group/groupUpdateController.js +53 -43
  135. package/src/all/background_page/controller/group/groupUpdateController.test.data.js +70 -0
  136. package/src/all/background_page/controller/group/groupUpdateController.test.js +169 -0
  137. package/src/all/background_page/controller/import/importResourcesFileController.js +75 -76
  138. package/src/all/background_page/controller/informCallToActionController/informCallToActionController.js +99 -0
  139. package/src/all/background_page/controller/locale/getLocaleController.js +58 -0
  140. package/src/all/background_page/controller/mfaPolicy/hasUserPostponedUserSettingInvitationController.js +50 -0
  141. package/src/all/background_page/controller/mfaPolicy/hasUserPostponedUserSettingInvitationController.test.js +32 -0
  142. package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.js +51 -0
  143. package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.test.data.js +21 -0
  144. package/src/all/background_page/controller/mfaPolicy/mfaGetMfaSettingsController.test.js +37 -0
  145. package/src/all/background_page/controller/mfaPolicy/mfaGetPolicyController.js +51 -0
  146. package/src/all/background_page/controller/mfaPolicy/mfaGetPolicyController.test.js +38 -0
  147. package/src/all/background_page/controller/mfaPolicy/postponeUserSettingMfaInvitationController.js +49 -0
  148. package/src/all/background_page/controller/mfaPolicy/postponeUserSettingMfaInvitationController.test.js +28 -0
  149. package/src/all/background_page/controller/mfaSetup/MfaSetupGetTotpCodeController.js +54 -0
  150. package/src/all/background_page/controller/mfaSetup/MfaSetupGetTotpCodeController.test.js +44 -0
  151. package/src/all/background_page/controller/mfaSetup/MfaSetupRemoveProviderController.js +58 -0
  152. package/src/all/background_page/controller/mfaSetup/MfaSetupRemoveProviderController.test.js +56 -0
  153. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyOtpCodeController.js +56 -0
  154. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyOtpCodeController.test.js +57 -0
  155. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyProviderController.js +58 -0
  156. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyProviderController.test.js +59 -0
  157. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyTotpCodeController.js +56 -0
  158. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyTotpCodeController.test.js +57 -0
  159. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyYubikeyCodeController.js +59 -0
  160. package/src/all/background_page/controller/mfaSetup/MfaSetupVerifyYubikeyCodeController.test.js +56 -0
  161. package/src/all/background_page/controller/move/moveController.js +17 -15
  162. package/src/all/background_page/controller/move/moveFolderController.js +80 -71
  163. package/src/all/background_page/controller/move/moveResourcesController.js +83 -62
  164. package/src/all/background_page/controller/move/moveResourcesController.test.js +117 -0
  165. package/src/all/background_page/controller/organizationSettings/getOrganizationSettingsController.js +55 -0
  166. package/src/all/background_page/controller/organizationSettings/getOrganizationSettingsController.test.js +45 -0
  167. package/src/all/background_page/controller/passwordExpiry/deletePasswordExpirySettingsController.js +55 -0
  168. package/src/all/background_page/controller/passwordExpiry/deletePasswordExpirySettingsController.test.js +66 -0
  169. package/src/all/background_page/controller/passwordExpiry/getOrFindPasswordExpirySettingsController.js +56 -0
  170. package/src/all/background_page/controller/passwordExpiry/getOrFindPasswordExpirySettingsController.test.js +113 -0
  171. package/src/all/background_page/controller/passwordExpiry/savePasswordExpirySettingsController.js +62 -0
  172. package/src/all/background_page/controller/passwordExpiry/savePasswordExpirySettingsController.test.js +108 -0
  173. package/src/all/background_page/controller/passwordPolicies/findPasswordPoliciesController.js +58 -0
  174. package/src/all/background_page/controller/passwordPolicies/findPasswordPoliciesController.test.js +90 -0
  175. package/src/all/background_page/controller/passwordPolicies/getOrFindPasswordPoliciesController.js +88 -0
  176. package/src/all/background_page/controller/passwordPolicies/getOrFindPasswordPoliciesController.test.js +177 -0
  177. package/src/all/background_page/controller/passwordPolicies/savePasswordPoliciesController.js +54 -0
  178. package/src/all/background_page/controller/passwordPolicies/savePasswordPoliciesController.test.js +87 -0
  179. package/src/all/background_page/controller/port/generatePortIdController.js +91 -0
  180. package/src/all/background_page/controller/port/generatePortIdController.test.js +123 -0
  181. package/src/all/background_page/controller/port/removePortController.js +105 -0
  182. package/src/all/background_page/controller/port/removePortController.test.js +162 -0
  183. package/src/all/background_page/controller/publicWebsiteSignIn/publicWebsiteSignInController.js +50 -0
  184. package/src/all/background_page/controller/publicWebsiteSignIn/publicWebsiteSignInController.test.js +45 -0
  185. package/src/all/background_page/controller/rbac/findMeController.js +55 -0
  186. package/src/all/background_page/controller/rbac/findMeController.test.js +49 -0
  187. package/src/all/background_page/controller/recover/abortAndRequestHelpController.js +55 -0
  188. package/src/all/background_page/controller/recover/abortAndRequestHelpController.test.js +42 -0
  189. package/src/all/background_page/controller/recover/completeRecoverController.js +64 -0
  190. package/src/all/background_page/controller/recover/completeRecoverController.test.js +77 -0
  191. package/src/all/background_page/controller/recover/generateRecoverAccountRecoveryRequestKeyController.js +74 -0
  192. package/src/all/background_page/controller/recover/generateRecoverAccountRecoveryRequestKeyController.test.js +52 -0
  193. package/src/all/background_page/controller/recover/hasRecoverUserEnabledAccountRecoveryController.js +51 -0
  194. package/src/all/background_page/controller/recover/hasRecoverUserEnabledAccountRecoveryController.test.js +42 -0
  195. package/src/all/background_page/controller/recover/importRecoverPrivateKeyController.js +86 -0
  196. package/src/all/background_page/controller/recover/importRecoverPrivateKeyController.test.js +148 -0
  197. package/src/all/background_page/controller/recover/requestAccountRecoveryController.js +74 -0
  198. package/src/all/background_page/controller/recover/requestAccountRecoveryController.test.js +66 -0
  199. package/src/all/background_page/controller/recover/startRecoverController.js +114 -0
  200. package/src/all/background_page/controller/recover/startRecoverController.test.js +137 -0
  201. package/src/all/background_page/controller/rememberMe/getUserRememberMeLatestChoiceController.js +55 -0
  202. package/src/all/background_page/controller/rememberMe/getUserRememberMeLatestChoiceController.test.js +50 -0
  203. package/src/all/background_page/controller/resource/resourceCreateController.js +53 -47
  204. package/src/all/background_page/controller/resource/resourceUpdateController.js +44 -39
  205. package/src/all/background_page/controller/resource/setResourcesExpiryDateController.js +74 -0
  206. package/src/all/background_page/controller/resource/setResourcesExpiryDateController.test.js +94 -0
  207. package/src/all/background_page/controller/resourceGridSetting/getResourceGridUserSettingController.js +53 -0
  208. package/src/all/background_page/controller/resourceGridSetting/getResourceGridUserSettingController.test.js +60 -0
  209. package/src/all/background_page/controller/resourceGridSetting/setResourceGridUserSettingController.js +56 -0
  210. package/src/all/background_page/controller/resourceGridSetting/setResourceGridUserSettingController.test.js +51 -0
  211. package/src/all/background_page/controller/secret/pownedPasswordController.js +54 -0
  212. package/src/all/background_page/controller/secret/pownedPasswordController.test.js +61 -0
  213. package/src/all/background_page/controller/secret/secretDecryptController.js +39 -46
  214. package/src/all/background_page/controller/secret/secretDecryptController.test.js +180 -0
  215. package/src/all/background_page/controller/setup/completeSetupController.js +63 -0
  216. package/src/all/background_page/controller/setup/completeSetupController.test.js +77 -0
  217. package/src/all/background_page/controller/setup/downloadRecoverKitController.js +59 -0
  218. package/src/all/background_page/controller/setup/downloadRecoverKitController.test.js +57 -0
  219. package/src/all/background_page/controller/setup/generateSetupKeyPairController.js +93 -0
  220. package/src/all/background_page/controller/setup/generateSetupKeyPairController.test.js +98 -0
  221. package/src/all/background_page/controller/setup/getAccountRecoveryOrganizationPolicyController.js +51 -0
  222. package/src/all/background_page/controller/setup/getAccountRecoveryOrganizationPolicyController.test.js +41 -0
  223. package/src/all/background_page/controller/setup/getAndInitSetupLocaleController.js +76 -0
  224. package/src/all/background_page/controller/setup/getAndInitSetupLocaleController.test.js +107 -0
  225. package/src/all/background_page/controller/setup/getUserPassphrasePoliciesController.js +54 -0
  226. package/src/all/background_page/controller/setup/getUserPassphrasePoliciesController.test.js +40 -0
  227. package/src/all/background_page/controller/setup/importSetupPrivateKeyController.js +94 -0
  228. package/src/all/background_page/controller/setup/importSetupPrivateKeyController.test.js +153 -0
  229. package/src/all/background_page/controller/setup/setSetupAccountRecoveryUserSettingController.js +98 -0
  230. package/src/all/background_page/controller/setup/setSetupAccountRecoveryUserSettingController.test.js +71 -0
  231. package/src/all/background_page/controller/setup/setSetupLocaleController.js +63 -0
  232. package/src/all/background_page/controller/setup/setSetupLocaleController.test.js +57 -0
  233. package/src/all/background_page/controller/setup/setSetupSecurityTokenController.js +55 -0
  234. package/src/all/background_page/controller/setup/setSetupSecurityTokenController.test.js +32 -0
  235. package/src/all/background_page/controller/setup/signInSetupController.js +85 -0
  236. package/src/all/background_page/controller/setup/signInSetupController.test.js +104 -0
  237. package/src/all/background_page/controller/setup/startSetupController.js +120 -0
  238. package/src/all/background_page/controller/setup/startSetupController.test.js +168 -0
  239. package/src/all/background_page/controller/setup/verifyImportedKeyPassphraseController.js +72 -0
  240. package/src/all/background_page/controller/setup/verifyImportedKeyPassphraseController.test.js +63 -0
  241. package/src/all/background_page/controller/share/shareFoldersController.js +62 -53
  242. package/src/all/background_page/controller/share/shareFoldersController.test.data.js +113 -0
  243. package/src/all/background_page/controller/share/shareFoldersController.test.js +242 -0
  244. package/src/all/background_page/controller/share/shareResourcesController.js +32 -32
  245. package/src/all/background_page/controller/share/shareResourcesController.test.data.js +129 -0
  246. package/src/all/background_page/controller/share/shareResourcesController.test.js +255 -0
  247. package/src/all/background_page/controller/sso/activateSsoSettingsController.js +61 -0
  248. package/src/all/background_page/controller/sso/activateSsoSettingsController.test.js +72 -0
  249. package/src/all/background_page/controller/sso/deleteLocalSsoKitController.js +52 -0
  250. package/src/all/background_page/controller/sso/deleteLocalSsoKitController.test.js +29 -0
  251. package/src/all/background_page/controller/sso/deleteSsoSettingsController.js +59 -0
  252. package/src/all/background_page/controller/sso/deleteSsoSettingsController.test.js +52 -0
  253. package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.js +56 -0
  254. package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.test.data.js +51 -0
  255. package/src/all/background_page/controller/sso/getCurrentSsoSettingsController.test.js +38 -0
  256. package/src/all/background_page/controller/sso/getLocalSsoProviderConfiguredController.js +62 -0
  257. package/src/all/background_page/controller/sso/getLocalSsoProviderConfiguredController.test.js +51 -0
  258. package/src/all/background_page/controller/sso/getQualifiedSsoLoginErrorController.js +56 -0
  259. package/src/all/background_page/controller/sso/getQualifiedSsoLoginErrorController.test.js +75 -0
  260. package/src/all/background_page/controller/sso/hasSsoLoginErrorController.js +53 -0
  261. package/src/all/background_page/controller/sso/hasSsoLoginErrorController.test.js +46 -0
  262. package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.js +58 -0
  263. package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.test.data.js +35 -0
  264. package/src/all/background_page/controller/sso/saveSsoSettingsAsDraftController.test.js +67 -0
  265. package/src/all/background_page/controller/sso/ssoAuthenticationController.js +159 -0
  266. package/src/all/background_page/controller/sso/ssoAuthenticationController.test.js +342 -0
  267. package/src/all/background_page/controller/sso/testSsoAuthenticationController.js +72 -0
  268. package/src/all/background_page/controller/sso/testSsoAuthenticationController.test.js +109 -0
  269. package/src/all/background_page/controller/sso/updateLocalSsoProviderController.js +56 -0
  270. package/src/all/background_page/controller/sso/updateLocalSsoProviderController.test.js +53 -0
  271. package/src/all/background_page/controller/subscription/subscriptionController.js +53 -0
  272. package/src/all/background_page/controller/tabsController.js +15 -14
  273. package/src/all/background_page/controller/tag/tagController.js +115 -0
  274. package/src/all/background_page/controller/toolbarController.js +228 -39
  275. package/src/all/background_page/controller/toolbarController.test.js +210 -0
  276. package/src/all/background_page/controller/user/getOrFindLoggedInUserController.js +56 -0
  277. package/src/all/background_page/controller/user/getOrFindLoggedInUserController.test.js +92 -0
  278. package/src/all/background_page/controller/user/updateUserController.js +57 -0
  279. package/src/all/background_page/controller/user/updateUserController.test.js +88 -0
  280. package/src/all/background_page/controller/user/updateUserLocalStorageController.js +56 -0
  281. package/src/all/background_page/controller/user/updateUserLocalStorageController.test.js +62 -0
  282. package/src/all/background_page/controller/userPassphrasePolicies/findUserPassphrasePoliciesController.js +52 -0
  283. package/src/all/background_page/controller/userPassphrasePolicies/findUserPassphrasePoliciesController.test.js +70 -0
  284. package/src/all/background_page/controller/userPassphrasePolicies/saveUserPassphrasePoliciesController.js +55 -0
  285. package/src/all/background_page/controller/userPassphrasePolicies/saveUserPassphrasePoliciesController.test.js +76 -0
  286. package/src/all/background_page/controller/webIntegration/webIntegrationController.js +54 -0
  287. package/src/all/background_page/error/GpgKeyError.js +1 -1
  288. package/src/all/background_page/error/badSignatureMessageGpgKeyError.js +22 -0
  289. package/src/all/background_page/error/deleteDryRunError.js +10 -8
  290. package/src/all/background_page/error/error.js +14 -6
  291. package/src/all/background_page/error/externalServiceError.js +17 -0
  292. package/src/all/background_page/error/externalServiceUnavailableError.js +17 -0
  293. package/src/all/background_page/error/fileFormatError.js +1 -1
  294. package/src/all/background_page/error/fileTypeError.js +1 -1
  295. package/src/all/background_page/error/importError.js +2 -2
  296. package/src/all/background_page/error/invalidMasterPasswordError.js +4 -4
  297. package/src/all/background_page/error/keyIsExpiredError.js +1 -1
  298. package/src/all/background_page/error/mfaAuthenticationRequiredError.js +10 -4
  299. package/src/all/background_page/error/notFoundError.js +3 -4
  300. package/src/all/background_page/error/outdatedSsoKitError.js +22 -0
  301. package/src/all/background_page/error/passboltBadResponseError.js +7 -3
  302. package/src/all/background_page/error/passboltServiceUnavailableError.js +4 -3
  303. package/src/all/background_page/error/passboltSubscriptionError.js +19 -0
  304. package/src/all/background_page/error/serverKeyChangedError.js +1 -1
  305. package/src/all/background_page/error/ssoDisabledError.js +21 -0
  306. package/src/all/background_page/error/ssoProviderMismatchError.js +22 -0
  307. package/src/all/background_page/error/ssoSettingsChangedError.js +21 -0
  308. package/src/all/background_page/error/userAbortsOperationError.js +2 -2
  309. package/src/all/background_page/error/userAlreadyLoggedInError.js +21 -0
  310. package/src/all/background_page/error/wrongOrganizationRecoveryKeyError.js +23 -0
  311. package/src/all/background_page/event/accountRecoveryEvents.js +89 -0
  312. package/src/all/background_page/event/actionLogEvents.js +11 -8
  313. package/src/all/background_page/event/appBootstrapEvents.js +6 -6
  314. package/src/all/background_page/event/appEvents.js +250 -5
  315. package/src/all/background_page/event/authEvents.js +125 -74
  316. package/src/all/background_page/event/clipboardEvents.js +21 -17
  317. package/src/all/background_page/event/commentEvents.js +25 -38
  318. package/src/all/background_page/event/configEvents.js +31 -24
  319. package/src/all/background_page/event/exportResourcesEvents.js +13 -30
  320. package/src/all/background_page/event/favoriteEvents.js +8 -12
  321. package/src/all/background_page/event/folderEvents.js +25 -25
  322. package/src/all/background_page/event/groupEvents.js +32 -31
  323. package/src/all/background_page/event/importResourcesEvents.js +12 -7
  324. package/src/all/background_page/event/informCallToActionEvents.js +60 -0
  325. package/src/all/background_page/event/informMenuEvents.js +99 -0
  326. package/src/all/background_page/event/keyringEvents.js +56 -95
  327. package/src/all/background_page/event/localeEvents.js +61 -0
  328. package/src/all/background_page/event/mfaEvents.js +77 -0
  329. package/src/all/background_page/event/mobileEvents.js +77 -0
  330. package/src/all/background_page/event/multiFactorAuthenticationEvents.js +11 -8
  331. package/src/all/background_page/event/organizationSettingsEvents.js +38 -0
  332. package/src/all/background_page/event/passwordPoliciesEvents.js +41 -0
  333. package/src/all/background_page/event/portEvents.js +30 -0
  334. package/src/all/background_page/event/pownedPasswordEvents.js +30 -0
  335. package/src/all/background_page/event/publicWebsiteSignInEvents.js +30 -0
  336. package/src/all/background_page/event/quickAccessEvents.js +110 -30
  337. package/src/all/background_page/event/recoverEvents.js +114 -102
  338. package/src/all/background_page/event/rememberMeEvents.js +29 -0
  339. package/src/all/background_page/event/resourceEvents.js +59 -27
  340. package/src/all/background_page/event/resourceTypeEvents.js +10 -7
  341. package/src/all/background_page/event/roleEvents.js +15 -13
  342. package/src/all/background_page/event/secretEvents.js +25 -17
  343. package/src/all/background_page/event/setupEvents.js +98 -131
  344. package/src/all/background_page/event/shareEvents.js +23 -46
  345. package/src/all/background_page/event/subscriptionEvents.js +57 -0
  346. package/src/all/background_page/event/tabEvents.js +13 -29
  347. package/src/all/background_page/event/tagEvents.js +32 -18
  348. package/src/all/background_page/event/themeEvents.js +15 -13
  349. package/src/all/background_page/event/userEvents.js +95 -74
  350. package/src/all/background_page/event/webIntegrationEvents.js +38 -0
  351. package/src/all/background_page/index.html +0 -1
  352. package/src/all/background_page/index.js +68 -88
  353. package/src/all/background_page/model/account/accountModel.js +46 -10
  354. package/src/all/background_page/model/accountRecovery/accountRecoveryModel.js +181 -0
  355. package/src/all/background_page/model/actionLog/actionLogModel.js +9 -7
  356. package/src/all/background_page/model/auth/authModel.js +33 -29
  357. package/src/all/background_page/model/auth/authModel.test.js +40 -0
  358. package/src/all/background_page/model/comment/commentModel.js +4 -4
  359. package/src/all/background_page/model/config.js +33 -28
  360. package/src/all/background_page/model/desktopTransfer/desktopTransferModel.js +34 -0
  361. package/src/all/background_page/model/desktopTransfer/desktopTransferModel.test.js +50 -0
  362. package/src/all/background_page/model/entity/account/abstractAccountEntity.js +312 -0
  363. package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.js +268 -0
  364. package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.test.data.js +51 -0
  365. package/src/all/background_page/model/entity/account/accountAccountRecoveryEntity.test.js +123 -0
  366. package/src/all/background_page/model/entity/account/accountEntity.js +112 -112
  367. package/src/all/background_page/model/entity/account/accountEntity.test.data.js +60 -0
  368. package/src/all/background_page/model/entity/account/accountEntity.test.js +126 -0
  369. package/src/all/background_page/model/entity/account/accountKitEntity.js +118 -0
  370. package/src/all/background_page/model/entity/account/accountKitEntity.test.data.js +25 -0
  371. package/src/all/background_page/model/entity/account/accountKitEntity.test.js +101 -0
  372. package/src/all/background_page/model/entity/account/accountRecoverEntity.js +260 -0
  373. package/src/all/background_page/model/entity/account/accountRecoverEntity.test.data.js +72 -0
  374. package/src/all/background_page/model/entity/account/accountSetupEntity.js +242 -0
  375. package/src/all/background_page/model/entity/account/accountSetupEntity.test.data.js +65 -0
  376. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.js +159 -0
  377. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.test.data.js +50 -0
  378. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyChangeEntity.test.js +62 -0
  379. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.js +375 -0
  380. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.test.data.js +170 -0
  381. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPolicyEntity.test.js +179 -0
  382. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.js +175 -0
  383. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.test.data.js +85 -0
  384. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryOrganizationPublicKeyEntity.test.js +117 -0
  385. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.js +177 -0
  386. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.test.data.js +76 -0
  387. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyEntity.test.js +41 -0
  388. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordDecryptedDataEntity.js +166 -0
  389. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordDecryptedDataEntity.test.data.js +29 -0
  390. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.js +172 -0
  391. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.test.data.js +75 -0
  392. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordEntity.test.js +87 -0
  393. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordsCollection.js +205 -0
  394. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryPrivateKeyPasswordsCollection.test.js +160 -0
  395. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestCreateEntity.js +126 -0
  396. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.js +232 -0
  397. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.data.js +102 -0
  398. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.fixtures.js +38 -0
  399. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestEntity.test.js +101 -0
  400. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestsCollection.js +196 -0
  401. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryRequestsCollection.test.js +165 -0
  402. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.js +189 -0
  403. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.test.data.js +92 -0
  404. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponseEntity.test.js +65 -0
  405. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryResponsesCollection.js +196 -0
  406. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.js +193 -0
  407. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.test.data.js +45 -0
  408. package/src/all/background_page/model/entity/accountRecovery/accountRecoveryUserSettingEntity.test.js +125 -0
  409. package/src/all/background_page/model/entity/accountRecovery/pendingAccountRecoveryRequestEntity.js +106 -0
  410. package/src/all/background_page/model/entity/accountRecovery/pendingAccountRecoveryRequestEntity.test.js +72 -0
  411. package/src/all/background_page/model/entity/actionLog/abstractActionLogEntity.js +31 -24
  412. package/src/all/background_page/model/entity/actionLog/actionLogsCollection.js +39 -32
  413. package/src/all/background_page/model/entity/actionLog/defaultActionLog.test.js +9 -16
  414. package/src/all/background_page/model/entity/actionLog/defaultActionLogEntity.js +11 -13
  415. package/src/all/background_page/model/entity/actionLog/permissionsUpdatedActionLogEntity.js +28 -26
  416. package/src/all/background_page/model/entity/auth/auth.test.data.js +23 -0
  417. package/src/all/background_page/model/entity/authenticationToken/authenticationTokenEntity.js +94 -20
  418. package/src/all/background_page/model/entity/authenticationToken/authenticationTokenEntity.test.js +99 -0
  419. package/src/all/background_page/model/entity/avatar/avatarEntity.js +17 -44
  420. package/src/all/background_page/model/entity/avatar/avatarEntity.test.js +126 -49
  421. package/src/all/background_page/model/entity/avatar/update/avatarUpdateEntity.js +22 -18
  422. package/src/all/background_page/model/entity/comment/commentEntity.js +32 -27
  423. package/src/all/background_page/model/entity/comment/commentEntity.test.js +18 -25
  424. package/src/all/background_page/model/entity/comment/comments.test.data.js +45 -0
  425. package/src/all/background_page/model/entity/comment/commentsCollection.js +34 -27
  426. package/src/all/background_page/model/entity/comment/commentsCollection.test.js +5 -12
  427. package/src/all/background_page/model/entity/export/exportResourcesFileEntity.js +130 -42
  428. package/src/all/background_page/model/entity/favorite/favoriteEntity.js +18 -42
  429. package/src/all/background_page/model/entity/favorite/favoriteEntity.test.js +113 -59
  430. package/src/all/background_page/model/entity/folder/external/externalFolderEntity.js +87 -41
  431. package/src/all/background_page/model/entity/folder/external/externalFolderEntity.test.js +85 -20
  432. package/src/all/background_page/model/entity/folder/external/externalFoldersCollection.js +73 -31
  433. package/src/all/background_page/model/entity/folder/external/externalFoldersCollection.test.js +16 -15
  434. package/src/all/background_page/model/entity/folder/folderEntity.js +55 -46
  435. package/src/all/background_page/model/entity/folder/folderEntity.test.js +364 -205
  436. package/src/all/background_page/model/entity/folder/foldersCollection.js +53 -41
  437. package/src/all/background_page/model/entity/folder/foldersCollection.test.js +21 -26
  438. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyCollection.js +88 -0
  439. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyCollection.test.js +40 -0
  440. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.js +309 -0
  441. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.data.js +33 -0
  442. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.fixtures.js +111 -0
  443. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyEntity.test.js +89 -0
  444. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyPairEntity.js +140 -0
  445. package/src/all/background_page/model/entity/gpgkey/external/externalGpgKeyPairEntity.test.js +57 -0
  446. package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.js +215 -0
  447. package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.test.data.js +33 -0
  448. package/src/all/background_page/model/entity/gpgkey/generate/generateGpgKeyPairOptionsEntity.test.js +87 -0
  449. package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.js +22 -20
  450. package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.test.fixtures.js +17 -2
  451. package/src/all/background_page/model/entity/gpgkey/gpgkeyEntity.test.js +4 -12
  452. package/src/all/background_page/model/entity/gpgkey/privateGpgkeyEntity.js +83 -0
  453. package/src/all/background_page/model/entity/gpgkey/privateGpgkeyEntity.test.js +49 -0
  454. package/src/all/background_page/model/entity/group/groupEntity.js +37 -31
  455. package/src/all/background_page/model/entity/group/groupEntity.test.data.js +42 -0
  456. package/src/all/background_page/model/entity/group/groupEntity.test.fixtures.js +1 -1
  457. package/src/all/background_page/model/entity/group/groupEntity.test.js +2 -9
  458. package/src/all/background_page/model/entity/group/groupsCollection.js +44 -34
  459. package/src/all/background_page/model/entity/group/groupsCollection.test.js +5 -12
  460. package/src/all/background_page/model/entity/group/transfer/groupDeleteTransfer.js +29 -24
  461. package/src/all/background_page/model/entity/group/transfer/groupDeleteTransfer.test.js +6 -15
  462. package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.js +27 -24
  463. package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.test.data.js +24 -0
  464. package/src/all/background_page/model/entity/group/update/groupUpdateDryRunResultEntity.test.js +1 -8
  465. package/src/all/background_page/model/entity/group/update/groupUpdateEntity.js +35 -30
  466. package/src/all/background_page/model/entity/group/update/groupUpdateEntity.test.js +6 -13
  467. package/src/all/background_page/model/entity/groupUser/change/groupUserChangeEntity.js +19 -18
  468. package/src/all/background_page/model/entity/groupUser/change/groupUserChangeEntity.test.js +2 -9
  469. package/src/all/background_page/model/entity/groupUser/change/groupUserChangesCollection.js +25 -22
  470. package/src/all/background_page/model/entity/groupUser/groupUserEntity.js +28 -22
  471. package/src/all/background_page/model/entity/groupUser/groupUserEntity.test.fixtures.js +1 -1
  472. package/src/all/background_page/model/entity/groupUser/groupUserEntity.test.js +2 -9
  473. package/src/all/background_page/model/entity/groupUser/groupUsersEntity.test.data.js +38 -0
  474. package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.js +36 -28
  475. package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.test.fixtures.js +1 -1
  476. package/src/all/background_page/model/entity/groupUser/groupsUsersCollection.test.js +2 -9
  477. package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfer.test.js +9 -16
  478. package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransferEntity.js +17 -17
  479. package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfersCollection.js +19 -17
  480. package/src/all/background_page/model/entity/groupUser/transfer/groupUserTransfersCollection.test.js +3 -10
  481. package/src/all/background_page/model/entity/import/importResourcesFileEntity.js +39 -32
  482. package/src/all/background_page/model/entity/import/importResourcesFileEntity.test.js +10 -15
  483. package/src/all/background_page/model/entity/locale/localeEntity.js +91 -0
  484. package/src/all/background_page/model/entity/locale/localeEntity.test.js +55 -0
  485. package/src/all/background_page/model/entity/locale/localesCollection.js +96 -0
  486. package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.data.js +42 -0
  487. package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.js +142 -0
  488. package/src/all/background_page/model/entity/mfa/mfaCombinedEnabledProvidersEntity.test.js +66 -0
  489. package/src/all/background_page/model/entity/mfa/mfaEnabledProviderEntity.js +104 -0
  490. package/src/all/background_page/model/entity/mfa/mfaEnabledProviderEntity.test.js +45 -0
  491. package/src/all/background_page/model/entity/mfa/mfaPolicyEntity.data.js +24 -0
  492. package/src/all/background_page/model/entity/mfa/mfaPolicyEntity.js +120 -0
  493. package/src/all/background_page/model/entity/mfa/mfaProviderEntity.js +86 -0
  494. package/src/all/background_page/model/entity/mfa/mfaProviderEntity.test.data.js +21 -0
  495. package/src/all/background_page/model/entity/mfa/mfaProviderEntity.test.js +49 -0
  496. package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.js +70 -0
  497. package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.test.data.js +29 -0
  498. package/src/all/background_page/model/entity/mfa/mfaSetupTotpEntity.test.js +51 -0
  499. package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.js +66 -0
  500. package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.test.data.js +21 -0
  501. package/src/all/background_page/model/entity/mfa/mfaSetupYubikeyEntity.test.js +54 -0
  502. package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.js +67 -0
  503. package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.test.data.js +20 -0
  504. package/src/all/background_page/model/entity/mfa/mfaTotpSetupInfoEntity.test.js +67 -0
  505. package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.js +66 -0
  506. package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.test.data.js +21 -0
  507. package/src/all/background_page/model/entity/mfa/mfaVerifyProviderEntity.test.js +49 -0
  508. package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.js +256 -0
  509. package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.test.data.js +254 -0
  510. package/src/all/background_page/model/entity/organizationSettings/organizationSettingsEntity.test.js +53 -0
  511. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceCollection.test.data.js +22 -0
  512. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceCollection.test.js +46 -0
  513. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.js +110 -0
  514. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.test.data.js +36 -0
  515. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourceEntity.test.js +104 -0
  516. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourcesCollection.js +147 -0
  517. package/src/all/background_page/model/entity/passwordExpiry/passwordExpiryResourcesCollection.test.js +69 -0
  518. package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.js +110 -0
  519. package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.test.data.js +24 -0
  520. package/src/all/background_page/model/entity/passwordPolicies/passphraseGeneratorSettingsEntity.test.js +80 -0
  521. package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.js +145 -0
  522. package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.test.data.js +33 -0
  523. package/src/all/background_page/model/entity/passwordPolicies/passwordGeneratorSettingsEntity.test.js +88 -0
  524. package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.js +204 -0
  525. package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.test.data.js +26 -0
  526. package/src/all/background_page/model/entity/passwordPolicies/passwordPoliciesEntity.test.js +106 -0
  527. package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionEntity.js +28 -26
  528. package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionEntity.test.js +6 -13
  529. package/src/all/background_page/model/entity/permission/actionLog/updatedPermissionsCollection.js +33 -27
  530. package/src/all/background_page/model/entity/permission/change/permissionChangeEntity.js +26 -22
  531. package/src/all/background_page/model/entity/permission/change/permissionChangesCollection.js +37 -32
  532. package/src/all/background_page/model/entity/permission/change/permissionChangesCollection.test.js +88 -105
  533. package/src/all/background_page/model/entity/permission/permissionEntity.js +53 -39
  534. package/src/all/background_page/model/entity/permission/permissionEntity.test.js +9 -16
  535. package/src/all/background_page/model/entity/permission/permissionsCollection.js +89 -70
  536. package/src/all/background_page/model/entity/permission/permissionsCollection.test.js +49 -55
  537. package/src/all/background_page/model/entity/permission/transfer/permissionTransfer.test.js +9 -16
  538. package/src/all/background_page/model/entity/permission/transfer/permissionTransferEntity.js +17 -17
  539. package/src/all/background_page/model/entity/permission/transfer/permissionTransfersCollection.js +19 -17
  540. package/src/all/background_page/model/entity/permission/transfer/permissionTransfersCollection.test.js +3 -10
  541. package/src/all/background_page/model/entity/plaintext/plaintextEntity.js +50 -8
  542. package/src/all/background_page/model/entity/profile/profileEntity.js +36 -30
  543. package/src/all/background_page/model/entity/profile/profileEntity.test.js +198 -114
  544. package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.js +81 -0
  545. package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.test.data.js +20 -0
  546. package/src/all/background_page/model/entity/rememberMe/userRememberMeLatestChoiceEntity.test.js +44 -0
  547. package/src/all/background_page/model/entity/resource/external/externalResourceEntity.js +70 -36
  548. package/src/all/background_page/model/entity/resource/external/externalResourceEntity.test.js +50 -16
  549. package/src/all/background_page/model/entity/resource/external/externalResourcesCollection.js +32 -28
  550. package/src/all/background_page/model/entity/resource/external/externalResourcesCollection.test.js +4 -11
  551. package/src/all/background_page/model/entity/resource/resourceEntity.js +115 -57
  552. package/src/all/background_page/model/entity/resource/resourceEntity.test.js +8 -15
  553. package/src/all/background_page/model/entity/resource/resourcesCollection.js +148 -39
  554. package/src/all/background_page/model/entity/resource/resourcesCollection.test.data.js +66 -0
  555. package/src/all/background_page/model/entity/resource/resourcesCollection.test.js +135 -26
  556. package/src/all/background_page/model/entity/resourceType/resourceTypeEntity.js +23 -17
  557. package/src/all/background_page/model/entity/resourceType/resourceTypeEntity.test.js +9 -16
  558. package/src/all/background_page/model/entity/resourceType/resourceTypesCollection.js +95 -30
  559. package/src/all/background_page/model/entity/resourceType/resourceTypesCollection.test.js +158 -0
  560. package/src/all/background_page/model/entity/secret/needed/neededSecretEntity.js +20 -18
  561. package/src/all/background_page/model/entity/secret/needed/neededSecretsCollection.js +23 -20
  562. package/src/all/background_page/model/entity/secret/resource/resourceSecretsCollection.js +37 -28
  563. package/src/all/background_page/model/entity/secret/secretEntity.js +20 -19
  564. package/src/all/background_page/model/entity/secret/secretEntity.test.data.js +27 -0
  565. package/src/all/background_page/model/entity/secret/secretEntity.test.js +13 -20
  566. package/src/all/background_page/model/entity/secret/secretsCollection.js +37 -28
  567. package/src/all/background_page/model/entity/securityToken/SecurityTokenEntity.test.data.js +23 -0
  568. package/src/all/background_page/model/entity/securityToken/securityTokenEntity.js +17 -16
  569. package/src/all/background_page/model/entity/securityToken/securityTokenEntity.test.js +7 -14
  570. package/src/all/background_page/model/entity/sso/ssoKitClientPart.test.data.js +31 -0
  571. package/src/all/background_page/model/entity/sso/ssoKitClientPartEntity.js +274 -0
  572. package/src/all/background_page/model/entity/sso/ssoKitClientPartEntity.test.js +131 -0
  573. package/src/all/background_page/model/entity/sso/ssoKitServerPart.test.data.js +18 -0
  574. package/src/all/background_page/model/entity/sso/ssoKitServerPartEntity.js +169 -0
  575. package/src/all/background_page/model/entity/sso/ssoKitServerPartEntity.test.js +87 -0
  576. package/src/all/background_page/model/entity/sso/ssoLoginUrlEntity.js +127 -0
  577. package/src/all/background_page/model/entity/sso/ssoLoginUrlEntity.test.js +89 -0
  578. package/src/all/background_page/model/entity/subscription/subscriptionEntity.js +113 -0
  579. package/src/all/background_page/model/entity/subscription/subscriptionEntity.test.js +75 -0
  580. package/src/all/background_page/model/entity/subscription/update/updateSubscriptionEntity.js +108 -0
  581. package/src/all/background_page/model/entity/subscription/update/updateSubscriptionEntity.test.js +55 -0
  582. package/src/all/background_page/model/entity/tag/tagEntity.js +20 -17
  583. package/src/all/background_page/model/entity/tag/tagEntity.test.data.js +31 -0
  584. package/src/all/background_page/model/entity/tag/tagEntity.test.js +16 -23
  585. package/src/all/background_page/model/entity/tag/tagsCollection.js +87 -46
  586. package/src/all/background_page/model/entity/tag/tagsCollection.test.js +199 -133
  587. package/src/all/background_page/model/entity/theme/change/ChangeThemeEntity.js +18 -18
  588. package/src/all/background_page/model/entity/theme/themeEntity.js +18 -17
  589. package/src/all/background_page/model/entity/theme/themeEntity.test.js +18 -17
  590. package/src/all/background_page/model/entity/theme/themesCollection.js +37 -28
  591. package/src/all/background_page/model/entity/totp/totpDto.test.data.js +29 -0
  592. package/src/all/background_page/model/entity/totp/totpEntity.js +202 -0
  593. package/src/all/background_page/model/entity/totp/totpEntity.test.js +111 -0
  594. package/src/all/background_page/model/entity/transfer/transferEntity.js +218 -0
  595. package/src/all/background_page/model/entity/transfer/transferEntity.test.js +111 -0
  596. package/src/all/background_page/model/entity/user/actionLog/loggedUserEntity.js +27 -24
  597. package/src/all/background_page/model/entity/user/actionLog/loggedUserEntity.test.js +6 -13
  598. package/src/all/background_page/model/entity/user/transfer/userDeleteTransfer.js +28 -25
  599. package/src/all/background_page/model/entity/user/transfer/userDeleteTransfer.test.js +9 -18
  600. package/src/all/background_page/model/entity/user/userEntity.js +113 -40
  601. package/src/all/background_page/model/entity/user/userEntity.test.fixtures.js +40 -5
  602. package/src/all/background_page/model/entity/user/userEntity.test.js +49 -20
  603. package/src/all/background_page/model/entity/user/usersCollection.js +41 -34
  604. package/src/all/background_page/model/entity/user/usersCollection.test.fixtures.js +18 -2
  605. package/src/all/background_page/model/entity/user/usersCollection.test.js +7 -14
  606. package/src/all/background_page/model/entity/worker/workerEntity.js +194 -0
  607. package/src/all/background_page/model/entity/worker/workerEntity.test.data.js +26 -0
  608. package/src/all/background_page/model/entity/worker/workerEntity.test.js +97 -0
  609. package/src/all/background_page/model/export/resources/argon2.test-lib.js +50 -0
  610. package/src/all/background_page/model/export/resources/csvRowComposer/abstractRowComposer.js +3 -1
  611. package/src/all/background_page/model/export/resources/csvRowComposer/csv1PasswordRowComposer.test.js +3 -10
  612. package/src/all/background_page/model/export/resources/csvRowComposer/csv1passwordRowComposer.js +4 -5
  613. package/src/all/background_page/model/export/resources/csvRowComposer/csvBitWardenRowComposer.js +52 -0
  614. package/src/all/background_page/model/export/resources/csvRowComposer/csvBitWardenRowComposer.test.js +36 -0
  615. package/src/all/background_page/model/export/resources/csvRowComposer/csvChromiumRowComposer.js +52 -0
  616. package/src/all/background_page/model/export/resources/csvRowComposer/csvChromiumRowComposer.test.js +34 -0
  617. package/src/all/background_page/model/export/resources/csvRowComposer/csvDashlaneRowComposer.js +52 -0
  618. package/src/all/background_page/model/export/resources/csvRowComposer/csvDashlaneRowComposer.test.js +35 -0
  619. package/src/all/background_page/model/export/resources/csvRowComposer/csvKdbxRowComposer.js +12 -6
  620. package/src/all/background_page/model/export/resources/csvRowComposer/csvKdbxRowComposer.test.js +30 -10
  621. package/src/all/background_page/model/export/resources/csvRowComposer/csvLastPassRowComposer.js +4 -5
  622. package/src/all/background_page/model/export/resources/csvRowComposer/csvLastPassRowComposer.test.js +2 -9
  623. package/src/all/background_page/model/export/resources/csvRowComposer/csvLogMeOnceRowComposer.js +52 -0
  624. package/src/all/background_page/model/export/resources/csvRowComposer/csvLogMeOnceRowComposer.test.js +36 -0
  625. package/src/all/background_page/model/export/resources/csvRowComposer/csvMozillaPlatformRowComposer.js +61 -0
  626. package/src/all/background_page/model/export/resources/csvRowComposer/csvMozillaPlatformRowComposer.test.js +39 -0
  627. package/src/all/background_page/model/export/resources/csvRowComposer/csvNordpassRowComposer.js +52 -0
  628. package/src/all/background_page/model/export/resources/csvRowComposer/csvNordpassRowComposer.test.js +36 -0
  629. package/src/all/background_page/model/export/resources/csvRowComposer/csvSafariRowComposer.js +52 -0
  630. package/src/all/background_page/model/export/resources/csvRowComposer/csvSafariRowComposer.test.js +35 -0
  631. package/src/all/background_page/model/export/resources/resourcesCsvExporter.js +22 -7
  632. package/src/all/background_page/model/export/resources/resourcesCsvExporter.test.js +24 -21
  633. package/src/all/background_page/model/export/resources/resourcesKdbxExporter.js +55 -11
  634. package/src/all/background_page/model/export/resources/resourcesKdbxExporter.test.js +127 -29
  635. package/src/all/background_page/model/export/resourcesExporter.js +4 -4
  636. package/src/all/background_page/model/favorite/favoriteModel.js +8 -6
  637. package/src/all/background_page/model/folder/folderModel.js +73 -55
  638. package/src/all/background_page/model/folder/folderModel.test.js +25 -29
  639. package/src/all/background_page/model/gpgAuthHeader.js +31 -34
  640. package/src/all/background_page/model/gpgAuthToken.js +13 -12
  641. package/src/all/background_page/model/gpgauth.js +72 -133
  642. package/src/all/background_page/model/group/groupModel.js +11 -13
  643. package/src/all/background_page/model/import/resources/csvRowParser/abstractCsvRowParser.js +4 -2
  644. package/src/all/background_page/model/import/resources/csvRowParser/csv1PasswordRowParser.js +6 -6
  645. package/src/all/background_page/model/import/resources/csvRowParser/csv1PasswordRowParser.test.js +7 -14
  646. package/src/all/background_page/model/import/resources/csvRowParser/csvBitWardenRowParser.js +65 -0
  647. package/src/all/background_page/model/import/resources/csvRowParser/csvBitWardenRowParser.test.js +74 -0
  648. package/src/all/background_page/model/import/resources/csvRowParser/csvChromiumRowParser.js +63 -0
  649. package/src/all/background_page/model/import/resources/csvRowParser/csvChromiumRowParser.test.js +69 -0
  650. package/src/all/background_page/model/import/resources/csvRowParser/csvDashlaneRowParser.js +68 -0
  651. package/src/all/background_page/model/import/resources/csvRowParser/csvDashlaneRowParser.test.js +71 -0
  652. package/src/all/background_page/model/import/resources/csvRowParser/csvKdbxRowParser.js +39 -15
  653. package/src/all/background_page/model/import/resources/csvRowParser/csvKdbxRowParser.test.js +53 -10
  654. package/src/all/background_page/model/import/resources/csvRowParser/csvLastPassRowParser.js +10 -8
  655. package/src/all/background_page/model/import/resources/csvRowParser/csvLastPassRowParser.test.js +2 -9
  656. package/src/all/background_page/model/import/resources/csvRowParser/csvLogMeOnceRowParser.js +66 -0
  657. package/src/all/background_page/model/import/resources/csvRowParser/csvLogMeOnceRowParser.test.js +74 -0
  658. package/src/all/background_page/model/import/resources/csvRowParser/csvMozillaPlatformRowParser.js +63 -0
  659. package/src/all/background_page/model/import/resources/csvRowParser/csvMozillaPlatformRowParser.test.js +67 -0
  660. package/src/all/background_page/model/import/resources/csvRowParser/csvNordpassRowParser.js +79 -0
  661. package/src/all/background_page/model/import/resources/csvRowParser/csvNordpassRowParser.test.js +74 -0
  662. package/src/all/background_page/model/import/resources/csvRowParser/csvSafariRowParser.js +65 -0
  663. package/src/all/background_page/model/import/resources/csvRowParser/csvSafariRowParser.test.js +71 -0
  664. package/src/all/background_page/model/import/resources/kdbx/kdbx-content-error-not-protected.kdbx +0 -0
  665. package/src/all/background_page/model/import/resources/kdbx/kdbx-protected-password.kdbx +0 -0
  666. package/src/all/background_page/model/import/resources/kdbx/kdbx-windows-with-totp-protected-password.kdbx +0 -0
  667. package/src/all/background_page/model/import/resources/kdbx/kdbx-with-totp-protected-password.kdbx +0 -0
  668. package/src/all/background_page/model/import/resources/resourcesCsvImportParser.js +36 -20
  669. package/src/all/background_page/model/import/resources/resourcesCsvImportParser.test.js +46 -40
  670. package/src/all/background_page/model/import/resources/resourcesKdbxImportParser.js +64 -35
  671. package/src/all/background_page/model/import/resources/resourcesKdbxImportParser.test.js +125 -35
  672. package/src/all/background_page/model/import/resourcesImportParser.js +6 -6
  673. package/src/all/background_page/model/import/resourcesImportParser.test.js +6 -16
  674. package/src/all/background_page/model/keyring.js +90 -214
  675. package/src/all/background_page/model/locale/localeModel.js +137 -0
  676. package/src/all/background_page/model/log.js +14 -35
  677. package/src/all/background_page/model/mobileTransfer/mobileTransferModel.js +63 -0
  678. package/src/all/background_page/model/multiFactorAuthentication/multiFactorAuthenticationModel.js +84 -4
  679. package/src/all/background_page/model/multiFactorAuthentication/multiFactorAuthenticationModel.test.js +84 -0
  680. package/src/all/background_page/model/organizationSettings/organizationSettingsModel.js +94 -0
  681. package/src/all/background_page/model/passwordExpiry/passwordExpiryResourceModel.js +49 -0
  682. package/src/all/background_page/model/passwordExpiry/passwordExpiryResourceModel.test.js +62 -0
  683. package/src/all/background_page/model/passwordExpiry/passwordExpirySettingsModel.js +110 -0
  684. package/src/all/background_page/model/passwordExpiry/passwordExpirySettingsModel.test.js +243 -0
  685. package/src/all/background_page/model/passwordPolicies/passwordPoliciesModel.js +86 -0
  686. package/src/all/background_page/model/passwordPolicies/passwordPoliciesModel.test.js +231 -0
  687. package/src/all/background_page/model/rbac/RbacModel.js +75 -0
  688. package/src/all/background_page/model/request.js +3 -3
  689. package/src/all/background_page/model/resource/resourceModel.js +186 -138
  690. package/src/all/background_page/model/resourceType/resourceTypeModel.js +20 -9
  691. package/src/all/background_page/model/role/roleModel.js +6 -6
  692. package/src/all/background_page/model/setup/setupModel.js +94 -41
  693. package/src/all/background_page/model/share/shareModel.js +165 -0
  694. package/src/all/background_page/model/sso/ssoDryRunModel.js +53 -0
  695. package/src/all/background_page/model/sso/ssoKitServerPartModel.js +71 -0
  696. package/src/all/background_page/model/sso/ssoLoginModel.js +46 -0
  697. package/src/all/background_page/model/sso/ssoSettingsModel.js +88 -0
  698. package/src/all/background_page/model/subscription/subscriptionModel.js +81 -0
  699. package/src/all/background_page/model/tag/tagModel.js +21 -17
  700. package/src/all/background_page/model/theme/themeModel.js +16 -11
  701. package/src/all/background_page/model/toolbar.js +8 -16
  702. package/src/all/background_page/model/user/userModel.js +88 -29
  703. package/src/all/background_page/model/user.js +78 -191
  704. package/src/all/background_page/model/userPassphrasePolicies/userPassphrasePoliciesModel.js +57 -0
  705. package/src/all/background_page/model/userPassphrasePolicies/userPassphrasePoliciesModel.test.js +136 -0
  706. package/src/all/background_page/model/userSettings/userSettings.js +80 -34
  707. package/src/all/background_page/model/userSettings/userSettings.test.js +26 -25
  708. package/src/all/background_page/pagemod/accountRecoveryBootstrapPagemod.js +79 -0
  709. package/src/all/background_page/pagemod/accountRecoveryBootstrapPagemod.test.js +96 -0
  710. package/src/all/background_page/pagemod/accountRecoveryPagemod.js +61 -0
  711. package/src/all/background_page/pagemod/accountRecoveryPagemod.test.js +87 -0
  712. package/src/all/background_page/pagemod/appBootstrapPagemod.js +104 -0
  713. package/src/all/background_page/pagemod/appBootstrapPagemod.test.js +124 -0
  714. package/src/all/background_page/pagemod/appPagemod.js +111 -56
  715. package/src/all/background_page/pagemod/appPagemod.test.js +184 -0
  716. package/src/all/background_page/pagemod/authBootstrapPagemod.js +77 -51
  717. package/src/all/background_page/pagemod/authBootstrapPagemod.test.js +110 -0
  718. package/src/all/background_page/pagemod/authPagemod.js +61 -35
  719. package/src/all/background_page/pagemod/authPagemod.test.js +86 -0
  720. package/src/all/background_page/pagemod/filePagemod.js +24 -31
  721. package/src/all/background_page/pagemod/filePagemod.test.js +53 -0
  722. package/src/all/background_page/pagemod/informCallToActionPagemod.js +59 -0
  723. package/src/all/background_page/pagemod/informCallToActionPagemod.test.js +67 -0
  724. package/src/all/background_page/pagemod/informMenuPagemod.js +59 -0
  725. package/src/all/background_page/pagemod/informMenuPagemod.test.js +69 -0
  726. package/src/all/background_page/pagemod/pagemod.js +127 -0
  727. package/src/all/background_page/pagemod/pagemod.test.js +58 -0
  728. package/src/all/background_page/pagemod/pagemodManager.js +110 -0
  729. package/src/all/background_page/pagemod/pagemodManager.test.js +197 -0
  730. package/src/all/background_page/pagemod/publicWebsiteSignInPagemod.js +100 -0
  731. package/src/all/background_page/pagemod/publicWebsiteSignInPagemod.test.js +111 -0
  732. package/src/all/background_page/pagemod/quickAccessPagemod.js +74 -38
  733. package/src/all/background_page/pagemod/quickAccessPagemod.test.js +104 -0
  734. package/src/all/background_page/pagemod/recoverBootstrapPagemod.js +75 -41
  735. package/src/all/background_page/pagemod/recoverBootstrapPagemod.test.js +98 -0
  736. package/src/all/background_page/pagemod/recoverPagemod.js +48 -35
  737. package/src/all/background_page/pagemod/recoverPagemod.test.js +73 -0
  738. package/src/all/background_page/pagemod/setupBootstrapPagemod.js +75 -41
  739. package/src/all/background_page/pagemod/setupBootstrapPagemod.test.js +98 -0
  740. package/src/all/background_page/pagemod/setupPagemod.js +46 -35
  741. package/src/all/background_page/pagemod/setupPagemod.test.js +73 -0
  742. package/src/all/background_page/pagemod/webIntegrationPagemod.js +82 -35
  743. package/src/all/background_page/pagemod/webIntegrationPagemod.test.js +119 -0
  744. package/src/all/background_page/sdk/i18n.js +68 -0
  745. package/src/all/background_page/sdk/port/portManager.js +187 -0
  746. package/src/all/background_page/sdk/port/portManager.test.data.js +32 -0
  747. package/src/all/background_page/sdk/port/portManager.test.js +160 -0
  748. package/src/all/background_page/sdk/port.js +154 -74
  749. package/src/all/background_page/sdk/port.test.js +158 -0
  750. package/src/all/background_page/sdk/scriptExecution.js +125 -94
  751. package/src/all/background_page/sdk/scriptExecution.test.js +143 -0
  752. package/src/all/background_page/sdk/storage.js +16 -16
  753. package/src/all/background_page/service/account/buildApiClientOptionsService.js +37 -0
  754. package/src/all/background_page/service/account/buildApiClientOptionsService.test.js +83 -0
  755. package/src/all/background_page/service/account/getDecryptedUserPrivateKeyService.js +38 -0
  756. package/src/all/background_page/service/account/getDecryptedUserPrivateKeyService.test.js +44 -0
  757. package/src/all/background_page/service/account/getLegacyAccountService.js +67 -0
  758. package/src/all/background_page/service/account/updateSsoCredentialsService.js +88 -0
  759. package/src/all/background_page/service/accountRecovery/buildApprovedAccountRecoveryUserSettingEntityService.js +115 -0
  760. package/src/all/background_page/service/accountRecovery/buildApprovedAccountRecoveryUserSettingEntityService.service.test.js +83 -0
  761. package/src/all/background_page/service/accountRecovery/decryptPrivateKeyPasswordDataService.js +74 -0
  762. package/src/all/background_page/service/accountRecovery/decryptPrivateKeyPasswordDataService.test.js +125 -0
  763. package/src/all/background_page/service/accountRecovery/decryptResponseDataService.js +66 -0
  764. package/src/all/background_page/service/accountRecovery/decryptResponseDataService.test.js +112 -0
  765. package/src/all/background_page/service/accountRecovery/getRequestLocalAccountService.js +52 -0
  766. package/src/all/background_page/service/accountRecovery/getRequestLocalAccountService.test.js +77 -0
  767. package/src/all/background_page/service/accountRecovery/parseAccountRecoveryUrlService.js +61 -0
  768. package/src/all/background_page/service/accountRecovery/parseAccountRecoveryUrlService.test.js +60 -0
  769. package/src/all/background_page/service/api/abstract/abstractService.js +13 -10
  770. package/src/all/background_page/service/api/abstract/abstractService.test.js +8 -16
  771. package/src/all/background_page/service/api/accountRecovery/accountRecoveryContinueService.js +52 -0
  772. package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.js +155 -0
  773. package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.test.data.js +25 -0
  774. package/src/all/background_page/service/api/accountRecovery/accountRecoveryOrganizationPolicyService.test.js +59 -0
  775. package/src/all/background_page/service/api/accountRecovery/accountRecoveryPrivateKeyPasswordService.js +52 -0
  776. package/src/all/background_page/service/api/accountRecovery/accountRecoveryRequestService.js +122 -0
  777. package/src/all/background_page/service/api/accountRecovery/accountRecoveryResponseService.js +50 -0
  778. package/src/all/background_page/service/api/accountRecovery/accountRecoveryUserService.js +54 -0
  779. package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.js +47 -0
  780. package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.test.data.js +69 -0
  781. package/src/all/background_page/service/api/accountRecovery/validateAccountRecoveryOrganizationPrivateKeyService.test.js +52 -0
  782. package/src/all/background_page/service/api/accountSettings/accountSettingsService.js +31 -4
  783. package/src/all/background_page/service/api/actionLog/actionLogService.js +3 -3
  784. package/src/all/background_page/service/api/auth/authService.js +47 -13
  785. package/src/all/background_page/service/api/auth/authService.test.js +103 -0
  786. package/src/all/background_page/service/api/comment/commentService.js +4 -3
  787. package/src/all/background_page/service/api/favorite/favoriteService.js +4 -4
  788. package/src/all/background_page/service/api/folder/folderService.js +8 -9
  789. package/src/all/background_page/service/api/group/groupService.js +16 -12
  790. package/src/all/background_page/service/api/group/groupService.test.js +6 -11
  791. package/src/all/background_page/service/api/mobileTransferService/mobileTransferService.js +84 -0
  792. package/src/all/background_page/service/api/move/moveService.js +5 -5
  793. package/src/all/background_page/service/api/multiFactorAuthentication/multiFactorAuthenticationPolicyService.js +53 -0
  794. package/src/all/background_page/service/api/multiFactorAuthentication/multiFactorAuthenticationService.js +82 -2
  795. package/src/all/background_page/service/api/organizationSettings/organizationSettingsService.js +58 -0
  796. package/src/all/background_page/service/api/passwordExpiry/passwordExpiryResourceService.js +52 -0
  797. package/src/all/background_page/service/api/passwordExpiry/passwordExpiryResourceService.test.js +82 -0
  798. package/src/all/background_page/service/api/passwordExpiry/passwordExpirySettingsService.js +72 -0
  799. package/src/all/background_page/service/api/passwordExpiry/passwordExpirySettingsService.test.js +157 -0
  800. package/src/all/background_page/service/api/passwordPolicies/passwordPoliciesService.js +92 -0
  801. package/src/all/background_page/service/api/passwordPolicies/passwordPoliciesService.test.js +127 -0
  802. package/src/all/background_page/service/api/resource/resourceLocalStorageUpdateService.js +112 -0
  803. package/src/all/background_page/service/api/resource/resourceLocalStorageUpdateService.test.js +109 -0
  804. package/src/all/background_page/service/api/resource/resourceService.js +6 -6
  805. package/src/all/background_page/service/api/resourceType/resourceTypeService.js +2 -2
  806. package/src/all/background_page/service/api/role/roleService.js +2 -2
  807. package/src/all/background_page/service/api/setup/setupService.js +51 -22
  808. package/src/all/background_page/service/api/share/shareService.js +35 -3
  809. package/src/all/background_page/service/api/sso/ssoDryRunService.js +68 -0
  810. package/src/all/background_page/service/api/sso/ssoKitServerPartService.js +81 -0
  811. package/src/all/background_page/service/api/sso/ssoLoginService.js +67 -0
  812. package/src/all/background_page/service/api/sso/ssoSettingsService.js +105 -0
  813. package/src/all/background_page/service/api/subscription/subscriptionService.js +63 -0
  814. package/src/all/background_page/service/api/tag/tagService.js +3 -3
  815. package/src/all/background_page/service/api/user/userService.js +21 -58
  816. package/src/all/background_page/service/api/userPassphrasePolicies/userPassphrasePoliciesService.js +63 -0
  817. package/src/all/background_page/service/api/userPassphrasePolicies/userPassphrasePoliciesService.test.js +121 -0
  818. package/src/all/background_page/service/app/parseAppUrlService.js +66 -0
  819. package/src/all/background_page/service/app/parseAppUrlService.test.js +155 -0
  820. package/src/all/background_page/service/auth/parseAuthUrlService.js +37 -0
  821. package/src/all/background_page/service/auth/parseAuthUrlService.test.js +56 -0
  822. package/src/all/background_page/service/auth/startLoopAuthSessionCheckService.js +76 -0
  823. package/src/all/background_page/service/auth/startLoopAuthSessionCheckService.test.js +91 -0
  824. package/src/all/background_page/service/auth.js +20 -106
  825. package/src/all/background_page/service/cache/resourceInProgressCache.service.js +117 -0
  826. package/src/all/background_page/service/cache/resourceInProgressCache.service.test.js +102 -0
  827. package/src/all/background_page/service/crypto/checkPassphraseService.js +52 -0
  828. package/src/all/background_page/service/crypto/compareGpgKeyService.js +40 -0
  829. package/src/all/background_page/service/crypto/compareGpgKeyService.test.js +51 -0
  830. package/src/all/background_page/service/crypto/cryptoRandomValuesService.js +30 -0
  831. package/src/all/background_page/service/crypto/cryptoRandomValuesService.test.js +26 -0
  832. package/src/all/background_page/service/crypto/decryptMessageService.js +97 -0
  833. package/src/all/background_page/service/crypto/decryptMessageService.test.js +189 -0
  834. package/src/all/background_page/service/crypto/decryptPrivateKeyService.js +45 -0
  835. package/src/all/background_page/service/crypto/decryptPrivateKeyService.test.js +41 -0
  836. package/src/all/background_page/service/crypto/decryptSsoPassphraseService.js +77 -0
  837. package/src/all/background_page/service/crypto/decryptSsoPassphraseService.test.js +105 -0
  838. package/src/all/background_page/service/crypto/encryptMessageService.js +63 -0
  839. package/src/all/background_page/service/crypto/encryptMessageService.test.js +149 -0
  840. package/src/all/background_page/service/crypto/encryptPrivateKeyService.js +40 -0
  841. package/src/all/background_page/service/crypto/encryptPrivateKeyService.test.js +61 -0
  842. package/src/all/background_page/service/crypto/encryptSsoPassphraseService.js +52 -0
  843. package/src/all/background_page/service/crypto/encryptSsoPassphraseService.test.js +63 -0
  844. package/src/all/background_page/service/crypto/generateGpgKeyPairService.js +85 -0
  845. package/src/all/background_page/service/crypto/generateGpgKeyPairService.test.js +112 -0
  846. package/src/all/background_page/service/crypto/generateSsoIvService.js +27 -0
  847. package/src/all/background_page/service/crypto/generateSsoIvService.test.js +41 -0
  848. package/src/all/background_page/service/crypto/generateSsoKeyService.js +32 -0
  849. package/src/all/background_page/service/crypto/generateSsoKeyService.test.js +43 -0
  850. package/src/all/background_page/service/crypto/getGpgKeyCreationDateService.js +41 -0
  851. package/src/all/background_page/service/crypto/getGpgKeyCreationDateService.test.js +59 -0
  852. package/src/all/background_page/service/crypto/getGpgKeyInfoService.js +152 -0
  853. package/src/all/background_page/service/crypto/getGpgKeyInfoService.test.data.js +100 -0
  854. package/src/all/background_page/service/crypto/getGpgKeyInfoService.test.js +155 -0
  855. package/src/all/background_page/service/crypto/revokeGpgKeyService.js +35 -0
  856. package/src/all/background_page/service/crypto/revokeGpgKeyService.test.js +35 -0
  857. package/src/all/background_page/service/crypto/signGpgKeyService.js +31 -0
  858. package/src/all/background_page/service/crypto/signGpgKeyService.test.js +41 -0
  859. package/src/all/background_page/service/crypto/signMessageService.js +55 -0
  860. package/src/all/background_page/service/crypto/signMessageService.test.js +94 -0
  861. package/src/all/background_page/service/crypto/verifyGpgKeyService.js +34 -0
  862. package/src/all/background_page/service/crypto/verifyGpgKeyService.test.js +99 -0
  863. package/src/all/background_page/service/crypto/verifyMessageSign.js +56 -0
  864. package/src/all/background_page/service/crypto/verifyMessageSign.test.data.js +44 -0
  865. package/src/all/background_page/service/crypto/verifyMessageSign.test.js +116 -0
  866. package/src/all/background_page/service/file/fileService.js +67 -0
  867. package/src/all/background_page/service/file/fileService.test.js +66 -0
  868. package/src/all/background_page/service/indexedDB_storage/ssoDataStorage.js +290 -0
  869. package/src/all/background_page/service/invitation/postponeUserSettingInvitationService.js +60 -0
  870. package/src/all/background_page/service/invitation/postponeUserSettingInvitationService.test.js +52 -0
  871. package/src/all/background_page/service/localStorage/localStorageService.js +73 -0
  872. package/src/all/background_page/service/localStorage/localStorageService.test.js +102 -0
  873. package/src/all/background_page/service/local_storage/AccountLocalStorage.test.js +216 -0
  874. package/src/all/background_page/service/local_storage/accountLocalStorage.js +118 -0
  875. package/src/all/background_page/service/local_storage/authStatusLocalStorage.js +8 -21
  876. package/src/all/background_page/service/local_storage/folderLocalStorage.js +20 -34
  877. package/src/all/background_page/service/local_storage/groupLocalStorage.js +17 -31
  878. package/src/all/background_page/service/local_storage/passwordExpirySettingsLocalStorage.js +73 -0
  879. package/src/all/background_page/service/local_storage/passwordExpirySettingsLocalStorage.test.js +72 -0
  880. package/src/all/background_page/service/local_storage/passwordGeneratorLocalStorage.js +36 -0
  881. package/src/all/background_page/service/local_storage/passwordPoliciesLocalStorage.js +98 -0
  882. package/src/all/background_page/service/local_storage/rbacLocalStorage.js +109 -0
  883. package/src/all/background_page/service/local_storage/rbacLocalStorage.test.js +68 -0
  884. package/src/all/background_page/service/local_storage/resourceLocalStorage.js +89 -44
  885. package/src/all/background_page/service/local_storage/resourceTypeLocalStorage.js +17 -29
  886. package/src/all/background_page/service/local_storage/ressourceGridSettingLocalStorage.js +70 -0
  887. package/src/all/background_page/service/local_storage/rolesLocalStorage.js +17 -29
  888. package/src/all/background_page/service/local_storage/userLocalStorage.js +25 -36
  889. package/src/all/background_page/service/local_storage/userRememberMeLatestChoiceLocalStorage.js +82 -0
  890. package/src/all/background_page/service/local_storage/userRememberMeLatestChoiceLocalStorage.test.js +74 -0
  891. package/src/all/background_page/service/passphrase/getPassphraseService.js +152 -0
  892. package/src/all/background_page/service/passphrase/getPassphraseService.test.js +258 -0
  893. package/src/all/background_page/service/passwordExpirySettings/passwordExpirySettingsGetOrFindService.js +49 -0
  894. package/src/all/background_page/service/passwordExpirySettings/passwordExpirySettingsGetOrFindService.test.js +45 -0
  895. package/src/all/background_page/service/progress/progressService.js +120 -0
  896. package/src/all/background_page/service/progress/progressService.test.js +69 -0
  897. package/src/all/background_page/service/publicWebsite/parsePublicWebsiteUrlService.js +35 -0
  898. package/src/all/background_page/service/publicWebsite/parsePublicWebsiteUrlService.test.js +48 -0
  899. package/src/all/background_page/service/recover/buildAccountRecoverService.js +33 -0
  900. package/src/all/background_page/service/recover/buildAccountRecoverService.test.js +43 -0
  901. package/src/all/background_page/service/recover/parseRecoverUrlService.js +69 -0
  902. package/src/all/background_page/service/recover/parseRecoverUrlService.test.js +94 -0
  903. package/src/all/background_page/service/secret/decryptAndParseResourceSecretService.js +60 -0
  904. package/src/all/background_page/service/secret/decryptAndParseResourceSecretService.test.js +83 -0
  905. package/src/all/background_page/service/secret/pownedService.js +63 -0
  906. package/src/all/background_page/service/secret/pownedService.test.js +77 -0
  907. package/src/all/background_page/service/sessionStorage/userMeSessionStorageService.js +94 -0
  908. package/src/all/background_page/service/sessionStorage/userMeSessionStorageService.test.js +146 -0
  909. package/src/all/background_page/service/sessionStorage/workersSessionStorage.js +205 -0
  910. package/src/all/background_page/service/sessionStorage/workersSessionStorage.test.js +138 -0
  911. package/src/all/background_page/service/session_storage/passphraseStorageService.js +176 -0
  912. package/src/all/background_page/service/session_storage/passphraseStorageService.test.js +252 -0
  913. package/src/all/background_page/service/session_storage/ssoKitTemporaryStorageService.js +82 -0
  914. package/src/all/background_page/service/setup/buildAccountSetupService.js +32 -0
  915. package/src/all/background_page/service/setup/buildAccountSetupService.test.js +43 -0
  916. package/src/all/background_page/service/setup/parseSetupUrlService.js +62 -0
  917. package/src/all/background_page/service/setup/parseSetupUrlService.test.js +61 -0
  918. package/src/all/background_page/service/sso/generateSsoKitService.js +73 -0
  919. package/src/all/background_page/service/sso/generateSsoKitService.test.js +72 -0
  920. package/src/all/background_page/service/sso/popupHandlerService.js +164 -0
  921. package/src/all/background_page/service/sso/popupHandlerService.test.js +230 -0
  922. package/src/all/background_page/service/sso/qualifySsoLoginErrorService.js +49 -0
  923. package/src/all/background_page/service/systemRequirementService/systemRequirementService.js +30 -0
  924. package/src/all/background_page/service/systemRequirementService/systemRequirementService.test.js +37 -0
  925. package/src/all/background_page/service/tab/tabService.js +99 -0
  926. package/src/all/background_page/service/tab/tabService.test.js +239 -0
  927. package/src/all/background_page/service/ui/browserExtensionIcon.service.js +66 -0
  928. package/src/all/background_page/service/ui/browserTab.service.js +46 -0
  929. package/src/all/background_page/service/ui/browserTab.service.test.js +81 -0
  930. package/src/all/background_page/service/ui/quickAccess.service.js +94 -0
  931. package/src/all/background_page/service/validator/appEmailValidatorService.js +67 -0
  932. package/src/all/background_page/service/validator/appEmailValidatorService.test.js +61 -0
  933. package/src/all/background_page/service/webIntegration/parseWebIntegrationUrlService.js +44 -0
  934. package/src/all/background_page/service/webIntegration/parseWebIntegrationUrlService.test.js +56 -0
  935. package/src/all/background_page/service/webNavigation/webNavigationService.js +33 -0
  936. package/src/all/background_page/service/webNavigation/webNavigationService.test.js +58 -0
  937. package/src/all/background_page/service/worker/workerService.js +146 -0
  938. package/src/all/background_page/service/worker/workerService.test.js +191 -0
  939. package/src/all/background_page/utils/array/deduplicateObjects.js +8 -8
  940. package/src/all/background_page/utils/array/deduplicateObjects.test.js +13 -13
  941. package/src/all/background_page/utils/array/splitBySize.js +2 -2
  942. package/src/all/background_page/utils/assertions.js +161 -0
  943. package/src/all/background_page/utils/assertions.test.data.js +19 -0
  944. package/src/all/background_page/utils/assertions.test.js +238 -0
  945. package/src/all/background_page/utils/format/base64.js +10 -9
  946. package/src/all/background_page/utils/format/binaryConvert.js +47 -0
  947. package/src/all/background_page/utils/format/emailaddress.js +61 -50
  948. package/src/all/background_page/utils/format/string.js +202 -158
  949. package/src/all/background_page/utils/lock.js +33 -28
  950. package/src/all/background_page/utils/openpgp/openpgpAssertions.js +314 -0
  951. package/src/all/background_page/utils/openpgp/openpgpAssertions.test.js +576 -0
  952. package/src/all/background_page/utils/promise/promiseTimeoutService.js +71 -0
  953. package/src/all/background_page/utils/promise/promiseTimeoutService.test.js +105 -0
  954. package/src/all/{data/js/quickaccess/popup/components/HomePage → background_page/utils/url}/canSuggestUrl.js +57 -24
  955. package/src/all/{data/js/quickaccess/popup/components/HomePage → background_page/utils/url}/canSuggestUrl.test.js +14 -3
  956. package/src/all/background_page/utils/url/hasSameOriginUrl.js +27 -0
  957. package/src/all/background_page/utils/uuid.js +12 -11
  958. package/src/all/background_page/utils/validatorRules.js +4 -4
  959. package/src/all/common/polyfill/browserPolyfill.js +31 -0
  960. package/src/all/common/polyfill/scriptingPolyfill.js +115 -0
  961. package/src/all/common/polyfill/scriptingPolyfill.test.js +125 -0
  962. package/src/all/common/polyfill/sessionStoragePolyfill.js +78 -0
  963. package/src/all/common/polyfill/sessionStoragePolyfill.test.js +203 -0
  964. package/src/all/contentScripts/js/app/AccountRecovery.js +40 -0
  965. package/src/all/{content_scripts → contentScripts}/js/app/App.js +14 -23
  966. package/src/all/contentScripts/js/app/BrowserIntegration.js +26 -0
  967. package/src/all/{content_scripts → contentScripts}/js/app/Login.js +14 -22
  968. package/src/all/contentScripts/js/app/PublicWebsiteSignIn.js +26 -0
  969. package/src/all/{content_scripts → contentScripts}/js/app/Recover.js +14 -22
  970. package/src/all/{content_scripts → contentScripts}/js/app/Setup.js +15 -23
  971. package/src/all/contentScripts/js/controller/connectPortController.js +37 -0
  972. package/src/all/contentScripts/js/controller/connectPortController.test.js +51 -0
  973. package/src/all/contentScripts/js/message/messageEventHandler.js +63 -0
  974. package/src/all/contentScripts/js/message/messageEventHandler.test.data.js +30 -0
  975. package/src/all/contentScripts/js/message/messageEventHandler.test.js +154 -0
  976. package/src/all/contentScripts/js/message/messageEventHandlerConstructorMock.test.data.js +18 -0
  977. package/src/all/contentScripts/js/service/messageService.js +76 -0
  978. package/src/all/contentScripts/js/service/messageService.test.js +54 -0
  979. package/src/all/locales/de-DE/common.json +94 -0
  980. package/src/all/locales/en-UK/common.json +94 -0
  981. package/src/all/locales/es-ES/common.json +94 -0
  982. package/src/all/locales/fr-FR/common.json +94 -0
  983. package/src/all/locales/it-IT/common.json +94 -0
  984. package/src/all/locales/ja-JP/common.json +94 -0
  985. package/src/all/locales/ko-KR/common.json +94 -0
  986. package/src/all/locales/lt-LT/common.json +94 -0
  987. package/src/all/locales/nl-NL/common.json +94 -0
  988. package/src/all/locales/pl-PL/common.json +94 -0
  989. package/src/all/locales/pt-BR/common.json +94 -0
  990. package/src/all/locales/ro-RO/common.json +94 -0
  991. package/src/all/locales/ru-RU/common.json +94 -0
  992. package/src/all/locales/sv-SE/common.json +94 -0
  993. package/src/all/webAccessibleResources/js/app/AccountRecovery.js +30 -0
  994. package/src/all/{data → webAccessibleResources}/js/app/App.js +5 -25
  995. package/src/all/webAccessibleResources/js/app/Download.js +33 -0
  996. package/src/all/webAccessibleResources/js/app/InFormCallToAction.js +29 -0
  997. package/src/all/webAccessibleResources/js/app/InFormMenu.js +29 -0
  998. package/src/all/{data → webAccessibleResources}/js/app/Login.js +5 -24
  999. package/src/all/webAccessibleResources/js/app/QuickAccess.js +37 -0
  1000. package/src/all/{data → webAccessibleResources}/js/app/Recover.js +4 -21
  1001. package/src/all/{data → webAccessibleResources}/js/app/Setup.js +4 -21
  1002. package/src/all/webAccessibleResources/js/lib/port.js +187 -0
  1003. package/src/all/webAccessibleResources/js/lib/port.test.js +152 -0
  1004. package/src/all/{data → webAccessibleResources}/js/themes/stylesheet.js +49 -34
  1005. package/src/all/webAccessibleResources/passbolt-iframe-account-recovery.html +24 -0
  1006. package/src/all/webAccessibleResources/passbolt-iframe-app.html +67 -0
  1007. package/src/all/webAccessibleResources/passbolt-iframe-file.html +10 -0
  1008. package/src/all/webAccessibleResources/passbolt-iframe-in-form-call-to-action.html +12 -0
  1009. package/src/all/webAccessibleResources/passbolt-iframe-in-form-menu.html +12 -0
  1010. package/src/all/{data → webAccessibleResources}/passbolt-iframe-login.html +2 -2
  1011. package/src/all/{data → webAccessibleResources}/passbolt-iframe-recover.html +2 -2
  1012. package/src/all/{data → webAccessibleResources}/passbolt-iframe-setup.html +2 -2
  1013. package/src/all/webAccessibleResources/quickaccess.html +16 -0
  1014. package/src/chrome/manifest.json +18 -14
  1015. package/src/chrome-mv3/index.js +60 -0
  1016. package/src/chrome-mv3/manifest.json +60 -0
  1017. package/src/chrome-mv3/serviceWorker.js +14 -0
  1018. package/src/firefox/manifest.json +21 -16
  1019. package/src/safari/manifest.json +50 -0
  1020. package/test/fixtures/pgpKeys/keys.js +419 -0
  1021. package/test/jest-webextension-force-runtime-id-setup-files.js +5 -0
  1022. package/{.jest.custom-kdbx-environment.js → test/jest.custom-kdbx-environment.js} +3 -15
  1023. package/test/jest.setup.js +60 -0
  1024. package/test/matchers/extendExpect.js +31 -0
  1025. package/test/matchers/toBeEqualToOpenpgpKey.js +46 -0
  1026. package/test/matchers/toBeOpenpgpKeySignedBy.js +42 -0
  1027. package/test/matchers/toBeOpenpgpPrivateKey.js +34 -0
  1028. package/test/matchers/toBeOpenpgpPublicKey.js +34 -0
  1029. package/test/matchers/toBeOpenpgpRevokedKey.js +34 -0
  1030. package/test/matchers/toThrowEntityValidationErrorOnProperties.js +41 -0
  1031. package/test/mocks/mockAlarms.js +101 -0
  1032. package/test/mocks/mockApiResponse.js +31 -0
  1033. package/test/mocks/mockCryptoKey.js +62 -0
  1034. package/test/mocks/mockEventListener.js +40 -0
  1035. package/test/mocks/mockExtension.js +60 -0
  1036. package/test/mocks/mockNavigatorLocks.js +30 -0
  1037. package/test/mocks/mockSsoDataStorage.js +86 -0
  1038. package/test/mocks/mockStorage.js +74 -0
  1039. package/test/mocks/mockTextEncoder.js +18 -0
  1040. package/test/mocks/mockWebExtensionPolyfill.js +77 -0
  1041. package/webpack-content-scripts.browser-integration.config.js +57 -0
  1042. package/webpack-content-scripts.config.js +16 -5
  1043. package/webpack-content-scripts.public-website-sign-in.config.js +57 -0
  1044. package/webpack-data.config.js +24 -7
  1045. package/webpack-data.download.config.js +59 -0
  1046. package/webpack-data.in-form-call-to-action.config.js +63 -0
  1047. package/webpack-data.in-form-menu.config.js +63 -0
  1048. package/webpack.background-page.config.js +62 -0
  1049. package/webpack.service-worker.config.js +62 -0
  1050. package/.jest.config.json +0 -5
  1051. package/.jest.transform.js +0 -7
  1052. package/dist/chrome/empty +0 -0
  1053. package/dist/chrome/passbolt-3.0.6-debug.crx +0 -0
  1054. package/dist/chrome/passbolt-3.0.6.crx +0 -0
  1055. package/dist/chrome/passbolt-3.0.6.zip +0 -0
  1056. package/dist/firefox/empty +0 -0
  1057. package/dist/firefox/passbolt-3.0.6-debug.zip +0 -0
  1058. package/dist/firefox/passbolt-3.0.6.zip +0 -0
  1059. package/src/all/background_page/app.js +0 -162
  1060. package/src/all/background_page/controller/authController.js +0 -92
  1061. package/src/all/background_page/controller/browserSettingsController.js +0 -47
  1062. package/src/all/background_page/controller/fileController.js +0 -134
  1063. package/src/all/background_page/controller/passphrase/passphraseController.js +0 -82
  1064. package/src/all/background_page/controller/progress/progressController.js +0 -65
  1065. package/src/all/background_page/controller/recover/recoverController.js +0 -167
  1066. package/src/all/background_page/controller/setup/setupController.js +0 -199
  1067. package/src/all/background_page/error/passboltApiFetchError.js +0 -16
  1068. package/src/all/background_page/event/debugEvents.js +0 -169
  1069. package/src/all/background_page/event/pagmodEvents.js +0 -23
  1070. package/src/all/background_page/event/siteSettingsEvents.js +0 -61
  1071. package/src/all/background_page/model/crypto.js +0 -179
  1072. package/src/all/background_page/model/entity/abstract/entity.js +0 -99
  1073. package/src/all/background_page/model/entity/abstract/entity.test.js +0 -86
  1074. package/src/all/background_page/model/entity/abstract/entityCollection.js +0 -144
  1075. package/src/all/background_page/model/entity/abstract/entityCollection.test.js +0 -107
  1076. package/src/all/background_page/model/entity/abstract/entityCollectionError.js +0 -40
  1077. package/src/all/background_page/model/entity/abstract/entityCollectionError.test.js +0 -55
  1078. package/src/all/background_page/model/entity/abstract/entitySchema.js +0 -412
  1079. package/src/all/background_page/model/entity/abstract/entitySchema.test.js +0 -266
  1080. package/src/all/background_page/model/entity/abstract/entityValidationError.js +0 -81
  1081. package/src/all/background_page/model/entity/abstract/entityValidationError.test.js +0 -64
  1082. package/src/all/background_page/model/entity/gpgkey/generate/generateGpgkeyEntity.js +0 -128
  1083. package/src/all/background_page/model/entity/role/roleEntity.js +0 -162
  1084. package/src/all/background_page/model/entity/role/roleEntity.test.js +0 -84
  1085. package/src/all/background_page/model/entity/role/rolesCollection.js +0 -140
  1086. package/src/all/background_page/model/entity/setup/setupEntity.js +0 -360
  1087. package/src/all/background_page/model/entity/setup/setupEntity.test.js +0 -87
  1088. package/src/all/background_page/model/entity/user/account/userAcountEntity.js +0 -131
  1089. package/src/all/background_page/model/group.js +0 -165
  1090. package/src/all/background_page/model/groupForm.js +0 -331
  1091. package/src/all/background_page/model/key.js +0 -337
  1092. package/src/all/background_page/model/openpgp/OpenpgpModel.js +0 -73
  1093. package/src/all/background_page/model/share.js +0 -171
  1094. package/src/all/background_page/model/siteSettings.js +0 -80
  1095. package/src/all/background_page/model/tabStorage.js +0 -82
  1096. package/src/all/background_page/model/worker.js +0 -124
  1097. package/src/all/background_page/pagemod/appBoostrapPagemod.js +0 -100
  1098. package/src/all/background_page/pagemod/clipboardPagemod.js +0 -37
  1099. package/src/all/background_page/pagemod/debugPagemod.js +0 -45
  1100. package/src/all/background_page/sdk/jsonQ.js +0 -66
  1101. package/src/all/background_page/sdk/l10n.js +0 -17
  1102. package/src/all/background_page/sdk/page-mod.js +0 -337
  1103. package/src/all/background_page/sdk/random.js +0 -11
  1104. package/src/all/background_page/sdk/self.js +0 -10
  1105. package/src/all/background_page/sdk/tab.js +0 -77
  1106. package/src/all/background_page/sdk/worker.js +0 -84
  1107. package/src/all/background_page/service/api/apiClient/apiClient.js +0 -351
  1108. package/src/all/background_page/service/api/apiClient/apiClient.test.js +0 -92
  1109. package/src/all/background_page/service/api/apiClient/apiClientOptions.js +0 -111
  1110. package/src/all/background_page/service/api/apiClient/apiClientOptions.test.js +0 -48
  1111. package/src/all/background_page/service/group.js +0 -72
  1112. package/src/all/background_page/service/share.js +0 -216
  1113. package/src/all/background_page/utils/csrfToken/csrfToken.js +0 -61
  1114. package/src/all/background_page/vendors.js +0 -32
  1115. package/src/all/content_scripts/js/bootstrap.js +0 -81
  1116. package/src/all/data/config-debug.html +0 -308
  1117. package/src/all/data/js/clipboard/clipboard.js +0 -29
  1118. package/src/all/data/js/debug/common.js +0 -76
  1119. package/src/all/data/js/debug/debug.js +0 -387
  1120. package/src/all/data/js/debug/file.js +0 -82
  1121. package/src/all/data/js/debug/profiles.js +0 -820
  1122. package/src/all/data/js/file/fileIframe.js +0 -29
  1123. package/src/all/data/js/include/config-debug.js +0 -20
  1124. package/src/all/data/js/lib/loadscript.js +0 -38
  1125. package/src/all/data/js/lib/message.js +0 -120
  1126. package/src/all/data/js/lib/port.js +0 -231
  1127. package/src/all/data/js/lib/pwnedpasswords.js +0 -34
  1128. package/src/all/data/js/lib/request.js +0 -151
  1129. package/src/all/data/js/lib/secretComplexity.js +0 -209
  1130. package/src/all/data/js/quickaccess/popup/Popup.js +0 -215
  1131. package/src/all/data/js/quickaccess/popup/components/AnimatedSwitch/AnimatedSwitch.js +0 -189
  1132. package/src/all/data/js/quickaccess/popup/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.js +0 -210
  1133. package/src/all/data/js/quickaccess/popup/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.js +0 -329
  1134. package/src/all/data/js/quickaccess/popup/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.js +0 -210
  1135. package/src/all/data/js/quickaccess/popup/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.js +0 -204
  1136. package/src/all/data/js/quickaccess/popup/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.js +0 -210
  1137. package/src/all/data/js/quickaccess/popup/components/FilterResourcesByTagPage/FilterResourcesByTagPage.js +0 -329
  1138. package/src/all/data/js/quickaccess/popup/components/Header/Header.js +0 -50
  1139. package/src/all/data/js/quickaccess/popup/components/HomePage/HomePage.js +0 -296
  1140. package/src/all/data/js/quickaccess/popup/components/LoginPage/LoginPage.js +0 -142
  1141. package/src/all/data/js/quickaccess/popup/components/MoreFiltersPage/MoreFiltersPage.js +0 -84
  1142. package/src/all/data/js/quickaccess/popup/components/PassphraseDialog/PassphraseDialog.js +0 -181
  1143. package/src/all/data/js/quickaccess/popup/components/PassphraseDialog/PassphraseDialog.test.js +0 -49
  1144. package/src/all/data/js/quickaccess/popup/components/PrivateRoute/PrivateRoute.js +0 -37
  1145. package/src/all/data/js/quickaccess/popup/components/ResourceCreatePage/ResourceCreatePage.js +0 -274
  1146. package/src/all/data/js/quickaccess/popup/components/ResourceCreatePage/ResourceCreatePage.test.js +0 -186
  1147. package/src/all/data/js/quickaccess/popup/components/ResourceViewPage/ResourceViewPage.js +0 -296
  1148. package/src/all/data/js/quickaccess/popup/components/Search/Search.js +0 -41
  1149. package/src/all/data/js/quickaccess/popup/components/Search/Search.test.js +0 -44
  1150. package/src/all/data/js/quickaccess/popup/components/SimpleBar/SimpleBar.js +0 -35
  1151. package/src/all/data/js/quickaccess/popup/contexts/AppContext.js +0 -6
  1152. package/src/all/data/js/quickaccess/quickaccess.js +0 -335
  1153. package/src/all/data/js/themes/stylesheet_legacy.js +0 -86
  1154. package/src/all/data/passbolt-iframe-app.html +0 -52
  1155. package/src/all/data/passbolt-iframe-clipboard.html +0 -14
  1156. package/src/all/data/passbolt-iframe-file.html +0 -14
  1157. package/src/all/data/quickaccess.html +0 -15
  1158. package/src/all/data/vendors/browser-polyfill.js +0 -1187
  1159. package/src/all/data/vendors/dom-testing-library-event.js +0 -363
  1160. package/src/all/data/vendors/download.js +0 -167
  1161. package/src/all/data/vendors/farbtastic.js +0 -345
  1162. package/src/all/data/vendors/jquery-filestyle.js +0 -387
  1163. package/src/all/data/vendors/jquery.js +0 -10872
  1164. package/src/all/data/vendors/react-dom.production.min.js +0 -239
  1165. package/src/all/data/vendors/react.production.min.js +0 -32
  1166. package/src/all/data/vendors/sha.js +0 -45
  1167. package/src/all/data/vendors/validator.js +0 -817
  1168. package/src/all/data/vendors/xregexp-all.js +0 -4487
@@ -11,33 +11,25 @@
11
11
  * @link https://www.passbolt.com Passbolt(tm)
12
12
  * @since 3.0.0
13
13
  */
14
- import React, {Component} from "react";
14
+ import React from "react";
15
15
  import ReactDOM from "react-dom";
16
16
  import ExtBootstrapSetup from "passbolt-styleguide/src/react-extension/ExtBootstrapSetup";
17
- /* eslint-disable no-unused-vars */
18
- import Port from "../../../data/js/lib/port";
19
- /* eslint-enable no-unused-vars */
20
-
21
- /**
22
- * Wait until the background pagemod is ready.
23
- * @returns {Promise}
24
- */
25
- async function waitPagemodIsReady() {
26
- let resolver;
27
- const promise = new Promise(resolve => { resolver = resolve; });
28
-
29
- const checkInterval = setInterval(() => {
30
- port.request("passbolt.pagemod.is-ready").then(() => {
31
- resolver();
32
- clearInterval(checkInterval);
33
- });
34
- }, 50);
35
-
36
- return promise;
37
- }
17
+ import Port from "../../../webAccessibleResources/js/lib/port";
18
+ import MessageService from "../service/messageService";
19
+ import MessageEventHandler from "../message/messageEventHandler";
20
+ import ConnectPortController from "../controller/connectPortController";
38
21
 
39
22
  async function main() {
40
- await waitPagemodIsReady();
23
+ // Port connection
24
+ const port = new Port(self.portname);
25
+ // Emit a success if the port is still connected
26
+ port.on("passbolt.port.check", requestId => port.emit(requestId, "SUCCESS"));
27
+ await port.connect();
28
+ // Message listener
29
+ const messageService = new MessageService();
30
+ const messageEventHandler = new MessageEventHandler(messageService);
31
+ messageEventHandler.listen("passbolt.port.connect", ConnectPortController, port);
32
+ // Start ExtBootstrapSetup
41
33
  const browserExtensionUrl = chrome.runtime.getURL("/");
42
34
  const domContainer = document.createElement("div");
43
35
  document.body.appendChild(domContainer);
@@ -0,0 +1,37 @@
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 4.0.0
13
+ */
14
+
15
+ class ConnectPortController {
16
+ /**
17
+ * ConnectPortController constructor
18
+ * @param {Port} port
19
+ */
20
+ constructor(port) {
21
+ this.port = port;
22
+ }
23
+
24
+ /**
25
+ * Connect port.
26
+ *
27
+ * @param portId {string} The port id
28
+ * @return {Promise<string>}
29
+ */
30
+ async exec(portId) {
31
+ if (this.port._name === portId) {
32
+ await this.port.connectIfDisconnected();
33
+ }
34
+ }
35
+ }
36
+
37
+ export default ConnectPortController;
@@ -0,0 +1,51 @@
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 4.0.0
13
+ */
14
+ import ConnectPortController from "./connectPortController";
15
+
16
+ describe("ConnectPortController", () => {
17
+ beforeEach(async() => {
18
+ jest.resetModules();
19
+ jest.clearAllMocks();
20
+ });
21
+
22
+ describe("ConnectPortController::exec", () => {
23
+ it("Should connect port", async() => {
24
+ expect.assertions(1);
25
+ // data mocked
26
+ const port = {
27
+ _name: "name",
28
+ connectIfDisconnected: jest.fn()
29
+ };
30
+ // process
31
+ const connectPortController = new ConnectPortController(port);
32
+ await connectPortController.exec("name");
33
+ // expectations
34
+ expect(port.connectIfDisconnected).toHaveBeenCalled();
35
+ });
36
+
37
+ it("Should not connect port if port name is unknown", async() => {
38
+ expect.assertions(1);
39
+ // data mocked
40
+ const port = {
41
+ _name: "unknown",
42
+ connectIfDisconnected: jest.fn()
43
+ };
44
+ // process
45
+ const connectPortController = new ConnectPortController(port);
46
+ await connectPortController.exec("name");
47
+ // expectations
48
+ expect(port.connectIfDisconnected).not.toHaveBeenCalled();
49
+ });
50
+ });
51
+ });
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Passbolt ~ Open source password manager for teams
3
+ * Copyright (c) 2023 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) 2023 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 4.0.0
13
+ */
14
+
15
+ import MessageService from "../service/messageService";
16
+
17
+ /**
18
+ * Message event handler.
19
+ */
20
+ class MessageEventHandler {
21
+ /**
22
+ * Message Event Handler constructor
23
+ */
24
+ constructor(messageService) {
25
+ if (!(messageService instanceof MessageService)) {
26
+ throw new Error('The messageService should be a valid MessageService instance.');
27
+ }
28
+ this.messageService = messageService;
29
+ }
30
+
31
+ /**
32
+ * Listen to the event.
33
+ * @param {string} message The message to listen to.
34
+ * @param {Class} ControllerClass The controller class that aims to treat the message.
35
+ * @param {any} controllerArgs The controller additional parameters.
36
+ */
37
+ listen(message, ControllerClass, ...controllerArgs) {
38
+ if (typeof message !== 'string') {
39
+ throw new Error('The message should be a valid string.');
40
+ }
41
+ if (!message.length) {
42
+ throw new Error('The message should not be empty.');
43
+ }
44
+ if (typeof ControllerClass !== 'function') {
45
+ throw new Error('The ControllerClass should be a valid class.');
46
+ }
47
+
48
+ const callback = async(...callbackArgs) => {
49
+ callbackArgs = callbackArgs || {};
50
+ try {
51
+ const controllersArgs = controllerArgs || {};
52
+ const controller = new ControllerClass(...controllersArgs);
53
+ const result = await controller.exec(...callbackArgs);
54
+ await this.messageService.success(result);
55
+ } catch (error) {
56
+ await this.messageService.error(error);
57
+ }
58
+ };
59
+ this.messageService.addListener(message, callback);
60
+ }
61
+ }
62
+
63
+ export default MessageEventHandler;
@@ -0,0 +1,30 @@
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) 2023 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 4.0.0
13
+ */
14
+
15
+ export class ControllerMessageEventHandlerMock {
16
+ exec() {
17
+ }
18
+ }
19
+
20
+ export class ControllerWithResponseMessageEventHandlerMock {
21
+ exec() {
22
+ return 'controller-exec-output';
23
+ }
24
+ }
25
+
26
+ export class ControllerMessageEventHandlerErrorExecMock {
27
+ exec() {
28
+ throw new Error('Execution error');
29
+ }
30
+ }
@@ -0,0 +1,154 @@
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) 2023 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 4.0.0
13
+ */
14
+ import MessageService from "../service/messageService";
15
+ import MessageEventHandler from "./messageEventHandler";
16
+ import {
17
+ ControllerMessageEventHandlerErrorExecMock,
18
+ ControllerMessageEventHandlerMock, ControllerWithResponseMessageEventHandlerMock
19
+ } from "./messageEventHandler.test.data";
20
+ import {ControllerMessageEventHandlerConstructorMock} from "./messageEventHandlerConstructorMock.test.data";
21
+
22
+ /*
23
+ * The class we need to mock the constructor needs to be separated in a dedicated file.
24
+ * If not spyOn cannot be used on the same mocked class as the one mocked as following.
25
+ */
26
+ jest.mock("./messageEventHandlerConstructorMock.test.data");
27
+
28
+ beforeEach(() => {
29
+ jest.clearAllMocks();
30
+ });
31
+
32
+ describe("MessageEventHandler", () => {
33
+ describe("MessageEventHandler::constructor", () => {
34
+ it("Should instantiate the class", async() => {
35
+ expect.assertions(1);
36
+ const messageService = new MessageService();
37
+ const messageEventHandler = new MessageEventHandler(messageService);
38
+ expect(messageEventHandler).toBeInstanceOf(MessageEventHandler);
39
+ });
40
+
41
+ it("Should not instantiate the class if the message service is not valid", async() => {
42
+ expect.assertions(2);
43
+ expect(() => new MessageEventHandler(null)).toThrowError('The messageService should be a valid MessageService instance.');
44
+ expect(() => new MessageEventHandler({messageService: 'not a valid message service'})).toThrowError('The messageService should be a valid MessageService instance.');
45
+ });
46
+ });
47
+
48
+ describe("MessageEventHandler::listen", () => {
49
+ it("Should listen to message, execute the controller and resolve the message.", async() => {
50
+ expect.assertions(2);
51
+ const messageService = new MessageService();
52
+ const messageEventHandler = new MessageEventHandler(messageService);
53
+
54
+ const spyControllerClassExec = jest.spyOn(ControllerMessageEventHandlerMock.prototype, "exec");
55
+ const spyMessageServiceSuccess = jest.spyOn(messageService, "success");
56
+
57
+ messageEventHandler.listen('message-to-listen', ControllerMessageEventHandlerMock);
58
+ await messageService._onMessage(['message-to-listen']);
59
+ expect(spyControllerClassExec).toHaveBeenCalled();
60
+ expect(spyMessageServiceSuccess).toHaveBeenCalled();
61
+ });
62
+
63
+ it("Should listen to message, execute the controller and resolve the message with the controller response.", async() => {
64
+ expect.assertions(2);
65
+ const messageService = new MessageService();
66
+ const messageEventHandler = new MessageEventHandler(messageService);
67
+
68
+ const spyControllerClassExec = jest.spyOn(ControllerWithResponseMessageEventHandlerMock.prototype, "exec");
69
+ const spyMessageServiceSuccess = jest.spyOn(messageService, "success");
70
+
71
+ messageEventHandler.listen('message-to-listen', ControllerWithResponseMessageEventHandlerMock);
72
+ await messageService._onMessage(['message-to-listen']);
73
+ expect(spyControllerClassExec).toHaveBeenCalled();
74
+ expect(spyMessageServiceSuccess).toHaveBeenCalledWith('controller-exec-output');
75
+ });
76
+
77
+ it("Should listen to message, execute the controller and reject the message with the controller error.", async() => {
78
+ expect.assertions(3);
79
+ const messageService = new MessageService();
80
+ const messageEventHandler = new MessageEventHandler(messageService);
81
+
82
+ const spyControllerClassExec = jest.spyOn(ControllerMessageEventHandlerErrorExecMock.prototype, "exec");
83
+ const spyMessageServiceEmit = jest.spyOn(messageService, "error");
84
+ messageEventHandler.listen('message-to-listen', ControllerMessageEventHandlerErrorExecMock);
85
+ let expectedError;
86
+
87
+ try {
88
+ await messageService._onMessage(['message-to-listen']);
89
+ } catch (error) {
90
+ expectedError = error;
91
+ expect(error).toBeInstanceOf(Error);
92
+ }
93
+
94
+ expect(spyControllerClassExec).toThrow();
95
+ expect(spyMessageServiceEmit).toHaveBeenCalledWith(expectedError);
96
+ });
97
+
98
+ it("Should listen to message, instantiate the controller with parameters, execute the controller and resolve the message.", async() => {
99
+ expect.assertions(3);
100
+ const messageService = new MessageService();
101
+ const messageEventHandler = new MessageEventHandler(messageService);
102
+
103
+ const spyControllerClassExec = jest.spyOn(ControllerMessageEventHandlerConstructorMock.prototype, "exec");
104
+ const spyMessageServiceSuccess = jest.spyOn(messageService, "success");
105
+
106
+ messageEventHandler.listen('message-to-listen', ControllerMessageEventHandlerConstructorMock, 'ctl-arg1-value', 'ctl-arg2-value');
107
+ await messageService._onMessage(['message-to-listen']);
108
+
109
+ expect(ControllerMessageEventHandlerConstructorMock).toHaveBeenCalledWith('ctl-arg1-value', 'ctl-arg2-value');
110
+ expect(spyControllerClassExec).toHaveBeenCalled();
111
+ expect(spyMessageServiceSuccess).toHaveBeenCalled();
112
+ });
113
+
114
+ it("Should listen to message, instantiate the controller with parameters, execute the controller with parameters and resolve the message.", async() => {
115
+ expect.assertions(3);
116
+ const messageService = new MessageService();
117
+ const messageEventHandler = new MessageEventHandler(messageService);
118
+
119
+ const spyControllerClassExec = jest.spyOn(ControllerMessageEventHandlerConstructorMock.prototype, "exec");
120
+ const spyMessageServiceSuccess = jest.spyOn(messageService, "success");
121
+
122
+ messageEventHandler.listen('message-to-listen', ControllerMessageEventHandlerConstructorMock, 'ctl-arg1-value', 'ctl-arg2-value');
123
+ await messageService._onMessage(['message-to-listen', 'event-arg1-value', 'event-arg2-value']);
124
+
125
+ expect(ControllerMessageEventHandlerConstructorMock).toHaveBeenCalledWith('ctl-arg1-value', 'ctl-arg2-value');
126
+ expect(spyControllerClassExec).toHaveBeenCalledWith('event-arg1-value', 'event-arg2-value');
127
+ expect(spyMessageServiceSuccess).toHaveBeenCalled();
128
+ });
129
+
130
+ it("Should throw an error if the message is not a string.", async() => {
131
+ expect.assertions(2);
132
+ const messageService = new MessageService();
133
+ const messageEventHandler = new MessageEventHandler(messageService);
134
+ expect(() => messageEventHandler.listen(null, ControllerMessageEventHandlerMock)).toThrowError('The message should be a valid string.');
135
+ expect(() => messageEventHandler.listen(() => {}, ControllerMessageEventHandlerMock)).toThrowError('The message should be a valid string.');
136
+ });
137
+
138
+ it("Should throw an error if the message is empty.", async() => {
139
+ expect.assertions(1);
140
+ const messageService = new MessageService();
141
+ const messageEventHandler = new MessageEventHandler(messageService);
142
+ class ControllerMessageEventHandlerTestClass {}
143
+ expect(() => messageEventHandler.listen('', ControllerMessageEventHandlerTestClass)).toThrowError('The message should not be empty.');
144
+ });
145
+
146
+ it("Should throw an error if ControllerClass is not a class.", async() => {
147
+ expect.assertions(2);
148
+ const messageService = new MessageService();
149
+ const messageEventHandler = new MessageEventHandler(messageService);
150
+ expect(() => messageEventHandler.listen('message', null)).toThrowError('The ControllerClass should be a valid class');
151
+ expect(() => messageEventHandler.listen('message', 12)).toThrowError('The ControllerClass should be a valid class');
152
+ });
153
+ });
154
+ });
@@ -0,0 +1,18 @@
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) 2023 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 4.0.0
13
+ */
14
+
15
+ export class ControllerMessageEventHandlerConstructorMock {
16
+ exec() {
17
+ }
18
+ }
@@ -0,0 +1,76 @@
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 4.0.0
13
+ */
14
+
15
+ class MessageService {
16
+ constructor() {
17
+ this._listeners = {};
18
+ this._onMessage = this._onMessage.bind(this);
19
+ browser.runtime.onMessage.addListener(this._onMessage);
20
+ }
21
+
22
+ /**
23
+ * When a message is received on the content script
24
+ * Triggers all the callback associated with that message name
25
+ *
26
+ * @param msg
27
+ * @private
28
+ */
29
+ async _onMessage(msg) {
30
+ const eventName = msg[0];
31
+ if (typeof this._listeners[eventName] !== 'undefined' && this._listeners[eventName].length > 0) {
32
+ const listeners = this._listeners[eventName];
33
+ for (let i = 0; i < listeners.length; i++) {
34
+ const listener = listeners[i];
35
+ const args = Array.prototype.slice.call(msg, 1);
36
+ await listener.callback.apply(this, args);
37
+ }
38
+ }
39
+ }
40
+
41
+ /**
42
+ * Add listener for a message name on the current port
43
+ *
44
+ * @param name string
45
+ * @param callback function
46
+ */
47
+ addListener(name, callback) {
48
+ if (typeof this._listeners[name] === 'undefined') {
49
+ this._listeners[name] = [];
50
+ }
51
+ this._listeners[name].push({
52
+ name: name,
53
+ callback: callback
54
+ });
55
+ }
56
+
57
+ /**
58
+ * Resolve the mesage in case of success.
59
+ * @param {any} response the response payload
60
+ * @return {Promise<any>}
61
+ */
62
+ success(response) {
63
+ return Promise.resolve(response);
64
+ }
65
+
66
+ /**
67
+ * Reject the message in case of error.
68
+ * @param {any} error the error payload
69
+ * @return {Promise<any>}
70
+ */
71
+ error(error) {
72
+ return Promise.reject(error);
73
+ }
74
+ }
75
+
76
+ export default MessageService;
@@ -0,0 +1,54 @@
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.8.0
13
+ */
14
+ import MessageService from "./messageService";
15
+
16
+ describe("MessageService", () => {
17
+ describe("MessageService::onMessage", () => {
18
+ it("Should receive a message know by message service", async() => {
19
+ expect.assertions(2);
20
+ // data mocked
21
+ const callback = jest.fn();
22
+ // process
23
+ const messageService = new MessageService();
24
+ messageService.addListener("test", callback);
25
+ messageService._onMessage(["test", "argument"]);
26
+ // expectation
27
+ expect(browser.runtime.onMessage.addListener).toHaveBeenCalled();
28
+ expect(callback).toHaveBeenCalledWith("argument");
29
+ });
30
+ });
31
+
32
+ describe("MessageService::emit", () => {
33
+ it("Should emit a success message", async() => {
34
+ expect.assertions(1);
35
+ // process
36
+ const messageService = new MessageService();
37
+ const result = await messageService.success("result");
38
+ // expectation
39
+ expect(result).toStrictEqual("result");
40
+ });
41
+
42
+ it("Should emit an error message", async() => {
43
+ expect.assertions(1);
44
+ // process
45
+ const messageService = new MessageService();
46
+ try {
47
+ await messageService.error("error");
48
+ } catch (error) {
49
+ // expectation
50
+ expect(error).toStrictEqual("error");
51
+ }
52
+ });
53
+ });
54
+ });
@@ -0,0 +1,94 @@
1
+ {
2
+ "Adding tag...": "Tag wird hinzugefügt...",
3
+ "An ECC key should be based on a supported curve.": "Ein ECC-Schlüssel sollte auf einer unterstützten Kurve basieren.",
4
+ "An internal error occurred. The server response could not be parsed. Please contact your administrator.": "Ein interner Fehler ist aufgetreten. Die Antwort des Servers konnte nicht analysiert werden. Bitte kontaktieren Sie Ihren Administrator.",
5
+ "An RSA key should have a length of {{size}} bits minimum.": "Ein RSA-Schlüssel sollte eine Mindestlänge von {{size}} Bits haben.",
6
+ "Autofill failed. Could not find the active tab.": "Automatisches Ausfüllen fehlgeschlagen. Der aktive Tab konnte nicht gefunden werden.",
7
+ "Calculate permissions": "Berechtigungen berechnen",
8
+ "Calculating changes ...": "Änderungen werden berechnet...",
9
+ "Calculating changes for {{name}}": "Änderungen für {{name}} werden berechnet",
10
+ "Calculating changes...": "Änderungen werden berechnet...",
11
+ "Could not move, expecting a folder to be provided.": "Verschieben nicht möglich, es wurde kein Ordner angegeben.",
12
+ "Could not move, expecting at least a resource to be provided.": "Verschieben nicht möglich, es muss mindestens eine Ressource angegeben werden.",
13
+ "Could not verify the server key.": "Der Serverschlüssel konnte nicht verifiziert werden.",
14
+ "Creating folder...": "Ordner wird erstellt...",
15
+ "Creating password": "Passwort wird erstellt",
16
+ "Decrypting ...": "Entschlüsselung ...",
17
+ "Decrypting {{counter}}/{{total}}": "Entschlüsselung {{counter}}/{{total}}",
18
+ "Done": "Fertig",
19
+ "Done!": "Fertig!",
20
+ "Encrypting": "Verschlüsselung",
21
+ "Encrypting {{counter}}/{{total}}": "Verschlüsselung {{counter}}/{{total}}",
22
+ "Encrypting secret": "Geheimnis wird verschlüsselt",
23
+ "Expiry date will be updated on {{count}} resource._one": "Das Ablaufdatum wird auf {{count}} Ressource aktualisiert.",
24
+ "Expiry date will be updated on {{count}} resource._other": "Das Ablaufdatum wird auf {{count}} Ressourcen aktualisiert.",
25
+ "Exporting ...": "Exportieren ...",
26
+ "Fetching parent permissions": "Übergeordnete Berechtigungen werden abgerufen",
27
+ "Folder {{name}} can not be moved.": "Der Ordner {{name}} kann nicht verschoben werden.",
28
+ "Folder {{name}} is already in folder {{destination}}.": "Der Ordner {{name}} befindet sich bereits im Ordner {{destination}}.",
29
+ "Generate file": "Datei erzeugen",
30
+ "Importing ...": "Importieren ...",
31
+ "Importing folders {{importedCount}}/{{total}}": "Ordner {{importedCount}}/{{total}} werden importiert",
32
+ "Importing passwords {{importedCount}}/{{total}}": "Passwörter {{importedCount}}/{{total}} werden importiert",
33
+ "Inactive worker on the page.": "Inaktives Worker auf der Seite.",
34
+ "Initialize": "Initialisieren",
35
+ "Initializing": "Initialisierung",
36
+ "Initializing ...": "Initialisierung ...",
37
+ "Mark as expired ...": "Als abgelaufen markieren ...",
38
+ "MFA authentication is required.": "MFA-Authentifizierung ist erforderlich.",
39
+ "Moving {{name}}": "{{name}} wird verschoben",
40
+ "Moving {{total}} resources": "{{total}} Ressourcen werden verschoben",
41
+ "Moving folder": "Ordner wird verschoben",
42
+ "Moving one resource": "Eine Ressource wird verschoben",
43
+ "Preparing...": "Vorbereitung...",
44
+ "Private key not found.": "Privater Schlüssel nicht gefunden.",
45
+ "Public key can't be found.": "Öffentlicher Schlüssel konnte nicht gefunden werden.",
46
+ "Rekeying users' key": "Benutzerschlüssel erneut eingeben",
47
+ "Saving permissions...": "Berechtigungen werden gespeichert...",
48
+ "Saving resource": "Ressource wird gespeichert",
49
+ "Server internal error. Check with your administrator.": "Interner Serverfehler. Kontaktieren Sie Ihren Administrator.",
50
+ "Share {{count}} password_one": "{{count}} Passwort teilen",
51
+ "Share {{count}} password_other": "{{count}} Passwörter teilen",
52
+ "Sharing folder {{name}}": "Ordner {{name}} wird geteilt",
53
+ "Start sharing": "Teilen beginnen",
54
+ "Synchronizing keyring": "Schlüsselring wird synchronisiert",
55
+ "Synchronizing keys": "Schlüssel werden synchronisiert",
56
+ "Tagging passwords {{taggedCount}}/{{total}}": "Passwörter {{taggedCount}}/{{total}} werden markiert",
57
+ "The external service is unavailable": "Der externe Dienst ist nicht verfügbar",
58
+ "The external service raised an error": "Der externe Dienst hat einen Fehler ausgelöst",
59
+ "The folder cannot be moved inside itself.": "Der Ordner kann nicht in sich selbst verschoben werden.",
60
+ "The folder cannot be shared. Insufficient rights.": "Der Ordner kann nicht geteilt werden. Unzureichende Rechte.",
61
+ "The key should be a valid openpgp armored key string.": "Der Schlüssel sollte ein gültiger Openpgp armored Schlüsselstring sein.",
62
+ "The key should be a valid openpgp key.": "Der Schlüssel sollte ein gültiger openpgp-Schlüssel sein.",
63
+ "The key should be a valid openpgp private key.": "Der Schlüssel sollte ein gültiger privater openpgp-Schlüssel sein.",
64
+ "The key should be a valid openpgp public key.": "Der Schlüssel sollte ein gültiger öffentlicher openpgp-Schlüssel sein.",
65
+ "The keys should be an array of valid decrypted openpgp private keys.": "Die Schlüssel sollten ein Array gültiger entschlüsselter Openpgp privater Schlüssel sein.",
66
+ "The keys should be an array of valid encrypted openpgp private keys.": "Die Schlüssel sollten ein Array gültiger verschlüsselter Openpgp Privatschlüssel sein.",
67
+ "The keys should be an array of valid openpgp armored key strings.": "Die Schlüssel sollten ein Array gültiger Openpgp armored Schlüsselstrings sein.",
68
+ "The keys should be an array of valid openpgp private keys.": "Die Schlüssel sollten ein Array gültiger Openpgp Privatschlüssel sein.",
69
+ "The keys should be an array of valid openpgp public keys.": "Die Schlüssel sollten ein Array gültiger Openpgp öffentlicher Schlüssel sein.",
70
+ "The keys should be an array.": "Die Schlüssel müssen ein Array sein.",
71
+ "The message should be a valid openpgp clear text message.": "Die Nachricht sollte eine gültige OpenPGP-Klartextnachricht sein.",
72
+ "The message should be a valid openpgp message.": "Die Nachricht sollte eine gültige Openpgp-Nachricht sein.",
73
+ "The message should be of type string.": "Die Nachricht sollte vom Typ String sein.",
74
+ "The private key should be a valid openpgp key.": "Der private Schlüssel sollte ein gültiger Openpgp Schlüssel sein.",
75
+ "The private key should be decrypted.": "Der private Schlüssel sollte entschlüsselt werden.",
76
+ "The private key should be encrypted.": "Der private Schlüssel sollte verschlüsselt werden.",
77
+ "The private key should not be expired.": "Der private Schlüssel sollte nicht abgelaufen sein.",
78
+ "The private key should not be revoked.": "Der private Schlüssel sollte nicht widerrufen werden.",
79
+ "The private key should not have an expiry date.": "Der private Schlüssel sollte kein Ablaufdatum haben.",
80
+ "The private key should use a supported algorithm: RSA, ECDSA OR EDDSA.": "Der private Schlüssel sollte einen unterstützten Algorithmus verwenden: RSA, ECDSA oder EDDSA.",
81
+ "The server key cannot be parsed.": "Der Server-Schlüssel kann nicht geparst werden.",
82
+ "The server key has changed.": "Der Serverschlüssel wurde geändert.",
83
+ "The server key is expired.": "Der Server-Schlüssel ist abgelaufen.",
84
+ "The service is unavailable": "Der Dienst ist nicht verfügbar",
85
+ "This is not a valid passphrase": "Dies ist kein gültiges Kennwort",
86
+ "This key does not match any account.": "Dieser Schlüssel stimmt mit keinem Konto überein.",
87
+ "This key is already used by another user.": "Dieser Schlüssel wird bereits von einem anderen Benutzer verwendet.",
88
+ "Unable to retrieve the active tab info.": "Aktive Tab-Informationen können nicht abgerufen werden.",
89
+ "Updating group": "Gruppe wird aktualisiert",
90
+ "Updating group ...": "Gruppe wird aktualisiert ...",
91
+ "Updating password": "Passwort wird aktualisiert",
92
+ "Updating resource": "Ressource wird aktualisiert",
93
+ "Updating users' key...": "Aktualisiere Benutzer-Schlüssel..."
94
+ }