/* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ import { RollupMetadata } from "../../../../models/interfaces"; import React from "react"; import { EuiFlexGroup, EuiFlexItem, EuiIcon, EuiText } from "@elastic/eui"; export const renderStatus = (metadata: RollupMetadata | undefined): JSX.Element => { if (metadata == null || metadata == undefined || metadata.rollup_metadata == null) return
-
; let icon; let iconColor; let textColor: "default" | "subdued" | "secondary" | "ghost" | "accent" | "warning" | "danger" | undefined; let text; switch (metadata.rollup_metadata.status) { case "failed": icon = "alert"; iconColor = "danger"; textColor = "danger"; text = "Failed: " + metadata.rollup_metadata.failure_reason; break; case "finished": icon = "check"; iconColor = "success"; textColor = "secondary"; text = "Complete"; break; case "init": return ( Initializing ); case "started": icon = "play"; iconColor = "success"; textColor = "secondary"; text = "Started"; break; case "stopped": icon = "stop"; iconColor = "subdued"; textColor = "subdued"; text = "Stopped"; break; default: return
-
; } return ( {text} ); };