passbolt-styleguide 3.6.2 → 3.7.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.
- package/README.md +9 -6
- package/build/css/help.min.css +3 -7
- package/build/css/public.min.css +3 -16
- package/build/css/themes/default/api_authentication.min.css +3 -3
- package/build/css/themes/default/api_cloud.min.css +3 -3
- package/build/css/themes/default/api_main.min.css +3 -12
- package/build/css/themes/default/api_reports.min.css +3 -12
- package/build/css/themes/default/api_webinstaller.min.css +3 -12
- package/build/css/themes/default/ext_app.min.css +3 -12
- package/build/css/themes/default/ext_authentication.min.css +3 -3
- package/build/css/themes/default/ext_external.min.css +2 -2
- package/build/css/themes/default/ext_in_form_cta.min.css +3 -3
- package/build/css/themes/default/ext_in_form_menu.min.css +3 -3
- package/build/css/themes/default/ext_quickaccess.min.css +3 -3
- package/build/css/themes/midgar/api_authentication.min.css +3 -3
- package/build/css/themes/midgar/api_main.min.css +3 -12
- package/build/css/themes/midgar/api_reports.min.css +3 -12
- package/build/css/themes/midgar/ext_app.min.css +3 -12
- package/build/css/themes/midgar/ext_authentication.min.css +3 -3
- package/build/css/themes/midgar/ext_in_form_cta.min.css +3 -3
- package/build/css/themes/midgar/ext_in_form_menu.min.css +3 -3
- package/build/css/themes/midgar/ext_quickaccess.min.css +3 -3
- package/build/js/dist/api-account-recovery.js +1 -1
- package/build/js/dist/api-app.js +1 -1
- package/build/js/dist/api-app.js.LICENSE.txt +25 -1
- package/build/js/dist/api-recover.js +1 -1
- package/build/js/dist/api-setup.js +1 -1
- package/build/js/dist/api-triage.js +1 -1
- package/build/js/dist/api-vendors.js +1 -1
- package/build/js/dist/api-vendors.js.LICENSE.txt +43 -7
- package/i18next-parser.config.js +22 -0
- package/package.json +8 -5
- package/src/img/og/og_image.png +0 -0
- package/src/locales/de-DE/common.json +308 -173
- package/src/locales/en-UK/common.json +155 -175
- package/src/locales/es-ES/common.json +955 -0
- package/src/locales/fr-FR/common.json +308 -174
- package/src/locales/ja-JP/common.json +292 -172
- package/src/locales/lt-LT/common.json +985 -0
- package/src/locales/nl-NL/common.json +329 -194
- package/src/locales/pl-PL/common.json +337 -172
- package/src/locales/sv-SE/common.json +307 -172
- package/src/public-website-sign-in/PublicWebsiteSignInBootstrap.js +25 -0
- package/src/public-website-sign-in/lib/SignIn/SignInManager.js +85 -0
- package/src/public-website-sign-in/lib/SignIn/SignInManager.test.data.js +45 -0
- package/src/public-website-sign-in/lib/SignIn/SignInManager.test.js +59 -0
- package/src/public-website-sign-in/lib/SignIn/SignInManager.test.page.js +67 -0
- package/src/react-extension/ExtBootstrapAccountRecovery.js +17 -0
- package/src/react-extension/ExtBootstrapApp.js +17 -0
- package/src/react-extension/ExtBootstrapLogin.js +17 -0
- package/src/react-extension/ExtBootstrapRecover.js +17 -0
- package/src/react-extension/ExtBootstrapSetup.js +17 -0
- package/src/react-extension/components/AccountRecovery/AccountRecoveryInviteUserSettingPreferenceDialog/AccountRecoveryInviteUserSettingPreferenceDialog.test.stories.js +1 -1
- package/src/react-extension/components/AccountRecovery/HandleAccountRecoveryUserSettingsRoute/HandleAccountRecoveryUserSettingsRoute.js +1 -9
- package/src/react-extension/components/AccountRecovery/HandleReviewAccountRecoveryRequestWorkflow/HandleReviewAccountRecoveryRequestWorkflow.js +1 -9
- package/src/react-extension/components/AccountRecovery/ManageAccountRecoveryUserSettings/ManageAccountRecoveryUserSettings.js +1 -1
- package/src/react-extension/components/AccountRecovery/ManageAccountRecoveryUserSettings/ManageAccountRecoveryUserSettings.test.stories.js +1 -1
- package/src/react-extension/components/AccountRecovery/ReviewAccountRecoveryRequest/ReviewAccountRecoveryRequest.js +1 -1
- package/src/react-extension/components/AccountRecovery/ReviewAccountRecoveryRequest/ReviewAccountRecoveryRequest.test.stories.js +1 -1
- package/src/react-extension/components/Administration/ConfirmSaveAccountRecoverySettings/ConfirmSaveAccountRecoverySettings.js +6 -3
- package/src/react-extension/components/Administration/ConfirmSaveAccountRecoverySettings/ConfirmSaveAccountRecoverySettings.test.data.js +10 -7
- package/src/react-extension/components/Administration/ConfirmSaveAccountRecoverySettings/ConfirmSaveAccountRecoverySettings.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplayAdministrationMenu/DisplayAdministrationMenu.js +2 -15
- package/src/react-extension/components/Administration/DisplayAdministrationWorkspaceActions/DisplayAdministrationAccountRecoveryAction/DisplayAdministrationAccountRecoveryActions.js +2 -12
- package/src/react-extension/components/Administration/DisplayAdministrationWorkspaceActions/DisplayAdministrationWorkspaceActions.js +2 -11
- package/src/react-extension/components/Administration/DisplayAdministrationWorkspaceBreadcrumb/DisplayAdministrationWorkspaceBreadcrumb.js +1 -1
- package/src/react-extension/components/Administration/DisplayAdministrationWorkspaceBreadcrumb/DisplayAdministrationWorkspaceBreadcrumb.test.js +1 -1
- package/src/react-extension/components/Administration/DisplayEmailNotificationsAdministration/DisplayEmailNotificationsAdministration.js +1 -9
- package/src/react-extension/components/Administration/DisplayEmailNotificationsAdministration/DisplayEmailNotificationsAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplayInternationalizationAdministration/DisplayInternationalizationAdministration.js +1 -9
- package/src/react-extension/components/Administration/DisplayInternationalizationAdministration/DisplayInternationalizationAdministration.test.page.js +1 -1
- package/src/react-extension/components/Administration/DisplayInternationalizationAdministration/DisplayInternationalizationAdministration.test.stories.js +12 -6
- package/src/react-extension/components/Administration/DisplayLoadingDialog/DisplayLoadingDialog.js +2 -11
- package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.js +6 -6
- package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.js +25 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.js +25 -1
- package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.js +12 -2
- package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.js +24 -24
- package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.test.stories.js +1 -1
- package/src/react-extension/components/Administration/EditSubscriptionKey/EditSubscriptionKey.js +1 -1
- package/src/react-extension/components/Administration/EditSubscriptionKey/EditSubscriptionKey.test.stories.js +1 -1
- package/src/react-extension/components/Administration/ManageAccountRecoveryAdministrationSettings/ManageAccountRecoveryAdministrationSettings.js +6 -3
- package/src/react-extension/components/Administration/ManageAccountRecoveryAdministrationSettings/ManageAccountRecoveryAdministrationSettings.test.data.js +20 -5
- package/src/react-extension/components/Administration/ManageAccountRecoveryAdministrationSettings/ManageAccountRecoveryAdministrationSettings.test.stories.js +1 -1
- package/src/react-extension/components/Administration/ProvideAccountRecoveryOrganizationKey/ProvideAccountRecoveryOrganizationKey.js +1 -11
- package/src/react-extension/components/Administration/ProvideAccountRecoveryOrganizationKey/ProvideAccountRecoveryOrganizationKey.test.stories.js +1 -1
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/DownloadOrganizationKey.js +1 -9
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/DownloadOrganizationKey.test.stories.js +1 -1
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/GenerateOrganizationKey.js +90 -46
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/GenerateOrganizationKey.test.js +61 -17
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/ImportOrganizationKey.js +1 -1
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/SelectAccountRecoveryOrganizationKey.js +1 -9
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/SelectAccountRecoveryOrganizationKey.test.page.js +14 -0
- package/src/react-extension/components/Administration/SelectAccountRecoveryOrganizationKey/SelectAccountRecoveryOrganizationKey.test.stories.js +1 -1
- package/src/react-extension/components/Announcement/AnnouncementWrapper/AnnouncementWrapper.js +3 -2
- package/src/react-extension/components/Announcement/HandleSubscriptionAnnouncement/DisplayExpiredSubscriptionAnnouncement.js +3 -3
- package/src/react-extension/components/Announcement/HandleSubscriptionAnnouncement/DisplayGoingToExpireSubscriptionAnnouncement.js +3 -2
- package/src/react-extension/components/Announcement/HandleSubscriptionAnnouncement/DisplayInvalidSubscriptionAnnouncement.js +3 -3
- package/src/react-extension/components/Authentication/AskForAuthenticationHelpCredentialLost/AskForAuthenticationHelpCredentialLost.js +2 -2
- package/src/react-extension/components/Authentication/AskForAuthenticationHelpCredentialLost/AskForAuthenticationHelpCredentialLost.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/CheckAccountRecoveryEmail/CheckAccountRecoveryEmail.js +2 -2
- package/src/react-extension/components/Authentication/CheckAccountRecoveryEmail/CheckAccountRecoveryEmail.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/CheckMailBox/CheckMailBox.js +2 -12
- package/src/react-extension/components/Authentication/CheckMailBox/CheckMailbox.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/CheckPassphrase/CheckPassphrase.js +88 -41
- package/src/react-extension/components/Authentication/CheckPassphrase/CheckPassphrase.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/ChooseAccountRecoveryPreference/ChooseAccountRecoveryPreference.js +2 -2
- package/src/react-extension/components/Authentication/ChooseAccountRecoveryPreference/ChooseAccountRecoveryPreference.test.stories.js +11 -1
- package/src/react-extension/components/Authentication/ChooseSecurityToken/ChooseSecurityToken.js +2 -2
- package/src/react-extension/components/Authentication/ChooseSecurityToken/ChooseSecurityToken.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.js +24 -14
- package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.test.js +2 -2
- package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DisplayAlreadyLoggedInError/DisplayAlreadyLoggedInError.js +2 -2
- package/src/react-extension/components/Authentication/DisplayAlreadyLoggedInError/DisplayAlreadyLoggedInError.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DisplayBrowserNotSupported/DisplayBrowserNotSupported.js +2 -2
- package/src/react-extension/components/Authentication/DisplayBrowserNotSupported/DisplayBrowserNotSupported.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DisplayExpiredTokenError/DisplayExpiredTokenError.js +2 -2
- package/src/react-extension/components/Authentication/DisplayExpiredTokenError/DisplayExpiredTokenError.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DisplayRequireInvitationError/DisplayRequireInvitationError.js +2 -2
- package/src/react-extension/components/Authentication/DisplayRequireInvitationError/DisplayRequireInvitationError.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DisplayUnexpectedError/DisplayUnexpectedError.js +3 -3
- package/src/react-extension/components/Authentication/DisplayUnexpectedError/DisplayUnexpectedError.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.js +2 -2
- package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/EnterNameForm/EnterNameForm.js +6 -6
- package/src/react-extension/components/Authentication/EnterNameForm/EnterNameForm.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/EnterUsernameForm/EnterUsernameForm.js +1 -1
- package/src/react-extension/components/Authentication/EnterUsernameForm/EnterUsernameForm.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.js +34 -7
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.data.js +2 -1
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.js +20 -1
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.page.js +4 -0
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.js +2 -2
- package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.test.stories.js +4 -1
- package/src/react-extension/components/Authentication/IntroduceExtension/IntroduceExtension.js +2 -2
- package/src/react-extension/components/Authentication/IntroduceExtension/IntroduceExtension.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/NotifyExpiredSession/NotifyExpiredSession.js +1 -9
- package/src/react-extension/components/Authentication/NotifyExpiredSession/NotifyExpiredSession.test.stories.js +1 -1
- package/src/react-extension/components/Authentication/RequestAccountRecovery/RequestAccountRecovery.js +2 -2
- package/src/react-extension/components/Authentication/RequestAccountRecovery/RequestAccountRecovery.test.stories.js +6 -1
- package/src/react-extension/components/AuthenticationAccountRecovery/DisplayExpiredTokenError/DisplayExpiredTokenError.js +2 -2
- package/src/react-extension/components/AuthenticationAccountRecovery/DisplayExpiredTokenError/DisplayExpiredTokenError.test.stories.js +1 -1
- package/src/react-extension/components/AuthenticationAccountRecovery/DisplayRestartFromScratchError/DisplayRestartFromScratchError.js +2 -2
- package/src/react-extension/components/AuthenticationAccountRecovery/DisplayRestartFromScratchError/DisplayRestartFromScratchError.test.stories.js +1 -1
- package/src/react-extension/components/AuthenticationAccountRecovery/OrchestrateAccountRecovery/OrchestrateAccountRecovery.js +2 -2
- package/src/react-extension/components/AuthenticationLogin/AcceptLoginServerKeyChange/AcceptLoginServerKeyChange.js +2 -2
- package/src/react-extension/components/AuthenticationLogin/AcceptLoginServerKeyChange/AcceptLoginServerKeyChange.test.stories.js +1 -1
- package/src/react-extension/components/AuthenticationLogin/Login/Login.js +1 -9
- package/src/react-extension/components/AuthenticationLogin/Login/Login.test.stories.js +1 -1
- package/src/react-extension/components/AuthenticationLogin/OrchestrateLogin/OrchestrateLoginBoxFooter.js +2 -2
- package/src/react-extension/components/AuthenticationLogin/OrchestrateLogin/OrchestrateLoginBoxMain.js +2 -2
- package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.js +1 -1
- package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.test.stories.js +1 -1
- package/src/react-extension/components/AuthenticationRecover/RecoverAuthentication/RecoverAuthentication.js +3 -2
- package/src/react-extension/components/AuthenticationSetup/SetupAuthentication/SetupAuthentication.js +3 -3
- package/src/react-extension/components/Common/ActionFeedback/DisplayActionFeedbacks.test.stories.js +1 -1
- package/src/react-extension/components/Common/ActionFeedback/ShareActionFeedback.js +2 -2
- package/src/react-extension/components/Common/Autocomplete/Autocomplete.js +8 -2
- package/src/react-extension/components/Common/Avatar/UserAvatar.test.data.js +6 -4
- package/src/react-extension/components/Common/Avatar/UserAvatar.test.stories.js +3 -2
- package/src/react-extension/components/Common/Button/Button.test.stories.js +5 -5
- package/src/react-extension/components/Common/Checkbox/Checkbox.test.stories.js +1 -1
- package/src/react-extension/components/Common/ContextualMenu/ContextualMenu.test.stories.js +1 -1
- package/src/react-extension/components/Common/ContextualMenu/ContextualMenuWrapper.js +10 -8
- package/src/react-extension/components/Common/Dialog/DialogCloseButton/DialogCloseButton.js +2 -1
- package/src/react-extension/components/Common/Dialog/DialogWrapper/DialogFooter.test.stories.js +2 -2
- package/src/react-extension/components/Common/Dialog/DialogWrapper/DialogWrapper.js +2 -2
- package/src/react-extension/components/Common/Dialog/DialogWrapper/DialogWrapper.test.stories.js +1 -1
- package/src/react-extension/components/Common/DragInfo/DragInfo.test.stories.js +10 -8
- package/src/react-extension/components/Common/Error/NotifyError/NotifyError.js +3 -11
- package/src/react-extension/components/Common/Error/NotifyError/NotifyError.test.stories.js +6 -1
- package/src/react-extension/components/Common/Footer/Footer.js +3 -13
- package/src/react-extension/components/Common/Inputs/Autocomplete/Autocomplete.js +16 -7
- package/src/react-extension/components/Common/Inputs/Autocomplete/AutocompleteItemLoading.js +4 -0
- package/src/react-extension/components/Common/Inputs/FormSubmitButton/FormCancelButton.js +3 -12
- package/src/react-extension/components/Common/Inputs/FormSubmitButton/FormSubmitButton.js +2 -2
- package/src/react-extension/components/Common/Internationalisation/TranslationProvider.js +0 -1
- package/src/react-extension/components/Common/Link/Link.test.stories.js +1 -1
- package/src/react-extension/components/Common/Loading/LoadingBar/LoadingBar.test.stories.js +1 -1
- package/src/react-extension/components/Common/Loading/LoadingSpinner/LoadingSpinner.test.stories.js +1 -1
- package/src/react-extension/components/Common/Menu/DisplayMainMenu.js +2 -11
- package/src/react-extension/components/Common/Navigation/Search/SearchBar.js +7 -7
- package/src/react-extension/components/Common/Navigation/Search/SearchBar.test.stories.js +1 -1
- package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.js +2 -11
- package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.test.stories.js +1 -1
- package/src/react-extension/components/Common/RadioButton/RadioButton.test.stories.js +1 -1
- package/src/react-extension/components/Common/Select/Select.js +44 -12
- package/src/react-extension/components/Common/Select/Select.test.stories.js +1 -1
- package/src/react-extension/components/Common/Text/Text.test.stories.js +1 -1
- package/src/react-extension/components/Common/TextField/TextField.test.stories.js +1 -1
- package/src/react-extension/components/Common/Toggle/Toggle.test.stories.js +1 -1
- package/src/react-extension/components/Common/Tooltip/Tooltip.test.stories.js +2 -2
- package/src/react-extension/components/Internationalisation/ChangeLocale/ChangeLocale.test.page.js +1 -1
- package/src/react-extension/components/Resource/CreateResource/CreateResource.js +9 -9
- package/src/react-extension/components/Resource/CreateResource/CreateResource.test.stories.js +1 -1
- package/src/react-extension/components/Resource/DeleteResource/DeleteResource.js +3 -3
- package/src/react-extension/components/Resource/DeleteResource/DeleteResource.test.page.js +1 -1
- package/src/react-extension/components/Resource/DeleteResource/DeleteResource.test.stories.js +1 -1
- package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.js +4 -4
- package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.test.stories.js +1 -1
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspace.js +1 -9
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMainMenu.js +8 -17
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMainMenu.test.js +2 -2
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMainMenu.test.stories.js +1 -1
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMenu.js +6 -6
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMenu.test.stories.js +1 -1
- package/src/react-extension/components/Resource/EditResource/EditResource.js +8 -8
- package/src/react-extension/components/Resource/EditResource/EditResource.test.stories.js +1 -1
- package/src/react-extension/components/Resource/ExportResources/ExportResources.js +9 -10
- package/src/react-extension/components/Resource/ExportResources/ExportResources.test.stories.js +1 -1
- package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.js +1 -1
- package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByBreadcrumb/FilterResourcesByBreadcrumb.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItemContextualMenu.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByRootFolderContextualMenu.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByGroups/FilterResourcesByGroups.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByGroups/FilterResourcesByGroups.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.js +4 -13
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.test.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.stories.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTagsContextualMenu.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTagsList.js +2 -11
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTagsListContextualMenu.js +3 -12
- package/src/react-extension/components/Resource/FilterResourcesByText/FilterResourcesByText.test.stories.js +1 -1
- package/src/react-extension/components/Resource/ImportResources/ImportResources.test.stories.js +1 -1
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.js +1 -1
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.test.stories.js +1 -1
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.test.stories.js +1 -1
- package/src/react-extension/components/ResourceComment/AddResourceComment/AddResourceComment.test.stories.js +5 -3
- package/src/react-extension/components/ResourceComment/ConfirmResourceCommentDeletion/ConfirmResourceCommentDeletion.js +1 -1
- package/src/react-extension/components/ResourceComment/ConfirmResourceCommentDeletion/ConfirmResourceCommentDeletion.test.stories.js +1 -1
- package/src/react-extension/components/ResourceComment/DeleteResourceComment/DeleteComment.js +2 -1
- package/src/react-extension/components/ResourceComment/DisplayResourceCommentList/DisplayResourceCommentList.js +1 -9
- package/src/react-extension/components/ResourceComment/DisplayResourceCommentList/DisplayResourceCommentList.test.stories.js +5 -3
- package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.js +2 -2
- package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.test.stories.js +5 -3
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetails.js +3 -3
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsActivity.test.stories.js +2 -2
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsComment.js +2 -11
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsDescription.js +2 -10
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsDescription.test.stories.js +1 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsInformation.js +1 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsInformation.test.data.js +1 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsPermission.js +2 -10
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.js +3 -12
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.js +1 -1
- package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolder/DefineResourceFolderMoveStrategy/DefineResourceFolderMoveStrategy.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolder/DeleteResourceFolder/DeleteResourceFolder.js +1 -1
- package/src/react-extension/components/ResourceFolder/DeleteResourceFolder/DeleteResourceFolder.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.js +1 -1
- package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetails.js +1 -1
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsActivity.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsInformation.js +1 -9
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsInformation.test.stories.js +1 -1
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsPermissions.test.stories.js +1 -1
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePassphraseGenerator.js +10 -7
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePassphraseGenerator.test.stories.js +1 -1
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePasswordGenerator.js +12 -9
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePasswordGenerator.test.stories.js +1 -1
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/GenerateResourcePassword.js +10 -7
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/GenerateResourcePassword.test.stories.js +1 -1
- package/src/react-extension/components/ResourceTag/DeleteResourceTag/DeleteResourceTag.js +2 -2
- package/src/react-extension/components/ResourceTag/DeleteResourceTag/DeleteResourceTag.test.stories.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.test.stories.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTags.js +2 -2
- package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTagsItemViewer.js +2 -11
- package/src/react-extension/components/Share/ShareDialog.js +124 -22
- package/src/react-extension/components/Share/ShareDialog.test.data.js +25 -1
- package/src/react-extension/components/Share/ShareDialog.test.js +87 -36
- package/src/react-extension/components/Share/ShareDialog.test.page.js +1 -1
- package/src/react-extension/components/Share/ShareDialog.test.stories.js +1 -1
- package/src/react-extension/components/Share/SharePermissionDeleteButton.js +2 -1
- package/src/react-extension/components/Share/SharePermissionItem.js +56 -0
- package/src/react-extension/components/Share/ShareVariesDetails.js +2 -11
- package/src/react-extension/components/User/ConfirmDisableUserMFA/ConfirmDisableUserMFA.js +1 -1
- package/src/react-extension/components/User/ConfirmDisableUserMFA/ConfirmDisableUserMFA.test.stories.js +1 -1
- package/src/react-extension/components/User/CreateUser/CreateUser.js +9 -9
- package/src/react-extension/components/User/CreateUser/CreateUser.test.stories.js +1 -1
- package/src/react-extension/components/User/DeleteUser/DeleteUser.js +1 -1
- package/src/react-extension/components/User/DeleteUser/DeleteUser.test.stories.js +1 -1
- package/src/react-extension/components/User/DeleteUser/DeleteUserWithConflicts.js +3 -3
- package/src/react-extension/components/User/DeleteUser/DeleteUserWithConflicts.test.stories.js +1 -1
- package/src/react-extension/components/User/DisplayExpiredAccountRecovery/DisplayExpiredAccountRecovery.js +1 -9
- package/src/react-extension/components/User/DisplayExpiredAccountRecovery/DisplayExpiredAccountRecovery.test.stories.js +1 -1
- package/src/react-extension/components/User/DisplayUserBadgeMenu/DisplayUserBadgeMenu.js +8 -17
- package/src/react-extension/components/User/DisplayUserBadgeMenu/DisplayUserBadgeMenu.test.stories.js +1 -1
- package/src/react-extension/components/User/DisplayUserWorkspaceActions/DisplayUserWorkspaceActions.js +3 -3
- package/src/react-extension/components/User/DisplayUserWorkspaceActions/DisplayUserWorkspaceActions.test.stories.js +1 -1
- package/src/react-extension/components/User/DisplayUserWorkspaceMainActions/DisplayUserWorkspaceMainActions.js +8 -17
- package/src/react-extension/components/User/DisplayUserWorkspaceMainActions/DisplayUserWorkspaceMainActions.test.js +4 -4
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.js +1 -1
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.test.stories.js +1 -1
- package/src/react-extension/components/User/DisplayUsersContextualMenu/DisplayUsersContextualMenu.test.stories.js +1 -1
- package/src/react-extension/components/User/EditUser/EditUser.js +9 -9
- package/src/react-extension/components/User/EditUser/EditUser.test.stories.js +1 -1
- package/src/react-extension/components/User/FilterUsersByBreadcrumb/FilterUsersByBreadcrumb.test.stories.js +1 -1
- package/src/react-extension/components/User/FilterUsersByGroups/DisplayGroupContextualMenu.js +2 -11
- package/src/react-extension/components/User/FilterUsersByGroups/FilterUsersByGroup.test.stories.js +1 -1
- package/src/react-extension/components/User/FilterUsersByGroups/FilterUsersByGroupContextualMenu.js +2 -11
- package/src/react-extension/components/User/FilterUsersByShortcut/FilterUsersByShortcut.js +3 -12
- package/src/react-extension/components/User/FilterUsersByShortcut/FilterUsersByShortcut.test.stories.js +1 -1
- package/src/react-extension/components/User/FilterUsersByText/FilterUsersByText.js +1 -9
- package/src/react-extension/components/User/FilterUsersByText/FilterUsersByText.test.stories.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetails/DisplayUserDetails.js +3 -3
- package/src/react-extension/components/UserDetails/DisplayUserDetailsAccountRecovery/DisplayUserDetailsAccountRecovery.js +1 -9
- package/src/react-extension/components/UserDetails/DisplayUserDetailsAccountRecovery/DisplayUserDetailsAccountRecovery.test.data.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsAccountRecovery/DisplayUserDetailsAccountRecovery.test.stories.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsActivity/DisplayUserDetailsActivity.js +1 -9
- package/src/react-extension/components/UserDetails/DisplayUserDetailsActivity/DisplayUserDetailsActivity.test.stories.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsGroups/DisplayUserDetailsGroups.test.stories.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsInformation/DisplayUserDetailsInformation.js +1 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsInformation/DisplayUserDetailsInformation.test.stories.js +22 -83
- package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.js +8 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.test.data.js +20 -2
- package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.test.js +25 -1
- package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.test.stories.js +28 -26
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.js +85 -57
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.test.js +21 -6
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.test.stories.js +1 -1
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroup.js +1 -1
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroup.test.stories.js +1 -1
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroupWithConflicts.js +2 -2
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroupWithConflicts.test.stories.js +1 -1
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetails/DisplayUserGroupDetails.js +1 -1
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsInformation/DisplayUserGroupDetailsInformation.test.stories.js +1 -1
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsMembers/DisplayUserGroupDetailsMembers.js +4 -13
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsMembers/DisplayUserGroupDetailsMembers.test.stories.js +1 -1
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsMembers/DisplayUserGroupDetailsMembersGroupMember.js +1 -9
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.js +132 -151
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.js +8 -1
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.page.js +37 -14
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.stories.js +5 -2
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroupItem.js +209 -0
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.js +1 -1
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/DisplayChangePassphraseIntroduction.js +2 -3
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/DownloadRecoveryKit.js +2 -2
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.js +25 -12
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.js +5 -1
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.page.js +7 -0
- package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.js +2 -10
- package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserAccountRecovery/DisplayAccountRecoveryUserSettings.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserAccountRecovery/DisplayAccountRecoveryUserSettings.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.js +9 -2
- package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.test.stories.js +58 -35
- package/src/react-extension/components/UserSetting/DisplayUserProfile/DisplayUserProfile.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserProfile/DisplayUserProfile.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserSettingWorkspaceActions/DisplayUserSettingWorkspaceActions.js +2 -11
- package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspaceBreadcrumb/DisplayUserSettingsWorkspaceBreadcrumb.js +2 -2
- package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspaceBreadcrumb/DisplayUserSettingsWorkspaceBreadcrumb.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserTheme/DisplayUserTheme.js +1 -9
- package/src/react-extension/components/UserSetting/DisplayUserTheme/DisplayUserTheme.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/EditUserProfile/EditUserProfile.js +8 -8
- package/src/react-extension/components/UserSetting/EditUserProfile/EditUserProfile.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/NavigateIntoUserSettingsWorkspace/NavigateIntoUserSettingsWorkspace.js +4 -13
- package/src/react-extension/components/UserSetting/NavigateIntoUserSettingsWorkspace/NavigateIntoUserSettingsWorkspace.test.stories.js +1 -1
- package/src/react-extension/components/UserSetting/UploadUserProfileAvatar/UploadUserProfileAvatar.test.stories.js +1 -1
- package/src/react-extension/contexts/Authentication/AuthenticationRecoverContext.js +14 -1
- package/src/react-extension/test/fixture/Settings/siteSettings.js +20 -14
- package/src/react-extension/test/mock/components/Internationalisation/MockTranslationProvider.js +8 -1
- package/src/react-quickaccess/ExtQuickAccess.js +23 -9
- package/src/react-quickaccess/components/AnimatedSwitch/AnimatedSwitch.js +0 -1
- package/src/react-quickaccess/components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgress.js +2 -5
- package/src/react-quickaccess/components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgressPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.js +2 -2
- package/src/react-quickaccess/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.test.stories.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByTagPage/FilterResourcesByTagPage.js +1 -1
- package/src/react-quickaccess/components/FilterResourcesByTagPage/FilterResourcesByTagPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePasswordGenerator.js +2 -3
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.js +3 -3
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/Header/Header.test.stories.js +1 -1
- package/src/react-quickaccess/components/HomePage/HomePage.js +0 -8
- package/src/react-quickaccess/components/HomePage/HomePage.test.stories.js +1 -1
- package/src/react-quickaccess/components/LoginPage/LoginPage.js +1 -9
- package/src/react-quickaccess/components/LoginPage/LoginPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/MoreFiltersPage/MoreFiltersPage.js +1 -1
- package/src/react-quickaccess/components/MoreFiltersPage/MoreFiltersPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/PassphraseDialog/PassphraseDialog.js +5 -5
- package/src/react-quickaccess/components/PassphraseDialog/PassphraseDialog.test.stories.js +1 -1
- package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.js +1 -1
- package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.test.stories.js +1 -1
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.js +4 -4
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.test.stories.js +1 -1
- package/src/react-quickaccess/components/ResourceViewPage/ResourceViewPage.js +3 -3
- package/src/react-quickaccess/components/ResourceViewPage/ResourceViewPage.test.stories.js +1 -1
- package/src/react-quickaccess/components/Search/Search.js +5 -5
- package/src/react-quickaccess/components/Search/Search.test.stories.js +1 -1
- package/src/react-web-integration/BrowserIntegrationBootstrap.js +0 -17
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.stories.js +1 -1
- package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenu.js +2 -2
- package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenu.test.stories.js +1 -1
- package/src/react-web-integration/lib/InForm/InFormFieldSelector.js +11 -1
- package/src/react-web-integration/lib/InForm/InformManager.test.data.js +60 -0
- package/src/react-web-integration/lib/InForm/InformManager.test.js +151 -6
- package/src/react-web-integration/lib/InForm/InformManager.test.page.js +39 -0
- package/src/shared/components/Icons/Icon.test.stories.js +1 -1
- package/src/shared/components/Password/Password.js +2 -1
- package/src/shared/components/Password/Password.test.page.js +4 -1
- package/src/shared/components/Password/Password.test.stories.js +1 -1
- package/src/shared/components/PasswordComplexity/PasswordComplexity.js +2 -2
- package/src/shared/components/PasswordComplexity/PasswordComplexity.test.stories.js +5 -5
- package/src/stories/assets/intro/hero.png +0 -0
- package/src/stories/assets/intro/intro.css +47 -0
- package/test/jest.setup.js +2 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import UserSettings from "../../../shared/lib/Settings/UserSettings";
|
|
2
2
|
import userSettingsFixture from "../../test/fixture/Settings/userSettings";
|
|
3
|
+
import {users, groups} from "../../contexts/UserWorkspaceContext.test.data";
|
|
3
4
|
import MockPort from "../../test/mock/MockPort";
|
|
4
|
-
|
|
5
5
|
/**
|
|
6
6
|
* Returns the default app context for the unit test
|
|
7
7
|
* @param appContext An existing app context
|
|
@@ -14,6 +14,8 @@ export function defaultAppContext(appContext) {
|
|
|
14
14
|
const defaultAppContext = {
|
|
15
15
|
userSettings,
|
|
16
16
|
port,
|
|
17
|
+
users,
|
|
18
|
+
groups,
|
|
17
19
|
setContext: function(newContext) {
|
|
18
20
|
// In this scope this reference the object context.
|
|
19
21
|
Object.assign(this, newContext);
|
|
@@ -35,6 +37,10 @@ export function defaultProps() {
|
|
|
35
37
|
};
|
|
36
38
|
}
|
|
37
39
|
|
|
40
|
+
const gpgKey = {
|
|
41
|
+
"fingerprint": "0C1D1761110D1E33C9006D1A5B1B332ED06426D3"
|
|
42
|
+
};
|
|
43
|
+
|
|
38
44
|
/**
|
|
39
45
|
* Default resources
|
|
40
46
|
*/
|
|
@@ -1702,3 +1708,21 @@ export const autocompleteResult = [
|
|
|
1702
1708
|
"last_logged_in": ""
|
|
1703
1709
|
}
|
|
1704
1710
|
];
|
|
1711
|
+
|
|
1712
|
+
export const mockResultsResources = {
|
|
1713
|
+
'passbolt.share.get-resources': resources,
|
|
1714
|
+
'passbolt.keyring.get-public-key-info-by-user': gpgKey,
|
|
1715
|
+
"passbolt.share.resources.save": true,
|
|
1716
|
+
};
|
|
1717
|
+
|
|
1718
|
+
export const mockResultsFolders = {
|
|
1719
|
+
'passbolt.share.get-folders': folders,
|
|
1720
|
+
'passbolt.keyring.get-public-key-info-by-user': gpgKey,
|
|
1721
|
+
"passbolt.share.folders.save": true,
|
|
1722
|
+
};
|
|
1723
|
+
|
|
1724
|
+
export const mockResultsResourcesAndFolders = {
|
|
1725
|
+
'passbolt.share.get-resources': resources,
|
|
1726
|
+
'passbolt.share.get-folders': folders,
|
|
1727
|
+
'passbolt.keyring.get-public-key-info-by-user': gpgKey,
|
|
1728
|
+
};
|
|
@@ -16,14 +16,29 @@
|
|
|
16
16
|
* Unit tests on ShareDialog in regard of specifications
|
|
17
17
|
*/
|
|
18
18
|
import ShareDialogPage from "./ShareDialog.test.page";
|
|
19
|
-
import {
|
|
19
|
+
import {
|
|
20
|
+
autocompleteResult,
|
|
21
|
+
defaultAppContext,
|
|
22
|
+
defaultProps, folders,
|
|
23
|
+
mockResultsFolders,
|
|
24
|
+
mockResultsResources, mockResultsResourcesAndFolders, resources
|
|
25
|
+
} from "./ShareDialog.test.data";
|
|
20
26
|
import {ActionFeedbackContext} from "../../contexts/ActionFeedbackContext";
|
|
21
27
|
import PassboltApiFetchError from "../../../shared/lib/Error/PassboltApiFetchError";
|
|
22
28
|
import {waitFor} from "@testing-library/react";
|
|
23
29
|
import NotifyError from "../Common/Error/NotifyError/NotifyError";
|
|
24
30
|
|
|
31
|
+
beforeAll(() => {
|
|
32
|
+
global.scrollTo = jest.fn();
|
|
33
|
+
});
|
|
34
|
+
|
|
25
35
|
beforeEach(() => {
|
|
26
36
|
jest.resetModules();
|
|
37
|
+
jest.useFakeTimers();
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
afterEach(() => {
|
|
41
|
+
jest.clearAllTimers();
|
|
27
42
|
});
|
|
28
43
|
|
|
29
44
|
describe("As Lu I should see the share dialog", () => {
|
|
@@ -41,23 +56,31 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
41
56
|
* I should see the share dialog
|
|
42
57
|
*/
|
|
43
58
|
beforeEach(async() => {
|
|
44
|
-
const requestResourcesMockImpl =
|
|
59
|
+
const requestResourcesMockImpl = path => mockResultsResources[path];
|
|
45
60
|
mockContextRequest(requestResourcesMockImpl);
|
|
46
61
|
context.setContext({shareDialogProps});
|
|
47
62
|
page = new ShareDialogPage(context, props);
|
|
48
63
|
});
|
|
49
64
|
|
|
50
65
|
it('As LU I see a success toaster message after sharing resources to users and groups with success', async() => {
|
|
51
|
-
expect.assertions(
|
|
66
|
+
expect.assertions(18);
|
|
52
67
|
expect(context.port.request).toHaveBeenCalledWith('passbolt.share.get-resources', shareDialogProps.resourcesIds);
|
|
53
68
|
expect(page.exists()).toBeTruthy();
|
|
54
69
|
expect(page.title).toBe('Share 3 resources');
|
|
55
70
|
expect(page.count).toBe(11);
|
|
56
71
|
|
|
57
|
-
const
|
|
58
|
-
|
|
72
|
+
const requestKeyInfoMockImpl = () => ({
|
|
73
|
+
fingerprint: "079D6F4FDA3BFDC2D8E562D8AA44B1DA4BFB36B6"
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
mockContextRequest(requestKeyInfoMockImpl);
|
|
59
77
|
await page.searchName("adm");
|
|
60
|
-
|
|
78
|
+
jest.runOnlyPendingTimers();
|
|
79
|
+
await waitFor(() => {
|
|
80
|
+
if (!page.userOrGroupAutocomplete(1)) {
|
|
81
|
+
throw new Error("Page is not ready yet.");
|
|
82
|
+
}
|
|
83
|
+
});
|
|
61
84
|
await page.selectUserOrGroup(1);
|
|
62
85
|
|
|
63
86
|
expect(page.warningMessage).toBe('Click save to apply your pending changes.');
|
|
@@ -69,8 +92,8 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
69
92
|
expect(page.aroDetails(2)).toBe('betty@passbolt.com');
|
|
70
93
|
expect(page.aroName(3)).toBe('Board');
|
|
71
94
|
expect(page.aroDetails(3)).toBe('Group');
|
|
72
|
-
expect(page.aroName(12)).toBe('
|
|
73
|
-
expect(page.aroDetails(12)).toBe('
|
|
95
|
+
expect(page.aroName(12)).toBe('Admin User');
|
|
96
|
+
expect(page.aroDetails(12)).toBe('admin@passbolt.com');
|
|
74
97
|
expect(page.selectRights(12).textContent).toBe('can read');
|
|
75
98
|
|
|
76
99
|
const requestMockImpl = jest.fn();
|
|
@@ -79,10 +102,10 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
79
102
|
|
|
80
103
|
await page.savePermissions();
|
|
81
104
|
|
|
82
|
-
const permissionDto = [{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[0], "aro": "
|
|
83
|
-
{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[1], "aro": "
|
|
84
|
-
{"aco": "Resource", "aco_foreign_key": "690b6e40-f371-579c-b0c6-86e8ef383adc", "aro": "
|
|
85
|
-
{"aco": "Resource", "aco_foreign_key": "ecf0ed85-3bfc-5f45-b11d-74e9a86aa313", "aro": "
|
|
105
|
+
const permissionDto = [{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[0], "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
106
|
+
{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[1], "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
107
|
+
{"aco": "Resource", "aco_foreign_key": "690b6e40-f371-579c-b0c6-86e8ef383adc", "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
108
|
+
{"aco": "Resource", "aco_foreign_key": "ecf0ed85-3bfc-5f45-b11d-74e9a86aa313", "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1}];
|
|
86
109
|
|
|
87
110
|
expect(context.port.request).toHaveBeenCalledWith("passbolt.share.resources.save", resources, permissionDto);
|
|
88
111
|
expect(ActionFeedbackContext._currentValue.displaySuccess).toHaveBeenCalledWith('The permissions have been changed successfully.');
|
|
@@ -100,7 +123,12 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
100
123
|
const requestAutocompleteResultMockImpl = jest.fn(() => autocompleteResult);
|
|
101
124
|
mockContextRequest(requestAutocompleteResultMockImpl);
|
|
102
125
|
await page.searchName("adm");
|
|
103
|
-
|
|
126
|
+
jest.runOnlyPendingTimers();
|
|
127
|
+
await waitFor(() => {
|
|
128
|
+
if (!page.userOrGroupAutocomplete(1)) {
|
|
129
|
+
throw new Error("Page is not ready yet.");
|
|
130
|
+
}
|
|
131
|
+
});
|
|
104
132
|
await page.selectUserOrGroup(1);
|
|
105
133
|
|
|
106
134
|
// Mock the request function to make it the expected result
|
|
@@ -153,11 +181,16 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
153
181
|
});
|
|
154
182
|
|
|
155
183
|
it('As LU I should see an error dialog if the submit operation fails for an unexpected reason', async() => {
|
|
156
|
-
expect.assertions(
|
|
184
|
+
expect.assertions(1);
|
|
157
185
|
const requestAutocompleteResultMockImpl = jest.fn(() => autocompleteResult);
|
|
158
186
|
mockContextRequest(requestAutocompleteResultMockImpl);
|
|
159
187
|
await page.searchName("adm");
|
|
160
|
-
|
|
188
|
+
jest.runOnlyPendingTimers();
|
|
189
|
+
await waitFor(() => {
|
|
190
|
+
if (!page.userOrGroupAutocomplete(1)) {
|
|
191
|
+
throw new Error("Page is not ready yet.");
|
|
192
|
+
}
|
|
193
|
+
});
|
|
161
194
|
await page.selectUserOrGroup(1);
|
|
162
195
|
|
|
163
196
|
// Mock the request function to make it return an error.
|
|
@@ -181,14 +214,14 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
181
214
|
* I should see the share dialog
|
|
182
215
|
*/
|
|
183
216
|
beforeEach(async() => {
|
|
184
|
-
const requestResourcesMockImpl =
|
|
217
|
+
const requestResourcesMockImpl = path => mockResultsResources[path];
|
|
185
218
|
mockContextRequest(requestResourcesMockImpl);
|
|
186
219
|
context.setContext({shareDialogProps});
|
|
187
220
|
page = new ShareDialogPage(context, props);
|
|
188
221
|
});
|
|
189
222
|
|
|
190
223
|
it('As LU I see a success toaster message after sharing one resource to users and groups with success', async() => {
|
|
191
|
-
expect.assertions(
|
|
224
|
+
expect.assertions(12);
|
|
192
225
|
expect(context.port.request).toHaveBeenCalledWith('passbolt.share.get-resources', shareDialogProps.resourcesIds);
|
|
193
226
|
expect(page.exists()).toBeTruthy();
|
|
194
227
|
expect(page.title).toBe('Share resource');
|
|
@@ -198,12 +231,17 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
198
231
|
const requestAutocompleteResultMockImpl = jest.fn(() => autocompleteResult);
|
|
199
232
|
mockContextRequest(requestAutocompleteResultMockImpl);
|
|
200
233
|
await page.searchName("adm");
|
|
201
|
-
|
|
234
|
+
jest.runOnlyPendingTimers();
|
|
235
|
+
await waitFor(() => {
|
|
236
|
+
if (!page.userOrGroupAutocomplete(1)) {
|
|
237
|
+
throw new Error("Page is not ready yet.");
|
|
238
|
+
}
|
|
239
|
+
});
|
|
202
240
|
await page.selectUserOrGroup(1);
|
|
203
241
|
|
|
204
242
|
expect(page.count).toBe(12);
|
|
205
|
-
expect(page.aroName(12)).toBe('
|
|
206
|
-
expect(page.aroDetails(12)).toBe('
|
|
243
|
+
expect(page.aroName(12)).toBe('Admin User');
|
|
244
|
+
expect(page.aroDetails(12)).toBe('admin@passbolt.com');
|
|
207
245
|
expect(page.selectRights(12).textContent).toBe('can read');
|
|
208
246
|
|
|
209
247
|
const requestMockImpl = jest.fn();
|
|
@@ -212,10 +250,10 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
212
250
|
|
|
213
251
|
await page.savePermissions();
|
|
214
252
|
|
|
215
|
-
const permissionDto = [{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[0], "aro": "
|
|
216
|
-
{"aco": "Resource", "aco_foreign_key": "daaf057e-7fc3-5537-a8a9-e8c151890878", "aro": "
|
|
217
|
-
{"aco": "Resource", "aco_foreign_key": "690b6e40-f371-579c-b0c6-86e8ef383adc", "aro": "
|
|
218
|
-
{"aco": "Resource", "aco_foreign_key": "ecf0ed85-3bfc-5f45-b11d-74e9a86aa313", "aro": "
|
|
253
|
+
const permissionDto = [{"aco": "Resource", "aco_foreign_key": shareDialogProps.resourcesIds[0], "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
254
|
+
{"aco": "Resource", "aco_foreign_key": "daaf057e-7fc3-5537-a8a9-e8c151890878", "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
255
|
+
{"aco": "Resource", "aco_foreign_key": "690b6e40-f371-579c-b0c6-86e8ef383adc", "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1},
|
|
256
|
+
{"aco": "Resource", "aco_foreign_key": "ecf0ed85-3bfc-5f45-b11d-74e9a86aa313", "aro": "User", "aro_foreign_key": "d57c10f5-639d-5160-9c81-8a0c6c4ec856", "is_new": true, "type": 1}];
|
|
219
257
|
|
|
220
258
|
expect(context.port.request).toHaveBeenCalledWith("passbolt.share.resources.save", resources, permissionDto);
|
|
221
259
|
expect(ActionFeedbackContext._currentValue.displaySuccess).toHaveBeenCalledWith('The permissions have been changed successfully.');
|
|
@@ -231,29 +269,37 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
231
269
|
* I should see the share dialog
|
|
232
270
|
*/
|
|
233
271
|
beforeEach(async() => {
|
|
234
|
-
const requestResourcesMockImpl =
|
|
272
|
+
const requestResourcesMockImpl = path => mockResultsFolders[path];
|
|
235
273
|
mockContextRequest(requestResourcesMockImpl);
|
|
236
274
|
context.setContext({shareDialogProps});
|
|
237
275
|
page = new ShareDialogPage(context, props);
|
|
238
276
|
});
|
|
239
277
|
|
|
240
278
|
it('As LU I see a success toaster message after sharing one folder to users and groups with success', async() => {
|
|
241
|
-
expect.assertions(
|
|
279
|
+
expect.assertions(12);
|
|
242
280
|
expect(context.port.request).toHaveBeenCalledWith('passbolt.share.get-folders', shareDialogProps.foldersIds);
|
|
243
281
|
expect(page.exists()).toBeTruthy();
|
|
244
282
|
expect(page.title).toBe('Share folder');
|
|
245
283
|
expect(page.subtitle).toBe('apache');
|
|
246
284
|
expect(page.count).toBe(2);
|
|
247
285
|
|
|
248
|
-
const
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
286
|
+
const requestKeyInfoMockImpl = () => ({
|
|
287
|
+
fingerprint: "079D6F4FDA3BFDC2D8E562D8AA44B1DA4BFB36B6"
|
|
288
|
+
});
|
|
289
|
+
mockContextRequest(requestKeyInfoMockImpl);
|
|
290
|
+
|
|
291
|
+
await page.searchName("ad");
|
|
292
|
+
jest.runOnlyPendingTimers();
|
|
293
|
+
await waitFor(() => {
|
|
294
|
+
if (!page.userOrGroupAutocomplete(2)) {
|
|
295
|
+
throw new Error("Page is not ready yet.");
|
|
296
|
+
}
|
|
297
|
+
});
|
|
252
298
|
await page.selectUserOrGroup(2);
|
|
253
299
|
|
|
254
300
|
expect(page.count).toBe(3);
|
|
255
|
-
expect(page.aroName(3)).toBe('
|
|
256
|
-
expect(page.aroDetails(3)).toBe('
|
|
301
|
+
expect(page.aroName(3)).toBe('Adele Goldstine');
|
|
302
|
+
expect(page.aroDetails(3)).toBe('adele@passbolt.com');
|
|
257
303
|
expect(page.selectRights(3).textContent).toBe('can read');
|
|
258
304
|
|
|
259
305
|
const requestMockImpl = jest.fn();
|
|
@@ -262,7 +308,7 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
262
308
|
|
|
263
309
|
await page.savePermissions();
|
|
264
310
|
|
|
265
|
-
const permissionDto = [{"aco": "Folder", "aco_foreign_key": shareDialogProps.foldersIds[0], "aro": "User", "aro_foreign_key": "
|
|
311
|
+
const permissionDto = [{"aco": "Folder", "aco_foreign_key": shareDialogProps.foldersIds[0], "aro": "User", "aro_foreign_key": "af5e1f70-a0ee-5b76-935b-c846f8a6a190", "is_new": true, "type": 1}];
|
|
266
312
|
|
|
267
313
|
expect(context.port.request).toHaveBeenCalledWith("passbolt.share.folders.save", folders, permissionDto);
|
|
268
314
|
expect(ActionFeedbackContext._currentValue.displaySuccess).toHaveBeenCalledWith('The permissions have been changed successfully.');
|
|
@@ -279,21 +325,26 @@ describe("As Lu I should see the share dialog", () => {
|
|
|
279
325
|
* I should see the share dialog
|
|
280
326
|
*/
|
|
281
327
|
beforeEach(async() => {
|
|
282
|
-
const requestResourcesMockImpl =
|
|
328
|
+
const requestResourcesMockImpl = path => mockResultsResourcesAndFolders[path];
|
|
283
329
|
mockContextRequest(requestResourcesMockImpl);
|
|
284
330
|
context.setContext({shareDialogProps});
|
|
285
331
|
page = new ShareDialogPage(context, props);
|
|
286
332
|
});
|
|
287
333
|
|
|
288
334
|
it('As LU I see a error dialog message after try to sharing folders and resources at the same time', async() => {
|
|
289
|
-
expect.assertions(
|
|
335
|
+
expect.assertions(3);
|
|
290
336
|
expect(page.exists()).toBeTruthy();
|
|
291
337
|
expect(page.title).toBe('Share 2 items');
|
|
292
338
|
|
|
293
339
|
const requestAutocompleteResultMockImpl = jest.fn(() => autocompleteResult);
|
|
294
340
|
mockContextRequest(requestAutocompleteResultMockImpl);
|
|
295
341
|
await page.searchName("adm");
|
|
296
|
-
|
|
342
|
+
jest.runOnlyPendingTimers();
|
|
343
|
+
await waitFor(() => {
|
|
344
|
+
if (!page.userOrGroupAutocomplete(1)) {
|
|
345
|
+
throw new Error("Page is not ready yet.");
|
|
346
|
+
}
|
|
347
|
+
});
|
|
297
348
|
await page.selectUserOrGroup(1);
|
|
298
349
|
|
|
299
350
|
await page.savePermissions();
|
|
@@ -31,7 +31,7 @@ export default class ShareDialogPage {
|
|
|
31
31
|
this._page = render(
|
|
32
32
|
<MockTranslationProvider>
|
|
33
33
|
<AppContext.Provider value={appContext}>
|
|
34
|
-
<ShareDialog {...props}/>
|
|
34
|
+
<ShareDialog {...props} listMinSize={20}/>
|
|
35
35
|
</AppContext.Provider>
|
|
36
36
|
</MockTranslationProvider>
|
|
37
37
|
);
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* @since 2.13.0
|
|
13
13
|
*/
|
|
14
14
|
import React, {Component} from "react";
|
|
15
|
+
import {Trans} from "react-i18next";
|
|
15
16
|
import PropTypes from "prop-types";
|
|
16
17
|
|
|
17
18
|
import Icon from "../../../shared/components/Icons/Icon";
|
|
@@ -33,7 +34,7 @@ class SharePermissionDeleteButton extends Component {
|
|
|
33
34
|
return (
|
|
34
35
|
<a className={this.getClassName()} onClick={this.handleCloseClick.bind(this)} role="button">
|
|
35
36
|
<Icon name='close' />
|
|
36
|
-
<span className="visually-hidden">Remove</span>
|
|
37
|
+
<span className="visually-hidden"><Trans>Remove</Trans></span>
|
|
37
38
|
</a>
|
|
38
39
|
);
|
|
39
40
|
}
|
|
@@ -39,6 +39,17 @@ class SharePermissionItem extends Component {
|
|
|
39
39
|
this.bindEventHandlers();
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
+
/**
|
|
43
|
+
* Component did mount
|
|
44
|
+
* @returns {Promise<void>}
|
|
45
|
+
*/
|
|
46
|
+
async componentDidMount() {
|
|
47
|
+
if (this.isUser()) {
|
|
48
|
+
const gpgKey = await this.findUserGpgKey(this.props.aro.profile.user_id);
|
|
49
|
+
this.setState({gpgKey});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
42
53
|
/**
|
|
43
54
|
* Invoked immediately after updating occurs. This method is not called for the initial render.
|
|
44
55
|
* @param prevProps
|
|
@@ -54,6 +65,15 @@ class SharePermissionItem extends Component {
|
|
|
54
65
|
this.handleDelete = this.handleDelete.bind(this);
|
|
55
66
|
}
|
|
56
67
|
|
|
68
|
+
/**
|
|
69
|
+
* Find a user gpg key
|
|
70
|
+
* @param {string} userId
|
|
71
|
+
* @returns {Promise<object>}
|
|
72
|
+
*/
|
|
73
|
+
async findUserGpgKey(userId) {
|
|
74
|
+
return await this.props.context.port.request('passbolt.keyring.get-public-key-info-by-user', userId);
|
|
75
|
+
}
|
|
76
|
+
|
|
57
77
|
/**
|
|
58
78
|
* R
|
|
59
79
|
* @returns {string} Group or User name
|
|
@@ -86,6 +106,27 @@ class SharePermissionItem extends Component {
|
|
|
86
106
|
}
|
|
87
107
|
}
|
|
88
108
|
|
|
109
|
+
/**
|
|
110
|
+
* Get the tooltip message
|
|
111
|
+
* @returns {JSX.Element}
|
|
112
|
+
*/
|
|
113
|
+
get tooltipMessage() {
|
|
114
|
+
return <>
|
|
115
|
+
<div className="email"><strong>{this.props.aro.username}</strong></div>
|
|
116
|
+
<div className="fingerprint">{this.formatFingerprint(this.state.gpgKey.fingerprint)}</div>
|
|
117
|
+
</>;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Format fingerprint
|
|
122
|
+
* @param {string} fingerprint An user finger print
|
|
123
|
+
* @returns {JSX.Element}
|
|
124
|
+
*/
|
|
125
|
+
formatFingerprint(fingerprint) {
|
|
126
|
+
const result = fingerprint.toUpperCase().replace(/.{4}/g, '$& ');
|
|
127
|
+
return <>{result.substr(0, 24)}<br/>{result.substr(25)}</>;
|
|
128
|
+
}
|
|
129
|
+
|
|
89
130
|
/**
|
|
90
131
|
* Return true if aro in props is a user
|
|
91
132
|
* @returns {boolean}
|
|
@@ -102,6 +143,14 @@ class SharePermissionItem extends Component {
|
|
|
102
143
|
return !(this.props.aro && this.props.aro.profile);
|
|
103
144
|
}
|
|
104
145
|
|
|
146
|
+
/**
|
|
147
|
+
* Has a gpg key fingerprint
|
|
148
|
+
* @returns {*}
|
|
149
|
+
*/
|
|
150
|
+
hasGpgKey() {
|
|
151
|
+
return this.state.gpgKey && this.state.gpgKey.fingerprint;
|
|
152
|
+
}
|
|
153
|
+
|
|
105
154
|
getClassName() {
|
|
106
155
|
let className = 'row';
|
|
107
156
|
if (this.props.updated) {
|
|
@@ -156,6 +205,11 @@ class SharePermissionItem extends Component {
|
|
|
156
205
|
<div className="aro">
|
|
157
206
|
<div className="aro-name">
|
|
158
207
|
<span className="ellipsis">{this.getAroName()}</span>
|
|
208
|
+
{this.hasGpgKey() &&
|
|
209
|
+
<Tooltip message={this.tooltipMessage}>
|
|
210
|
+
<Icon name="info-circle"/>
|
|
211
|
+
</Tooltip>
|
|
212
|
+
}
|
|
159
213
|
</div>
|
|
160
214
|
<div className="aro-details">
|
|
161
215
|
<span className="ellipsis">{this.getAroDetails()}</span>
|
|
@@ -175,6 +229,7 @@ class SharePermissionItem extends Component {
|
|
|
175
229
|
value={this.state.permissionType.toString()}
|
|
176
230
|
disabled={this.isInputDisabled()}
|
|
177
231
|
onChange={this.handleUpdate}
|
|
232
|
+
direction={this.props.isLastItemDisplayed ? "top" : "bottom"}
|
|
178
233
|
/>
|
|
179
234
|
</div>
|
|
180
235
|
|
|
@@ -196,6 +251,7 @@ SharePermissionItem.propTypes = {
|
|
|
196
251
|
onUpdate: PropTypes.func,
|
|
197
252
|
onDelete: PropTypes.func,
|
|
198
253
|
permissionType: PropTypes.number,
|
|
254
|
+
isLastItemDisplayed: PropTypes.bool,
|
|
199
255
|
t: PropTypes.func, // The translation function
|
|
200
256
|
};
|
|
201
257
|
|
|
@@ -13,17 +13,9 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import React, {Component} from "react";
|
|
15
15
|
import PropTypes from "prop-types";
|
|
16
|
-
import {Trans
|
|
16
|
+
import {Trans} from "react-i18next";
|
|
17
17
|
|
|
18
18
|
class ShareVariesDetails extends Component {
|
|
19
|
-
/**
|
|
20
|
-
* Get the translate function
|
|
21
|
-
* @returns {function(...[*]=)}
|
|
22
|
-
*/
|
|
23
|
-
get translate() {
|
|
24
|
-
return this.props.t;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
19
|
render() {
|
|
28
20
|
return (
|
|
29
21
|
<span className="share-varies-details">
|
|
@@ -46,7 +38,6 @@ class ShareVariesDetails extends Component {
|
|
|
46
38
|
|
|
47
39
|
ShareVariesDetails.propTypes = {
|
|
48
40
|
variesDetails: PropTypes.object,
|
|
49
|
-
t: PropTypes.func, // The translation function
|
|
50
41
|
};
|
|
51
42
|
|
|
52
|
-
export default
|
|
43
|
+
export default ShareVariesDetails;
|
|
@@ -156,7 +156,7 @@ class ConfirmDisableUserMFA extends Component {
|
|
|
156
156
|
You are about to disable second-factor authentication (MFA) for the user <strong>{{name}} ({{username}})</strong>.
|
|
157
157
|
</Trans>
|
|
158
158
|
</p>
|
|
159
|
-
<p><Trans>
|
|
159
|
+
<p><Trans>Existing settings will be lost. This action cannot be undone.</Trans></p>
|
|
160
160
|
</div>
|
|
161
161
|
|
|
162
162
|
<div className="submit-wrapper clearfix">
|
|
@@ -370,11 +370,11 @@ class CreateUser extends Component {
|
|
|
370
370
|
onClose={this.handleClose} disabled={this.hasAllInputDisabled()}>
|
|
371
371
|
<form className="user-create-form" onSubmit={this.handleFormSubmit} noValidate>
|
|
372
372
|
<div className="form-content">
|
|
373
|
-
<div className={`input text required ${this.state.first_nameError ? "error" : ""}`}>
|
|
374
|
-
<label htmlFor="user-first-name-input"><Trans>First
|
|
373
|
+
<div className={`input text required ${this.state.first_nameError ? "error" : ""} ${this.hasAllInputDisabled() ? 'disabled' : ''}`}>
|
|
374
|
+
<label htmlFor="user-first-name-input"><Trans>First name</Trans></label>
|
|
375
375
|
<input id="user-first-name-input" name="first_name"
|
|
376
376
|
ref={this.firstNameRef}
|
|
377
|
-
type="text" value={this.state.first_name} placeholder={this.translate("
|
|
377
|
+
type="text" value={this.state.first_name} placeholder={this.translate("First name")}
|
|
378
378
|
required="required" disabled={this.hasAllInputDisabled()}
|
|
379
379
|
onKeyUp={this.handleFirstNameInputKeyUp} onChange={this.handleInputChange}
|
|
380
380
|
autoComplete='off' autoFocus={true}
|
|
@@ -383,11 +383,11 @@ class CreateUser extends Component {
|
|
|
383
383
|
<div className="first_name error-message">{this.state.first_nameError}</div>
|
|
384
384
|
}
|
|
385
385
|
</div>
|
|
386
|
-
<div className={`input text required ${this.state.last_nameError ? "error" : ""}`}>
|
|
387
|
-
<label htmlFor="user-last-name-input"><Trans>Last
|
|
386
|
+
<div className={`input text required ${this.state.last_nameError ? "error" : ""} ${this.hasAllInputDisabled() ? 'disabled' : ''}`}>
|
|
387
|
+
<label htmlFor="user-last-name-input"><Trans>Last name</Trans></label>
|
|
388
388
|
<input id="user-last-name-input" name="last_name"
|
|
389
389
|
ref={this.lastNameRef}
|
|
390
|
-
type="text" value={this.state.last_name} placeholder={this.translate("
|
|
390
|
+
type="text" value={this.state.last_name} placeholder={this.translate("Last name")}
|
|
391
391
|
required="required" disabled={this.hasAllInputDisabled()}
|
|
392
392
|
onKeyUp={this.handleLastNameInputOnKeyUp} onChange={this.handleInputChange}
|
|
393
393
|
autoComplete='off' autoFocus={true}
|
|
@@ -396,10 +396,10 @@ class CreateUser extends Component {
|
|
|
396
396
|
<div className="last_name error-message">{this.state.last_nameError}</div>
|
|
397
397
|
}
|
|
398
398
|
</div>
|
|
399
|
-
<div className={`input text required ${this.state.usernameError ? "error" : ""}`}>
|
|
399
|
+
<div className={`input text required ${this.state.usernameError ? "error" : ""} ${this.hasAllInputDisabled() ? 'disabled' : ''}`}>
|
|
400
400
|
<label htmlFor="user-username-input"><Trans>Username / Email</Trans></label>
|
|
401
401
|
<input id="user-username-input" name="username"
|
|
402
|
-
ref={this.usernameRef} type="text" value={this.state.username} placeholder={this.translate("
|
|
402
|
+
ref={this.usernameRef} type="text" value={this.state.username} placeholder={this.translate("Email")}
|
|
403
403
|
required="required" disabled={this.hasAllInputDisabled()}
|
|
404
404
|
onKeyUp={this.handleUsernameInputOnKeyUp} onChange={this.handleInputChange}
|
|
405
405
|
autoComplete='off' autoFocus={true}
|
|
@@ -408,7 +408,7 @@ class CreateUser extends Component {
|
|
|
408
408
|
<div className="username error-message">{this.state.usernameError}</div>
|
|
409
409
|
}
|
|
410
410
|
</div>
|
|
411
|
-
<div className=
|
|
411
|
+
<div className={`input checkbox-wrapper ${this.hasAllInputDisabled() ? 'disabled' : ''}`}>
|
|
412
412
|
<label htmlFor="is_admin_checkbox"><Trans>Role</Trans></label>
|
|
413
413
|
<div className="input checkbox">
|
|
414
414
|
<input id="is_admin_checkbox" name="is_admin" onChange={this.handleCheckboxClick}
|
|
@@ -140,7 +140,7 @@ class DeleteUser extends Component {
|
|
|
140
140
|
Are you sure you want to delete <strong>{{user: this.getUser()}}</strong>?
|
|
141
141
|
</Trans>
|
|
142
142
|
</p>
|
|
143
|
-
<p><Trans>
|
|
143
|
+
<p><Trans>This action can’t be undone. All the data associated with this user will be permanently deleted.</Trans></p>
|
|
144
144
|
</div>
|
|
145
145
|
<div className="submit-wrapper clearfix">
|
|
146
146
|
<FormCancelButton disabled={this.hasAllInputDisabled()} onClick={this.handleCloseClick}/>
|
|
@@ -513,7 +513,7 @@ class DeleteUserWithConflicts extends Component {
|
|
|
513
513
|
<ul className="ownership-transfer-items">
|
|
514
514
|
{this.foldersErrors.map(folderError =>
|
|
515
515
|
<li key={folderError.id}>
|
|
516
|
-
<div className=
|
|
516
|
+
<div className={`select-wrapper input required ${this.state.processing ? 'disabled' : ''}`}>
|
|
517
517
|
<label htmlFor="transfer_folder_owner">{folderError.name} (<Trans>Folder</Trans>) <Trans>new owner</Trans>:</label>
|
|
518
518
|
<Select className="form-element" value={this.state.owners[folderError.id]} items={this.getAcoPermissionsList(folderError.id)} onChange={event => this.handleOnChangeOwner(event, folderError.id)}/>
|
|
519
519
|
</div>
|
|
@@ -528,7 +528,7 @@ class DeleteUserWithConflicts extends Component {
|
|
|
528
528
|
<ul className="ownership-transfer-items">
|
|
529
529
|
{this.resourcesErrors.map(resourceError =>
|
|
530
530
|
<li key={resourceError.id}>
|
|
531
|
-
<div className=
|
|
531
|
+
<div className={`select-wrapper input required ${this.state.processing ? 'disabled' : ''}`}>
|
|
532
532
|
<label htmlFor="transfer_resource_owner">{resourceError.name} (<Trans>Password</Trans>) <Trans>new owner</Trans>:</label>
|
|
533
533
|
<Select className="form-element" value={this.state.owners[resourceError.id]} items={this.getAcoPermissionsList(resourceError.id)} onChange={event => this.handleOnChangeOwner(event, resourceError.id)}/>
|
|
534
534
|
</div>
|
|
@@ -543,7 +543,7 @@ class DeleteUserWithConflicts extends Component {
|
|
|
543
543
|
<ul className="ownership-transfer-items">
|
|
544
544
|
{this.groupsErrors.map(groupError =>
|
|
545
545
|
<li key={groupError.id}>
|
|
546
|
-
<div className=
|
|
546
|
+
<div className={`select-wrapper input required ${this.state.processing ? 'disabled' : ''}`}>
|
|
547
547
|
<label htmlFor="transfer_group_manager">{groupError.name} (<Trans>Group</Trans>) <Trans>new manager</Trans>:</label>
|
|
548
548
|
<Select className="form-element" value={this.state.managers[groupError.id]} items={this.getGroupUsersList(groupError.id)} onChange={event => this.handleOnChangeManager(event, groupError.id)}/>
|
|
549
549
|
</div>
|
|
@@ -40,21 +40,13 @@ class DisplayExpiredAccountRecovery extends Component {
|
|
|
40
40
|
this.props.onClose();
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
/**
|
|
44
|
-
* Get the translate function
|
|
45
|
-
* @returns {function(...[*]=)}
|
|
46
|
-
*/
|
|
47
|
-
get translate() {
|
|
48
|
-
return this.props.t;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
43
|
/**
|
|
52
44
|
* Render the component
|
|
53
45
|
* @returns {JSX}
|
|
54
46
|
*/
|
|
55
47
|
render() {
|
|
56
48
|
return (
|
|
57
|
-
<DialogWrapper className="expired-account-recover-dialog" title={this.
|
|
49
|
+
<DialogWrapper className="expired-account-recover-dialog" title={this.props.t("Account recovery error")}
|
|
58
50
|
onClose={this.handleClose}>
|
|
59
51
|
<div className="form-content">
|
|
60
52
|
<p>
|