UNPKG

passbolt-styleguide

Version:

Passbolt styleguide contains common styling assets used by the different sites, plugin, etc.

395 lines (368 loc) 16.5 kB
/** * Passbolt ~ Open source password manager for teams * Copyright (c) Passbolt SA (https://www.passbolt.com) * * Licensed under GNU Affero General Public License version 3 of the or any later version. * For full copyright and license information, please see the LICENSE.txt * Redistributions of files must retain the above copyright notice. * * @copyright Copyright (c) Passbolt SA (https://www.passbolt.com) * @license https://opensource.org/licenses/AGPL-3.0 AGPL License * @link https://www.passbolt.com Passbolt(tm) * @since 5.0.0 */ import React from "react"; import { MemoryRouter, Route } from "react-router-dom"; import AdministrationWorkspace from "./AdministrationWorkspace"; import ExtAppContextProvider from "../../contexts/ExtAppContext"; import RbacContextProvider from "../../../shared/context/Rbac/RbacContext"; import WorkflowContextProvider from "../../contexts/WorkflowContext"; import DialogContextProvider from "../../contexts/DialogContext"; import ContextualMenuContextProvider from "../../contexts/ContextualMenuContext"; import ManageDialogs from "../Common/Dialog/ManageDialogs/ManageDialogs"; import ManageWorkflows from "../Common/Workflow/ManageWorkflows/ManageWorkflows"; import AdminAccountRecoveryContextProvider from "../../contexts/AdminAccountRecoveryContext"; import AdminSubscriptionContextProvider from "../../contexts/Administration/AdministrationSubscription/AdministrationSubscription"; import AdminSsoContextProvider from "../../contexts/AdminSsoContext"; import AdminPasswordPoliciesContextProvider from "../../contexts/Administration/AdministrationPasswordPoliciesContext/AdministrationPasswordPoliciesContext"; import AdministrationUserPassphrasePoliciesContextProvider from "../../contexts/Administration/AdministrationUserPassphrasePoliciesContext/AdministrationUserPassphrasePoliciesContext"; import AdministrationPasswordExpiryContextProvider from "../../contexts/Administration/AdministrationPaswordExpiryContext/AdministrationPaswordExpiryContext"; import AdministrationWorkspaceContextProvider, { AdministrationWorkspaceMenuTypes, } from "../../contexts/AdministrationWorkspaceContext"; import MfaContextProvider from "../../contexts/MFAContext"; import PasswordPoliciesContext from "../../../shared/context/PasswordPoliciesContext/PasswordPoliciesContext"; import AccountRecoveryUserContextProvider from "../../contexts/AccountRecoveryUserContext"; import LoadingContextProvider from "../../contexts/LoadingContext"; import DisplayActionFeedbacks from "../Common/ActionFeedback/DisplayActionFeedbacks"; import ProgressContextProvider from "../../contexts/ProgressContext"; import AnnouncementContextProvider from "../../contexts/AnnouncementContext"; import ActionFeedbackContextProvider from "../../contexts/ActionFeedbackContext"; import TranslationProvider from "../Common/Internationalisation/TranslationProvider"; import ExtAppAccountRecoveryUserService from "../../../shared/services/api/accountRecovery/ExtAppAccountRecoveryUserService"; import mockStorage from "../../../../test/mocks/mockStorage"; import mockPort from "../../../../test/mocks/mockPort"; import { siteSettingsCe } from "../../test/fixture/Settings/siteSettings"; import { defaultAdministrationWorkspaceContext } from "../../contexts/AdministrationWorkspaceContext.test.data"; import AdministrationEncryptedMetadataGettingStartedContextProvider from "../../contexts/Administration/AdministrationEncryptedMetadataGettingStartedContext/AdministrationEncryptedMetadataGettingStartedContext"; import { ResizableSidebarContextProvider } from "../../contexts/ResizeSidebar/ResizeSidebarContext"; const fakeAdminGettingStartedService = { findGettingStartedSettings: () => ({ enabled: false }), }; /** * AdministrationWorkspace stories */ export default { title: "Workspaces/Administration", component: AdministrationWorkspace, decorators: [ (Story, { args }) => ( <MemoryRouter initialEntries={[args.routerInitialEntry]}> <TranslationProvider loadingPath="/webAccessibleResources/locales/{{lng}}/{{ns}}.json"> <ExtAppContextProvider storage={args.storage} port={args.port}> <RbacContextProvider> <AccountRecoveryUserContextProvider accountRecoveryUserService={new ExtAppAccountRecoveryUserService(args.port)} > <PasswordPoliciesContext> <MfaContextProvider> <WorkflowContextProvider> <ActionFeedbackContextProvider> <DialogContextProvider> <AnnouncementContextProvider> <ContextualMenuContextProvider> <LoadingContextProvider> <ProgressContextProvider> <ResizableSidebarContextProvider> {/* Action Feedback Management */} <DisplayActionFeedbacks /> <Route path={[ "/app/administration", "/app/administration/account-recovery", "/app/administration/email-notification", "/app/administration/mfa", "/app/administration/password-expiry", "/app/administration/password-policies", "/app/administration/smtp-settings", "/app/administration/sso", "/app/administration/subscription", "/app/administration/user-passphrase-policies", "/app/administration/content-types/metadata", "/app/administration/account-recovery-teasing", "/app/administration/password-policies-teasing", "/app/administration/sso-teasing", "/app/administration/user-passphrase-policies-teasing", "/app/administration/subscription-teasing", "/app/administration/mfa-policy-teasing", ]} > <AdministrationWorkspaceContextProvider value={args.administrationWorkspaceContext} > <AdminAccountRecoveryContextProvider> <AdminSubscriptionContextProvider> <AdminSsoContextProvider> <AdminPasswordPoliciesContextProvider> <AdministrationUserPassphrasePoliciesContextProvider> <AdministrationPasswordExpiryContextProvider> <AdministrationEncryptedMetadataGettingStartedContextProvider service={fakeAdminGettingStartedService} > <ManageDialogs /> <ManageWorkflows /> <div style={{ margin: "-1rem" }}> <Story {...args} /> </div> </AdministrationEncryptedMetadataGettingStartedContextProvider> </AdministrationPasswordExpiryContextProvider> </AdministrationUserPassphrasePoliciesContextProvider> </AdminPasswordPoliciesContextProvider> </AdminSsoContextProvider> </AdminSubscriptionContextProvider> </AdminAccountRecoveryContextProvider> </AdministrationWorkspaceContextProvider> </Route> </ResizableSidebarContextProvider> </ProgressContextProvider> </LoadingContextProvider> </ContextualMenuContextProvider> </AnnouncementContextProvider> </DialogContextProvider> </ActionFeedbackContextProvider> </WorkflowContextProvider> </MfaContextProvider> </PasswordPoliciesContext> </AccountRecoveryUserContextProvider> </RbacContextProvider> </ExtAppContextProvider> </TranslationProvider> </MemoryRouter> ), ], }; const storage = mockStorage(); const port = mockPort(storage); export const proVersion = { args: { port: port, storage: storage, routerInitialEntry: "/app/administration", }, }; const ceStorage = mockStorage(); const cePort = mockPort(ceStorage); cePort.addRequestListener("passbolt.organization-settings.get", () => siteSettingsCe); export const ceVersion = { args: { port: cePort, storage: ceStorage, routerInitialEntry: "/app/administration", }, }; export const SubscriptionPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.SUBSCRIPTION, }), routerInitialEntry: "/app/administration/subscription", }, }; export const SubscriptionPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.SUBSCRIPTION, }), routerInitialEntry: "/app/administration/subscription-teasing", }, }; export const UsersDirectoryTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.USER_DIRECTORY, }), routerInitialEntry: "/app/administration/users-directory-teasing", }, }; export const PasswordExpiryPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.PASSWORD_EXPIRY, }), routerInitialEntry: "/app/administration/password-expiry", }, }; export const MfaPolicyPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.MFA_POLICY, }), routerInitialEntry: "/app/administration/mfa-policy", }, parameters: { css: "api_main", }, }; export const MfaPolicyPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.MFA_POLICY, }), routerInitialEntry: "/app/administration/mfa-policy-teasing", }, parameters: { css: "api_main", }, }; export const PasswordPoliciesPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.PASSWORD_POLICIES, }), routerInitialEntry: "/app/administration/password-policies", }, }; export const PasswordPoliciesPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.PASSWORD_POLICIES, }), routerInitialEntry: "/app/administration/password-policies-teasing", }, }; export const SingleSignOnPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.SSO, }), routerInitialEntry: "/app/administration/sso", }, }; export const SingleSignOnPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.SSO, }), routerInitialEntry: "/app/administration/sso-teasing", }, }; export const AccountRecoveryPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.ACCOUNT_RECOVERY, }), routerInitialEntry: "/app/administration/account-recovery", }, }; export const AccountRecoveryPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.ACCOUNT_RECOVERY, }), routerInitialEntry: "/app/administration/account-recovery-teasing", }, }; export const UserPassphrasePoliciesPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.USER_PASSPHRASE_POLICIES, }), routerInitialEntry: "/app/administration/user-passphrase-policies", }, }; export const UserPassphrasePoliciesPageTeasing = { args: { port: cePort, storage: ceStorage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.USER_PASSPHRASE_POLICIES, }), routerInitialEntry: "/app/administration/user-passphrase-policies-teasing", }, }; export const ContentTypesEncryptedMetadataPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.CONTENT_TYPES_ENCRYPTED_METADATA, }), routerInitialEntry: "/app/administration/content-types/metadata", }, }; export const ContentTypesMetadataKeyPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.CONTENT_TYPES_METADATA_KEY, }), routerInitialEntry: "/app/administration/content-types/metadata-key", }, }; export const MigrateMetadataPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.MIGRATE_METADATA, }), routerInitialEntry: "/app/administration/migrate-metadata", }, }; export const SecretHistoryPage = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.SECRET_HISTORY, }), routerInitialEntry: "/app/administration/secret-history", }, }; export const error403 = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.HTTP_403_ACCESS_DENIED, }), routerInitialEntry: "/app/administration", }, }; export const error404 = { args: { port: port, storage: storage, administrationWorkspaceContext: defaultAdministrationWorkspaceContext({ selectedAdministration: AdministrationWorkspaceMenuTypes.HTTP_404_NOT_FOUND, }), routerInitialEntry: "/app/administration", }, };