mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 16:08:47 +03:00
update gh site to 0.7.11
This commit is contained in:
parent
0e35c2bbb0
commit
6b17173566
@ -1,9 +1,9 @@
|
|||||||
/**
|
/**
|
||||||
* UAParser.js v0.7.10
|
* UAParser.js v0.7.11
|
||||||
* Lightweight JavaScript-based User-Agent string parser
|
* Lightweight JavaScript-based User-Agent string parser
|
||||||
* https://github.com/faisalman/ua-parser-js
|
* https://github.com/faisalman/ua-parser-js
|
||||||
*
|
*
|
||||||
* Copyright © 2012-2015 Faisal Salman <fyzlman@gmail.com>
|
* Copyright © 2012-2016 Faisal Salman <fyzlman@gmail.com>
|
||||||
* Dual licensed under GPLv2 & MIT
|
* Dual licensed under GPLv2 & MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -16,7 +16,7 @@
|
|||||||
/////////////
|
/////////////
|
||||||
|
|
||||||
|
|
||||||
var LIBVERSION = '0.7.10',
|
var LIBVERSION = '0.7.11',
|
||||||
EMPTY = '',
|
EMPTY = '',
|
||||||
UNKNOWN = '?',
|
UNKNOWN = '?',
|
||||||
FUNC_TYPE = 'function',
|
FUNC_TYPE = 'function',
|
||||||
@ -45,12 +45,15 @@
|
|||||||
|
|
||||||
var util = {
|
var util = {
|
||||||
extend : function (regexes, extensions) {
|
extend : function (regexes, extensions) {
|
||||||
for (var i in extensions) {
|
var margedRegexes = {};
|
||||||
if ("browser cpu device engine os".indexOf(i) !== -1 && extensions[i].length % 2 === 0) {
|
for (var i in regexes) {
|
||||||
regexes[i] = extensions[i].concat(regexes[i]);
|
if (extensions[i] && extensions[i].length % 2 === 0) {
|
||||||
|
margedRegexes[i] = extensions[i].concat(regexes[i]);
|
||||||
|
} else {
|
||||||
|
margedRegexes[i] = regexes[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return regexes;
|
return margedRegexes;
|
||||||
},
|
},
|
||||||
has : function (str1, str2) {
|
has : function (str1, str2) {
|
||||||
if (typeof str1 === "string") {
|
if (typeof str1 === "string") {
|
||||||
@ -63,7 +66,10 @@
|
|||||||
return str.toLowerCase();
|
return str.toLowerCase();
|
||||||
},
|
},
|
||||||
major : function (version) {
|
major : function (version) {
|
||||||
return typeof(version) === STR_TYPE ? version.split(".")[0] : undefined;
|
return typeof(version) === STR_TYPE ? version.replace(/[^\d\.]/g,'').split(".")[0] : undefined;
|
||||||
|
},
|
||||||
|
trim : function (str) {
|
||||||
|
return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -233,9 +239,11 @@
|
|||||||
/(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet
|
/(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet
|
||||||
/(opera).+version\/([\w\.]+)/i, // Opera > 9.80
|
/(opera).+version\/([\w\.]+)/i, // Opera > 9.80
|
||||||
/(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80
|
/(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80
|
||||||
|
|
||||||
], [NAME, VERSION], [
|
], [NAME, VERSION], [
|
||||||
|
|
||||||
|
/(OPiOS)[\/\s]+([\w\.]+)/i // Opera mini on iphone >= 8.0
|
||||||
|
], [[NAME, 'Opera Mini'], VERSION], [
|
||||||
|
|
||||||
/\s(opr)\/([\w\.]+)/i // Opera Webkit
|
/\s(opr)\/([\w\.]+)/i // Opera Webkit
|
||||||
], [[NAME, 'Opera'], VERSION], [
|
], [[NAME, 'Opera'], VERSION], [
|
||||||
|
|
||||||
@ -267,10 +275,16 @@
|
|||||||
/(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon
|
/(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon
|
||||||
], [[NAME, /_/g, ' '], VERSION], [
|
], [[NAME, /_/g, ' '], VERSION], [
|
||||||
|
|
||||||
/(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i,
|
/\swv\).+(chrome)\/([\w\.]+)/i // Chrome WebView
|
||||||
// Chrome/OmniWeb/Arora/Tizen/Nokia
|
], [NAME, [VERSION, /(.+)/, 'WebView $1']], [
|
||||||
/(qqbrowser)[\/\s]?([\w\.]+)/i
|
|
||||||
// QQBrowser
|
/(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i // Chrome/OmniWeb/Arora/Tizen/Nokia
|
||||||
|
], [NAME, VERSION], [
|
||||||
|
|
||||||
|
/(MicroMessenger)\/([\w\.]+)/i // WeChat
|
||||||
|
], [[NAME, 'WeChat'], VERSION], [
|
||||||
|
|
||||||
|
/(qqbrowser)[\/\s]?([\w\.]+)/i // QQBrowser
|
||||||
], [NAME, VERSION], [
|
], [NAME, VERSION], [
|
||||||
|
|
||||||
/(uc\s?browser)[\/\s]?([\w\.]+)/i,
|
/(uc\s?browser)[\/\s]?([\w\.]+)/i,
|
||||||
@ -469,6 +483,9 @@
|
|||||||
|
|
||||||
device : [[
|
device : [[
|
||||||
|
|
||||||
|
/hbbtv\/\d+\.\d+\.\d+\s+\([\w\s]*;\s*(\w[^;]*);([^;]*)/i // HbbTV devices
|
||||||
|
], [[VENDOR, util.trim], [MODEL, util.trim], [TYPE, SMARTTV]], [
|
||||||
|
|
||||||
/\((ipad|playbook);[\w\s\);-]+(rim|apple)/i // iPad/PlayBook
|
/\((ipad|playbook);[\w\s\);-]+(rim|apple)/i // iPad/PlayBook
|
||||||
], [MODEL, VENDOR, [TYPE, TABLET]], [
|
], [MODEL, VENDOR, [TYPE, TABLET]], [
|
||||||
|
|
||||||
@ -480,6 +497,7 @@
|
|||||||
|
|
||||||
/(archos)\s(gamepad2?)/i, // Archos
|
/(archos)\s(gamepad2?)/i, // Archos
|
||||||
/(hp).+(touchpad)/i, // HP TouchPad
|
/(hp).+(touchpad)/i, // HP TouchPad
|
||||||
|
/(hp).+(tablet)/i, // HP Tablet
|
||||||
/(kindle)\/([\w\.]+)/i, // Kindle
|
/(kindle)\/([\w\.]+)/i, // Kindle
|
||||||
/\s(nook)[\w\s]+build\/(\w+)/i, // Nook
|
/\s(nook)[\w\s]+build\/(\w+)/i, // Nook
|
||||||
/(dell)\s(strea[kpr\s\d]*[\dko])/i // Dell Streak
|
/(dell)\s(strea[kpr\s\d]*[\dko])/i // Dell Streak
|
||||||
@ -538,6 +556,9 @@
|
|||||||
/(nexus\s9)/i // HTC Nexus 9
|
/(nexus\s9)/i // HTC Nexus 9
|
||||||
], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [
|
], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [
|
||||||
|
|
||||||
|
/(microsoft);\s(lumia[\s\w]+)/i // Microsoft Lumia
|
||||||
|
], [VENDOR, MODEL, [TYPE, MOBILE]], [
|
||||||
|
|
||||||
/[\s\(;](xbox(?:\sone)?)[\s\);]/i // Microsoft Xbox
|
/[\s\(;](xbox(?:\sone)?)[\s\);]/i // Microsoft Xbox
|
||||||
], [MODEL, [VENDOR, 'Microsoft'], [TYPE, CONSOLE]], [
|
], [MODEL, [VENDOR, 'Microsoft'], [TYPE, CONSOLE]], [
|
||||||
/(kin\.[onetw]{3})/i // Microsoft Kin
|
/(kin\.[onetw]{3})/i // Microsoft Kin
|
||||||
@ -555,12 +576,12 @@
|
|||||||
/android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n8000|sgh-t8[56]9|nexus 10))/i,
|
/android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n8000|sgh-t8[56]9|nexus 10))/i,
|
||||||
/((SM-T\w+))/i
|
/((SM-T\w+))/i
|
||||||
], [[VENDOR, 'Samsung'], MODEL, [TYPE, TABLET]], [ // Samsung
|
], [[VENDOR, 'Samsung'], MODEL, [TYPE, TABLET]], [ // Samsung
|
||||||
/((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-n900))/i,
|
/((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i,
|
||||||
/(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i,
|
/(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i,
|
||||||
/sec-((sgh\w+))/i
|
/sec-((sgh\w+))/i
|
||||||
], [[VENDOR, 'Samsung'], MODEL, [TYPE, MOBILE]], [
|
], [[VENDOR, 'Samsung'], MODEL, [TYPE, MOBILE]], [
|
||||||
/(samsung);smarttv/i
|
/hbbtv.+maple;(\d+)/i
|
||||||
], [VENDOR, MODEL, [TYPE, SMARTTV]], [
|
], [[MODEL, /^/, 'SmartTV'], [VENDOR, 'Samsung'], [TYPE, SMARTTV]], [
|
||||||
|
|
||||||
/\(dtv[\);].+(aquos)/i // Sharp
|
/\(dtv[\);].+(aquos)/i // Sharp
|
||||||
], [MODEL, [VENDOR, 'Sharp'], [TYPE, SMARTTV]], [
|
], [MODEL, [VENDOR, 'Sharp'], [TYPE, SMARTTV]], [
|
||||||
@ -599,8 +620,8 @@
|
|||||||
/android.+(mi[\s\-_]*(?:one|one[\s_]plus)?[\s_]*(?:\d\w)?)\s+build/i // Xiaomi Mi
|
/android.+(mi[\s\-_]*(?:one|one[\s_]plus)?[\s_]*(?:\d\w)?)\s+build/i // Xiaomi Mi
|
||||||
], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [
|
], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [
|
||||||
|
|
||||||
/\s(tablet)[;\/\s]/i, // Unidentifiable Tablet
|
/\s(tablet)[;\/]/i, // Unidentifiable Tablet
|
||||||
/\s(mobile)[;\/\s]/i // Unidentifiable Mobile
|
/\s(mobile)(?:[;\/]|\ssafari)/i // Unidentifiable Mobile
|
||||||
], [[TYPE, util.lowerize], VENDOR, MODEL]
|
], [[TYPE, util.lowerize], VENDOR, MODEL]
|
||||||
|
|
||||||
/*//////////////////////////
|
/*//////////////////////////
|
||||||
@ -799,7 +820,6 @@
|
|||||||
ua = uastring;
|
ua = uastring;
|
||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
this.setUA(ua);
|
|
||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user