/*! Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ import { DataProductState } from '../common'; import { LoadingIndicator, StatusIndicator } from 'aws-northstar'; import { useI18nContext } from '@ada/strings/dist/i18n/i18n-react'; import React from 'react'; export interface StatusProps extends DataProductState { readonly detailed?: boolean; } export const Status: React.FC = ({ detailed, infra, data, isProvisioning, hasProvisioningFailed, isMissingData, isImporting, hasImportingFailed, isQueryable, isReady, }) => { const { LL } = useI18nContext(); switch (true) { case isProvisioning: return ; case hasProvisioningFailed: return {detailed ? infra.details : LL.VIEW.DATA_PRODUCT.STATUS.hasProvisioningFailed()}; case isMissingData: return {LL.VIEW.DATA_PRODUCT.STATUS.isMissingData()}; case isImporting: return ; case hasImportingFailed: return {detailed ? data.details : LL.VIEW.DATA_PRODUCT.STATUS.hasImportingFailed()}; case isQueryable: case isReady: return {LL.VIEW.DATA_PRODUCT.STATUS.isReady()}; default: return <>{LL.VIEW.DATA_PRODUCT.STATUS.NA()}; } };