iconCellSignal.tsx 905 B

1234567891011121314151617181920212223242526
  1. import {forwardRef} from 'react';
  2. import {useTheme} from '@emotion/react';
  3. import {SvgIcon, type SVGIconProps} from 'sentry/icons/svgIcon';
  4. interface Props extends SVGIconProps {
  5. bars?: 0 | 1 | 2 | 3;
  6. }
  7. const IconCellSignal = forwardRef<SVGSVGElement, Props>(({bars = 3, ...props}, ref) => {
  8. const theme = useTheme();
  9. const firstBarColor = bars > 0 ? theme.gray300 : theme.gray100;
  10. const secondBarColor = bars > 1 ? theme.gray300 : theme.gray100;
  11. const thirdBarColor = bars > 2 ? theme.gray300 : theme.gray100;
  12. return (
  13. <SvgIcon {...props} ref={ref}>
  14. <rect x="0" y="10" width="4" height="5" fill={firstBarColor} rx="1" />
  15. <rect x="6.2" y="5" width="4" height="10" fill={secondBarColor} rx="1" />
  16. <rect x="12.4" y="0" width="4" height="15" fill={thirdBarColor} rx="1" />
  17. </SvgIcon>
  18. );
  19. });
  20. IconCellSignal.displayName = 'IconCellSignal';
  21. export {IconCellSignal};