import ClippedBox from 'sentry/components/clippedBox'; import ErrorBoundary from 'sentry/components/errorBoundary'; import KeyValueList from 'sentry/components/events/interfaces/keyValueList'; import {Meta} from 'sentry/types'; import {EntryRequest} from 'sentry/types/event'; import getTransformedData from './getTransformedData'; type Data = EntryRequest['data']['data']; type Props = { data: Data; title: string; defaultCollapsed?: boolean; isContextData?: boolean; meta?: Meta; }; const RichHttpContentClippedBoxKeyValueList = ({ data, title, defaultCollapsed = false, isContextData = false, meta, }: Props) => { const getContent = (transformedData: Array<[string, string]>) => { // Sentry API abbreviates long query string values, sometimes resulting in // an un-parsable querystring ... stay safe kids try { return ( ({ key, subject: key, value, meta, }))} isContextData={isContextData} /> ); } catch { return
{data}
; } }; const transformedData = getTransformedData(data); if (!transformedData.length) { return null; } return ( {getContent(transformedData)} ); }; export default RichHttpContentClippedBoxKeyValueList;