diff --git a/formulus-formplayer/src/App.tsx b/formulus-formplayer/src/App.tsx index 9166b5131..80f0f6393 100644 --- a/formulus-formplayer/src/App.tsx +++ b/formulus-formplayer/src/App.tsx @@ -723,7 +723,7 @@ function App() { style={{ width: process.env.NODE_ENV === 'development' ? '60%' : '100%', overflow: 'hidden', // Prevent outer scrolling - FormLayout handles scrolling internally - padding: '12px', + padding: '4px', boxSizing: 'border-box', height: '100%', // Ensure it takes full height }} diff --git a/formulus-formplayer/src/FinalizeRenderer.tsx b/formulus-formplayer/src/FinalizeRenderer.tsx index 4b1fb6619..80c9b8f63 100644 --- a/formulus-formplayer/src/FinalizeRenderer.tsx +++ b/formulus-formplayer/src/FinalizeRenderer.tsx @@ -1,15 +1,5 @@ import React, { useMemo } from 'react'; -import { - Box, - Button, - List, - ListItem, - ListItemText, - Typography, - Paper, - Divider, - Link, -} from '@mui/material'; +import { Box, Button, List, ListItem, Typography, Paper, Divider, Link } from '@mui/material'; import { JsonFormsRendererRegistryEntry } from '@jsonforms/core'; import { withJsonFormsControlProps, useJsonForms } from '@jsonforms/react'; import { ControlProps } from '@jsonforms/core'; @@ -294,28 +284,56 @@ const FinalizeRenderer = ({ return ( - - Review and Finalize - - {hasErrors ? ( <> - + Please fix the following errors before finalizing: - - + + {errors.map((error: ErrorObject, index: number) => ( - handleErrorClick(error.instancePath)} + sx={{ + justifyContent: 'center', + textAlign: 'center', + textTransform: 'none', + py: 1.5, + px: 2, + width: '100%', + borderColor: 'error.main', + whiteSpace: 'normal', + wordBreak: 'break-word', + '&:hover': { + borderColor: 'error.dark', + backgroundColor: 'error.light', + }, + }} > - - + + {formatErrorMessage(error)} + + ))} - + ) : ( @@ -327,8 +345,8 @@ const FinalizeRenderer = ({ {/* Summary Section */} {summaryItems.length > 0 && ( - - Form Summary + + FORM SUMMARY Review all your entered data below. Click on any field to edit it. diff --git a/formulus-formplayer/src/FormLayout.tsx b/formulus-formplayer/src/FormLayout.tsx index 085bf2b9f..81dfab1f2 100644 --- a/formulus-formplayer/src/FormLayout.tsx +++ b/formulus-formplayer/src/FormLayout.tsx @@ -166,17 +166,17 @@ const FormLayout: React.FC = ({ zIndex: theme.zIndex.appBar, width: '100%', padding: { - xs: theme.spacing(1.5, 2), - sm: theme.spacing(2, 3), - md: theme.spacing(2.5, 4), + xs: theme.spacing(1, 1.5), + sm: theme.spacing(1.5, 2), + md: theme.spacing(1.5, 2.5), }, paddingBottom: { - xs: `calc(${theme.spacing(1.5)} + env(safe-area-inset-bottom, 0px))`, - sm: `calc(${theme.spacing(2)} + env(safe-area-inset-bottom, 0px))`, - md: `calc(${theme.spacing(2.5)} + env(safe-area-inset-bottom, 0px))`, + xs: `calc(${theme.spacing(1)} + env(safe-area-inset-bottom, 0px))`, + sm: `calc(${theme.spacing(1.5)} + env(safe-area-inset-bottom, 0px))`, + md: `calc(${theme.spacing(1.5)} + env(safe-area-inset-bottom, 0px))`, }, backgroundColor: 'background.paper', - borderTop: '1px solid', + borderTop: 'none', borderColor: 'divider', boxShadow: '0 -4px 12px rgba(0,0,0,0.15)', transition: 'opacity 0.2s ease-in-out, transform 0.2s ease-in-out', diff --git a/formulus-formplayer/src/SwipeLayoutRenderer.tsx b/formulus-formplayer/src/SwipeLayoutRenderer.tsx index 643d65cbb..faba29bef 100644 --- a/formulus-formplayer/src/SwipeLayoutRenderer.tsx +++ b/formulus-formplayer/src/SwipeLayoutRenderer.tsx @@ -264,7 +264,7 @@ const SwipeLayoutRenderer = ({ } : undefined } - contentBottomPadding={120} + contentBottomPadding={80} showNavigation={true} >
diff --git a/formulus-formplayer/src/index.css b/formulus-formplayer/src/index.css index 7235d3aab..98e7332a3 100644 --- a/formulus-formplayer/src/index.css +++ b/formulus-formplayer/src/index.css @@ -17,10 +17,10 @@ body { .swipelayout_screen { margin: 0; - padding-top: 2vh; + padding-top: 0.5vh; padding-left: 0; padding-right: 0; - padding-bottom: 2vh; + padding-bottom: 0.5vh; width: 100%; /* Remove fixed height and overflow - let FormLayout handle scrolling */ min-height: 100%; @@ -30,13 +30,13 @@ body { /* Add padding to form content, but not to the container itself */ .swipelayout_screen > div { - padding-left: 1%; - padding-right: 1%; + padding-left: 0.5%; + padding-right: 0.5%; box-sizing: border-box; } .swipelayout_screen > div > div { - margin-bottom: 15px; + margin-bottom: 8px; } code { diff --git a/formulus/src/components/FormplayerModal.tsx b/formulus/src/components/FormplayerModal.tsx index 15f00d890..67d0b1c39 100644 --- a/formulus/src/components/FormplayerModal.tsx +++ b/formulus/src/components/FormplayerModal.tsx @@ -495,7 +495,8 @@ const styles = StyleSheet.create({ header: { flexDirection: 'row', alignItems: 'center', - padding: 16, + paddingHorizontal: 8, + paddingVertical: 12, borderBottomWidth: 1, borderBottomColor: '#eee', }, @@ -510,7 +511,7 @@ const styles = StyleSheet.create({ width: 40, }, closeButton: { - padding: 8, + padding: 4, }, disabledButton: { opacity: 0.5,