pageTimeRangeSelector.tsx 975 B

123456789101112131415161718192021222324252627282930313233
  1. import styled from '@emotion/styled';
  2. import {TimeRangeSelector} from 'sentry/components/timeRangeSelector';
  3. import {t} from 'sentry/locale';
  4. type PageTimeRangeSelectorProps = React.ComponentProps<typeof TimeRangeSelector>;
  5. function PageTimeRangeSelector(props: PageTimeRangeSelectorProps) {
  6. return (
  7. <StyledTimeRangeSelector
  8. key={`period:${props.relative}-start:${props.start}-end:${props.end}-utc:${props.utc}-defaultPeriod:${props.defaultPeriod}`}
  9. triggerProps={{icon: null, prefix: t('Date Range')}}
  10. // Use relative option labels (e.g. "Last 7 days") not keys ("7D")
  11. triggerLabel={
  12. props.relativeOptions && props.relative
  13. ? props.relativeOptions[props.relative]
  14. : null
  15. }
  16. menuWiderThanTrigger
  17. {...props}
  18. />
  19. );
  20. }
  21. const StyledTimeRangeSelector = styled(TimeRangeSelector)`
  22. width: 100%;
  23. button[aria-haspopup='listbox'] {
  24. width: 100%;
  25. }
  26. `;
  27. export default PageTimeRangeSelector;