-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
12 changed files
with
577 additions
and
73 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
{ | ||
"name": "ua-parser-js", | ||
"version": "1.0.39", | ||
"version": "1.0.40", | ||
"authors": [ | ||
"Faisal Salman <[email protected]>" | ||
], | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
{ | ||
"title": "UAParser.js", | ||
"name": "ua-parser-js", | ||
"version": "1.0.39", | ||
"version": "1.0.40", | ||
"author": "Faisal Salman <[email protected]> (http://faisalman.com)", | ||
"description": "Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data. Supports browser & node.js environment", | ||
"keywords": [ | ||
|
@@ -206,8 +206,8 @@ | |
"url": "https://paypal.me/faisalman" | ||
}, | ||
{ | ||
"type": "github", | ||
"url": "https://github.com/sponsors/faisalman" | ||
"type": "github", | ||
"url": "https://github.com/sponsors/faisalman" | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
///////////////////////////////////////////////////////////////////////////////// | ||
/* UAParser.js v1.0.39 | ||
Copyright © 2012-2021 Faisal Salman <[email protected]> | ||
/* UAParser.js v1.0.40 | ||
Copyright © 2012-2024 Faisal Salman <[email protected]> | ||
MIT License *//* | ||
Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data. | ||
Supports browser & node.js environment. | ||
|
@@ -17,7 +17,7 @@ | |
///////////// | ||
|
||
|
||
var LIBVERSION = '1.0.39', | ||
var LIBVERSION = '1.0.40', | ||
EMPTY = '', | ||
UNKNOWN = '?', | ||
FUNC_TYPE = 'function', | ||
|
@@ -232,17 +232,19 @@ | |
// Mixed | ||
/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i // Baidu | ||
], [VERSION, [NAME, 'Baidu']], [ | ||
/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i // Maxthon | ||
], [VERSION, [NAME, 'Maxthon']], [ | ||
/(kindle)\/([\w\.]+)/i, // Kindle | ||
/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i, | ||
// Lunascape/Maxthon/Netfront/Jasmine/Blazer/Sleipnir | ||
// Trident based | ||
/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser | ||
/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i, // Avant/IEMobile/SlimBrowser/SlimBoat/Slimjet | ||
/(?:ms|\()(ie) ([\w\.]+)/i, // Internet Explorer | ||
|
||
// Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon | ||
/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i, | ||
// Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio | ||
/(heytap|ovi)browser\/([\d\.]+)/i, // HeyTap/Ovi | ||
// Blink/Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon | ||
/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i, | ||
// Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio/Dragon | ||
/(heytap|ovi|115)browser\/([\d\.]+)/i, // HeyTap/Ovi/115 | ||
/(weibo)__([\d\.]+)/i // Weibo | ||
], [NAME, VERSION], [ | ||
/quark(?:pc)?\/([-\w\.]+)/i // Quark | ||
|
@@ -276,30 +278,31 @@ | |
/coast\/([\w\.]+)/i // Opera Coast | ||
], [VERSION, [NAME, OPERA+' Coast']], [ | ||
/miuibrowser\/([\w\.]+)/i // MIUI Browser | ||
], [VERSION, [NAME, 'MIUI '+BROWSER]], [ | ||
/fxios\/([-\w\.]+)/i // Firefox for iOS | ||
], [VERSION, [NAME, 'MIUI' + SUFFIX_BROWSER]], [ | ||
/fxios\/([\w\.-]+)/i // Firefox for iOS | ||
], [VERSION, [NAME, FIREFOX]], [ | ||
/\bqihu|(qi?ho?o?|360)browser/i // 360 | ||
], [[NAME, '360' + SUFFIX_BROWSER]], [ | ||
/\bqihoobrowser\/?([\w\.]*)/i // 360 | ||
], [VERSION, [NAME, '360']], [ | ||
/\b(qq)\/([\w\.]+)/i // QQ | ||
], [[NAME, /(.+)/, '$1Browser'], VERSION], [ | ||
/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i | ||
], [[NAME, /(.+)/, '$1' + SUFFIX_BROWSER], VERSION], [ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser | ||
/samsungbrowser\/([\w\.]+)/i // Samsung Internet | ||
], [VERSION, [NAME, SAMSUNG + ' Internet']], [ | ||
/(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon | ||
], [[NAME, /_/g, ' '], VERSION], [ | ||
/metasr[\/ ]?([\d\.]+)/i // Sogou Explorer | ||
], [VERSION, [NAME, 'Sogou Explorer']], [ | ||
/(sogou)mo\w+\/([\d\.]+)/i // Sogou Mobile | ||
], [[NAME, 'Sogou Mobile'], VERSION], [ | ||
/(electron)\/([\w\.]+) safari/i, // Electron-based App | ||
/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, // Tesla | ||
/m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i // QQBrowser/2345 Browser | ||
/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i // QQ/2345 | ||
], [NAME, VERSION], [ | ||
/(lbbrowser|rekonq)/i, // LieBao Browser/Rekonq | ||
/\[(linkedin)app\]/i // LinkedIn App for iOS & Android | ||
], [NAME], [ | ||
/ome\/([\w\.]+) \w* ?(iron) saf/i, // Iron | ||
/ome\/([\w\.]+).+qihu (360)[es]e/i // 360 | ||
], [VERSION, NAME], [ | ||
|
||
// WebView | ||
/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i // Facebook App for iOS & Android | ||
|
@@ -343,7 +346,7 @@ | |
// Gecko based | ||
/(navigator|netscape\d?)\/([-\w\.]+)/i // Netscape | ||
], [[NAME, 'Netscape'], VERSION], [ | ||
/(wolvic)\/([\w\.]+)/i // Wolvic | ||
/(wolvic|librewolf)\/([\w\.]+)/i // Wolvic/LibreWolf | ||
], [NAME, VERSION], [ | ||
/mobile vr; rv:([\w\.]+)\).+firefox/i // Firefox Reality | ||
], [VERSION, [NAME, FIREFOX+' Reality']], [ | ||
|
@@ -426,10 +429,14 @@ | |
/\b(sh-?[altvz]?\d\d[a-ekm]?)/i | ||
], [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]], [ | ||
|
||
// Honor | ||
/(?:honor)([-\w ]+)[;\)]/i | ||
], [MODEL, [VENDOR, 'Honor'], [TYPE, MOBILE]], [ | ||
|
||
// Huawei | ||
/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i | ||
], [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]], [ | ||
/(?:huawei|honor)([-\w ]+)[;\)]/i, | ||
/(?:huawei)([-\w ]+)[;\)]/i, | ||
/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i | ||
], [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]], [ | ||
|
||
|
@@ -494,7 +501,7 @@ | |
], [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]], [ | ||
|
||
// Sony | ||
/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i | ||
/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i | ||
], [MODEL, [VENDOR, SONY], [TYPE, MOBILE]], [ | ||
/sony tablet [ps]/i, | ||
/\b(?:sony)?sgp\w+(?: bui|\))/i | ||
|
@@ -557,13 +564,28 @@ | |
/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i | ||
], [MODEL, [VENDOR, 'Ulefone'], [TYPE, MOBILE]], [ | ||
|
||
// Energizer | ||
/; (energy ?\w+)(?: bui|\))/i, | ||
/; energizer ([\w ]+)(?: bui|\))/i | ||
], [MODEL, [VENDOR, 'Energizer'], [TYPE, MOBILE]], [ | ||
|
||
// Cat | ||
/; cat (b35);/i, | ||
/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i | ||
], [MODEL, [VENDOR, 'Cat'], [TYPE, MOBILE]], [ | ||
|
||
// Smartfren | ||
/((?:new )?andromax[\w- ]+)(?: bui|\))/i | ||
], [MODEL, [VENDOR, 'Smartfren'], [TYPE, MOBILE]], [ | ||
|
||
// Nothing | ||
/droid.+; (a(?:015|06[35]|142p?))/i | ||
], [MODEL, [VENDOR, 'Nothing'], [TYPE, MOBILE]], [ | ||
|
||
// MIXED | ||
/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i, | ||
// BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron | ||
/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i, | ||
// BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron/Infinix/Tecno/Micromax/Advan | ||
/; (imo) ((?!tab)[\w ]+?)(?: bui|\))/i, // IMO | ||
/(hp) ([\w ]+\w)/i, // HP iPAQ | ||
/(asus)-?(\w+)/i, // Asus | ||
/(microsoft); (lumia[\w ]+)/i, // Microsoft Lumia | ||
|
@@ -572,6 +594,7 @@ | |
/(oppo) ?([\w ]+) bui/i // OPPO | ||
], [VENDOR, MODEL, [TYPE, MOBILE]], [ | ||
|
||
/(imo) (tab \w+)/i, // IMO | ||
/(kobo)\s(ereader|touch)/i, // Kobo | ||
/(archos) (gamepad2?)/i, // Archos | ||
/(hp).+(touchpad(?!.+tablet)|tablet)/i, // HP TouchPad | ||
|
@@ -701,7 +724,16 @@ | |
], [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]], [ | ||
/droid.+; (wt63?0{2,3})\)/i | ||
], [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]], [ | ||
/(quest( \d| pro)?)/i // Oculus Quest | ||
|
||
/////////////////// | ||
// XR | ||
/////////////////// | ||
|
||
/droid.+; (glass) \d/i // Google Glass | ||
], [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]], [ | ||
/(pico) (4|neo3(?: link|pro)?)/i // Pico | ||
], [VENDOR, MODEL, [TYPE, WEARABLE]], [ | ||
/; (quest( \d| pro)?)/i // Oculus Quest | ||
], [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]], [ | ||
|
||
/////////////////// | ||
|
@@ -734,11 +766,14 @@ | |
/windows.+ edge\/([\w\.]+)/i // EdgeHTML | ||
], [VERSION, [NAME, EDGE+'HTML']], [ | ||
|
||
/(arkweb)\/([\w\.]+)/i // ArkWeb | ||
], [NAME, VERSION], [ | ||
|
||
/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i // Blink | ||
], [VERSION, [NAME, 'Blink']], [ | ||
|
||
/(presto)\/([\w\.]+)/i, // Presto | ||
/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna | ||
/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna/Servo | ||
/ekioh(flow)\/([\w\.]+)/i, // Flow | ||
/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, // KHTML/Tasman/Links | ||
/(icab)[\/ ]([23]\.[\d\.]+)/i, // iCab | ||
|
@@ -772,8 +807,8 @@ | |
|
||
// Mobile OSes | ||
/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i // Android-x86/HarmonyOS | ||
], [VERSION, NAME], [ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS | ||
/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i, | ||
], [VERSION, NAME], [ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS/OpenHarmony | ||
/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish|openharmony)[-\/ ]?([\w\.]*)/i, | ||
/(blackberry)\w*\/([\w\.]*)/i, // Blackberry | ||
/(tizen|kaios)[\/ ]([\w\.]+)/i, // Tizen/KaiOS | ||
/\((series40);/i // Series 40 | ||
|
Oops, something went wrong.