import React from 'react'; import { ScrollArea } from '../components/ScrollArea'; import { Section } from '../components/Section'; import { CookieCard } from '../components/CookieCard'; import { parseRequestCookiesFromHeaders, parseResponseCookiesFromHeaders, } from '../../utils/cookieParser'; import { HttpNetworkEntry, SSENetworkEntry } from '../state/model'; export type CookiesTabProps = { selectedRequest: HttpNetworkEntry | SSENetworkEntry; }; export const CookiesTab = ({ selectedRequest }: CookiesTabProps) => { const requestHeaders = selectedRequest.request?.headers; const responseHeaders = selectedRequest.response?.headers; const { requestCookies, responseCookies } = React.useMemo(() => { return { requestCookies: parseRequestCookiesFromHeaders(requestHeaders || {}), responseCookies: parseResponseCookiesFromHeaders(responseHeaders || {}), }; }, [requestHeaders, responseHeaders]); const hasRequestCookies = requestCookies.length > 0; const hasResponseCookies = responseCookies.length > 0; if (!hasRequestCookies && !hasResponseCookies) { return ( No cookies for this request ); } return ( {hasRequestCookies && ( {requestCookies.map((cookie, index) => ( ))} )} {hasResponseCookies && ( {responseCookies.map((cookie, index) => ( ))} )} ); };