getOperatingSystemKnownDataDetails.tsx 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import type {KnownDataDetails} from 'sentry/components/events/contexts/utils';
  2. import {t} from 'sentry/locale';
  3. import {defined} from 'sentry/utils';
  4. import type {OperatingSystemKnownData} from './types';
  5. import {OperatingSystemKnownDataType} from './types';
  6. type Props = {
  7. data: OperatingSystemKnownData;
  8. type: OperatingSystemKnownDataType;
  9. };
  10. export function getOperatingSystemKnownDataDetails({
  11. data,
  12. type,
  13. }: Props): KnownDataDetails {
  14. switch (type) {
  15. case OperatingSystemKnownDataType.NAME:
  16. return {
  17. subject: t('Name'),
  18. value: data.name,
  19. };
  20. case OperatingSystemKnownDataType.VERSION:
  21. return {
  22. subject: t('Version'),
  23. value: `${data.version}${data.build ? `(${data.build})` : ''}`,
  24. };
  25. case OperatingSystemKnownDataType.KERNEL_VERSION:
  26. return {
  27. subject: t('Kernel Version'),
  28. value: data.kernel_version,
  29. };
  30. case OperatingSystemKnownDataType.ROOTED:
  31. return {
  32. subject: t('Rooted'),
  33. value: defined(data.rooted) ? (data.rooted ? t('yes') : t('no')) : null,
  34. };
  35. default:
  36. return undefined;
  37. }
  38. }