SQ-UI/ng-sq-ui

View on GitHub
projects/ng-sq-common/src/lib/services/os-detector.service.ts

Summary

Maintainability
A
0 mins
Test Coverage
B
80%
import { Injectable } from '@angular/core';
import { DeviceOS } from '../enums/device-os.enum';

@Injectable()
export class OSDetectorService {

  constructor() { }

  static getDeviceOS(): DeviceOS {
    const userAgent = navigator.userAgent || navigator.vendor;
    let agent: DeviceOS = DeviceOS.Desktop;

    if (/android/i.test(userAgent)) {
      agent = DeviceOS.Android;
    }

    if (/iPad|iPhone|iPod/.test(userAgent)) {
      agent = DeviceOS.iOS;
    }

    return agent;
  }
}