From 4a9fb7bd982ae16493fe6e997b542786c68356fc Mon Sep 17 00:00:00 2001 From: Axel RICHARD Date: Thu, 23 Jun 2022 11:23:01 +0200 Subject: [PATCH] [1284] Remove tab when Form representation contains only one page Bug: https://github.com/eclipse-sirius/sirius-components/issues/1284 Signed-off-by: Axel RICHARD --- CHANGELOG.adoc | 1 + .../representations/FormRepresentation.tsx | 40 ++++++++++++++----- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 9266b166d2..4237b7bfd1 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -50,6 +50,7 @@ This allows representation precondition expressions to be more precise as they k - https://github.com/eclipse-sirius/sirius-components/issues/1318[#1318] [studio] Java service classes used by studios (via `IJavaServiceProvider`) can now ask to be injected with any Spring bean available in the application context (for example `IObjectService` or other Sirius Components services they need for their implementation). - https://github.com/eclipse-sirius/sirius-components/issues/1288[#1288] [core] Improve support for precondition expression from representation description - https://github.com/eclipse-sirius/sirius-components/issues/1269[#1269] [diagram] Prevent dropping elements in a read only diagram +- https://github.com/eclipse-sirius/sirius-components/issues/1284[#1284] [form] Remove tab when Form representation contains only one page === New features diff --git a/packages/forms/frontend/sirius-components-forms/src/representations/FormRepresentation.tsx b/packages/forms/frontend/sirius-components-forms/src/representations/FormRepresentation.tsx index 9bf43385c7..c22d164538 100644 --- a/packages/forms/frontend/sirius-components-forms/src/representations/FormRepresentation.tsx +++ b/packages/forms/frontend/sirius-components-forms/src/representations/FormRepresentation.tsx @@ -26,6 +26,7 @@ import { widgetSubscriptionsUpdatedEventPayloadFragment, } from '../form/FormEventFragments'; import { GQLFormEventSubscription } from '../form/FormEventFragments.types'; +import { Page } from '../pages/Page'; import { FormRepresentationContext, FormRepresentationEvent, @@ -58,7 +59,11 @@ const formEventSubscription = gql(` ${formRefreshedEventPayloadFragment} `); -const useFormRepresentationStyles = makeStyles(() => ({ +const useFormRepresentationStyles = makeStyles((theme) => ({ + page: { + paddingLeft: theme.spacing(1), + paddingRight: theme.spacing(1), + }, complete: { display: 'flex', alignItems: 'center', @@ -129,15 +134,30 @@ export const FormRepresentation = ({ let content = null; if (formRepresentation === 'ready') { - content = ( -
- ); + if (form.pages.length > 1) { + content = ( + + ); + } else { + content = ( +
+ +
+ ); + } } else if (formRepresentation === 'complete') { content = (