ua-device-detector

1.1.8 • Public • Published

ua-device-detector

Build Status GitHub issues Known Vulnerabilities Open Source Helpers

GitHub license npm npm npm

Commitizen friendly Semver

Install

$ bower i ua-device-detector -S

Server-Side Usage

var uaDeviceDetector=require('ua-device-detector');
.
.
.
var deviceInfo=uaDeviceDetector.parseUserAgent(options);

Client-Side Usage

Add script load to HTML:

<script type="text/javascript" src=".../re-tree.js"></script>
<script type="text/javascript" src=".../ua-device-detector.js"></script>

Then use in your javascript:

var deviceInfo = window.uaDeviceDetector.parseUserAgent(options);

To use from angular:

Don't - Instead use ng-device-detector :)

Usage with Webpack:

An issue with webpack might cause an error like this:

- Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

To solve add this to your webpack.config.js:

module.exports = {
  module: {
    unknownContextCritical: false
  }
};

More details here

API

parseUserAgent options specification:

  • userAgent: (string, required) user agent string to parse
  • customDetectors: ([object], optional) array of custom detectors:
    • name: (string, required) name of detector as it will appear in deviceInfo
    • re: (string|regex|reTree expression, required) the expression to use for detecting
  • platform: (string, optional) platform name as returned by navigator.platform
  • maxTouchPoints: (string, optional) maxTouchPoints as returned by navigator.maxTouchPoints

parseUserAgent returns a deviceInfo object:

  • raw
    • userAgent (string) - raw user agent
    • os (object) - true/false detections per os
    • browser (object) - true/false detections per browser
    • device (object) - true/false detections per device
  • os (string) - detected os
  • browser (string) - detected browser
  • device (string) - detected device
  • os_version (string) - detected os version
  • browser_version (string) - detected browser version
  • isMobile() - returns true if device is mobile. false otherwise
  • isTablet() - returns true if device is tablet. false otherwise
  • isDesktop() - returns true if device is desktop. false otherwise
  • custom (object) - true/false result of detection per custom detector

Support

Pull-requests with new stuff will be highly appreciated :)

Please remember to add tests when making changes.

License

MIT License

Readme

Keywords

Package Sidebar

Install

npm i ua-device-detector

Weekly Downloads

3,598

Version

1.1.8

License

MIT

Unpacked Size

76.7 kB

Total Files

15

Last publish

Collaborators

  • srfrnk