export function getOperatingSystem()

in client/src/util/platform.ts [11:38]


export function getOperatingSystem(): OperatingSystem {
  const platform = navigator.platform;
  switch (platform) {
    case 'Macintosh':
    case 'MacPPC':
    case 'Mac68K':
      return OperatingSystem.MacOS;
    case 'MacIntel':
      return hasTouchscreen() ? OperatingSystem.iOS : OperatingSystem.MacOS;
    case 'iPhone':
    case 'iPad':
    case 'iPod':
      return OperatingSystem.iOS;
    case 'Win32':
    case 'Win64':
    case 'Windows':
    case 'WinCE':
      return OperatingSystem.Windows;
  }
  const userAgent = navigator.userAgent;
  if (/Android/.test(userAgent)) {
    return OperatingSystem.Android;
  } else if (/Linux/.test(platform)) {
    return OperatingSystem.Linux;
  } else {
    return OperatingSystem.Other;
  }
}