diff --git a/src/components/warning-modal.component.tsx b/src/components/warning-modal.component.tsx deleted file mode 100644 index 9a2897f3d..000000000 --- a/src/components/warning-modal.component.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import React from 'react'; -import { Button, ComposedModal, ModalBody, ModalFooter, ModalHeader } from '@carbon/react'; - -type Props = { - onCancel: () => void; - onShowWarningModal: (showWarningModal: boolean) => void; - t: (key: string, fallback: string) => string; -}; - -const WarningModal: React.FC = ({ onCancel, onShowWarningModal, t }) => { - return ( - onShowWarningModal(false)}> - - -

- {t( - 'discardWarningText', - 'The changes you made to this form have not been saved. Are you sure you want to discard them?', - )} -

-
- - - - -
- ); -}; - -export default WarningModal; diff --git a/src/ohri-form.component.tsx b/src/ohri-form.component.tsx index 78188dc29..f637ffd78 100644 --- a/src/ohri-form.component.tsx +++ b/src/ohri-form.component.tsx @@ -26,7 +26,6 @@ import { usePatientData } from './hooks/usePatientData'; import LinearLoader from './components/loaders/linear-loader.component'; import LoadingIcon from './components/loaders/loading.component'; import OHRIFormSidebar from './components/sidebar/ohri-form-sidebar.component'; -import WarningModal from './components/warning-modal.component'; import styles from './ohri-form.component.scss'; import { evaluatePostSubmissionExpression } from './utils/post-submission-action-helper'; import MarkdownWrapper from './components/inputs/markdown/markdown-wrapper.component'; @@ -69,6 +68,7 @@ interface OHRIFormProps { * Renamed to `encounterUUID`. To be removed in future iterations. */ encounterUuid?: string; + markFormAsDirty?: (isDirty: boolean) => void; } export interface FormSubmissionHandler { @@ -89,6 +89,7 @@ const OHRIForm: React.FC = ({ formSessionIntent, meta, encounterUuid, + markFormAsDirty, }) => { const session = useSession(); const currentProvider = session?.currentProvider?.uuid ? session.currentProvider.uuid : null; @@ -112,8 +113,6 @@ const OHRIForm: React.FC = ({ const [isLoadingFormDependencies, setIsLoadingFormDependencies] = useState(true); const [isSubmitting, setIsSubmitting] = useState(false); const [pagesWithErrors, setPagesWithErrors] = useState([]); - const [isFormTouched, setIsFormTouched] = useState(false); - const [showWarningModal, setShowWarningModal] = useState(false); const postSubmissionHandlers = usePostSubmissionAction(refinedFormJson?.postSubmissionActions); const sessionMode = mode ? mode : encounterUUID || encounterUuid ? 'edit' : 'enter'; @@ -284,7 +283,7 @@ const OHRIForm: React.FC = ({ }}> {(props) => { useEffect(() => { - setIsFormTouched(props.dirty); + markFormAsDirty?.(props.dirty); }, [props.dirty]); return ( @@ -293,9 +292,6 @@ const OHRIForm: React.FC = ({ ) : (
- {showWarningModal ? ( - - ) : null} {isLoadingFormDependencies && (
@@ -357,11 +353,6 @@ const OHRIForm: React.FC = ({