Skip to content

Commit

Permalink
Merge branch 'main' into fix-total-item-count
Browse files Browse the repository at this point in the history
  • Loading branch information
ibolton336 authored Dec 15, 2023
2 parents b93bf2f + 469e0b1 commit d8ee7ce
Show file tree
Hide file tree
Showing 8 changed files with 53 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ const QuestionsTable: React.FC<{
section: "Section",
},
isExpansionEnabled: true,
isPaginationEnabled: false,
expandableVariant: "single",
forceNumRenderedColumns: isAllQuestionsTab ? 3 : 2, // columns+1 for expand control
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ export const ApplicationDetailDrawer: React.FC<
isCompact
columnModifier={{ default: "1Col" }}
horizontalTermWidthModifier={{
default: "14ch",
default: "15ch",
}}
>
<DescriptionListGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export const ApplicationReviewStatus: React.FC<
> = ({ application }) => {
const { t } = useTranslation();

const { archetypes, isFetching } = useFetchArchetypes();
const { archetypes, isFetching, error } = useFetchArchetypes();
const isAppReviewed = !!application.review;

const applicationArchetypes = application.archetypes?.map((archetypeRef) => {
Expand All @@ -27,6 +27,10 @@ export const ApplicationReviewStatus: React.FC<
applicationArchetypes?.filter((archetype) => !!archetype?.review).length ||
0;

if (error) {
return <EmptyTextMessage message={t("terms.notAvailable")} />;
}

if (isFetching) {
return <Spinner size="md" />;
}
Expand All @@ -43,9 +47,5 @@ export const ApplicationReviewStatus: React.FC<
statusPreset = "NotStarted";
}

if (!applicationArchetypes || applicationArchetypes.length === 0) {
return <EmptyTextMessage message={t("terms.notAvailable")} />;
}

return <IconedStatus preset={statusPreset} tooltipCount={tooltipCount} />;
};
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import {
} from "@tanstack/react-query";
import { TrashIcon } from "@patternfly/react-icons";
import useIsArchetype from "@app/hooks/useIsArchetype";
import spacing from "@patternfly/react-styles/css/utilities/Spacing/spacing";

enum AssessmentAction {
Take = "Take",
Expand Down Expand Up @@ -189,6 +190,7 @@ const DynamicAssessmentActionsRow: FunctionComponent<
assessmentId: assessment.id,
applicationName: application?.name,
applicationId: application?.id,
archetypeName: archetype?.name,
archetypeId: archetype?.id,
}).then(() => {
createAssessment();
Expand Down Expand Up @@ -222,7 +224,7 @@ const DynamicAssessmentActionsRow: FunctionComponent<
{action}
</Button>
) : (
<Spinner role="status" size="md">
<Spinner role="status" size="md" className={spacing.mxLg}>
<span className="sr-only">Loading...</span>
</Spinner>
)}
Expand Down Expand Up @@ -262,6 +264,7 @@ const DynamicAssessmentActionsRow: FunctionComponent<
assessmentId: assessment.id,
applicationName: application?.name,
applicationId: application?.id,
archetypeName: archetype?.name,
archetypeId: archetype?.id,
});
}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -447,6 +447,7 @@ export const AssessmentWizard: React.FC<AssessmentWizardProps> = ({
assessmentId: assessment.id,
applicationName: assessment.application?.name,
applicationId: assessment.application?.id,
archetypeName: assessment.archetype?.name,
archetypeId: assessment.archetype?.id,
});
} else {
Expand All @@ -455,6 +456,7 @@ export const AssessmentWizard: React.FC<AssessmentWizardProps> = ({
assessmentId: assessment.id,
applicationName: assessment.application?.name,
applicationId: assessment.application?.id,
archetypeName: assessment.archetype?.name,
archetypeId: assessment.archetype?.id,
});
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,24 @@ const ViewArchetypesTable: React.FC<ViewArchetypesTableProps> = ({
const archivedQuestionnaires = questionnaires.filter(
(questionnaire) => !questionnaire.required
);

const nonRequiredQuestionnaireIds = questionnaires
.filter((q) => !q.required)
.map((q) => q.id);

const relevantAssessmentIds = (archetype?.assessments || []).map((a) => a.id);

const filteredArchivedAssessments = assessments.filter(
(assessment) =>
nonRequiredQuestionnaireIds.includes(assessment.questionnaire.id) &&
relevantAssessmentIds.includes(assessment.id)
);
const filteredArchivedQuestionnaires = archivedQuestionnaires.filter(
(questionnaire) =>
filteredArchivedAssessments.some(
(assessment) => assessment.questionnaire.id === questionnaire.id
)
);
return (
<>
<QuestionnairesTable
Expand All @@ -34,15 +52,16 @@ const ViewArchetypesTable: React.FC<ViewArchetypesTableProps> = ({
isFetching={isFetchingQuestionnaires || isFetchingAssessmentsById}
tableName="Required questionnaires"
/>

<QuestionnairesTable
isReadonly
archetype={archetype}
questionnaires={archivedQuestionnaires}
assessments={assessments}
isFetching={isFetchingQuestionnaires || isFetchingAssessmentsById}
tableName="Archived questionnaires"
/>
{filteredArchivedAssessments.length === 0 ? null : (
<QuestionnairesTable
archetype={archetype}
isReadonly
questionnaires={filteredArchivedQuestionnaires}
assessments={filteredArchivedAssessments}
isFetching={isFetchingQuestionnaires || isFetchingAssessmentsById}
tableName="Archived questionnaires"
/>
)}
</>
);
};
Expand Down
8 changes: 8 additions & 0 deletions client/src/app/pages/reports/components/donut/donut.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import {
StackItem,
Text,
TextContent,
TextVariants,
} from "@patternfly/react-core";

export interface IDonutProps {
Expand All @@ -31,6 +32,7 @@ export const Donut: React.FC<IDonutProps> = ({
riskLabel,
isAssessment,
riskTitle,
riskDescription,
}) => {
const { t } = useTranslation();

Expand Down Expand Up @@ -63,6 +65,12 @@ export const Donut: React.FC<IDonutProps> = ({
<StackItem style={{ width: "100%" }}>
<TextContent className="pf-v5-u-text-align-center">
<Text component="h3">{riskLabel}</Text>
<Text
component={TextVariants.small}
className="pf-v5-u-color-200 pf-v5-u-font-weight-light"
>
{riskDescription}
</Text>
</TextContent>
</StackItem>
</Stack>
Expand Down
6 changes: 4 additions & 2 deletions client/src/app/queries/assessments.ts
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ export const useUpdateAssessmentMutation = (
};

export const useDeleteAssessmentMutation = (
onSuccess?: (applicationName: string) => void,
onSuccess?: (name: string) => void,
onError?: (err: AxiosError) => void
) => {
const queryClient = useQueryClient();
Expand All @@ -117,6 +117,7 @@ export const useDeleteAssessmentMutation = (
assessmentId: number;
applicationName?: string;
applicationId?: number;
archetypeName?: string;
archetypeId?: number;
}) => {
const deletedAssessment = deleteAssessment(args.assessmentId);
Expand All @@ -138,7 +139,8 @@ export const useDeleteAssessmentMutation = (
return deletedAssessment;
},
onSuccess: (_, args) => {
onSuccess && onSuccess(args?.applicationName || "Unknown");
onSuccess &&
onSuccess(args?.applicationName || args?.archetypeName || "Unknown");
},
onError: onError,
});
Expand Down

0 comments on commit d8ee7ce

Please sign in to comment.