import * as React from "react"; import useRequests, {RequestResponse} from "../../hooks/useRequests"; import {useEffect, useMemo, useState} from "react"; import styles from './App.module.scss'; import Details from "../Details/Details"; import RequestSummary from "../RequestSummary/RequestSummary"; import {getHost} from "../../utils"; interface Config { url: string } export default function App() { const [config, setConfig]= useState(null) useEffect(() => { fetch(`http://${getHost()}/config/`) .then(response => response.json() as Promise) .then(setConfig) }, []) const requests = useRequests(); const [selectedRequestIndex, setSelectedRequestIndex] = useState(null); const selectedRequest = useMemo(() => ( selectedRequestIndex === null ? null : requests[selectedRequestIndex] ), [selectedRequestIndex, requests]); return config && (
TTUN {config.url}
    { requests.length > 0 ? requests.slice(0).reverse().map((requestResponse, index) => (
  • setSelectedRequestIndex(requests.length - index - 1)} key={`request-${index}`}>
  • )) : (

    No requests

    ) }
{ selectedRequest !== null ? (
) : (

Select a request to inspect it

) }
); }