Skip to content

Commit

Permalink
[1284] Remove tab when Form representation contains only one page
Browse files Browse the repository at this point in the history
Bug: #1284
Signed-off-by: Axel RICHARD <axel.richard@obeo.fr>
  • Loading branch information
AxelRICHARD committed Jun 23, 2022
1 parent fa2c584 commit 50d9146
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 9 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.adoc
Expand Up @@ -26,6 +26,7 @@
=== Improvements

- https://github.com/eclipse-sirius/sirius-components/issues/1242[#1242] [view] Provide icons for View DSL Widgets and FormDescription
- https://github.com/eclipse-sirius/sirius-components/issues/1284[#1284] [form] Remove tab when Form representation contains only one page

=== New features

Expand Down
38 changes: 29 additions & 9 deletions frontend/src/form/FormWebSocketContainer.tsx
Expand Up @@ -35,6 +35,7 @@ import {
SwitchFormEvent,
} from 'form/FormWebSocketContainerMachine';
import gql from 'graphql-tag';
import { Page } from 'properties/Page';
import { Properties } from 'properties/Properties';
import React, { useEffect } from 'react';
import { RepresentationComponentProps } from 'workbench/Workbench.types';
Expand All @@ -60,6 +61,10 @@ const formEventSubscription = gql`
`;

const useFormWebSocketContainerStyles = makeStyles((theme) => ({
page: {
paddingLeft: theme.spacing(1),
paddingRight: theme.spacing(1),
},
complete: {
display: 'flex',
alignItems: 'center',
Expand Down Expand Up @@ -130,15 +135,30 @@ export const FormWebSocketContainer = ({

let content = null;
if (formWebSocketContainer === 'ready') {
content = (
<Properties
editingContextId={editingContextId}
form={form}
widgetSubscriptions={widgetSubscriptions}
setSelection={setSelection}
readOnly={readOnly}
/>
);
if (form.pages.length > 1) {
content = (
<Properties
editingContextId={editingContextId}
form={form}
widgetSubscriptions={widgetSubscriptions}
setSelection={setSelection}
readOnly={readOnly}
/>
);
} else {
content = (
<div data-testid="page" className={classes.page}>
<Page
editingContextId={editingContextId}
formId={id}
page={form.pages[0]}
widgetSubscriptions={widgetSubscriptions}
setSelection={setSelection}
readOnly={readOnly}
/>
</div>
);
}
} else if (formWebSocketContainer === 'complete') {
content = (
<div className={classes.complete}>
Expand Down

0 comments on commit 50d9146

Please sign in to comment.