import { useRouter } from '@uirouter/react'; import React, { useEffect, useState } from 'react'; import type { ILoadBalancerDetailsProps } from './LoadBalancerDetailsWrapper'; import { CloudProviderLogo } from '../../cloudProvider'; import { EntityNotifications } from '../../entityTag/notifications/EntityNotifications'; import { Details } from '../../presentation'; import { IfFeatureEnabled } from '../../utils'; export function LoadBalancerDetailsContent({ app, loadBalancer: params, useDetails, Actions, sections, }: ILoadBalancerDetailsProps) { const [initialized, setInitialized] = useState(false); const { stateService: { go }, } = useRouter(); const autoClose = () => { go('^', { allowModalToStayOpen: true }, { location: 'replace' }); }; const { data: loadBalancer, loading } = useDetails({ app, loadBalancerParams: params, autoClose }); useEffect(() => { if (loadBalancer) { setInitialized(true); } }, [loading]); if (!initialized) return
; return (
} name={loadBalancer.displayName ? loadBalancer.displayName : loadBalancer.name} notifications={ app.loadBalancers.refresh()} /> } /> } actions={} /> {sections.map((Section, index) => (
))}
); }