import { Box, Card, H1, Skeleton, styled, Text } from '@traefiklabs/faency' import { Helmet } from 'react-helmet-async' import { useParams } from 'react-router-dom' import { DetailSectionSkeleton } from 'components/resources/DetailSections' import { RenderMiddleware } from 'components/resources/MiddlewarePanel' import { UsedByRoutersSection, UsedByRoutersSkeleton } from 'components/resources/UsedByRoutersSection' import { ResourceDetailDataType, useResourceDetail } from 'hooks/use-resource-detail' import { NotFound } from 'pages/NotFound' import breakpoints from 'utils/breakpoints' const MiddlewareGrid = styled(Box, { display: 'grid', gridTemplateColumns: 'repeat(auto-fill, minmax(400px, 1fr))', [`@media (max-width: ${breakpoints.tablet})`]: { gridTemplateColumns: '1fr', }, }) type HttpMiddlewareRenderProps = { data?: ResourceDetailDataType error?: Error | null name: string } export const HttpMiddlewareRender = ({ data, error, name }: HttpMiddlewareRenderProps) => { if (error) { return ( <> {name} - Traefik Proxy Sorry, we could not fetch detail information for this Middleware right now. Please, try again later. ) } if (!data) { return ( <> {name} - Traefik Proxy ) } if (!data.name) { return } return ( <> {data.name} - Traefik Proxy

{data.name}

) } export const HttpMiddleware = () => { const { name } = useParams<{ name: string }>() const { data, error } = useResourceDetail(name!, 'middlewares') return } export default HttpMiddleware