UNPKG

passbolt-styleguide

Version:

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

148 lines (139 loc) 5.32 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 ResourceTypesCollection from "../../../../shared/models/entity/resourceType/resourceTypesCollection"; import MetadataTypesSettingsEntity from "../../../../shared/models/entity/metadata/metadataTypesSettingsEntity"; import { defaultResourceWorkspaceContext } from "../../../contexts/ResourceWorkspaceContext.test.data"; import { defaultAppContext } from "../../../contexts/ExtAppContext.test.data"; import { resourceTypesCollectionDto, resourceTypesV4CollectionDto, resourceTypesV5CollectionDto, } from "../../../../shared/models/entity/resourceType/resourceTypesCollection.test.data"; import { defaultMetadataTypesSettingsV4Dto, defaultMetadataTypesSettingsV50FreshDto, defaultMetadataTypesSettingsV50OngoingMigrationFromV4Dto, } from "../../../../shared/models/entity/metadata/metadataTypesSettingsEntity.test.data"; import { resourceTypePasswordAndDescriptionDto, resourceTypePasswordDescriptionTotpDto, resourceTypePasswordStringDto, resourceTypeTotpDto, resourceTypeV5DefaultDto, resourceTypeV5DefaultTotpDto, resourceTypeV5PasswordStringDto, resourceTypeV5TotpDto, } from "../../../../shared/models/entity/resourceType/resourceTypeEntity.test.data"; import MetadataKeysSettingsEntity from "../../../../shared/models/entity/metadata/metadataKeysSettingsEntity"; import { defaultMetadataKeysSettingsDto } from "../../../../shared/models/entity/metadata/metadataKeysSettingsEntity.test.data"; /** * Default props * @returns {object} */ export const defaultProps = (data = {}) => ({ resourceTypes: new ResourceTypesCollection(resourceTypesCollectionDto()), onClose: jest.fn(), ...data, context: defaultAppContext(data?.context), resourceWorkspaceContext: defaultResourceWorkspaceContext({ ...data?.resourceWorkspaceContext, }), metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV50OngoingMigrationFromV4Dto({ default_resource_types: "v5", ...data?.metadataTypeSettings, }), ), metadataKeysSettings: new MetadataKeysSettingsEntity(defaultMetadataKeysSettingsDto(data?.metadataKeysSettings)), dialogContext: { open: jest.fn(), }, }); /** * Props with only v5 content types available * @returns {object} */ export const onlyV5ContentTypesProps = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection(resourceTypesV5CollectionDto()), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV50FreshDto(data?.metadataTypeSettings), ), }); /** * Props with only v5 content types available * @returns {object} */ export const onlyV4ContentTypesProps = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection(resourceTypesV4CollectionDto()), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV4Dto(data?.metadataTypeSettings), ), }); /** * Props with full v5 content types and some v4 available * @returns {object} */ export const fullV5AndPartialV4ContentTypes = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection([ resourceTypePasswordStringDto(), resourceTypePasswordAndDescriptionDto(), resourceTypeV5DefaultDto(), resourceTypeV5PasswordStringDto(), resourceTypeV5DefaultTotpDto(), resourceTypeV5TotpDto(), ]), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV4Dto(data?.metadataTypeSettings), ), }); /** * Props with full v4 content types and some v5 available * @returns {object} */ export const fullV4AndPartialV5ContentTypes = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection([ resourceTypePasswordStringDto(), resourceTypePasswordAndDescriptionDto(), resourceTypePasswordDescriptionTotpDto(), resourceTypeTotpDto(), resourceTypeV5TotpDto(), ]), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV4Dto(data?.metadataTypeSettings), ), }); export const onlyTotpV5ContentTypes = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection([resourceTypeV5TotpDto()]), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV4Dto(data?.metadataTypeSettings), ), }); export const onlyPasswordV5ContentTypes = (data = {}) => defaultProps({ resourceTypes: new ResourceTypesCollection([resourceTypeV5DefaultDto(), resourceTypeV5PasswordStringDto()]), ...data, metadataTypeSettings: new MetadataTypesSettingsEntity( defaultMetadataTypesSettingsV4Dto(data?.metadataTypeSettings), ), });