From 3bd415071040081186870e5cd71c78bdf25b0685 Mon Sep 17 00:00:00 2001 From: Vera Clemens Date: Wed, 10 Dec 2025 15:53:28 +0100 Subject: [PATCH] feat: return theme when reading a collection --- src/collections/domain/models/Collection.ts | 12 ++++++++++++ .../repositories/transformers/CollectionPayload.ts | 12 ++++++++++++ .../transformers/collectionTransformers.ts | 5 ++++- 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/collections/domain/models/Collection.ts b/src/collections/domain/models/Collection.ts index cbcf01ca..5e49210d 100644 --- a/src/collections/domain/models/Collection.ts +++ b/src/collections/domain/models/Collection.ts @@ -16,6 +16,18 @@ export interface Collection { isMetadataBlockRoot: boolean isFacetRoot: boolean childCount: number + theme?: CollectionTheme +} + +export interface CollectionTheme { + id: number + logo: string + tagline: string + linkUrl: string + linkColor: string + textColor: string + backgroundColor: string + logoBackgroundColor?: string } export interface CollectionInputLevel { diff --git a/src/collections/infra/repositories/transformers/CollectionPayload.ts b/src/collections/infra/repositories/transformers/CollectionPayload.ts index f478ca13..cc75a1fa 100644 --- a/src/collections/infra/repositories/transformers/CollectionPayload.ts +++ b/src/collections/infra/repositories/transformers/CollectionPayload.ts @@ -14,6 +14,18 @@ export interface CollectionPayload { isMetadataBlockRoot: boolean isFacetRoot: boolean childCount: number + theme?: CollectionThemePayload +} + +export interface CollectionThemePayload { + id: number + logo: string + tagline: string + linkUrl: string + linkColor: string + textColor: string + backgroundColor: string + logoBackgroundColor?: string } export interface CollectionInputLevelPayload { diff --git a/src/collections/infra/repositories/transformers/collectionTransformers.ts b/src/collections/infra/repositories/transformers/collectionTransformers.ts index fa23b8ed..3f42f822 100644 --- a/src/collections/infra/repositories/transformers/collectionTransformers.ts +++ b/src/collections/infra/repositories/transformers/collectionTransformers.ts @@ -3,7 +3,7 @@ import { AxiosResponse } from 'axios' import { CollectionContactPayload, CollectionInputLevelPayload, - CollectionPayload + CollectionPayload, } from './CollectionPayload' import { transformPayloadToOwnerNode } from '../../../../core/infra/repositories/transformers/dvObjectOwnerNodeTransformer' import { CollectionFacet } from '../../../domain/models/CollectionFacet' @@ -74,6 +74,9 @@ const transformPayloadToCollection = (collectionPayload: CollectionPayload): Col isFacetRoot: collectionPayload.isFacetRoot, description: collectionPayload.description, childCount: collectionPayload.childCount, + ...(collectionPayload.theme && { + theme: collectionPayload.theme + }), ...(collectionPayload.isPartOf && { isPartOf: transformPayloadToOwnerNode(collectionPayload.isPartOf) }),