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) => (
))}
);
}