Skip to content

Commit

Permalink
Merge branch 'mvp-2.1.0' into CRDCDH-552
Browse files Browse the repository at this point in the history
  • Loading branch information
amattu2 authored Dec 12, 2023
2 parents b8248f6 + 778ac8c commit 7dd304d
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
9 changes: 8 additions & 1 deletion src/content/dataSubmissions/DataSubmission.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useEffect, useRef, useState } from "react";
import { useEffect, useMemo, useRef, useState } from "react";
import { useParams } from "react-router-dom";
import { useLazyQuery, useMutation } from "@apollo/client";
import {
Expand Down Expand Up @@ -39,6 +39,7 @@ import QualityControl from "./QualityControl";
import { ReactComponent as CopyIconSvg } from "../../assets/icons/copy_icon_2.svg";
import DataSubmissionStatistics from '../../components/DataSubmissions/ValidationStatistics';
import ValidationControls from '../../components/DataSubmissions/ValidationControls';
import { useAuthContext } from "../../components/Contexts/AuthContext";

const StyledBanner = styled("div")(({ bannerSrc }: { bannerSrc: string }) => ({
background: `url(${bannerSrc})`,
Expand Down Expand Up @@ -244,6 +245,7 @@ const submissionLockedStatuses: SubmissionStatus[] = ["Submitted", "Released", "

const DataSubmission = () => {
const { submissionId, tab } = useParams();
const { user } = useAuthContext();
const [dataSubmission, setDataSubmission] = useState<Submission>(null);
const [submissionStats, setSubmissionStats] = useState<SubmissionStatistic[]>(null);
const [batchFiles, setBatchFiles] = useState<Batch[]>([]);
Expand All @@ -254,6 +256,10 @@ const DataSubmission = () => {
const [changesAlert, setChangesAlert] = useState<AlertState>(null);
const tableRef = useRef<TableMethods>(null);
const isValidTab = tab && Object.values(URLTabs).includes(tab);
const disableSubmit = useMemo(
() => !submissionStats?.length || submissionStats.some((stat) => stat.new > 0 || (user.role !== "Admin" && stat.error > 0)),
[submissionStats, user]
);

const [getSubmission] = useLazyQuery<GetSubmissionResp>(GET_SUBMISSION, {
variables: { id: submissionId },
Expand Down Expand Up @@ -448,6 +454,7 @@ const DataSubmission = () => {
<DataSubmissionActions
submission={dataSubmission}
onAction={updateSubmissionAction}
disableSubmit={disableSubmit}
/>
</StyledCardActions>
</StyledCard>
Expand Down
5 changes: 3 additions & 2 deletions src/content/dataSubmissions/DataSubmissionActions.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -160,10 +160,11 @@ const actionConfig: Record<ActionKey, ActionConfig> = {

type Props = {
submission: Submission;
disableSubmit?: boolean;
onAction: (action: SubmissionAction) => Promise<void>;
};

const DataSubmissionActions = ({ submission, onAction }: Props) => {
const DataSubmissionActions = ({ submission, disableSubmit, onAction }: Props) => {
const { user } = useAuthContext();
const navigate = useNavigate();

Expand Down Expand Up @@ -219,7 +220,7 @@ const DataSubmissionActions = ({ submission, onAction }: Props) => {
variant="contained"
onClick={() => onOpenDialog("Submit")}
loading={action === "Submit"}
disabled={action && action !== "Submit"} /* TODO: Post MVP2-M2 - Will be disabled if fails validation check */
disabled={disableSubmit || (action && action !== "Submit")}
disableElevation
disableRipple
disableTouchRipple
Expand Down

0 comments on commit 7dd304d

Please sign in to comment.