backendless
Version:
Backendless JavaScript SDK for Node.js and the browser
26 lines (25 loc) • 959 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getUserAgent = getUserAgent;
var _utils = _interopRequireDefault(require("./utils"));
function getUserAgent() {
var ua = 'NodeJS';
if (_utils["default"].isBrowser) {
var navigator = _utils["default"].getWindowNavigator();
ua = navigator.userAgent ? navigator.userAgent.toLowerCase() : 'hybrid-app';
}
var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || /(webkit)[ \/]([\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || /(msie) ([\w.]+)/.exec(ua) || ua.indexOf('compatible') < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || [];
var matched = {
browser: match[1] || '',
version: match[2] || '0'
};
var browser = {};
if (matched.browser) {
browser[matched.browser] = true;
browser.version = matched.version;
}
return browser;
}