Refactor getStatusClassName function to handle different build statuses
This commit is contained in:
parent
7fed13eb5a
commit
10fa045063
1 changed files with 17 additions and 12 deletions
|
|
@ -96,7 +96,6 @@ export default function GenericNode({
|
||||||
return `Duration: ${duration}`;
|
return `Duration: ${duration}`;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const durationString = getDurationString(validationStatus?.data.duration);
|
const durationString = getDurationString(validationStatus?.data.duration);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
@ -166,11 +165,16 @@ export default function GenericNode({
|
||||||
);
|
);
|
||||||
|
|
||||||
const getStatusClassName = (
|
const getStatusClassName = (
|
||||||
|
buildStatus: BuildStatus | undefined,
|
||||||
validationStatus: validationStatusType | null
|
validationStatus: validationStatusType | null
|
||||||
) => {
|
) => {
|
||||||
if (validationStatus && validationStatus.valid) {
|
const isValid = validationStatus && validationStatus.valid;
|
||||||
|
|
||||||
|
if (isValid) {
|
||||||
return "green-status";
|
return "green-status";
|
||||||
} else if (validationStatus && !validationStatus.valid) {
|
} else if (!isValid && buildStatus === BuildStatus.INACTIVE) {
|
||||||
|
return "gray-status";
|
||||||
|
} else if (!isValid && buildStatus === BuildStatus.BUILT) {
|
||||||
return "red-status";
|
return "red-status";
|
||||||
} else if (!validationStatus) {
|
} else if (!validationStatus) {
|
||||||
return "yellow-status";
|
return "yellow-status";
|
||||||
|
|
@ -186,7 +190,7 @@ export default function GenericNode({
|
||||||
if (buildStatus === BuildStatus.BUILDING) {
|
if (buildStatus === BuildStatus.BUILDING) {
|
||||||
return <Loading />;
|
return <Loading />;
|
||||||
} else {
|
} else {
|
||||||
const className = getStatusClassName(validationStatus);
|
const className = getStatusClassName(buildStatus, validationStatus);
|
||||||
return <>{getIconPlayOrPauseComponent("Play", className)}</>;
|
return <>{getIconPlayOrPauseComponent("Play", className)}</>;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
@ -195,15 +199,16 @@ export default function GenericNode({
|
||||||
buildStatus: BuildStatus | undefined,
|
buildStatus: BuildStatus | undefined,
|
||||||
validationStatus: validationStatusType | null
|
validationStatus: validationStatusType | null
|
||||||
) => {
|
) => {
|
||||||
if (
|
let isInvalid = validationStatus && !validationStatus.valid;
|
||||||
(buildStatus === BuildStatus.BUILT ||
|
if (buildStatus === BuildStatus.INACTIVE && isInvalid) {
|
||||||
buildStatus === BuildStatus.INACTIVE) &&
|
// INACTIVE should have its own class
|
||||||
validationStatus &&
|
// different from BUILT and TO_BUILD
|
||||||
!validationStatus.valid
|
return "inactive-status";
|
||||||
) {
|
}
|
||||||
return "border-none ring ring-red-300";
|
if (buildStatus === BuildStatus.BUILT && isInvalid) {
|
||||||
|
return "built-invalid-status";
|
||||||
} else if (buildStatus === BuildStatus.BUILDING) {
|
} else if (buildStatus === BuildStatus.BUILDING) {
|
||||||
return "border-none ring";
|
return "building-status";
|
||||||
} else {
|
} else {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue