passbolt-styleguide 3.3.3 → 3.4.0-alpha2
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/build/css/help.min.css +4 -4
- package/build/css/public.min.css +5 -6
- package/build/css/themes/default/api_authentication.min.css +3 -3
- package/build/css/themes/default/api_cloud.min.css +3 -7
- package/build/css/themes/default/api_main.min.css +4 -9
- package/build/css/themes/default/api_reports.min.css +4 -9
- package/build/css/themes/default/api_webinstaller.min.css +4 -9
- package/build/css/themes/default/ext_app.min.css +4 -9
- package/build/css/themes/default/ext_authentication.min.css +3 -3
- package/build/css/themes/default/ext_external.min.css +3 -3
- package/build/css/themes/default/ext_in_form_cta.min.css +9 -0
- package/build/css/themes/default/ext_in_form_menu.min.css +9 -0
- package/build/css/themes/default/ext_quickaccess.min.css +3 -3
- package/build/css/themes/midgar/api_authentication.min.css +9 -0
- package/build/css/themes/midgar/api_main.min.css +4 -9
- package/build/css/themes/midgar/api_reports.min.css +4 -9
- package/build/css/themes/midgar/ext_app.min.css +4 -9
- package/build/css/themes/midgar/ext_authentication.min.css +3 -3
- package/build/css/themes/midgar/ext_in_form_cta.min.css +9 -0
- package/build/css/themes/midgar/ext_in_form_menu.min.css +9 -0
- package/build/css/themes/midgar/ext_quickaccess.min.css +3 -3
- package/build/js/dist/api-app.js +1 -1
- package/build/js/dist/api-app.js.LICENSE.txt +5 -5
- package/build/js/dist/api-recover.js +1 -1
- package/build/js/dist/api-recover.js.LICENSE.txt +0 -28
- package/build/js/dist/api-setup.js +1 -1
- package/build/js/dist/api-setup.js.LICENSE.txt +0 -15
- package/build/js/dist/api-triage.js +1 -1
- package/build/js/dist/api-triage.js.LICENSE.txt +0 -14
- package/build/js/dist/api-vendors.js +1 -1
- package/build/js/dist/api-vendors.js.LICENSE.txt +146 -84
- package/package.json +31 -26
- package/src/img/controls/chevron-down_blue.svg +3 -0
- package/src/img/diagrams/functional_overview.png +0 -0
- package/src/img/diagrams/functional_overview.svg +4 -0
- package/src/img/diagrams/howitworks.svg +2797 -0
- package/src/img/diagrams/mobile-transfer.svg +296 -0
- package/src/img/diagrams/sequence_diagram_form_authenticate.png +0 -0
- package/src/img/diagrams/sequence_diagram_gpg_authenticate.png +0 -0
- package/src/img/diagrams/totp.svg +251 -0
- package/src/img/illustrations/pin_passbolt.gif +0 -0
- package/src/img/illustrations/wave-pin_my_extension.svg +1 -0
- package/src/img/logo/icon-32-badge-1.png +0 -0
- package/src/img/logo/icon-32-badge-2.png +0 -0
- package/src/img/logo/icon-32-badge-3.png +0 -0
- package/src/img/logo/icon-32-badge-4.png +0 -0
- package/src/img/logo/icon-32-badge-5+.png +0 -0
- package/src/img/logo/icon-32-badge-5.png +0 -0
- package/src/img/logo/icon-32-signout.png +0 -0
- package/src/img/logo/icon-badge-1.svg +1 -0
- package/src/img/logo/icon-badge-2.svg +1 -0
- package/src/img/logo/icon-badge-3.svg +1 -0
- package/src/img/logo/icon-badge-4.svg +1 -0
- package/src/img/logo/icon-badge-5+.svg +1 -0
- package/src/img/logo/icon-badge-5.svg +1 -0
- package/src/img/logo/icon-inactive.svg +1 -0
- package/src/img/logo/icon-without-badge.svg +1 -0
- package/src/img/third_party/ChromeWebStore_black.svg +1 -0
- package/src/img/third_party/ChromeWebStore_white.svg +1 -0
- package/src/img/third_party/edge-addon-black.svg +1 -0
- package/src/img/third_party/edge-addon-white.svg +1 -0
- package/src/locales/de-DE/common.json +820 -0
- package/src/locales/en-UK/common.json +86 -20
- package/src/locales/fr/common.json +750 -0
- package/src/locales/fr-FR/common.json +92 -22
- package/src/locales/sv-SE/common.json +820 -0
- package/src/react-extension/ExtApp.js +16 -10
- package/src/react-extension/ExtBootstrapApp.js +1 -0
- package/src/react-extension/components/Administration/DisplayAdministrationMenu/DisplayAdministrationMenu.js +2 -2
- package/src/react-extension/components/Administration/DisplayAdministrationMenu/DisplayAdministrationMenu.test.js +2 -2
- 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 +22 -8
- package/src/react-extension/components/Administration/DisplayEmailNotificationsAdministration/DisplayEmailNotificationsAdministration.test.data.js +3 -0
- package/src/react-extension/components/Administration/DisplayInternationalizationAdministration/DisplayInternationalizationAdministration.js +10 -8
- package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.js +21 -19
- package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.test.page.js +6 -6
- package/src/react-extension/components/Administration/DisplayMfaAdministration/DisplayMfaAdministration.test.stories.js +0 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.js +1 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplaySimulateSynchronizeUserDirectoryAdministration/DisplaySimulateSynchronizeUserDirectoryAdministration.test.stories.js +5 -8
- package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.js +20 -38
- package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.test.data.js +4 -1
- package/src/react-extension/components/Administration/DisplaySubscriptionKey/DisplaySubscriptionKey.test.js +4 -4
- package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.js +1 -1
- package/src/react-extension/components/Administration/DisplaySynchronizeUserDirectoryAdministration/DisplaySynchronizeUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.js +2 -3
- package/src/react-extension/components/Administration/DisplayTestUserDirectoryAdministration/DisplayTestUserDirectoryAdministration.test.stories.js +5 -9
- package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.js +34 -32
- package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.test.js +1 -1
- package/src/react-extension/components/Administration/DisplayUserDirectoryAdministration/DisplayUserDirectoryAdministration.test.stories.js +0 -3
- package/src/react-extension/components/Administration/EditSubscriptionKey/EditSubscriptionKey.js +1 -1
- package/src/react-extension/components/Administration/EditSubscriptionKey/EditSubscriptionKey.test.page.js +2 -2
- package/src/react-extension/components/Authentication/AskForAuthenticationHelp/AskForAuthenticationHelp.js +1 -1
- package/src/react-extension/components/Authentication/AskForAuthenticationHelp/AskForAuthenticationHelp.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/CheckMailBox/CheckMailBox.js +2 -2
- package/src/react-extension/components/Authentication/CheckMailBox/CheckMailBox.test.js +1 -1
- package/src/react-extension/components/Authentication/CheckMailBox/CheckMailbox.test.stories.js +12 -14
- package/src/react-extension/components/Authentication/CheckPassphrase/CheckPassphrase.js +2 -1
- package/src/react-extension/components/Authentication/CheckPassphrase/CheckPassphrase.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/ChooseSecurityToken/ChooseSecurityToken.js +1 -2
- package/src/react-extension/components/Authentication/ChooseSecurityToken/ChooseSecurityToken.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.js +9 -19
- package/src/react-extension/components/Authentication/CreateGpgKey/CreateGpgKey.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/DisplayBrowserNotSupported/DisplayBrowserNotSupported.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/DisplayExpiredTokenError/DisplayExpiredTokenError.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/DisplayRequireInvitationError/DisplayRequireInvitationError.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/DisplayUnexpectedError/DisplayUnexpectedError.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.js +1 -1
- package/src/react-extension/components/Authentication/DownloadRecoveryKit/DownloadRecoveryKit.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/EnterNameForm/EnterNameForm.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/EnterUsernameForm/EnterUsernameForm.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.data.js +14 -0
- package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.js +65 -0
- package/src/react-extension/components/Authentication/HandleSessionExpired/HandleSessionExpired.test.page.js +38 -0
- package/src/react-extension/components/Authentication/ImportGpgKey/ImportGpgKey.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.js +15 -6
- package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.test.js +27 -0
- package/src/react-extension/components/Authentication/InstallExtension/InstallExtension.test.stories.js +12 -15
- package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.js +107 -0
- package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.test.data.js +11 -0
- package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.test.js +65 -0
- package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.test.page.js +73 -0
- package/src/react-extension/components/Authentication/IntroduceSetupExtension/IntroduceSetupExtension.test.stories.js +34 -0
- package/src/react-extension/components/Authentication/NotifyExpiredSession/NotifyExpiredSession.test.stories.js +8 -11
- package/src/react-extension/components/AuthenticationLogin/AcceptLoginServerKeyChange/AcceptLoginServerKeyChange.js +1 -1
- package/src/react-extension/components/AuthenticationLogin/AcceptLoginServerKeyChange/AcceptLoginServerKeyChange.test.stories.js +12 -15
- package/src/react-extension/components/AuthenticationLogin/DisplayLoginError/DisplayLoginError.test.stories.js +12 -15
- package/src/react-extension/components/AuthenticationLogin/DisplayLoginInProgress/DisplayLoginProgress.test.stories.js +12 -15
- package/src/react-extension/components/AuthenticationLogin/Login/Login.js +3 -1
- package/src/react-extension/components/AuthenticationLogin/Login/Login.test.stories.js +12 -15
- package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.js +2 -1
- package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.test.js +1 -1
- package/src/react-extension/components/AuthenticationPassphrase/InputPassphrase/InputPassphrase.test.stories.js +5 -11
- package/src/react-extension/components/AuthenticationRecover/RecoverAuthentication/RecoverAuthentication.js +5 -1
- package/src/react-extension/components/AuthenticationSetup/SetupAuthentication/SetupAuthentication.js +4 -0
- package/src/react-extension/components/Common/ActionFeedback/DisplayActionFeedbacks.test.data.js +0 -2
- package/src/react-extension/components/Common/ActionFeedback/DisplayActionFeedbacks.test.js +4 -5
- package/src/react-extension/components/Common/ActionFeedback/DisplayActionFeedbacks.test.page.js +0 -1
- package/src/react-extension/components/Common/Avatar/UserAvatar.js +2 -1
- package/src/react-extension/components/Common/Error/ShowErrorDetails/ShowErrorDetails.js +126 -0
- package/src/react-extension/components/Common/Icons/AnimatedFeedback.js +58 -0
- package/src/react-extension/components/Common/Icons/Icon.js +16 -0
- package/src/react-extension/components/Common/Icons/Icon.test.stories.js +78 -0
- package/src/react-extension/components/Common/Inputs/FormSubmitButton/FormSubmitButton.js +4 -0
- package/src/react-extension/components/Common/Loading/LoadingSpinner/LoadingSpinner.js +2 -1
- package/src/react-extension/components/Common/Menu/DisplayMainMenu.js +2 -4
- package/src/react-extension/components/Common/Navigation/Search/SearchBar.js +1 -1
- package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.js +1 -1
- package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.test.js +1 -1
- package/src/react-extension/components/Common/Progress/DisplayProgress/DisplayProgress.test.stories.js +34 -0
- package/src/react-extension/components/Common/Tab/Tab.js +65 -0
- package/src/react-extension/components/Common/Tab/Tabs.js +87 -0
- package/src/react-extension/components/Resource/CreateResource/CreateResource.js +85 -66
- package/src/react-extension/components/Resource/CreateResource/CreateResource.test.data.js +80 -1
- package/src/react-extension/components/Resource/CreateResource/CreateResource.test.js +18 -39
- package/src/react-extension/components/Resource/CreateResource/CreateResource.test.page.js +27 -8
- package/src/react-extension/components/Resource/CreateResource/CreateResource.test.stories.js +70 -4
- package/src/react-extension/components/Resource/DeleteResource/DeleteResource.js +1 -1
- package/src/react-extension/components/Resource/DisplayResourcesList/DisplayDragResource.js +68 -0
- package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.js +20 -47
- package/src/react-extension/components/Resource/DisplayResourcesList/DisplayResourcesList.test.page.js +4 -1
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMenu.js +2 -2
- package/src/react-extension/components/Resource/DisplayResourcesWorkspace/DisplayResourcesWorkspaceMenu.test.data.js +1 -7
- package/src/react-extension/components/Resource/EditResource/EditResource.js +93 -68
- package/src/react-extension/components/Resource/EditResource/EditResource.test.data.js +80 -1
- package/src/react-extension/components/Resource/EditResource/EditResource.test.js +10 -39
- package/src/react-extension/components/Resource/EditResource/EditResource.test.page.js +26 -11
- package/src/react-extension/components/Resource/ExportResources/ExportResources.js +1 -1
- package/src/react-extension/components/Resource/ExportResources/ExportResources.test.stories.js +5 -11
- package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.js +10 -12
- package/src/react-extension/components/Resource/ExportResources/ExportResourcesCredentials.test.stories.js +5 -11
- package/src/react-extension/components/Resource/FilterResourcesByBreadcrumb/FilterResourcesByBreadcrumb.js +4 -4
- package/src/react-extension/components/Resource/FilterResourcesByBreadcrumb/FilterResourcesByBreadcrumb.test.stories.js +0 -1
- package/src/react-extension/components/Resource/FilterResourcesByFolders/DisplayDragFolderItem.js +109 -0
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.js +41 -193
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.data.js +10 -5
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.js +9 -12
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.page.js +6 -2
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFolders.test.stories.js +0 -1
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.js +83 -58
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.data.js +52 -59
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.js +25 -20
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItem.test.page.js +11 -5
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByFoldersItemContextualMenu.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByRootFolderContextualMenu.js +7 -2
- package/src/react-extension/components/Resource/FilterResourcesByFolders/FilterResourcesByRootFolderContextualMenu.test.js +3 -7
- package/src/react-extension/components/Resource/FilterResourcesByGroups/FilterResourcesByGroups.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.test.page.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByShortcuts/FilterResourcesByShortcuts.test.stories.js +0 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.js +1 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.data.js +47 -0
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.js +34 -3
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.page.js +46 -9
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTags.test.stories.js +0 -1
- package/src/react-extension/components/Resource/FilterResourcesByTags/FilterResourcesByTagsList.js +124 -4
- package/src/react-extension/components/Resource/FilterResourcesByText/FilterResourcesByText.test.stories.js +0 -2
- package/src/react-extension/components/Resource/ImportResources/ImportResources.js +6 -5
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.js +10 -12
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesKeyUnlock.test.stories.js +5 -11
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.js +3 -3
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.test.js +3 -3
- package/src/react-extension/components/Resource/ImportResources/ImportResourcesResult.test.stories.js +5 -11
- package/src/react-extension/components/ResourceComment/AddResourceComment/AddResourceComment.js +1 -1
- package/src/react-extension/components/ResourceComment/AddResourceComment/AddResourceComment.test.page.object.js +1 -1
- package/src/react-extension/components/ResourceComment/AddResourceComment/AddResourceComment.test.stories.js +8 -14
- package/src/react-extension/components/ResourceComment/ConfirmResourceCommentDeletion/ConfirmResourceCommentDeletion.test.stories.js +5 -11
- package/src/react-extension/components/ResourceComment/DisplayResourceCommentList/DisplayResourceCommentList.test.stories.js +8 -14
- package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.js +9 -8
- package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.test.page.js +1 -1
- package/src/react-extension/components/ResourceDescription/EditResourceDescription/EditResourceDescription.test.stories.js +8 -15
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsActivity.test.stories.js +0 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsDescription.js +1 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsDescription.test.stories.js +0 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.test.js +1 -1
- package/src/react-extension/components/ResourceDetails/DisplayResourceDetails/DisplayResourceDetailsTag.test.stories.js +0 -1
- package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.js +2 -2
- package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.test.page.js +1 -1
- package/src/react-extension/components/ResourceFolder/CreateResourceFolder/CreateResourceFolder.test.stories.js +0 -3
- package/src/react-extension/components/ResourceFolder/DefineResourceFolderMoveStrategy/DefineResourceFolderMoveStrategy.test.stories.js +0 -6
- package/src/react-extension/components/ResourceFolder/DeleteResourceFolder/DeleteResourceFolder.test.stories.js +0 -5
- package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.js +1 -1
- package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.test.page.js +1 -1
- package/src/react-extension/components/ResourceFolder/RenameResourceFolder/RenameResourceFolder.test.stories.js +0 -7
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsActivity.test.stories.js +0 -2
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsInformation.test.stories.js +0 -2
- package/src/react-extension/components/ResourceFolderDetails/DisplayResourceFolderDetails/DisplayResourceFolderDetailsPermissions.test.stories.js +0 -2
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePassphraseGenerator.js +150 -0
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePassphraseGenerator.test.stories.js +30 -0
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePasswordGenerator.js +191 -0
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/ConfigurePasswordGenerator.test.stories.js +73 -0
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/GenerateResourcePassword.js +296 -0
- package/src/react-extension/components/ResourcePassword/GenerateResourcePassword/GenerateResourcePassword.test.stories.js +112 -0
- package/src/react-extension/components/ResourceTag/DeleteResourceTag/DeleteResourceTag.test.stories.js +0 -2
- package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.test.page.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTag/EditResourceTag.test.stories.js +0 -4
- package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTags.js +2 -2
- package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTags.test.page.js +1 -1
- package/src/react-extension/components/ResourceTag/EditResourceTags/EditResourceTagsItemViewer.js +5 -1
- package/src/react-extension/components/Share/ShareDialog.test.page.js +1 -1
- package/src/react-extension/components/Share/ShareDialog.test.stories.js +12 -10
- package/src/react-extension/components/User/ConfirmDisableUserMFA/ConfirmDisableUserMFA.test.stories.js +5 -9
- package/src/react-extension/components/User/CreateUser/CreateUser.js +4 -4
- package/src/react-extension/components/User/CreateUser/CreateUser.test.page.js +3 -3
- package/src/react-extension/components/User/CreateUser/CreateUser.test.stories.js +3 -1
- package/src/react-extension/components/User/DeleteUser/DeleteUser.test.stories.js +5 -8
- package/src/react-extension/components/User/DeleteUser/DeleteUserWithConflicts.test.stories.js +5 -8
- package/src/react-extension/components/User/DisplayUserWorkspaceActions/DisplayUserWorkspaceActions.js +2 -2
- package/src/react-extension/components/User/DisplayUserWorkspaceActions/DisplayUserWorkspaceActions.test.page.js +1 -1
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.js +35 -2
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.test.data.js +2 -1
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.test.js +6 -0
- package/src/react-extension/components/User/DisplayUsers/DisplayUsers.test.page.js +19 -6
- package/src/react-extension/components/User/EditUser/EditUser.js +3 -3
- package/src/react-extension/components/User/EditUser/EditUser.test.page.js +2 -2
- package/src/react-extension/components/User/EditUser/EditUser.test.stories.js +3 -1
- package/src/react-extension/components/User/FilterUsersByBreadcrumb/FilterUsersByBreadcrumb.js +2 -2
- package/src/react-extension/components/User/FilterUsersByBreadcrumb/FilterUsersByBreadcrumb.test.js +1 -1
- package/src/react-extension/components/User/FilterUsersByBreadcrumb/FilterUsersByBreadcrumb.test.stories.js +5 -8
- package/src/react-extension/components/User/FilterUsersByGroups/FilterUsersByGroup.js +1 -1
- package/src/react-extension/components/User/FilterUsersByShortcut/FilterUsersByShortcut.js +1 -1
- package/src/react-extension/components/User/FilterUsersByShortcut/FilterUsersByShortcut.test.stories.js +0 -1
- package/src/react-extension/components/User/FilterUsersByText/FilterUsersByText.test.stories.js +0 -2
- package/src/react-extension/components/UserDetails/DisplayUserDetailsGroups/DisplayUserDetailsGroups.test.stories.js +8 -11
- package/src/react-extension/components/UserDetails/DisplayUserDetailsInformation/DisplayUserDetailsInformation.test.stories.js +8 -11
- package/src/react-extension/components/UserDetails/DisplayUserDetailsPublicKey/DisplayUserDetailsPublicKey.test.stories.js +8 -12
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.js +1 -1
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.test.page.js +2 -2
- package/src/react-extension/components/UserGroup/CreateUserGroup/CreateUserGroup.test.stories.js +5 -8
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroup.test.stories.js +5 -8
- package/src/react-extension/components/UserGroup/DeleteUserGroup/DeleteUserGroupWithConflicts.test.stories.js +5 -8
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsInformation/DisplayUserGroupDetailsInformation.test.stories.js +8 -11
- package/src/react-extension/components/UserGroup/DisplayUserGroupDetailsMembers/DisplayUserGroupDetailsMembers.test.stories.js +8 -11
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.js +11 -3
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.data.js +7 -0
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.page.js +1 -1
- package/src/react-extension/components/UserGroup/EditUserGroup/EditUserGroup.test.stories.js +12 -8
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.js +92 -21
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.test.data.js +6 -0
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.test.js +2 -2
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/ConfirmPassphrase.test.page.js +1 -1
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/DisplayChangePassphraseIntroduction.js +12 -10
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/DownloadRecoveryKit.js +4 -10
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.js +65 -25
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.data.js +6 -0
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.js +1 -1
- package/src/react-extension/components/UserSetting/ChangeUserPassphrase/EnterNewPassphrase.test.page.js +1 -1
- package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.js +14 -13
- package/src/react-extension/components/UserSetting/ChangeUserSecurityToken/ChangeUserSecurityToken.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.js +21 -6
- package/src/react-extension/components/UserSetting/DisplayUserGpgInformation/DisplayUserGpgInformation.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/DisplayUserProfile/DisplayUserProfile.js +1 -1
- package/src/react-extension/components/UserSetting/DisplayUserProfile/DisplayUserProfile.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspace/DisplayUserSettingsWorkspace.js +13 -1
- package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspaceBreadcrumb/DisplayUserSettingsWorkspaceBreadcrumb.js +2 -1
- package/src/react-extension/components/UserSetting/DisplayUserSettingsWorkspaceBreadcrumb/DisplayUserSettingsWorkspaceBreadcrumb.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/DisplayUserTheme/DisplayUserTheme.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/EditUserProfile/EditUserProfile.js +3 -3
- package/src/react-extension/components/UserSetting/EditUserProfile/EditUserProfile.test.stories.js +5 -8
- package/src/react-extension/components/UserSetting/NavigateIntoUserSettingsWorkspace/NavigateIntoUserSettingsWorkspace.js +26 -4
- package/src/react-extension/components/UserSetting/NavigateIntoUserSettingsWorkspace/NavigateIntoUserSettingsWorkspace.test.stories.js +7 -10
- package/src/react-extension/components/UserSetting/TransferToMobile/TransferToMobile.js +749 -0
- package/src/react-extension/components/UserSetting/TransferToMobile/TransferToMobile.test.data.js +32 -0
- package/src/react-extension/components/UserSetting/TransferToMobile/TransferToMobile.test.js +60 -0
- package/src/react-extension/components/UserSetting/TransferToMobile/TransferToMobile.test.page.js +110 -0
- package/src/react-extension/components/UserSetting/UploadUserProfileAvatar/UploadUserProfileAvatar.js +3 -2
- package/src/react-extension/components/UserSetting/UploadUserProfileAvatar/UploadUserProfileAvatar.test.stories.js +5 -8
- package/src/react-extension/contexts/AdministrationWorkspaceContext.js +2 -2
- package/src/react-extension/contexts/ApiAppContext.js +1 -1
- package/src/react-extension/contexts/ApiRecoverContext.js +1 -1
- package/src/react-extension/contexts/ApiSetupContext.js +1 -1
- package/src/react-extension/contexts/AuthenticationContext.js +21 -2
- package/src/react-extension/contexts/AuthenticationContext.test.js +40 -0
- package/src/react-extension/contexts/DragContext.js +122 -0
- package/src/react-extension/contexts/DragContext.test.js +53 -0
- package/src/react-extension/contexts/NavigationContext.js +11 -0
- package/src/react-extension/contexts/ResourcePasswordGeneratorContext.js +144 -0
- package/src/react-extension/contexts/ResourceWorkspaceContext.js +5 -4
- package/src/react-extension/contexts/ResourceWorkspaceContext.test.data.js +0 -1
- package/src/react-extension/contexts/ResourceWorkspaceContext.test.page.js +0 -1
- package/src/react-extension/contexts/UserWorkspaceContext.js +31 -4
- package/src/react-extension/contexts/UserWorkspaceContext.test.data.js +17 -287
- package/src/react-extension/lib/Crypto/sha512.js +17 -0
- package/src/react-extension/test/fixture/Settings/siteSettings.js +6 -0
- package/src/react-extension/test/mock/components/Internationalisation/MockTranslationProvider.js +42 -7
- package/src/react-quickaccess/ExtQuickAccess.js +75 -28
- package/src/react-quickaccess/components/AnimatedSwitch/AnimatedSwitch.js +22 -5
- package/src/react-quickaccess/components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgress.js +41 -0
- package/src/react-quickaccess/components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgressPage.test.stories.js +23 -0
- package/src/react-quickaccess/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.js +8 -4
- package/src/react-quickaccess/components/FilterResourcesByFavoritePage/FilterResourcesByFavoritePage.test.stories.js +7 -7
- package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.js +10 -6
- package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.test.stories.js +9 -5
- package/src/react-quickaccess/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.js +10 -7
- package/src/react-quickaccess/components/FilterResourcesByItemsIOwnPage/FilterResourcesByItemsIOwnPage.test.stories.js +7 -7
- package/src/react-quickaccess/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.js +10 -7
- package/src/react-quickaccess/components/FilterResourcesByRecentlyModifiedPage/FilterResourcesByRecentlyModifiedPage.test.stories.js +7 -7
- package/src/react-quickaccess/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.js +10 -7
- package/src/react-quickaccess/components/FilterResourcesBySharedWithMePage/FilterResourcesBySharedWithMePage.test.stories.js +7 -7
- package/src/react-quickaccess/components/FilterResourcesByTagPage/FilterResourcesByTagPage.js +10 -7
- package/src/react-quickaccess/components/FilterResourcesByTagPage/FilterResourcesByTagPage.test.stories.js +9 -5
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePassphraseGenerator.js +150 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePassphraseGenerator.test.data.js +20 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePassphraseGenerator.test.js +67 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePassphraseGenerator.test.page.js +109 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePasswordGenerator.js +189 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePasswordGenerator.test.data.js +40 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePasswordGenerator.test.js +67 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/ConfigurePasswordGenerator.test.page.js +121 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.js +304 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.test.data.js +102 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.test.js +76 -0
- package/src/react-quickaccess/components/GeneratePasswordPage/GeneratePasswordPage.test.page.js +158 -0
- package/src/react-quickaccess/components/Header/Header.js +10 -8
- package/src/react-quickaccess/components/Header/Header.test.stories.js +4 -7
- package/src/react-quickaccess/components/HomePage/HomePage.js +40 -11
- package/src/react-quickaccess/components/HomePage/HomePage.test.stories.js +14 -10
- package/src/react-quickaccess/components/HomePage/canSuggestUrl.js +8 -3
- package/src/react-quickaccess/components/HomePage/canSuggestUrl.test.js +6 -0
- package/src/react-quickaccess/components/LoginPage/LoginPage.js +58 -18
- package/src/react-quickaccess/components/LoginPage/LoginPage.test.stories.js +4 -6
- package/src/react-quickaccess/components/ManageQuickAccessMode/ManageQuickAccessMode.js +103 -0
- package/src/react-quickaccess/components/MoreFiltersPage/MoreFiltersPage.js +2 -2
- package/src/react-quickaccess/components/MoreFiltersPage/MoreFiltersPage.test.stories.js +4 -6
- package/src/react-quickaccess/components/PassphraseDialog/PassphraseDialog.js +5 -3
- package/src/react-quickaccess/components/PassphraseDialog/PassphraseDialog.test.stories.js +6 -6
- package/src/react-quickaccess/components/PrivateRoute/PrivateRoute.js +1 -0
- package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.js +234 -0
- package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.test.data.js +28 -0
- package/src/react-quickaccess/components/ResourceAutoSave/SaveResource.test.stories.js +44 -0
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.js +166 -39
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.test.data.js +108 -2
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.test.js +28 -25
- package/src/react-quickaccess/components/ResourceCreatePage/ResourceCreatePage.test.stories.js +6 -6
- package/src/react-quickaccess/components/ResourceViewPage/ResourceViewPage.js +6 -3
- package/src/react-quickaccess/components/ResourceViewPage/ResourceViewPage.test.stories.js +5 -3
- package/src/react-quickaccess/components/Search/Search.js +13 -1
- package/src/react-quickaccess/components/Search/Search.test.stories.js +4 -6
- package/src/react-quickaccess/contexts/PrepareResourceContext.js +221 -0
- package/src/react-web-integration/AuthLogin/AuthLogin.js +72 -0
- package/src/react-web-integration/Autofill/Autofill.js +331 -0
- package/src/react-web-integration/BrowserIntegrationBootstrap.js +64 -0
- package/src/react-web-integration/Events/Quickaccess/QuickAccessEvent.js +24 -0
- package/src/react-web-integration/ExtInFormCallToAction.js +56 -0
- package/src/react-web-integration/ExtInFormMenu.js +70 -0
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.js +161 -0
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.data.js +39 -0
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.js +48 -0
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.page.js +42 -0
- package/src/react-web-integration/components/AskInFormMenuDisplay/AskInFormMenuDisplay.test.stories.js +91 -0
- package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenu.js +360 -0
- package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenu.test.stories.js +198 -0
- package/src/react-web-integration/components/DisplayInFormMenu/DisplayInFormMenuItem.js +103 -0
- package/src/react-web-integration/contexts/AppContext.js +39 -0
- package/src/react-web-integration/lib/Dom/DomUtils.js +94 -0
- package/src/react-web-integration/lib/InForm/InFormCallToActionField.js +263 -0
- package/src/react-web-integration/lib/InForm/InFormCredentialsFormField.js +118 -0
- package/src/react-web-integration/lib/InForm/InFormFieldSelector.js +77 -0
- package/src/react-web-integration/lib/InForm/InFormManager.js +253 -0
- package/src/react-web-integration/lib/InForm/InformManager.test.data.js +46 -0
- package/src/react-web-integration/lib/InForm/InformManager.test.js +82 -0
- package/src/react-web-integration/lib/InForm/InformManager.test.page.js +116 -0
- package/src/react-web-integration/lib/InForm/InformMenuField.js +182 -0
- package/src/shared/components/Internationalisation/TranslationProvider.js +145 -0
- package/src/shared/lib/Browser/detectBrowserName.js +2 -1
- package/src/shared/lib/Secret/SecretComplexity.js +2 -2
- package/src/shared/lib/SecretGenerator/PassphraseGenerator.js +112 -0
- package/src/shared/lib/SecretGenerator/PassphraseGenerator.test.js +48 -0
- package/src/shared/lib/SecretGenerator/PassphraseGeneratorWords.js +7789 -0
- package/src/shared/lib/SecretGenerator/PasswordGenerator.js +103 -0
- package/src/shared/lib/SecretGenerator/SecretGenerator.js +45 -0
- package/src/shared/lib/SecretGenerator/SecretGeneratorComplexity.js +190 -0
- package/src/shared/lib/SecretGenerator/SecretGeneratorComplexity.test.js +95 -0
- package/src/shared/lib/Settings/SiteSettings.js +8 -0
- package/src/shared/lib/apiClient/apiClient.test.js +1 -1
- package/.babelrc +0 -11
- package/.editorconfig +0 -13
- package/.eslintrc.json +0 -197
- package/.gitlab-ci.yml +0 -28
- package/.jest.config.json +0 -6
- package/.jest.setup.js +0 -8
- package/.jest.transform.js +0 -7
- package/.storybook/main.js +0 -15
- package/.storybook/preview-body.html +0 -5
- package/.storybook/preview.js +0 -6
- package/Gruntfile.js +0 -199
- package/build/css/themes/default/ext_config_debug.min.css +0 -13
- package/build/css/themes/default/ext_legacy.min.css +0 -13
- package/build/css/themes/midgar/ext_legacy.min.css +0 -13
- package/crowdin.yml +0 -4
- package/docker-compose-dev.yml +0 -10
- package/jest.config.json +0 -6
- package/src/img/controls/colorpicker/marker.png +0 -0
- package/src/img/controls/colorpicker/mask.png +0 -0
- package/src/img/controls/colorpicker/wheel.png +0 -0
- package/src/img/controls/overlay-opacity-50.png +0 -0
- package/src/img/third_party/ChromeWebStore_black.png +0 -0
- package/src/img/third_party/ChromeWebStore_white.png +0 -0
- package/src/js/accordion.js +0 -10
- package/src/js/autocomplete.js +0 -241
- package/src/js/autocomplete.min.js +0 -3
- package/src/js/bootstrap-scrollspy.js +0 -172
- package/src/js/chosen.jquery.js +0 -1356
- package/src/js/colorpicker.js +0 -32
- package/src/js/download.js +0 -128
- package/src/js/farbtastic.js +0 -345
- package/src/js/swiper.min.js +0 -18
- package/src/react-quickaccess/components/Internationalisation/TranslationProvider.js +0 -151
- package/storybook-static/favicon.ico +0 -0
- package/storybook-static/iframe.html +0 -133
- package/storybook-static/index.html +0 -47
- package/storybook-static/main.2d01924b12554c6c15af.bundle.js +0 -1
- package/storybook-static/main.b0c44c8759149ccf4f67.bundle.js +0 -3
- package/storybook-static/main.b0c44c8759149ccf4f67.bundle.js.LICENSE.txt +0 -153
- package/storybook-static/main.b0c44c8759149ccf4f67.bundle.js.map +0 -1
- package/storybook-static/runtime~main.6a9b04192e3176eff72a.bundle.js +0 -1
- package/storybook-static/runtime~main.b0c44c8759149ccf4f67.bundle.js +0 -2
- package/storybook-static/runtime~main.b0c44c8759149ccf4f67.bundle.js.map +0 -1
- package/storybook-static/static/media/chosen-sprite.6768c197.png +0 -0
- package/storybook-static/static/media/chosen-sprite@2x.a0b7f3f1.png +0 -0
- package/storybook-static/static/media/dot_black.a2c44078.svg +0 -6
- package/storybook-static/static/media/dot_red.7b34541d.svg +0 -6
- package/storybook-static/static/media/dot_white.f60f7331.svg +0 -6
- package/storybook-static/static/media/fontawesome-webfont.1e59d233.ttf +0 -0
- package/storybook-static/static/media/fontawesome-webfont.20fd1704.woff2 +0 -0
- package/storybook-static/static/media/fontawesome-webfont.8b43027f.eot +0 -0
- package/storybook-static/static/media/fontawesome-webfont.c1e38fd9.svg +0 -2671
- package/storybook-static/static/media/fontawesome-webfont.f691f37e.woff +0 -0
- package/storybook-static/static/media/infinite-bar.f5327dc3.gif +0 -0
- package/storybook-static/static/media/loading_dark.ea474c7f.svg +0 -21
- package/storybook-static/static/media/loading_light.061977b5.svg +0 -15
- package/storybook-static/static/media/logo.e2b062a5.svg +0 -1
- package/storybook-static/static/media/logo_white.cb32e694.svg +0 -1
- package/storybook-static/static/media/opensans-bold.a6b4768c.woff +0 -0
- package/storybook-static/static/media/opensans-regular.7812bd0b.woff +0 -0
- package/storybook-static/static/media/passphrase_intro.37a1ba4e.png +0 -0
- package/storybook-static/vendors~main.4abf29e4f956d5befb41.bundle.js +0 -2
- package/storybook-static/vendors~main.4abf29e4f956d5befb41.bundle.js.LICENSE.txt +0 -105
- package/storybook-static/vendors~main.b0c44c8759149ccf4f67.bundle.js +0 -3
- package/storybook-static/vendors~main.b0c44c8759149ccf4f67.bundle.js.LICENSE.txt +0 -145
- package/storybook-static/vendors~main.b0c44c8759149ccf4f67.bundle.js.map +0 -1
- package/webpack-api.config.js +0 -83
- package/webpack-ext.config.js +0 -84
package/src/react-extension/test/mock/components/Internationalisation/MockTranslationProvider.js
CHANGED
|
@@ -15,6 +15,8 @@ import i18n from 'i18next';
|
|
|
15
15
|
import {initReactI18next} from 'react-i18next';
|
|
16
16
|
import {Component} from "react";
|
|
17
17
|
import PropTypes from "prop-types";
|
|
18
|
+
import enTranslations from "../../../../../locales/en-UK/common.json";
|
|
19
|
+
import frTranslations from "../../../../../locales/fr/common.json";
|
|
18
20
|
|
|
19
21
|
/**
|
|
20
22
|
* This component set up the translation process
|
|
@@ -25,15 +27,22 @@ class MockTranslationProvider extends Component {
|
|
|
25
27
|
* @returns {Promise<void>}
|
|
26
28
|
* @constructor
|
|
27
29
|
*/
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
constructor(props) {
|
|
31
|
+
super();
|
|
32
|
+
i18n
|
|
30
33
|
// pass the i18n instance to react-i18next.
|
|
31
34
|
.use(initReactI18next)
|
|
32
35
|
// init i18next, for all options read: https://www.i18next.com/overview/configuration-options
|
|
33
36
|
.init({
|
|
34
|
-
lng: 'en-UK',
|
|
35
|
-
|
|
36
|
-
|
|
37
|
+
lng: props.language || 'en-UK',
|
|
38
|
+
resources: {
|
|
39
|
+
"en-UK": {
|
|
40
|
+
common: enTranslations
|
|
41
|
+
},
|
|
42
|
+
fr: {
|
|
43
|
+
common: frTranslations
|
|
44
|
+
}
|
|
45
|
+
},
|
|
37
46
|
react: {
|
|
38
47
|
useSuspense: false,
|
|
39
48
|
},
|
|
@@ -42,10 +51,34 @@ class MockTranslationProvider extends Component {
|
|
|
42
51
|
defaultNS: 'common',
|
|
43
52
|
keySeparator: false, // don't use the dot for separator of nested json object
|
|
44
53
|
nsSeparator: false, // allowed ':' in key to avoid namespace separator
|
|
45
|
-
debug:
|
|
54
|
+
debug: true
|
|
46
55
|
});
|
|
47
56
|
}
|
|
48
57
|
|
|
58
|
+
/**
|
|
59
|
+
* Applies a language change whenever it's needed.
|
|
60
|
+
* This method is use isntead of the others to provide the new locale before an updates occur.
|
|
61
|
+
* This way the translation used and displayed is the right one.
|
|
62
|
+
*
|
|
63
|
+
* @param {*} nextProps
|
|
64
|
+
* @returns
|
|
65
|
+
*/
|
|
66
|
+
async shouldComponentUpdate(nextProps) {
|
|
67
|
+
await this.handleChangeLanguage(nextProps.language);
|
|
68
|
+
return nextProps.language !== this.props.language;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Whenever the translation language change
|
|
73
|
+
* @param nextLanguage The previous language
|
|
74
|
+
* @returns {Promise<void>}
|
|
75
|
+
*/
|
|
76
|
+
async handleChangeLanguage(nextLanguage) {
|
|
77
|
+
if (nextLanguage !== this.props.language) {
|
|
78
|
+
await i18n.changeLanguage(nextLanguage);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
49
82
|
/**
|
|
50
83
|
* Render the component.
|
|
51
84
|
* @returns {JSX}
|
|
@@ -56,7 +89,9 @@ class MockTranslationProvider extends Component {
|
|
|
56
89
|
}
|
|
57
90
|
|
|
58
91
|
MockTranslationProvider.propTypes = {
|
|
59
|
-
children: PropTypes.any, // The children components
|
|
92
|
+
children: PropTypes.any, // The children components,
|
|
93
|
+
language: PropTypes.string // The current translation language
|
|
60
94
|
};
|
|
61
95
|
|
|
62
96
|
export default MockTranslationProvider;
|
|
97
|
+
|
|
@@ -17,13 +17,18 @@ import ResourceCreatePage from "./components/ResourceCreatePage/ResourceCreatePa
|
|
|
17
17
|
import ResourceViewPage from "./components/ResourceViewPage/ResourceViewPage";
|
|
18
18
|
import Search from "./components/Search/Search";
|
|
19
19
|
import {BrowserRouter as Router, Route} from "react-router-dom";
|
|
20
|
-
import PrivateRoute from "./components/PrivateRoute/PrivateRoute";
|
|
21
20
|
import AnimatedSwitch from "./components/AnimatedSwitch/AnimatedSwitch";
|
|
22
21
|
import PassphraseDialog from "./components/PassphraseDialog/PassphraseDialog";
|
|
23
22
|
import PropTypes from "prop-types";
|
|
24
23
|
import SiteSettings from "../shared/lib/Settings/SiteSettings";
|
|
25
24
|
import UserSettings from "../shared/lib/Settings/UserSettings";
|
|
26
|
-
import TranslationProvider from "
|
|
25
|
+
import TranslationProvider from "../shared/components/Internationalisation/TranslationProvider";
|
|
26
|
+
import SetupExtensionInProgress from "./components/ExtensionSetup/SetupExtensionInProgress/SetupExtensionInProgress";
|
|
27
|
+
import ManageQuickAccessMode from "./components/ManageQuickAccessMode/ManageQuickAccessMode";
|
|
28
|
+
import PrivateRoute from "./components/PrivateRoute/PrivateRoute";
|
|
29
|
+
import SaveResource from "./components/ResourceAutoSave/SaveResource";
|
|
30
|
+
import GeneratePasswordPage from "./components/GeneratePasswordPage/GeneratePasswordPage";
|
|
31
|
+
import PrepareResourceContextProvider from "./contexts/PrepareResourceContext";
|
|
27
32
|
|
|
28
33
|
const SEARCH_VISIBLE_ROUTES = [
|
|
29
34
|
'/data/quickaccess.html',
|
|
@@ -66,6 +71,7 @@ class ExtQuickAccess extends React.Component {
|
|
|
66
71
|
|
|
67
72
|
async componentDidMount() {
|
|
68
73
|
this.state.port.on('passbolt.passphrase.request', this.handleBackgroundPageRequiresPassphraseEvent);
|
|
74
|
+
this.handlePassphraseRequest();
|
|
69
75
|
await this.checkPluginIsConfigured();
|
|
70
76
|
await this.getUser();
|
|
71
77
|
this.checkAuthStatus();
|
|
@@ -88,10 +94,21 @@ class ExtQuickAccess extends React.Component {
|
|
|
88
94
|
focusSearch: this.focusSearch,
|
|
89
95
|
// Passphrase
|
|
90
96
|
passphraseRequired: false,
|
|
91
|
-
passphraseRequestId: ''
|
|
97
|
+
passphraseRequestId: '',
|
|
98
|
+
// Tab id to refer to the good one if detached mode
|
|
99
|
+
tabId: this.getTabIdFromUrl()
|
|
92
100
|
};
|
|
93
101
|
}
|
|
94
102
|
|
|
103
|
+
/**
|
|
104
|
+
* Get the tabId from URL
|
|
105
|
+
* @returns {string}
|
|
106
|
+
*/
|
|
107
|
+
getTabIdFromUrl() {
|
|
108
|
+
const queryParameters = new URLSearchParams(window.location.search);
|
|
109
|
+
return queryParameters.get('tabId');
|
|
110
|
+
}
|
|
111
|
+
|
|
95
112
|
updateSearch(search) {
|
|
96
113
|
this.setState({search});
|
|
97
114
|
}
|
|
@@ -127,6 +144,16 @@ class ExtQuickAccess extends React.Component {
|
|
|
127
144
|
this.setState({locale});
|
|
128
145
|
}
|
|
129
146
|
|
|
147
|
+
/**
|
|
148
|
+
* Is feature is present
|
|
149
|
+
* @param feature {string}
|
|
150
|
+
* @returns {boolean}
|
|
151
|
+
*/
|
|
152
|
+
isInFeature(feature) {
|
|
153
|
+
const queryParameters = new URLSearchParams(window.location.search);
|
|
154
|
+
return queryParameters.get("feature") === feature;
|
|
155
|
+
}
|
|
156
|
+
|
|
130
157
|
/**
|
|
131
158
|
* Retrieve the authentication status.
|
|
132
159
|
*
|
|
@@ -151,7 +178,12 @@ class ExtQuickAccess extends React.Component {
|
|
|
151
178
|
}
|
|
152
179
|
|
|
153
180
|
loginSuccessCallback() {
|
|
154
|
-
this.
|
|
181
|
+
if (!this.isInFeature('login')) {
|
|
182
|
+
this.getSiteSettings();
|
|
183
|
+
this.setState({isAuthenticated: true});
|
|
184
|
+
} else {
|
|
185
|
+
window.close();
|
|
186
|
+
}
|
|
155
187
|
}
|
|
156
188
|
|
|
157
189
|
logoutSuccessCallback() {
|
|
@@ -170,7 +202,18 @@ class ExtQuickAccess extends React.Component {
|
|
|
170
202
|
}
|
|
171
203
|
|
|
172
204
|
handlePassphraseDialogCompleted() {
|
|
173
|
-
this.
|
|
205
|
+
if (this.isInFeature("request-passphrase")) {
|
|
206
|
+
window.close();
|
|
207
|
+
} else {
|
|
208
|
+
this.setState({passphraseRequired: false, passphraseRequestId: null});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
handlePassphraseRequest() {
|
|
213
|
+
if (this.isInFeature("request-passphrase")) {
|
|
214
|
+
const queryParameters = new URLSearchParams(window.location.search);
|
|
215
|
+
this.handleBackgroundPageRequiresPassphraseEvent(queryParameters.get("requestId"));
|
|
216
|
+
}
|
|
174
217
|
}
|
|
175
218
|
|
|
176
219
|
isReady() {
|
|
@@ -185,26 +228,27 @@ class ExtQuickAccess extends React.Component {
|
|
|
185
228
|
|
|
186
229
|
return (
|
|
187
230
|
<AppContext.Provider value={this.state}>
|
|
188
|
-
<TranslationProvider loadingPath="/data/locales/{{lng}}/{{ns}}.json">
|
|
231
|
+
<TranslationProvider loadingPath="/data/locales/{{lng}}/{{ns}}.json" locale={this.state?.locale}>
|
|
189
232
|
<Router>
|
|
190
|
-
<
|
|
191
|
-
<
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
<
|
|
195
|
-
|
|
196
|
-
|
|
233
|
+
<div className="container quickaccess" onKeyDown={this.handleKeyDown}>
|
|
234
|
+
<Header logoutSuccessCallback={this.logoutSuccessCallback}/>
|
|
235
|
+
{!isReady &&
|
|
236
|
+
<div className="processing-wrapper">
|
|
237
|
+
<p className="processing-text">Connecting your account</p>
|
|
238
|
+
</div>
|
|
239
|
+
}
|
|
240
|
+
{isReady &&
|
|
241
|
+
<React.Fragment>
|
|
242
|
+
<ManageQuickAccessMode/>
|
|
243
|
+
{this.state.passphraseRequired &&
|
|
244
|
+
<PassphraseDialog requestId={this.state.passphraseRequestId} onComplete={this.handlePassphraseDialogCompleted}/>
|
|
197
245
|
}
|
|
198
|
-
{
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
<Route path={SEARCH_VISIBLE_ROUTES} render={() => (
|
|
205
|
-
<Search ref={el => this.searchRef = el}/>
|
|
206
|
-
)}/>
|
|
207
|
-
<AnimatedSwitch location={props.location}>
|
|
246
|
+
<div className={`${this.state.passphraseRequired ? "visually-hidden" : ""}`}>
|
|
247
|
+
<Route path={SEARCH_VISIBLE_ROUTES} render={() => (
|
|
248
|
+
<Search ref={el => this.searchRef = el}/>
|
|
249
|
+
)}/>
|
|
250
|
+
<PrepareResourceContextProvider>
|
|
251
|
+
<AnimatedSwitch>
|
|
208
252
|
<Route path="/data/quickaccess/login" render={() => (
|
|
209
253
|
<LoginPage loginSuccessCallback={this.loginSuccessCallback} canRememberMe={this.canRememberMe}/>
|
|
210
254
|
)}/>
|
|
@@ -217,15 +261,18 @@ class ExtQuickAccess extends React.Component {
|
|
|
217
261
|
<PrivateRoute exact path="/data/quickaccess/resources/recently-modified" component={FilterResourcesByRecentlyModifiedPage}/>
|
|
218
262
|
<PrivateRoute exact path="/data/quickaccess/resources/shared-with-me" component={FilterResourcesBySharedWithMePage}/>
|
|
219
263
|
<PrivateRoute path="/data/quickaccess/resources/create" component={ResourceCreatePage}/>
|
|
264
|
+
<PrivateRoute exact path="/data/quickaccess/resources/autosave" component={SaveResource}/>
|
|
220
265
|
<PrivateRoute path="/data/quickaccess/resources/view/:id" component={ResourceViewPage}/>
|
|
221
266
|
<PrivateRoute exact path="/data/quickaccess/more-filters" component={MoreFiltersPage}/>
|
|
267
|
+
<PrivateRoute exact path="/data/quickaccess/setup-extension-in-progress" component={SetupExtensionInProgress}/>
|
|
268
|
+
<PrivateRoute path="/data/quickaccess/resources/generate-password" component={GeneratePasswordPage}/>
|
|
222
269
|
<PrivateRoute exact path="/data/quickaccess.html" component={HomePage}/>
|
|
223
270
|
</AnimatedSwitch>
|
|
224
|
-
</
|
|
225
|
-
</
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
271
|
+
</PrepareResourceContextProvider>
|
|
272
|
+
</div>
|
|
273
|
+
</React.Fragment>
|
|
274
|
+
}
|
|
275
|
+
</div>
|
|
229
276
|
</Router>
|
|
230
277
|
</TranslationProvider>
|
|
231
278
|
</AppContext.Provider>
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import {
|
|
2
|
+
import {Switch, withRouter} from "react-router-dom";
|
|
3
3
|
import { CSSTransition, TransitionGroup } from "react-transition-group";
|
|
4
|
+
import PropTypes from "prop-types";
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
class AnimatedSwitch extends React.Component {
|
|
6
7
|
constructor(props) {
|
|
7
8
|
super(props);
|
|
8
9
|
this._previousLocationPathname = "";
|
|
@@ -12,6 +13,7 @@ export default class AnimatedSwitch extends React.Component {
|
|
|
12
13
|
getTransition(currentLocationPath, _previousLocationPathname) {
|
|
13
14
|
let transition = null;
|
|
14
15
|
|
|
16
|
+
// Resource view transition
|
|
15
17
|
if (currentLocationPath.indexOf("/data/quickaccess/resources/view") != -1 && this._previousLocationPathname === "/data/quickaccess.html") {
|
|
16
18
|
transition = "slideLeft";
|
|
17
19
|
}
|
|
@@ -20,12 +22,18 @@ export default class AnimatedSwitch extends React.Component {
|
|
|
20
22
|
}
|
|
21
23
|
|
|
22
24
|
// Resource create transition
|
|
25
|
+
else if (currentLocationPath === "/data/quickaccess/resources/create" && this._previousLocationPathname === "/data/quickaccess/resources/generate-password") {
|
|
26
|
+
transition = "slideRight";
|
|
27
|
+
}
|
|
23
28
|
else if (currentLocationPath == "/data/quickaccess/resources/create") {
|
|
24
29
|
transition = "slideLeft";
|
|
25
30
|
}
|
|
26
31
|
else if (currentLocationPath.indexOf("/data/quickaccess/resources/view") != -1 && this._previousLocationPathname == "/data/quickaccess/resources/create") {
|
|
27
32
|
transition = "slideLeft";
|
|
28
33
|
}
|
|
34
|
+
else if (currentLocationPath === "/data/quickaccess/resources/generate-password" && this._previousLocationPathname === "/data/quickaccess/resources/create") {
|
|
35
|
+
transition = "slideLeft";
|
|
36
|
+
}
|
|
29
37
|
// Whatever current location is, if the previous location was the resource create page then slide right
|
|
30
38
|
else if (this._previousLocationPathname === "/data/quickaccess/resources/create") {
|
|
31
39
|
transition = "slideRight";
|
|
@@ -157,7 +165,7 @@ export default class AnimatedSwitch extends React.Component {
|
|
|
157
165
|
// The page has changed but not transition has been defined for it.
|
|
158
166
|
// Use the default noTransition transition
|
|
159
167
|
if (currentLocationPath !== this._previousLocationPathname) {
|
|
160
|
-
transition = "
|
|
168
|
+
transition = "slideNoTransition";
|
|
161
169
|
} else {
|
|
162
170
|
// The transition is recalculated because of a status change.
|
|
163
171
|
// Return the previous transition. The transition won't be played twice, and it will allow to complete it properly.
|
|
@@ -174,8 +182,7 @@ export default class AnimatedSwitch extends React.Component {
|
|
|
174
182
|
const currentLocationPathname = this.props.location.pathname;
|
|
175
183
|
const transition = this.getTransition(currentLocationPathname, this._previousLocationPathname);
|
|
176
184
|
// If no transition, the previous component should be hidden immediately.
|
|
177
|
-
const transitionTimeout = transition !== "
|
|
178
|
-
console.debug(`AnimatedSwitch render from ${this._previousLocationPathname} to ${currentLocationPathname} with transition ${transition}`);
|
|
185
|
+
const transitionTimeout = transition !== "slideNoTransition" ? 210 : 0;
|
|
179
186
|
this._previousLocationPathname = currentLocationPathname;
|
|
180
187
|
|
|
181
188
|
return (
|
|
@@ -187,3 +194,13 @@ export default class AnimatedSwitch extends React.Component {
|
|
|
187
194
|
);
|
|
188
195
|
}
|
|
189
196
|
}
|
|
197
|
+
|
|
198
|
+
AnimatedSwitch.propTypes = {
|
|
199
|
+
// Match, location and history props are injected by the withRouter decoration call.
|
|
200
|
+
match: PropTypes.object,
|
|
201
|
+
location: PropTypes.object,
|
|
202
|
+
history: PropTypes.object,
|
|
203
|
+
t: PropTypes.func, // The translation function
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
export default withRouter(AnimatedSwitch);
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passbolt ~ Open source password manager for teams
|
|
3
|
+
* Copyright (c) 2020 Passbolt SA (https://www.passbolt.com)
|
|
4
|
+
*
|
|
5
|
+
* Licensed under GNU Affero General Public License version 3 of the or any later version.
|
|
6
|
+
* For full copyright and license information, please see the LICENSE.txt
|
|
7
|
+
* Redistributions of files must retain the above copyright notice.
|
|
8
|
+
*
|
|
9
|
+
* @copyright Copyright (c) 2020 Passbolt SA (https://www.passbolt.com)
|
|
10
|
+
* @license https://opensource.org/licenses/AGPL-3.0 AGPL License
|
|
11
|
+
* @link https://www.passbolt.com Passbolt(tm)
|
|
12
|
+
* @since 3.3.0
|
|
13
|
+
*/
|
|
14
|
+
import React from "react";
|
|
15
|
+
import PropTypes from "prop-types";
|
|
16
|
+
import {Trans, withTranslation} from "react-i18next";
|
|
17
|
+
import {withRouter} from "react-router-dom";
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The component display that setup extension is in progress
|
|
21
|
+
*/
|
|
22
|
+
class SetupExtensionInProgress extends React.Component {
|
|
23
|
+
render() {
|
|
24
|
+
return (
|
|
25
|
+
<div className="setup-extension">
|
|
26
|
+
<span className="icon fa">
|
|
27
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path d="M512.1 191l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0L552 6.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zm-10.5-58.8c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.7-82.4 14.3-52.8 52.8zM386.3 286.1l33.7 16.8c10.1 5.8 14.5 18.1 10.5 29.1-8.9 24.2-26.4 46.4-42.6 65.8-7.4 8.9-20.2 11.1-30.3 5.3l-29.1-16.8c-16 13.7-34.6 24.6-54.9 31.7v33.6c0 11.6-8.3 21.6-19.7 23.6-24.6 4.2-50.4 4.4-75.9 0-11.5-2-20-11.9-20-23.6V418c-20.3-7.2-38.9-18-54.9-31.7L74 403c-10 5.8-22.9 3.6-30.3-5.3-16.2-19.4-33.3-41.6-42.2-65.7-4-10.9.4-23.2 10.5-29.1l33.3-16.8c-3.9-20.9-3.9-42.4 0-63.4L12 205.8c-10.1-5.8-14.6-18.1-10.5-29 8.9-24.2 26-46.4 42.2-65.8 7.4-8.9 20.2-11.1 30.3-5.3l29.1 16.8c16-13.7 34.6-24.6 54.9-31.7V57.1c0-11.5 8.2-21.5 19.6-23.5 24.6-4.2 50.5-4.4 76-.1 11.5 2 20 11.9 20 23.6v33.6c20.3 7.2 38.9 18 54.9 31.7l29.1-16.8c10-5.8 22.9-3.6 30.3 5.3 16.2 19.4 33.2 41.6 42.1 65.8 4 10.9.1 23.2-10 29.1l-33.7 16.8c3.9 21 3.9 42.5 0 63.5zm-117.6 21.1c59.2-77-28.7-164.9-105.7-105.7-59.2 77 28.7 164.9 105.7 105.7zm243.4 182.7l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0l8.2-14.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zM501.6 431c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.6-82.4 14.3-52.8 52.8z" /></svg>
|
|
28
|
+
</span>
|
|
29
|
+
<h3><Trans>The extension is not configured yet</Trans></h3>
|
|
30
|
+
<p><Trans>First complete the configuration steps described in the current tab.</Trans></p>
|
|
31
|
+
</div>
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
SetupExtensionInProgress.propTypes = {
|
|
37
|
+
history: PropTypes.object,
|
|
38
|
+
t: PropTypes.func, // The translation function
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export default withRouter(withTranslation('common')(SetupExtensionInProgress));
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import {MemoryRouter, Route} from "react-router-dom";
|
|
3
|
+
import SetupExtensionInProgress from "./SetupExtensionInProgress";
|
|
4
|
+
import Header from "../../Header/Header";
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Passbolt/QuickAccess/SetupExtensionInProgress',
|
|
8
|
+
component: SetupExtensionInProgress
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const Template = () =>
|
|
12
|
+
<MemoryRouter initialEntries={['/']}>
|
|
13
|
+
<Route component={routerProps => <div className="container quickaccess"><Header/><SetupExtensionInProgress {...routerProps}/></div>}/>
|
|
14
|
+
</MemoryRouter>;
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
export const Initial = Template.bind({});
|
|
18
|
+
Initial.args = {
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
Initial.parameters = {
|
|
22
|
+
css: "api_main"
|
|
23
|
+
};
|
|
@@ -189,11 +189,15 @@ class FilterResourcesByFavoritePage extends React.Component {
|
|
|
189
189
|
}
|
|
190
190
|
{(browsedResources.length > 0) &&
|
|
191
191
|
browsedResources.map(resource =>
|
|
192
|
-
<li className="resource-entry" key={resource.id}>
|
|
192
|
+
<li className="browse-resource-entry" key={resource.id}>
|
|
193
193
|
<a href="#" onClick={ev => this.handleSelectResourceClick(ev, resource.id)}>
|
|
194
|
-
<
|
|
195
|
-
|
|
196
|
-
|
|
194
|
+
<div className="inline-resource-entry">
|
|
195
|
+
<div className='inline-resource-name'>
|
|
196
|
+
<span className="title">{resource.name}</span>
|
|
197
|
+
<span className="username"> {resource.username ? `(${resource.username})` : ""}</span>
|
|
198
|
+
</div>
|
|
199
|
+
<span className="url">{resource.uri}</span>
|
|
200
|
+
</div>
|
|
197
201
|
</a>
|
|
198
202
|
</li>
|
|
199
203
|
)}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {MemoryRouter, Route} from "react-router-dom";
|
|
3
|
-
import "../../../css/themes/default/ext_quickaccess.css";
|
|
4
3
|
import PropTypes from "prop-types";
|
|
5
4
|
import FilterResourcesByFavoritePage from "./FilterResourcesByFavoritePage";
|
|
6
5
|
import AppContext from "../../contexts/AppContext";
|
|
@@ -15,7 +14,7 @@ export default {
|
|
|
15
14
|
const Template = ({context, ...args}) =>
|
|
16
15
|
<AppContext.Provider value={context}>
|
|
17
16
|
<MemoryRouter initialEntries={['/']}>
|
|
18
|
-
<Route component={routerProps => <div className="container
|
|
17
|
+
<Route component={routerProps => <div className="container quickaccess"><FilterResourcesByFavoritePage {...args} {...routerProps}/></div>}/>
|
|
19
18
|
</MemoryRouter>
|
|
20
19
|
</AppContext.Provider>;
|
|
21
20
|
|
|
@@ -23,12 +22,15 @@ Template.propTypes = {
|
|
|
23
22
|
context: PropTypes.object,
|
|
24
23
|
};
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
const parameters = {
|
|
26
|
+
css: "ext_quickaccess"
|
|
27
|
+
};
|
|
27
28
|
|
|
28
29
|
export const InitialLoad = Template.bind({});
|
|
29
30
|
InitialLoad.args = {
|
|
30
31
|
context: defaultAppContext()
|
|
31
32
|
};
|
|
33
|
+
InitialLoad.parameters = parameters;
|
|
32
34
|
|
|
33
35
|
const contextNoResource = {
|
|
34
36
|
port: {
|
|
@@ -39,6 +41,7 @@ export const NoFavoriteResource = Template.bind({});
|
|
|
39
41
|
NoFavoriteResource.args = {
|
|
40
42
|
context: defaultAppContext(contextNoResource)
|
|
41
43
|
};
|
|
44
|
+
NoFavoriteResource.parameters = parameters;
|
|
42
45
|
|
|
43
46
|
const contextWithResources = {
|
|
44
47
|
port: {
|
|
@@ -49,7 +52,4 @@ export const FavoriteResources = Template.bind({});
|
|
|
49
52
|
FavoriteResources.args = {
|
|
50
53
|
context: defaultAppContext(contextWithResources)
|
|
51
54
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
FavoriteResources.parameters = parameters;
|
package/src/react-quickaccess/components/FilterResourcesByGroupPage/FilterResourcesByGroupPage.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import PropTypes from "prop-types";
|
|
2
2
|
import React from "react";
|
|
3
|
-
import {withRouter} from "react-router";
|
|
3
|
+
import {withRouter} from "react-router-dom";
|
|
4
4
|
import {Link} from "react-router-dom";
|
|
5
5
|
import {withAppContext} from "../../contexts/AppContext";
|
|
6
6
|
import SimpleBar from "../SimpleBar/SimpleBar";
|
|
@@ -310,11 +310,15 @@ class FilterResourcesByGroupPage extends React.Component {
|
|
|
310
310
|
}
|
|
311
311
|
{(browsedResources.length > 0) &&
|
|
312
312
|
browsedResources.map(resource =>
|
|
313
|
-
<li className="resource-entry" key={resource.id}>
|
|
313
|
+
<li className="browse-resource-entry" key={resource.id}>
|
|
314
314
|
<a href="#" onClick={ev => this.handleSelectResourceClick(ev, resource.id)}>
|
|
315
|
-
<
|
|
316
|
-
|
|
317
|
-
|
|
315
|
+
<div className="inline-resource-entry">
|
|
316
|
+
<div className='inline-resource-name'>
|
|
317
|
+
<span className="title">{resource.name}</span>
|
|
318
|
+
<span className="username"> {resource.username ? `(${resource.username})` : ""}</span>
|
|
319
|
+
</div>
|
|
320
|
+
<span className="url">{resource.uri}</span>
|
|
321
|
+
</div>
|
|
318
322
|
</a>
|
|
319
323
|
</li>
|
|
320
324
|
)}
|
|
@@ -343,4 +347,4 @@ FilterResourcesByGroupPage.propTypes = {
|
|
|
343
347
|
t: PropTypes.func, // The translation function
|
|
344
348
|
};
|
|
345
349
|
|
|
346
|
-
export default withAppContext(withTranslation('common')(
|
|
350
|
+
export default withAppContext(withRouter(withTranslation('common')(FilterResourcesByGroupPage)));
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {MemoryRouter, Route} from "react-router-dom";
|
|
3
|
-
import "../../../css/themes/default/ext_quickaccess.css";
|
|
4
3
|
import PropTypes from "prop-types";
|
|
5
4
|
import FilterResourcesByGroupPage from "./FilterResourcesByGroupPage";
|
|
6
5
|
import AppContext from "../../contexts/AppContext";
|
|
@@ -14,8 +13,8 @@ export default {
|
|
|
14
13
|
const Template = ({context, initialEntries, ...args}) =>
|
|
15
14
|
<AppContext.Provider value={context}>
|
|
16
15
|
<MemoryRouter initialEntries={initialEntries}>
|
|
17
|
-
<Route exact path="/" component={routerProps => <div className="container
|
|
18
|
-
<Route path="/:id" component={routerProps => <div className="container
|
|
16
|
+
<Route exact path="/" component={routerProps => <div className="container quickaccess"><FilterResourcesByGroupPage {...args} {...routerProps}/></div>}/>
|
|
17
|
+
<Route path="/:id" component={routerProps => <div className="container quickaccess"><FilterResourcesByGroupPage {...args} {...routerProps}/></div>}/>
|
|
19
18
|
</MemoryRouter>
|
|
20
19
|
</AppContext.Provider>;
|
|
21
20
|
|
|
@@ -24,13 +23,16 @@ Template.propTypes = {
|
|
|
24
23
|
initialEntries: PropTypes.array
|
|
25
24
|
};
|
|
26
25
|
|
|
27
|
-
|
|
26
|
+
const parameters = {
|
|
27
|
+
css: "ext_quickaccess"
|
|
28
|
+
};
|
|
28
29
|
|
|
29
30
|
export const InitialLoad = Template.bind({});
|
|
30
31
|
InitialLoad.args = {
|
|
31
32
|
context: defaultAppContext(),
|
|
32
33
|
initialEntries: ['/']
|
|
33
34
|
};
|
|
35
|
+
InitialLoad.parameters = parameters;
|
|
34
36
|
|
|
35
37
|
const contextNoGroup = {
|
|
36
38
|
port: {
|
|
@@ -42,6 +44,7 @@ NoGroups.args = {
|
|
|
42
44
|
context: defaultAppContext(contextNoGroup),
|
|
43
45
|
initialEntries: ['/']
|
|
44
46
|
};
|
|
47
|
+
NoGroups.parameters = parameters;
|
|
45
48
|
|
|
46
49
|
const contextGroupsAndResources = {
|
|
47
50
|
port: {
|
|
@@ -52,4 +55,5 @@ export const GroupsResourcesMatched = Template.bind({});
|
|
|
52
55
|
GroupsResourcesMatched.args = {
|
|
53
56
|
context: defaultAppContext(contextGroupsAndResources),
|
|
54
57
|
initialEntries: ['/']
|
|
55
|
-
};
|
|
58
|
+
};
|
|
59
|
+
GroupsResourcesMatched.parameters = parameters;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import PropTypes from "prop-types";
|
|
2
2
|
import React from "react";
|
|
3
|
-
import {withRouter} from "react-router";
|
|
4
|
-
import {Link} from "react-router-dom";
|
|
3
|
+
import {Link, withRouter} from "react-router-dom";
|
|
5
4
|
import {withAppContext} from "../../contexts/AppContext";
|
|
6
5
|
import SimpleBar from "../SimpleBar/SimpleBar";
|
|
7
6
|
import {Trans, withTranslation} from "react-i18next";
|
|
@@ -189,11 +188,15 @@ class FilterResourcesByItemsIOwnPage extends React.Component {
|
|
|
189
188
|
}
|
|
190
189
|
{(browsedResources.length > 0) &&
|
|
191
190
|
browsedResources.map(resource =>
|
|
192
|
-
<li className="resource-entry" key={resource.id}>
|
|
191
|
+
<li className="browse-resource-entry" key={resource.id}>
|
|
193
192
|
<a href="#" onClick={ev => this.handleSelectResourceClick(ev, resource.id)}>
|
|
194
|
-
<
|
|
195
|
-
|
|
196
|
-
|
|
193
|
+
<div className="inline-resource-entry">
|
|
194
|
+
<div className='inline-resource-name'>
|
|
195
|
+
<span className="title">{resource.name}</span>
|
|
196
|
+
<span className="username"> {resource.username ? `(${resource.username})` : ""}</span>
|
|
197
|
+
</div>
|
|
198
|
+
<span className="url">{resource.uri}</span>
|
|
199
|
+
</div>
|
|
197
200
|
</a>
|
|
198
201
|
</li>
|
|
199
202
|
)}
|
|
@@ -220,4 +223,4 @@ FilterResourcesByItemsIOwnPage.propTypes = {
|
|
|
220
223
|
t: PropTypes.func, // The translation function
|
|
221
224
|
};
|
|
222
225
|
|
|
223
|
-
export default withAppContext(withTranslation('common')(
|
|
226
|
+
export default withAppContext(withRouter(withTranslation('common')(FilterResourcesByItemsIOwnPage)));
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import {MemoryRouter, Route} from "react-router-dom";
|
|
3
|
-
import "../../../css/themes/default/ext_quickaccess.css";
|
|
4
3
|
import PropTypes from "prop-types";
|
|
5
4
|
import FilterResourcesByItemsIOwnPage from "./FilterResourcesByItemsIOwnPage";
|
|
6
5
|
import AppContext from "../../contexts/AppContext";
|
|
@@ -15,7 +14,7 @@ export default {
|
|
|
15
14
|
const Template = ({context, ...args}) =>
|
|
16
15
|
<AppContext.Provider value={context}>
|
|
17
16
|
<MemoryRouter initialEntries={['/']}>
|
|
18
|
-
<Route component={routerProps => <div className="container
|
|
17
|
+
<Route component={routerProps => <div className="container quickaccess"><FilterResourcesByItemsIOwnPage {...args} {...routerProps}/></div>}/>
|
|
19
18
|
</MemoryRouter>
|
|
20
19
|
</AppContext.Provider>;
|
|
21
20
|
|
|
@@ -23,12 +22,15 @@ Template.propTypes = {
|
|
|
23
22
|
context: PropTypes.object,
|
|
24
23
|
};
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
const parameters = {
|
|
26
|
+
css: "ext_quickaccess"
|
|
27
|
+
};
|
|
27
28
|
|
|
28
29
|
export const InitialLoad = Template.bind({});
|
|
29
30
|
InitialLoad.args = {
|
|
30
31
|
context: defaultAppContext()
|
|
31
32
|
};
|
|
33
|
+
InitialLoad.parameters = parameters;
|
|
32
34
|
|
|
33
35
|
const contextNoItem = {
|
|
34
36
|
port: {
|
|
@@ -39,6 +41,7 @@ export const NoItemsIOwnResource = Template.bind({});
|
|
|
39
41
|
NoItemsIOwnResource.args = {
|
|
40
42
|
context: defaultAppContext(contextNoItem)
|
|
41
43
|
};
|
|
44
|
+
NoItemsIOwnResource.parameters = parameters;
|
|
42
45
|
|
|
43
46
|
const contextResources = {
|
|
44
47
|
port: {
|
|
@@ -49,7 +52,4 @@ export const ItemsIOwnResources = Template.bind({});
|
|
|
49
52
|
ItemsIOwnResources.args = {
|
|
50
53
|
context: defaultAppContext(contextResources)
|
|
51
54
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
ItemsIOwnResources.parameters = parameters;
|