From f7dcab7adbccc3784c15ac004ab72fbc7d7113cf Mon Sep 17 00:00:00 2001 From: MichalKinas <113341662+MichalKinas@users.noreply.github.com> Date: Mon, 26 Feb 2024 08:47:56 +0100 Subject: [PATCH] [ACS-6831] Property panel refactoring (#9372) * [ACS-6831] Refactor property panel feature to mitigate bugs and increase code quality * [ACS-6831] Introduce new interace for metadata panel * ACS-6831 Corrected tests * ACS-6831 Fixed unit tests * ACS-6831 Fixed unit tests * ACS-6831 Cleaning code * ACS-6831 Added tests * ACS-6831 Replaced fdescribe with describe * [ACS-6831] Use default properties enum, fix editing state * [ACS-6831] Expand correct section based on displayAspect property * [ACS-6831] Lint fix --------- Co-authored-by: Aleksander Sklorz --- ...content-metadata-custom-panel.interface.md | 5 +- .../content-metadata-panel.interface.md | 32 + .../content-metadata-header.component.ts | 7 +- .../content-metadata.component.html | 264 +++++---- .../content-metadata.component.spec.ts | 550 +++++++++--------- .../content-metadata.component.ts | 275 +++------ .../interfaces/card-view-group.interface.ts | 2 +- ...content-metadata-custom-panel.interface.ts | 6 +- .../content-metadata-panel.interface.ts | 21 + .../interfaces/content-metadata.interfaces.ts | 1 + ...property-groups-translator.service.spec.ts | 28 +- .../property-groups-translator.service.ts | 1 + 12 files changed, 588 insertions(+), 604 deletions(-) create mode 100644 docs/content-services/interfaces/content-metadata-panel.interface.md create mode 100644 lib/content-services/src/lib/content-metadata/interfaces/content-metadata-panel.interface.ts diff --git a/docs/content-services/interfaces/content-metadata-custom-panel.interface.md b/docs/content-services/interfaces/content-metadata-custom-panel.interface.md index 782b0cfdd2..2cb47fac2f 100644 --- a/docs/content-services/interfaces/content-metadata-custom-panel.interface.md +++ b/docs/content-services/interfaces/content-metadata-custom-panel.interface.md @@ -12,8 +12,7 @@ Specifies required properties for custom metadata panel to be displayed in [Cont ## Basic usage ```ts -export interface ContentMetadataCustomPanel { - panelTitle: string; +export interface ContentMetadataCustomPanel extends ContentMetadataPanel { component: string; } ``` @@ -22,10 +21,10 @@ export interface ContentMetadataCustomPanel { | Name | Type | Default value | Description | | ---- | ---- | ------------- | ----------- | -| panelTitle | `string` | | Title for the panel the will be displayed in expansion panel header. | | component | `string` | | Id of the registered [Dynamic component](../../extensions/components/dynamic.component.md) to be displayed inside expansion panel. | ## See also - [ContentMetadataCardComponent](../components/content-metadata-card.component.md) - [Dynamic Component](../../extensions/components/dynamic.component.md) +- [Content Metadata Panel intergace](./content-metadata-panel.interface.md) diff --git a/docs/content-services/interfaces/content-metadata-panel.interface.md b/docs/content-services/interfaces/content-metadata-panel.interface.md new file mode 100644 index 0000000000..3f9632283c --- /dev/null +++ b/docs/content-services/interfaces/content-metadata-panel.interface.md @@ -0,0 +1,32 @@ +--- +Title: Content Metadata Panel interface +Added: v6.7.0 +Status: Active +Last reviewed: 2024-02-22 +--- + +# [Content Metadata Panel interface](../../../lib/content-services/src/lib/content-metadata/interfaces/content-metadata-panel.interface.ts "Defined in content-metadata-panel.interface.ts") + +Specifies required properties for metadata panel to be displayed in [ContentMetadataCardComponent](../components/content-metadata-card.component.md). + +## Basic usage + +```ts +export interface ContentMetadataPanel { + panelTitle: string; + expanded?: boolean; +} +``` + +### Properties + +| Name | Type | Default value | Description | +| ---- | ---- | ------------- | ----------- | +| panelTitle | `string` | | Title for the panel the will be displayed in expansion panel header. | +| expanded | `boolean` | | Specifies if given panel is expanded. | + +## See also + +- [ContentMetadataCardComponent](../components/content-metadata-card.component.md) +- [Dynamic Component](../../extensions/components/dynamic.component.md) +- [Content Metadata Custom panel interface](./content-metadata-custom-panel.interface.md) diff --git a/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata-header.component.ts b/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata-header.component.ts index 8c857e2a11..dadc58d755 100644 --- a/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata-header.component.ts +++ b/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata-header.component.ts @@ -31,10 +31,13 @@ import { TranslateModule } from '@ngx-translate/core'; adf-content-metadata-header { display: flex; align-items: center; - flex: 1; + width: 100%; } .adf-metadata-properties-title { + display: block; + overflow: hidden; + text-overflow: ellipsis; font-weight: 700; font-size: 15px; padding-left: 12px; @@ -44,7 +47,7 @@ import { TranslateModule } from '@ngx-translate/core'; template: ` {{ expanded ? 'expand_more' : 'chevron_right' }} - + ` diff --git a/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata.component.html b/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata.component.html index 322623e271..13601ad724 100644 --- a/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata.component.html +++ b/lib/content-services/src/lib/content-metadata/components/content-metadata/content-metadata.component.html @@ -2,35 +2,43 @@ - -