passbolt-styleguide 3.3.2 → 3.4.0-alpha1

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 (203) hide show
  1. package/build/css/help.min.css +2 -2
  2. package/build/css/public.min.css +2 -2
  3. package/build/css/themes/default/api_authentication.min.css +3 -3
  4. package/build/css/themes/default/api_cloud.min.css +3 -3
  5. package/build/css/themes/default/api_main.min.css +4 -4
  6. package/build/css/themes/default/api_reports.min.css +4 -4
  7. package/build/css/themes/default/api_webinstaller.min.css +3 -3
  8. package/build/css/themes/default/ext_app.min.css +4 -4
  9. package/build/css/themes/default/ext_authentication.min.css +3 -3
  10. package/build/css/themes/default/ext_external.min.css +2 -2
  11. package/build/css/themes/default/ext_in_form_cta.min.css +3 -3
  12. package/build/css/themes/default/ext_in_form_menu.min.css +3 -3
  13. package/build/css/themes/default/ext_quickaccess.min.css +3 -3
  14. package/build/css/themes/midgar/api_authentication.min.css +9 -0
  15. package/build/css/themes/midgar/api_main.min.css +4 -4
  16. package/build/css/themes/midgar/api_reports.min.css +4 -4
  17. package/build/css/themes/midgar/ext_app.min.css +4 -4
  18. package/build/css/themes/midgar/ext_authentication.min.css +3 -3
  19. package/build/css/themes/midgar/ext_in_form_cta.min.css +3 -3
  20. package/build/css/themes/midgar/ext_in_form_menu.min.css +3 -3
  21. package/build/css/themes/midgar/ext_quickaccess.min.css +3 -3
  22. package/build/js/dist/api-app.js +1 -1
  23. package/build/js/dist/api-recover.js +1 -1
  24. package/build/js/dist/api-setup.js +1 -1
  25. package/build/js/dist/api-triage.js +1 -1
  26. package/build/js/dist/api-vendors.js +1 -1
  27. package/build/js/dist/api-vendors.js.LICENSE.txt +40 -4
  28. package/package.json +7 -6
  29. package/src/img/third_party/ChromeWebStore_black.svg +1 -0
  30. package/src/img/third_party/ChromeWebStore_white.svg +1 -0
  31. package/src/img/third_party/edge-addon-black.svg +1 -0
  32. package/src/img/third_party/edge-addon-white.svg +1 -0
  33. package/src/locales/de-DE/common.json +11 -11
  34. package/src/locales/en-UK/common.json +11 -12
  35. package/src/locales/fr/common.json +750 -0
  36. package/src/locales/fr-FR/common.json +11 -11
  37. package/src/locales/sv-SE/common.json +11 -11
  38. package/src/react-extension/ExtApp.js +9 -6
  39. package/src/react-extension/components/Administration/DisplayEmailNotificationsAdministration/DisplayEmailNotificationsAdministration.js +1 -1
  40. package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.test.stories.js +0 -1
  41. package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.js +1 -1
  42. package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.js +1 -1
  43. package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.stories.js +5 -8
  44. package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.js +1 -1
  45. package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.test.data.js +4 -1
  46. package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.test.js +4 -4
  47. package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.js +1 -1
  48. package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.test.js +1 -1
  49. package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.js +2 -3
  50. package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.stories.js +5 -9
  51. package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.js +2 -2
  52. package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.test.stories.js +0 -3
  53. package/src/react-extension/components/Authentication/AskForAuthenticationHelp/AskForAuthenticationHelp.js +1 -1
  54. package/src/react-extension/components/Authentication/AskForAuthenticationHelp/AskForAuthenticationHelp.test.stories.js +12 -15
  55. package/src/react-extension/components/Authentication/CheckMailBox/CheckMailBox.js +2 -2
  56. package/src/react-extension/components/Authentication/CheckMailBox/CheckMailBox.test.js +1 -1
  57. package/src/react-extension/components/Authentication/CheckMailBox/CheckMailbox.test.stories.js +12 -14
  58. package/src/react-extension/components/Authentication/CheckPassphrase/CheckPassphrase.test.stories.js +12 -15
  59. package/src/react-extension/components/Authentication/ChooseSecurityToken/ChooseSecurityToken.test.stories.js +12 -15
  60. package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.test.stories.js +12 -15
  61. package/src/react-extension/components/Authentication/DisplayBrowserNotSupported/DisplayBrowserNotSupported.test.stories.js +12 -15
  62. package/src/react-extension/components/Authentication/DisplayExpiredTokenError/DisplayExpiredTokenError.test.stories.js +12 -15
  63. package/src/react-extension/components/Authentication/DisplayRequireInvitationError/DisplayRequireInvitationError.test.stories.js +12 -15
  64. package/src/react-extension/components/Authentication/DisplayUnexpectedError/DisplayUnexpectedError.test.stories.js +12 -15
  65. package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.js +1 -1
  66. package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.test.stories.js +12 -15
  67. package/src/react-extension/components/Authentication/EnterNameForm/EnterNameForm.test.stories.js +12 -15
  68. package/src/react-extension/components/Authentication/EnterUsernameForm/EnterUsernameForm.test.stories.js +12 -15
  69. package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.data.js +14 -0
  70. package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.js +65 -0
  71. package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.page.js +38 -0
  72. package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.stories.js +12 -15
  73. package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.js +15 -6
  74. package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.test.js +27 -0
  75. package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.test.stories.js +12 -15
  76. package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.test.stories.js +12 -15
  77. package/src/react-extension/components/Authentication/NotifyExpiredSession/NotifyExpiredSession.test.stories.js +8 -11
  78. package/src/react-extension/components/AuthenticationLogin/AcceptLoginServerKeyChange/AcceptLoginServerKeyChange.test.stories.js +12 -15
  79. package/src/react-extension/components/AuthenticationLogin/DisplayLoginError/DisplayLoginError.test.stories.js +12 -15
  80. package/src/react-extension/components/AuthenticationLogin/DisplayLoginInProgress/DisplayLoginProgress.test.stories.js +12 -15
  81. package/src/react-extension/components/AuthenticationLogin/Login/Login.test.stories.js +12 -15
  82. package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.test.stories.js +5 -11
  83. package/src/react-extension/components/AuthenticationRecover/RecoverAuthentication/RecoverAuthentication.js +1 -1
  84. package/src/react-extension/components/Common/Error/ShowErrorDetails/ShowErrorDetails.js +1 -1
  85. package/src/react-extension/components/Common/Icons/Icon.test.stories.js +3 -1
  86. package/src/react-extension/components/Common/Loading/LoadingSpinner/LoadingSpinner.js +2 -1
  87. package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.js +1 -1
  88. package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.test.js +1 -1
  89. package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.test.stories.js +34 -0
  90. package/src/react-extension/components/Resource/CreateResource/CreateResource.test.stories.js +14 -4
  91. package/src/react-extension/components/Resource/DisplayResourcesList/DisplayDragResource.js +68 -0
  92. package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.js +9 -42
  93. package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.test.page.js +4 -1
  94. package/src/react-extension/components/Resource/ExportResources/ExportResources.test.stories.js +5 -11
  95. package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.js +6 -10
  96. package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.test.stories.js +5 -11
  97. package/src/react-extension/components/Resource/FilterResourcesByBreadcrumb/FilterResourcesByBreadcrumb.test.stories.js +0 -1
  98. package/src/react-extension/components/Resource/FilterResourcesByFolders/DisplayDragFolderItem.js +109 -0
  99. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.js +40 -192
  100. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.data.js +10 -5
  101. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.js +9 -12
  102. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.page.js +5 -1
  103. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.stories.js +0 -1
  104. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.js +83 -58
  105. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.data.js +52 -59
  106. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.js +25 -20
  107. package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.page.js +11 -5
  108. package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.test.stories.js +0 -1
  109. package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.data.js +47 -0
  110. package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.js +34 -3
  111. package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.page.js +46 -9
  112. package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.stories.js +0 -1
  113. package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTagsList.js +124 -4
  114. package/src/react-extension/components/Resource/FilterResourcesByText/FilterResourcesByText.test.stories.js +0 -2
  115. package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.js +6 -10
  116. package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.test.stories.js +5 -11
  117. package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.js +3 -3
  118. package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.test.js +3 -3
  119. package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.test.stories.js +5 -11
  120. package/src/react-extension/components/ResourceComment/AddResourceComment/AddResourceComment.test.stories.js +8 -14
  121. package/src/react-extension/components/ResourceComment/ConfirmResourceCommentDeletion/ConfirmResourceCommentDeletion.test.stories.js +5 -11
  122. package/src/react-extension/components/ResourceComment/DisplayResourceCommentList/DisplayResourceCommentList.test.stories.js +8 -14
  123. package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.test.stories.js +8 -15
  124. package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsActivity.test.stories.js +0 -1
  125. package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsDescription.test.stories.js +0 -1
  126. package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.test.js +1 -1
  127. package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.test.stories.js +0 -1
  128. package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.test.stories.js +0 -3
  129. package/src/react-extension/components/ResourceFolder/DefineResourceFolderMoveStrategy/DefineResourceFolderMoveStrategy.test.stories.js +0 -6
  130. package/src/react-extension/components/ResourceFolder/DeleteResourceFolder/DeleteResourceFolder.test.stories.js +0 -5
  131. package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.test.stories.js +0 -7
  132. package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsActivity.test.stories.js +0 -2
  133. package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsInformation.test.stories.js +0 -2
  134. package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsPermissions.test.stories.js +0 -2
  135. package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePassphraseGenerator.test.stories.js +0 -1
  136. package/src/react-extension/components/ResourceTag/DeleteResourceTag/DeleteResourceTag.test.stories.js +0 -2
  137. package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.test.stories.js +0 -4
  138. package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTags.js +1 -1
  139. package/src/react-extension/components/Share/ShareDialog.test.stories.js +5 -9
  140. package/src/react-extension/components/User/ConfirmDisableUserMFA/ConfirmDisableUserMFA.test.stories.js +5 -9
  141. package/src/react-extension/components/User/CreateUser/CreateUser.test.stories.js +3 -1
  142. package/src/react-extension/components/User/DeleteUser/DeleteUser.test.stories.js +5 -8
  143. package/src/react-extension/components/User/DeleteUser/DeleteUserWithConflicts.test.stories.js +5 -8
  144. package/src/react-extension/components/User/EditUser/EditUser.test.stories.js +3 -1
  145. package/src/react-extension/components/User/FilterUsersByBreadcrumb/FilterUsersByBreadcrumb.test.stories.js +5 -8
  146. package/src/react-extension/components/User/FilterUsersByShortcut/FilterUsersByShortcut.test.stories.js +0 -1
  147. package/src/react-extension/components/User/FilterUsersByText/FilterUsersByText.test.stories.js +0 -2
  148. package/src/react-extension/components/UserDetails/DisplayUserDetailsGroups/DisplayUserDetailsGroups.test.stories.js +8 -11
  149. package/src/react-extension/components/UserDetails/DisplayUserDetailsInformation/DisplayUserDetailsInformation.test.stories.js +8 -11
  150. package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.test.stories.js +8 -12
  151. package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.test.stories.js +5 -8
  152. package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroup.test.stories.js +5 -8
  153. package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroupWithConflicts.test.stories.js +5 -8
  154. package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsInformation/DisplayUserGroupDetailsInformation.test.stories.js +8 -11
  155. package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsMembers/DisplayUserGroupDetailsMembers.test.stories.js +8 -11
  156. package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.stories.js +5 -8
  157. package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.js +55 -2
  158. package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.test.data.js +6 -0
  159. package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.js +54 -6
  160. package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.data.js +6 -0
  161. package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.js +1 -1
  162. package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.test.stories.js +5 -8
  163. package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.js +21 -6
  164. package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.test.stories.js +5 -8
  165. package/src/react-extension/components/UserSetting/DisplayUserProfile/DisplayUserProfile.test.stories.js +5 -8
  166. package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspaceBreadcrumb/DisplayUserSettingsWorkspaceBreadcrumb.test.stories.js +5 -8
  167. package/src/react-extension/components/UserSetting/DisplayUserTheme/DisplayUserTheme.test.stories.js +5 -8
  168. package/src/react-extension/components/UserSetting/EditUserProfile/EditUserProfile.test.stories.js +5 -8
  169. package/src/react-extension/components/UserSetting/NavigateIntoUserSettingsWorkspace/NavigateIntoUserSettingsWorkspace.test.stories.js +7 -10
  170. package/src/react-extension/components/UserSetting/UploadUserProfileAvatar/UploadUserProfileAvatar.js +2 -2
  171. package/src/react-extension/components/UserSetting/UploadUserProfileAvatar/UploadUserProfileAvatar.test.stories.js +5 -8
  172. package/src/react-extension/contexts/ApiAppContext.js +1 -1
  173. package/src/react-extension/contexts/ApiRecoverContext.js +1 -1
  174. package/src/react-extension/contexts/ApiSetupContext.js +1 -1
  175. package/src/react-extension/contexts/DragContext.js +122 -0
  176. package/src/react-extension/contexts/DragContext.test.js +53 -0
  177. package/src/react-extension/test/mock/components/Internationalisation/MockTranslationProvider.js +42 -7
  178. package/src/react-quickaccess/components/AnimatedSwitch/AnimatedSwitch.js +3 -3
  179. package/src/react-quickaccess/components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgressPage.test.stories.js +3 -4
  180. package/src/react-quickaccess/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.test.stories.js +6 -6
  181. package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.test.stories.js +7 -3
  182. package/src/react-quickaccess/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.test.stories.js +6 -6
  183. package/src/react-quickaccess/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.test.stories.js +6 -6
  184. package/src/react-quickaccess/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.test.stories.js +6 -6
  185. package/src/react-quickaccess/components/FilterResourcesByTagPage/FilterResourcesByTagPage.test.stories.js +7 -3
  186. package/src/react-quickaccess/components/Header/Header.test.stories.js +3 -6
  187. package/src/react-quickaccess/components/HomePage/HomePage.test.stories.js +13 -9
  188. package/src/react-quickaccess/components/LoginPage/LoginPage.js +41 -5
  189. package/src/react-quickaccess/components/LoginPage/LoginPage.test.stories.js +3 -5
  190. package/src/react-quickaccess/components/MoreFiltersPage/MoreFiltersPage.test.stories.js +3 -5
  191. package/src/react-quickaccess/components/PassphraseDialog/PassphraseDialog.test.stories.js +5 -5
  192. package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.test.stories.js +5 -5
  193. package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.test.stories.js +5 -5
  194. package/src/react-quickaccess/components/ResourceViewPage/ResourceViewPage.test.stories.js +4 -2
  195. package/src/react-quickaccess/components/Search/Search.test.stories.js +3 -5
  196. package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.stories.js +6 -2
  197. package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenu.test.stories.js +9 -2
  198. package/src/react-web-integration/lib/InForm/InFormCallToActionField.js +3 -3
  199. package/src/react-web-integration/lib/InForm/InFormManager.js +12 -6
  200. package/src/react-web-integration/lib/InForm/InformMenuField.js +1 -1
  201. package/src/shared/lib/Browser/detectBrowserName.js +2 -1
  202. package/src/img/third_party/ChromeWebStore_black.png +0 -0
  203. package/src/img/third_party/ChromeWebStore_white.png +0 -0
@@ -91,7 +91,7 @@
91
91
  "Check out our Multi Factor Authentication configuration guide.": "Consultez notre guide de configuration pour l'authentification multi-facteurs.",
92
92
  "Check out our ldap configuration guide.": "Consultez notre guide de configuration pour ldap.",
93
93
  "Check your mailbox!": "Consultez votre boîte aux lettres !",
94
- "Check your spam folder if you do not see hear from us after a while.": "Vérifiez votre dossier de spam si vous ne voyez pas de nouvelles de notre part après un certain temps.",
94
+ "Check your spam folder if you do not hear from us after a while.": "Vérifiez votre dossier de spam si vous ne voyez pas de nouvelles de notre part après un certain temps.",
95
95
  "Choose a file": "Choisissez un fichier",
96
96
  "Choose the export format (csv and kdbx are supported)": "Choisissez le format d'export (csv et kdbx sont supportés)",
97
97
  "Click save to apply your pending changes.": "Cliquez sur enregistrer pour appliquer vos modifications en attente.",
@@ -194,7 +194,7 @@
194
194
  "Enter the password and/or key file": "Entrer le mot de passe et/ou le fichier clé",
195
195
  "Entropy:": "Entropie:",
196
196
  "Error": "Erreur",
197
- "Errors details": "Détails des erreurs",
197
+ "Error details": "Détails des erreurs",
198
198
  "Errors:": "Erreurs",
199
199
  "Exclude look-alike characters": "Exclure les caractères ressemblants",
200
200
  "Expires": "Expire",
@@ -213,7 +213,7 @@
213
213
  "Folder": "Dossier",
214
214
  "Folder name": "Nom de dossier",
215
215
  "Folders": "Dossiers",
216
- "Folders errors": "Erreurs dossiers",
216
+ "Folder errors": "Erreurs dossiers",
217
217
  "For Openldap only. Defines which group object to use.": "Pour Openldap seulement. Définit quel groupe l'objet à utiliser.",
218
218
  "For Openldap only. Defines which user object to use.": "Pour Openldap seulement. Définit quel objet utilisateur utiliser.",
219
219
  "For any change or question related to your passbolt subscription, kindly contact our sales team.": "Pour toute modification ou question liée à votre souscription à Passbolt, veuillez contacter notre équipe commerciale.",
@@ -252,7 +252,7 @@
252
252
  "If there was an issue during the transfer, either the operation was cancelled on the mobile side, or the authentication token expired.": "S'il y a eu un problème pendant le transfert, soit l'opération a été annulée du côté mobile, soit le jeton d'authentification a expiré.",
253
253
  "If this does not work get in touch with support.": "Si cela ne fonctionne pas, contactez le support.",
254
254
  "If this is empty then it will be queried from the RootDSE.": "Si cela est vide, alors il sera interrogé à partir du RootDSE.",
255
- "If you do not access, you can request a new account to the administrator.": "Si vous n'y accédez pas, vous pouvez demander un nouveau compte à l'administrateur.",
255
+ "If you do not have access, you can request a new account from the administrator.": "Si vous n'y accédez pas, vous pouvez demander un nouveau compte à l'administrateur.",
256
256
  "If you have multiple browsers configured, the passphrase will need to be changed in all places individually.": "Si vous avez plusieurs navigateurs configurés, la phrase de passe devra être modifiée individuellement pour tous.",
257
257
  "Ignored:": "Ignoré",
258
258
  "Import": "Importer",
@@ -536,7 +536,7 @@
536
536
  "The operation failed with the following error:": "L'opération a échoué avec l'erreur suivante :",
537
537
  "The operation has been aborted.": "L'opération a été annulée.",
538
538
  "The operation was cancelled.": "L'opération a été annulée.",
539
- "The operation was successfull.": "L'opération a réussi.",
539
+ "The operation was successful.": "L'opération a réussi.",
540
540
  "The passphrase is invalid.": "La phrase de passe est invalide.",
541
541
  "The passphrase is stored on your device and never sent server side.": "La phrase de passe est stockée sur votre appareil et n'est jamais envoyée au serveur.",
542
542
  "The passphrase is used to encrypt your secret key, which is required to decrypt your secrets, such as the passwords.": "La phrase de passe est utilisée pour chiffrer votre clé secrète, qui est nécessaire pour déchiffrer vos secrets, tels que les mots de passe.",
@@ -600,12 +600,12 @@
600
600
  "This security token will be displayed when your passphrase is requested, so you can verify quickly the form is coming from passbolt.": "Ce jeton de sécurité sera affiché lorsque votre phrase de passe vous sera demandée, afin que vous puissiez vérifier rapidement que le formulaire provient bien de passbolt.",
601
601
  "This shared tag can't be added, you are not the owner": "Ce tag partagé ne peut pas être ajouté, vous n'êtes pas le propriétaire",
602
602
  "This shared tag can't be deleted, you are not the owner": "Ce tag partagé ne peut pas être supprimé, vous n'êtes pas le propriétaire",
603
- "This tag can't be added, the length cannot exceeds {{tagMaxLength}}": "Ce tag ne peut pas être ajoutée, la longueur ne peut pas dépasser {{tagMaxLength}}",
603
+ "This tag can't be added, the length cannot exceed {{tagMaxLength}}": "Ce tag ne peut pas être ajoutée, la longueur ne peut pas dépasser {{tagMaxLength}}",
604
604
  "This tag is already present": "Ce tag est déjà présent",
605
605
  "This user is an administrator": "Cet utilisateur est un administrateur",
606
606
  "This user is the sole owner of some content. You need to transfer the ownership to others to continue.": "Cet utilisateur est l'unique propriétaire de certains contenus. Vous devez transférer la possesion à d'autres pour continuer.",
607
607
  "This will help protect you from <1>phishing attacks</1>.": "Cela vous protégera contre les <1>attaques par hameçonnage</1>.",
608
- "This will help protect you from phishing attack": "Cela vous protégera contre les attaques par hameçonnage",
608
+ "This will help protect you from phishing attacks": "Cela vous protégera contre les attaques par hameçonnage",
609
609
  "Time-based One Time Password": "Mot de passe à usage unique basé sur le temps (TOTP)",
610
610
  "Tips for choosing a good passphrase": "Conseils pour choisir une bonne phrase de passe",
611
611
  "Transfer complete!": "Transfert terminé !",
@@ -660,8 +660,8 @@
660
660
  "Warning: This action can’t be undone. Other users may lose access.": "Attention: cette action ne peut pas être annulée. D'autres utilisateurs risquent de perdre l'accès.",
661
661
  "Warning: This action can’t be undone. Users in this group may lose access to the content shared with it.": "Attention: Cette action ne peut pas être annulée. Les utilisateurs de ce groupe risquent de perdre l'accès au contenu partagé avec lui.",
662
662
  "Warning: this is the maximum size for this field, make sure your data was not truncated": "Attention: il s'agit de la taille maximale de ce champ, assurez-vous que vos données n'ont pas été tronquées",
663
- "We send you a link to verify your email.": "Nous vous avons envoyé un lien pour vérifier votre e-mail.",
664
- "Welcome back, please enter your private key to begin with the recovery process.": "Bienvenue à nouveau, veuillez entrer votre clé privée pour commencer le processus de récupération.",
663
+ "We sent you a link to verify your email.": "Nous vous avons envoyé un lien pour vérifier votre e-mail.",
664
+ "Welcome back, please enter your private key to begin the recovery process.": "Bienvenue à nouveau, veuillez entrer votre clé privée pour commencer le processus de récupération.",
665
665
  "Welcome to Passbolt, please select a passphrase!": "Bienvenue à Passbolt, veuillez sélectionner une phrase de passe!",
666
666
  "Welcome to passbolt!": "Bienvenue sur passbolt!",
667
667
  "Welcome to the mobile account transfer!": "Bienvenue dans le transfert de compte mobile !",
@@ -673,7 +673,7 @@
673
673
  "When a folder is deleted, notify the users who had access to it.": "Lorsqu'un dossier est supprimé, avisez les utilisateurs qui y avaient accès.",
674
674
  "When a folder is shared, notify the users who gain access to it.": "Lorsqu'un dossier est partagé, informer les utilisateurs qui y ont gagné accès.",
675
675
  "When a folder is updated, notify the users who have access to it.": "Lorsqu'un dossier est mis à jour, informer les utilisateurs qui y ont accès.",
676
- "When a group is deleted, notify the users who were member of it.": "Lorsqu'un groupe est supprimé, informer les utilisateurs qui en ont été membres.",
676
+ "When a group is deleted, notify the users who were members of it.": "Lorsqu'un groupe est supprimé, informer les utilisateurs qui en ont été membres.",
677
677
  "When a password is created, notify its creator.": "Lorsqu'un mot de passe est créé, informer son créateur.",
678
678
  "When a password is deleted, notify the users who had access to it.": "Lorsqu'un mot de passe est supprimé, informer les utilisateurs qui y avaient accès.",
679
679
  "When a password is shared, notify the users who gain access to it.": "Lorsqu'un mot de passe est partagé, informer les utilisateurs qui y ont gagné accès.",
@@ -736,7 +736,7 @@
736
736
  "copy": "copier",
737
737
  "copy to clipboard": "copier dans le presse-papier",
738
738
  "csv exports from keepassx, lastpass and 1password are supported": "Les exports csv de keepass, lastpass et 1password sont pris en charge",
739
- "curently:": "actuellement:",
739
+ "currently:": "actuellement:",
740
740
  "deleted": "supprimer",
741
741
  "edit": "modifier",
742
742
  "email": "e-mail",
@@ -91,7 +91,7 @@
91
91
  "Check out our Multi Factor Authentication configuration guide.": "Kolla in vår konfigurationsguide för multifaktor-autentisering.",
92
92
  "Check out our ldap configuration guide.": "Kolla in vår konfigurationsguide för ldap.",
93
93
  "Check your mailbox!": "Kolla din brevlåda!",
94
- "Check your spam folder if you do not see hear from us after a while.": "Kolla din skräppostmapp om du inte har hört från oss efter ett tag.",
94
+ "Check your spam folder if you do not hear from us after a while.": "Kolla din skräppostmapp om du inte har hört från oss efter ett tag.",
95
95
  "Choose a file": "Välj en fil",
96
96
  "Choose the export format (csv and kdbx are supported)": "Välj exportformat (csv och kdbx stöds)",
97
97
  "Click save to apply your pending changes.": "Klicka på spara för att tillämpa dina väntande ändringar.",
@@ -194,7 +194,7 @@
194
194
  "Enter the password and/or key file": "Ange lösenordet och/eller nyckelfilen",
195
195
  "Entropy:": "Entropy:",
196
196
  "Error": "Fel",
197
- "Errors details": "Detaljerad felinformation",
197
+ "Error details": "Detaljerad felinformation",
198
198
  "Errors:": "Fel",
199
199
  "Exclude look-alike characters": "Exclude look-alike characters",
200
200
  "Expires": "Utgår",
@@ -213,7 +213,7 @@
213
213
  "Folder": "Mapp",
214
214
  "Folder name": "Mappens namn",
215
215
  "Folders": "Mappar",
216
- "Folders errors": "Fel i mappar",
216
+ "Folder errors": "Fel i mappar",
217
217
  "For Openldap only. Defines which group object to use.": "Endast för Openldap Definierar vilket gruppobjekt som ska användas.",
218
218
  "For Openldap only. Defines which user object to use.": "Endast för Openldap Definierar vilken användare som ska användas.",
219
219
  "For any change or question related to your passbolt subscription, kindly contact our sales team.": "För eventuella ändringar eller frågor relaterade till din prenumeration på passbolt, vänligen kontakta vårt säljteam.",
@@ -252,7 +252,7 @@
252
252
  "If there was an issue during the transfer, either the operation was cancelled on the mobile side, or the authentication token expired.": "If there was an issue during the transfer, either the operation was cancelled on the mobile side, or the authentication token expired.",
253
253
  "If this does not work get in touch with support.": "Om detta inte fungerar, kontakta supporten.",
254
254
  "If this is empty then it will be queried from the RootDSE.": "Om detta är tomt kommer det att ställas frågor från RootDSE.",
255
- "If you do not access, you can request a new account to the administrator.": "Om du inte har tillgång till detta kan du begära ett nytt konto från administratören.",
255
+ "If you do not have access, you can request a new account from the administrator.": "Om du inte har tillgång till detta kan du begära ett nytt konto från administratören.",
256
256
  "If you have multiple browsers configured, the passphrase will need to be changed in all places individually.": "Om du har flera webbläsare konfigurerade måste lösenfrasen ändras på alla platser individuellt.",
257
257
  "Ignored:": "Ignorerad",
258
258
  "Import": "Importera",
@@ -536,7 +536,7 @@
536
536
  "The operation failed with the following error:": "Åtgärden misslyckades med följande fel:",
537
537
  "The operation has been aborted.": "Åtgärden har avbrutits.",
538
538
  "The operation was cancelled.": "The operation was cancelled.",
539
- "The operation was successfull.": "Åtgärden lyckades.",
539
+ "The operation was successful.": "Åtgärden lyckades.",
540
540
  "The passphrase is invalid.": "Lösenfrasen är ogiltig.",
541
541
  "The passphrase is stored on your device and never sent server side.": "Lösenfrasen lagras på din enhet och skickas aldrig till serversidan.",
542
542
  "The passphrase is used to encrypt your secret key, which is required to decrypt your secrets, such as the passwords.": "Lösenfrasen används för att kryptera din hemliga nyckel, vilket krävs för att dekryptera dina hemligheter, till exempel lösenorden.",
@@ -600,12 +600,12 @@
600
600
  "This security token will be displayed when your passphrase is requested, so you can verify quickly the form is coming from passbolt.": "Detta säkerhetstoken kommer att visas när din lösenfras begärs, så att du snabbt kan verifiera att formuläret kommer från passbolt.",
601
601
  "This shared tag can't be added, you are not the owner": "Denna delade tagg kan inte läggas till, du är inte ägaren",
602
602
  "This shared tag can't be deleted, you are not the owner": "Denna delade tagg kan inte läggas till, du är inte ägaren",
603
- "This tag can't be added, the length cannot exceeds {{tagMaxLength}}": "Denna tagg kan inte läggas till, längden kan inte överstiga {{tagMaxLength}}",
603
+ "This tag can't be added, the length cannot exceed {{tagMaxLength}}": "Denna tagg kan inte läggas till, längden kan inte överstiga {{tagMaxLength}}",
604
604
  "This tag is already present": "Den här taggen finns redan",
605
605
  "This user is an administrator": "Den här användaren är en administratör",
606
606
  "This user is the sole owner of some content. You need to transfer the ownership to others to continue.": "Den här användaren är ensam ägare av något innehåll. Du måste överföra äganderätten till andra för att fortsätta.",
607
607
  "This will help protect you from <1>phishing attacks</1>.": "Detta kommer att skydda dig från <1>nätfiskeattacker</1>.",
608
- "This will help protect you from phishing attack": "Detta kommer att skydda dig från nätfiskeattack",
608
+ "This will help protect you from phishing attacks": "Detta kommer att skydda dig från nätfiskeattack",
609
609
  "Time-based One Time Password": "Tidsbaserat Engångslösenord",
610
610
  "Tips for choosing a good passphrase": "Tips för att välja en bra lösenfras",
611
611
  "Transfer complete!": "Transfer complete!",
@@ -660,8 +660,8 @@
660
660
  "Warning: This action can’t be undone. Other users may lose access.": "Varning: Denna åtgärd kan inte ångras. Andra användare kan förlora åtkomst.",
661
661
  "Warning: This action can’t be undone. Users in this group may lose access to the content shared with it.": "Varning: Denna åtgärd kan inte ångras. Användare i denna grupp kan förlora åtkomst till det innehåll som delas med den.",
662
662
  "Warning: this is the maximum size for this field, make sure your data was not truncated": "Varning: detta är den maximala storleken för detta fält. Se till att dina data inte förkortats",
663
- "We send you a link to verify your email.": "Vi skickar en länk till dig för att verifiera din e-post.",
664
- "Welcome back, please enter your private key to begin with the recovery process.": "Välkommen tillbaka. Ange din privata nyckel för att börja med återställningsprocessen.",
663
+ "We sent you a link to verify your email.": "Vi skickar en länk till dig för att verifiera din e-post.",
664
+ "Welcome back, please enter your private key to begin the recovery process.": "Välkommen tillbaka. Ange din privata nyckel för att börja med återställningsprocessen.",
665
665
  "Welcome to Passbolt, please select a passphrase!": "Välkommen till Passbolt! Välj en lösenfras.",
666
666
  "Welcome to passbolt!": "Välkommen till passbolt!",
667
667
  "Welcome to the mobile account transfer!": "Welcome to the mobile account transfer!",
@@ -673,7 +673,7 @@
673
673
  "When a folder is deleted, notify the users who had access to it.": "När en mapp tas bort, meddela användarna som hade tillgång till den.",
674
674
  "When a folder is shared, notify the users who gain access to it.": "När en mapp delas, meddela användarna som får tillgång till den.",
675
675
  "When a folder is updated, notify the users who have access to it.": "När en mapp är uppdaterad, meddela användarna som har tillgång till den.",
676
- "When a group is deleted, notify the users who were member of it.": "När en grupp tas bort, meddela användarna som var medlemmar i den.",
676
+ "When a group is deleted, notify the users who were members of it.": "När en grupp tas bort, meddela användarna som var medlemmar i den.",
677
677
  "When a password is created, notify its creator.": "När ett lösenord skapas, meddela dess skapare.",
678
678
  "When a password is deleted, notify the users who had access to it.": "När ett lösenord tas bort, meddela användarna som hade tillgång till det.",
679
679
  "When a password is shared, notify the users who gain access to it.": "När ett lösenord delas, meddela användarna som får tillgång till det.",
@@ -736,7 +736,7 @@
736
736
  "copy": "copy",
737
737
  "copy to clipboard": "kopiera till urklipp",
738
738
  "csv exports from keepassx, lastpass and 1password are supported": "csv-export från keepassx, lastpass och 1password stöds",
739
- "curently:": "för närvarande:",
739
+ "currently:": "för närvarande:",
740
740
  "deleted": "raderade",
741
741
  "edit": "redigera",
742
742
  "email": "e-post",
@@ -55,6 +55,7 @@ import HandleFolderMoveStrategyEvents
55
55
  import HandleProgressEvents from "./components/Common/Progress/HandleProgressEvents/HandleProgressEvents";
56
56
  import HandleErrorEvents from "./components/Common/Error/HandleErrorEvents/HandleErrorEvents";
57
57
  import DisplayResourcesWorkspace from "./components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspace";
58
+ import DragContextProvider from "./contexts/DragContext";
58
59
 
59
60
  /**
60
61
  * The passbolt application served by the browser extension.
@@ -119,14 +120,16 @@ class ExtApp extends Component {
119
120
  <ManageDialogs/>
120
121
  <ManageContextualMenu/>
121
122
  <ManageAnnouncements/>
122
- <div id="container" className="page password">
123
- <div id="app" className="app ready" tabIndex="1000">
124
- <div className="header first">
125
- <DisplayMainMenu/>
123
+ <DragContextProvider>
124
+ <div id="container" className="page password">
125
+ <div id="app" className="app ready" tabIndex="1000">
126
+ <div className="header first">
127
+ <DisplayMainMenu/>
128
+ </div>
129
+ <DisplayResourcesWorkspace onMenuItemClick={this.handleWorkspaceSelect}/>
126
130
  </div>
127
- <DisplayResourcesWorkspace onMenuItemClick={this.handleWorkspaceSelect}/>
128
131
  </div>
129
- </div>
132
+ </DragContextProvider>
130
133
  </ResourcePasswordGeneratorContextProvider>
131
134
  </ResourceWorkspaceContextProvider>
132
135
  </Route>
@@ -438,7 +438,7 @@ class DisplayEmailNotificationsAdministration extends React.Component {
438
438
  <div className="col6">
439
439
  <label><Trans>Group membership</Trans></label>
440
440
  <span className="input toggle-switch form-element">
441
- <label htmlFor="send-group-delete-toggle-button"><Trans>When a group is deleted, notify the users who were member of it.</Trans></label>
441
+ <label htmlFor="send-group-delete-toggle-button"><Trans>When a group is deleted, notify the users who were members of it.</Trans></label>
442
442
  <input type="checkbox" className="toggle-switch-checkbox checkbox" name="groupDelete" disabled={this.hasAllInputDisabled()}
443
443
  onChange={this.handleInputChange} checked={this.state.groupDelete} id="send-group-delete-toggle-button"/>
444
444
  <label className="toggle-switch-button" htmlFor="send-group-delete-toggle-button"/>
@@ -289,7 +289,7 @@ class DisplaySimulateSynchronizeUserDirectoryAdministration extends Component {
289
289
  onClose={this.handleClose} disabled={this.isLoading()}>
290
290
  <div className="form-content" onSubmit={this.handleFormSubmit}>
291
291
  <p>
292
- <strong><Trans>The operation was successfull.</Trans></strong>
292
+ <strong><Trans>The operation was successful.</Trans></strong>
293
293
  </p>
294
294
  <p></p>
295
295
  {this.hasSuccessResource() &&
@@ -42,7 +42,7 @@ describe("See the simulate synchronize user directory administration dialog", ()
42
42
  it('As AD I should see The full report in the dialog for my simulate synchronize report', async() => {
43
43
  expect(page.title.hyperlink.textContent).toBe("Synchronize simulation report");
44
44
  expect(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.exists()).toBeTruthy();
45
- expect(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.resourceSynchronize).toBe(' 2 user and 60 group will be synchronized. ');
45
+ expect(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.resourceSynchronize).toBe(' 2 users and 60 groups will be synchronized. ');
46
46
  expect(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.error).toBe('Some resources will not be synchronized and will require your attention, see the full report.');
47
47
  expect(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.noResource).toBeNull();
48
48
  await page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.click(page.displaySimulateSynchronizeUserDirectoryAdministrationDialog.fullReport);
@@ -4,7 +4,6 @@ import AppContext from "../../../contexts/AppContext";
4
4
  import PropTypes from "prop-types";
5
5
  import DisplaySimulateSynchronizeUserDirectoryAdministration
6
6
  from "./DisplaySimulateSynchronizeUserDirectoryAdministration";
7
- import MockTranslationProvider from "../../../test/mock/components/Internationalisation/MockTranslationProvider";
8
7
 
9
8
  export default {
10
9
  title: 'Passbolt/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration',
@@ -15,13 +14,11 @@ const context = {};
15
14
 
16
15
 
17
16
  const Template = args =>
18
- <MockTranslationProvider>
19
- <AppContext.Provider value={context}>
20
- <MemoryRouter initialEntries={['/']}>
21
- <Route component={routerProps => <DisplaySimulateSynchronizeUserDirectoryAdministration {...args} {...routerProps}/>}></Route>
22
- </MemoryRouter>
23
- </AppContext.Provider>
24
- </MockTranslationProvider>;
17
+ <AppContext.Provider value={context}>
18
+ <MemoryRouter initialEntries={['/']}>
19
+ <Route component={routerProps => <DisplaySimulateSynchronizeUserDirectoryAdministration {...args} {...routerProps}/>}></Route>
20
+ </MemoryRouter>
21
+ </AppContext.Provider>;
25
22
 
26
23
  Template.propTypes = {
27
24
  context: PropTypes.object,
@@ -363,7 +363,7 @@ class DisplaySubscriptionKey extends React.Component {
363
363
  <span
364
364
  className={`label ${this.hasLimitUsersExceeded() ? "error" : ""}`}><Trans>Users limit:</Trans></span>
365
365
  <span
366
- className={`value ${this.hasLimitUsersExceeded() ? "error" : ""}`}>{this.state.users} (<Trans>curently:</Trans> {this.state.activeUsers})</span>
366
+ className={`value ${this.hasLimitUsersExceeded() ? "error" : ""}`}>{this.state.users} (<Trans>currently:</Trans> {this.state.activeUsers})</span>
367
367
  </li>
368
368
  <li className="created">
369
369
  <span className="label"><Trans>Valid from:</Trans></span>
@@ -40,13 +40,16 @@ export function formatDate(date) {
40
40
  }
41
41
  }
42
42
 
43
+ const expiredDate = new Date();
44
+ expiredDate.setMonth(expiredDate.getMonth() + 3);
45
+
43
46
  export const mockSubscription = {
44
47
  "customer_id": "1n6BPvHRWfizhmARz",
45
48
  "subscription_id": "1n6BPvHRWfizhmARz",
46
49
  "users": 5,
47
50
  "email": "ada@passbolt.com",
48
51
  "created": "2020-12-01",
49
- "expiry": "2021-12-01",
52
+ "expiry": formatDate(expiredDate.toISOString()),
50
53
  "data": "data"
51
54
  };
52
55
 
@@ -61,7 +61,7 @@ describe("As AD I should see the subscription", () => {
61
61
  expect(page.customerId).toBe(mockSubscription.customer_id);
62
62
  expect(page.subscriptionId).toBe(mockSubscription.subscription_id);
63
63
  expect(page.email).toBe(mockSubscription.email);
64
- expect(page.users).toBe(`${mockSubscription.users} (curently: ${mockUsers.length})`);
64
+ expect(page.users).toBe(`${mockSubscription.users} (currently: ${mockUsers.length})`);
65
65
  expect(page.created).toBe(`${formatDate(mockSubscription.created)}`);
66
66
  expect(page.expiry).toBe(`${formatDate(mockSubscription.expiry)} (${DateTime.fromISO(mockSubscription.expiry).toRelative()})`);
67
67
  expect(page.help).toBeTruthy();
@@ -81,7 +81,7 @@ describe("As AD I should see the subscription", () => {
81
81
  expect(page.customerId).toBe(mockSubscriptionUsersExceeded.customer_id);
82
82
  expect(page.subscriptionId).toBe(mockSubscriptionUsersExceeded.subscription_id);
83
83
  expect(page.email).toBe(mockSubscriptionUsersExceeded.email);
84
- expect(page.users).toBe(`${mockSubscriptionUsersExceeded.users} (curently: ${mockUsers.length})`);
84
+ expect(page.users).toBe(`${mockSubscriptionUsersExceeded.users} (currently: ${mockUsers.length})`);
85
85
  expect(page.created).toBe(`${formatDate(mockSubscriptionUsersExceeded.created)}`);
86
86
  expect(page.expiry).toBe(`${formatDate(mockSubscriptionUsersExceeded.expiry)} (${DateTime.fromISO(mockSubscriptionUsersExceeded.expiry).toRelative()})`);
87
87
 
@@ -102,7 +102,7 @@ describe("As AD I should see the subscription", () => {
102
102
  expect(page.customerId).toBe(mockSubscriptionExpired.customer_id);
103
103
  expect(page.subscriptionId).toBe(mockSubscriptionExpired.subscription_id);
104
104
  expect(page.email).toBe(mockSubscriptionExpired.email);
105
- expect(page.users).toBe(`${mockSubscriptionExpired.users} (curently: ${mockUsers.length})`);
105
+ expect(page.users).toBe(`${mockSubscriptionExpired.users} (currently: ${mockUsers.length})`);
106
106
  expect(page.created).toBe(`${formatDate(mockSubscriptionExpired.created)}`);
107
107
  expect(page.expiry).toBe(`${formatDate(mockSubscriptionExpired.expiry)} (expired ${DateTime.fromISO(mockSubscriptionExpired.expiry).toRelative()})`);
108
108
 
@@ -183,7 +183,7 @@ describe("As AD I should see the subscription", () => {
183
183
  expect(page.customerId).toBe(mockSubscriptionUpdated.customer_id);
184
184
  expect(page.subscriptionId).toBe(mockSubscriptionUpdated.subscription_id);
185
185
  expect(page.email).toBe(mockSubscriptionUpdated.email);
186
- expect(page.users).toBe(`${mockSubscriptionUpdated.users} (curently: ${mockUsers.length})`);
186
+ expect(page.users).toBe(`${mockSubscriptionUpdated.users} (currently: ${mockUsers.length})`);
187
187
  expect(page.created).toBe(`${formatDate(mockSubscriptionUpdated.created)}`);
188
188
  expect(page.expiry).toBe(`${formatDate(mockSubscriptionUpdated.expiry)} (${DateTime.fromISO(mockSubscriptionUpdated.expiry).toRelative()})`);
189
189
  expect(propsUpdated.administrationWorkspaceContext.onResetActionsSettings).toHaveBeenCalled();
@@ -287,7 +287,7 @@ class DisplaySynchronizeUserDirectoryAdministration extends Component {
287
287
  onClose={this.handleClose} disabled={this.isLoading()}>
288
288
  <div className="form-content" onSubmit={this.handleFormSubmit}>
289
289
  <p>
290
- <strong><Trans>The operation was successfull.</Trans></strong>
290
+ <strong><Trans>The operation was successful.</Trans></strong>
291
291
  </p>
292
292
  <p></p>
293
293
  {this.hasSuccessResource() &&
@@ -42,7 +42,7 @@ describe("See the synchronize user directory administration dialog", () => {
42
42
  it('As AD I should see The full report in the dialog for my synchronize report', async() => {
43
43
  expect(page.title.hyperlink.textContent).toBe("Synchronize report");
44
44
  expect(page.displaySynchronizeUserDirectoryAdministrationDialog.exists()).toBeTruthy();
45
- expect(page.displaySynchronizeUserDirectoryAdministrationDialog.resourceSynchronize).toBe(' 2 user and 60 group have been synchronized. ');
45
+ expect(page.displaySynchronizeUserDirectoryAdministrationDialog.resourceSynchronize).toBe(' 2 users and 60 groups have been synchronized. ');
46
46
  expect(page.displaySynchronizeUserDirectoryAdministrationDialog.error).toBe('Some resources will not be synchronized and will require your attention, see the full report.');
47
47
  expect(page.displaySynchronizeUserDirectoryAdministrationDialog.noResource).toBeNull();
48
48
  await page.displaySynchronizeUserDirectoryAdministrationDialog.click(page.displaySynchronizeUserDirectoryAdministrationDialog.fullReport);
@@ -46,7 +46,7 @@ describe("See the test user directory administration Dialog", () => {
46
46
  it('As AD I should see the number of user(s) and group(s) founds on the LDAP server in the dialog for my Test settings report', async() => {
47
47
  expect(page.title.hyperlink.textContent).toBe("Test settings report");
48
48
  expect(page.displayTestUserDirectoryAdministrationDialog.exists()).toBeTruthy();
49
- expect(page.displayTestUserDirectoryAdministrationDialog.usersAndGroupsFound).toBe('12 user and 58 group have been found.');
49
+ expect(page.displayTestUserDirectoryAdministrationDialog.usersAndGroupsFound).toBe('12 users and 58 groups have been found.');
50
50
  await page.displayTestUserDirectoryAdministrationDialog.click(page.displayTestUserDirectoryAdministrationDialog.buttonOk);
51
51
  expect(props.onClose).toBeCalled();
52
52
  });
@@ -60,9 +60,8 @@ describe("See the test user directory administration Dialog", () => {
60
60
  expect(page.displayTestUserDirectoryAdministrationDialog.structureGroups.length).toBe(60);
61
61
  expect(page.displayTestUserDirectoryAdministrationDialog.structureUsers.length).toBe(25);
62
62
  await page.displayTestUserDirectoryAdministrationDialog.click(page.displayTestUserDirectoryAdministrationDialog.errorsList);
63
- expect(page.displayTestUserDirectoryAdministrationDialog.errors).toBe('7 entry had errors and will be ignored during synchronization.');
63
+ expect(page.displayTestUserDirectoryAdministrationDialog.errors).toBe('7 entries had errors and will be ignored during synchronization.');
64
64
  expect(page.displayTestUserDirectoryAdministrationDialog.errorsTextarea).not.toBeNull();
65
- expect(props.onClose).toBeCalled();
66
65
  });
67
66
  });
68
67
  });
@@ -3,7 +3,6 @@ import React from "react";
3
3
  import AppContext from "../../../contexts/AppContext";
4
4
  import PropTypes from "prop-types";
5
5
  import DisplayTestUserDirectoryAdministration from "./DisplayTestUserDirectoryAdministration";
6
- import MockTranslationProvider from "../../../test/mock/components/Internationalisation/MockTranslationProvider";
7
6
 
8
7
 
9
8
  export default {
@@ -2717,17 +2716,14 @@ const context = {
2717
2716
 
2718
2717
 
2719
2718
  const Template = args =>
2720
- <MockTranslationProvider>
2721
- <AppContext.Provider value={context}>
2722
- <MemoryRouter initialEntries={['/']}>
2723
- <Route component={routerProps => <DisplayTestUserDirectoryAdministration {...args} {...routerProps}/>}></Route>
2724
- </MemoryRouter>
2725
- </AppContext.Provider>
2726
- </MockTranslationProvider>;
2719
+ <AppContext.Provider value={context}>
2720
+ <MemoryRouter initialEntries={['/']}>
2721
+ <Route component={routerProps => <DisplayTestUserDirectoryAdministration {...args} {...routerProps}/>}></Route>
2722
+ </MemoryRouter>
2723
+ </AppContext.Provider>;
2727
2724
 
2728
2725
  Template.propTypes = {
2729
2726
  context: PropTypes.object,
2730
2727
  };
2731
2728
 
2732
2729
  export const Initial = Template.bind({});
2733
-
@@ -879,8 +879,8 @@ class DisplayUserDirectoryAdministration extends React.Component {
879
879
  </div>
880
880
  <div className="input text port ad openldap">
881
881
  <input id="port-input" type="number" className="required fluid form-element" name="port"
882
- value={this.state.port} onChange={this.handleInputChange} onKeyUp={this.handlePortInputKeyUp} placeholder={this.translate("port")}
883
- disabled={this.hasAllInputDisabled()}/>
882
+ value={this.state.port} onChange={this.handleInputChange} onKeyUp={this.handlePortInputKeyUp} placeholder={this.translate("port")}
883
+ disabled={this.hasAllInputDisabled()}/>
884
884
  {this.state.portError &&
885
885
  <div id="port-input-feedback" className="error-message">{this.state.portError}</div>
886
886
  }
@@ -68,7 +68,7 @@ class AskForAuthenticationHelp extends Component {
68
68
  <div className="ask-for-authentication-help">
69
69
  <h1><Trans>Sorry... maybe an administrator can help?</Trans></h1>
70
70
  <p>
71
- <Trans>Both the private key and passphrase are required to perform an account recovery.</Trans> <Trans>If you do not access, you can request a new account to the administrator.</Trans>
71
+ <Trans>Both the private key and passphrase are required to perform an account recovery.</Trans> <Trans>If you do not have access, you can request a new account from the administrator.</Trans>
72
72
  </p>
73
73
  <div className="form-actions">
74
74
  <a
@@ -1,7 +1,5 @@
1
1
  import React from "react";
2
2
  import {MemoryRouter, Route} from "react-router-dom";
3
- import "../../../../css/themes/default/ext_authentication.css";
4
- import MockTranslationProvider from "../../../test/mock/components/Internationalisation/MockTranslationProvider";
5
3
  import {AuthenticationContext} from "../../../contexts/AuthenticationContext";
6
4
  import AskForAuthenticationHelp from "./AskForAuthenticationHelp";
7
5
 
@@ -14,23 +12,22 @@ export default {
14
12
  const context = {
15
13
  };
16
14
 
17
-
18
15
  const Template = args =>
19
- <MockTranslationProvider>
20
- <AuthenticationContext.Provider value={context}>
21
- <div id="container" className="container page login">
22
- <div className="content">
23
- <div className="login-form">
24
- <MemoryRouter initialEntries={['/']}>
25
- <Route component={routerProps => <AskForAuthenticationHelp {...args} {...routerProps}/>}></Route>
26
- </MemoryRouter>
27
- </div>
16
+ <AuthenticationContext.Provider value={context}>
17
+ <div id="container" className="container page login">
18
+ <div className="content">
19
+ <div className="login-form">
20
+ <MemoryRouter initialEntries={['/']}>
21
+ <Route component={routerProps => <AskForAuthenticationHelp {...args} {...routerProps}/>}></Route>
22
+ </MemoryRouter>
28
23
  </div>
29
24
  </div>
30
- </AuthenticationContext.Provider>
31
- </MockTranslationProvider>;
32
-
25
+ </div>
26
+ </AuthenticationContext.Provider>;
33
27
 
34
28
 
35
29
  export const Initial = Template.bind({});
36
30
 
31
+ Initial.parameters = {
32
+ css: "ext_authentication"
33
+ };
@@ -34,8 +34,8 @@ class CheckMailBox extends Component {
34
34
  <div className="email-sent-bg">
35
35
  </div>
36
36
  <h1><Trans>Check your mailbox!</Trans></h1>
37
- <p><Trans>We send you a link to verify your email.</Trans><br/>
38
- <Trans>Check your spam folder if you do not see hear from us after a while.</Trans></p>
37
+ <p><Trans>We sent you a link to verify your email.</Trans><br/>
38
+ <Trans>Check your spam folder if you do not hear from us after a while.</Trans></p>
39
39
  </div>
40
40
  );
41
41
  }
@@ -40,7 +40,7 @@ describe("As AN I should see the check mail box", () => {
40
40
  // title
41
41
  expect(page.title).toBe("Check your mailbox!");
42
42
  // message
43
- expect(page.message).toBe('We send you a link to verify your email.Check your spam folder if you do not see hear from us after a while.');
43
+ expect(page.message).toBe('We sent you a link to verify your email.Check your spam folder if you do not hear from us after a while.');
44
44
  });
45
45
  });
46
46
  });
@@ -1,7 +1,5 @@
1
1
  import React from "react";
2
2
  import {MemoryRouter, Route} from "react-router-dom";
3
- import "../../../../css/themes/default/ext_authentication.css";
4
- import MockTranslationProvider from "../../../test/mock/components/Internationalisation/MockTranslationProvider";
5
3
  import {AuthenticationContext} from "../../../contexts/AuthenticationContext";
6
4
  import CheckMailBox from "./CheckMailBox";
7
5
 
@@ -16,21 +14,21 @@ const context = {
16
14
 
17
15
 
18
16
  const Template = args =>
19
- <MockTranslationProvider>
20
- <AuthenticationContext.Provider value={context}>
21
- <div id="container" className="container page login">
22
- <div className="content">
23
- <div className="login-form">
24
- <MemoryRouter initialEntries={['/']}>
25
- <Route component={routerProps => <CheckMailBox {...args} {...routerProps}/>}></Route>
26
- </MemoryRouter>
27
- </div>
17
+ <AuthenticationContext.Provider value={context}>
18
+ <div id="container" className="container page login">
19
+ <div className="content">
20
+ <div className="login-form">
21
+ <MemoryRouter initialEntries={['/']}>
22
+ <Route component={routerProps => <CheckMailBox {...args} {...routerProps}/>}></Route>
23
+ </MemoryRouter>
28
24
  </div>
29
25
  </div>
30
- </AuthenticationContext.Provider>
31
- </MockTranslationProvider>;
32
-
26
+ </div>
27
+ </AuthenticationContext.Provider>;
33
28
 
34
29
 
35
30
  export const Initial = Template.bind({});
36
31
 
32
+ Initial.parameters = {
33
+ css: "ext_authentication"
34
+ };
@@ -1,7 +1,5 @@
1
1
  import React from "react";
2
2
  import {MemoryRouter, Route} from "react-router-dom";
3
- import "../../../../css/themes/default/ext_authentication.css";
4
- import MockTranslationProvider from "../../../test/mock/components/Internationalisation/MockTranslationProvider";
5
3
  import {AuthenticationContext} from "../../../contexts/AuthenticationContext";
6
4
  import CheckPassphrase from "./CheckPassphrase";
7
5
 
@@ -16,21 +14,20 @@ const context = {
16
14
 
17
15
 
18
16
  const Template = args =>
19
- <MockTranslationProvider>
20
- <AuthenticationContext.Provider value={context}>
21
- <div id="container" className="container page login">
22
- <div className="content">
23
- <div className="login-form">
24
- <MemoryRouter initialEntries={['/']}>
25
- <Route component={routerProps => <CheckPassphrase {...args} {...routerProps}/>}></Route>
26
- </MemoryRouter>
27
- </div>
17
+ <AuthenticationContext.Provider value={context}>
18
+ <div id="container" className="container page login">
19
+ <div className="content">
20
+ <div className="login-form">
21
+ <MemoryRouter initialEntries={['/']}>
22
+ <Route component={routerProps => <CheckPassphrase {...args} {...routerProps}/>}></Route>
23
+ </MemoryRouter>
28
24
  </div>
29
25
  </div>
30
- </AuthenticationContext.Provider>
31
- </MockTranslationProvider>;
32
-
26
+ </div>
27
+ </AuthenticationContext.Provider>;
33
28
 
34
29
 
35
30
  export const Initial = Template.bind({});
36
-
31
+ Initial.parameters = {
32
+ css: "ext_authentication"
33
+ };