34 lines
921 B
JavaScript
34 lines
921 B
JavaScript
import React from "react";
|
|
import {
|
|
IconCircleCheck,
|
|
IconAlertTriangle,
|
|
IconX,
|
|
IconCircleDashed,
|
|
} from "@tabler/icons-react";
|
|
|
|
export const statusMap = {
|
|
online: { label: "Online", color: "green"},
|
|
offline: { label: "Offline", color: "red"},
|
|
};
|
|
|
|
export const statusOptions = Object.entries(statusMap).map(([value, { label }]) => ({
|
|
value,
|
|
label,
|
|
}));
|
|
|
|
export const healthStatus = (status) => {
|
|
switch (status) {
|
|
case "activate":
|
|
case "healthy":
|
|
case "online":
|
|
return { color: "green", icon: React.createElement(IconCircleCheck, { size: 16 }) };
|
|
case "warning":
|
|
return { color: "yellow", icon: React.createElement(IconAlertTriangle, { size: 16 }) };
|
|
case "error":
|
|
case "fail":
|
|
return { color: "red", icon: React.createElement(IconX, { size: 16 }) };
|
|
default:
|
|
return { color: "gray", icon: React.createElement(IconCircleDashed, { size: 16 }) };
|
|
}
|
|
};
|