import { useTranslation } from 'next-i18next'; import { UncontrolledTooltip } from 'reactstrap'; const ProxyCircle = () => (

Proxy Server

Proxy Server

); type BridgeCoreProps = { description: string, iconClass: string, iconName: string, hrClass: string, withProxy?: boolean, } const BridgeCore = (props: BridgeCoreProps): JSX.Element => { const { description, iconClass, iconName, hrClass, withProxy, } = props; return ( <>

{iconName}

{ withProxy && }
); }; type BridgeProps = { errorCount: number, totalCount: number, withProxy?: boolean, } export const Bridge = (props: BridgeProps): JSX.Element => { const { t } = useTranslation(); const { errorCount, totalCount, withProxy } = props; let description; let iconClass; let iconName; let hrClass; // empty or all failed if (totalCount === 0 || errorCount === totalCount) { description = t('admin:slack_integration.integration_sentence.integration_is_not_complete'); iconClass = 'material-symbols-outlined text-danger'; iconName = 'info'; hrClass = 'border-danger admin-border-failed'; } // all green else if (errorCount === 0) { description = t('admin:slack_integration.integration_sentence.integration_successful'); iconClass = 'material-symbols-outlined text-success'; iconName = 'check'; hrClass = 'border-success admin-border-success'; } // some of them failed else { description = t('admin:slack_integration.integration_sentence.integration_some_ws_is_not_complete'); iconClass = 'material-symbols-outlined text-warning'; iconName = 'check'; hrClass = 'border-warning admin-border-failed'; } return ( ); }; Bridge.displayName = 'Bridge';