Files
2024-02-15 17:01:50 +00:00

45 lines
1006 B
TypeScript

import styled from '@emotion/styled';
import * as Sentry from '@sentry/react';
import {t} from 'sentry/locale';
import {space} from 'sentry/styles/space';
type Props = {
icon: React.ReactElement;
type: 'stack_unwinding' | 'symbolication';
className?: string;
};
function Item({type, icon, className}: Props) {
function getLabel() {
switch (type) {
case 'stack_unwinding':
return t('Stack Unwinding');
case 'symbolication':
return t('Symbolication');
default: {
Sentry.captureException(new Error('Unknown Images Loaded processing item type'));
return null; // This shall not happen
}
}
}
return (
<Wrapper className={className}>
{icon}
{getLabel()}
</Wrapper>
);
}
export default Item;
const Wrapper = styled('div')`
display: grid;
grid-template-columns: max-content 1fr;
grid-column-gap: ${space(0.5)};
align-items: center;
font-size: ${p => p.theme.fontSizeSmall};
white-space: nowrap;
`;