From ab97f70094fd1f2ac224f6e6f4c9fe0534820d81 Mon Sep 17 00:00:00 2001 From: Faisal Salman Date: Tue, 10 Sep 2024 20:24:43 +0700 Subject: [PATCH] Backport - Improve browser detection for QQBrowser (cherry picked from commit 1a2ef00509bd72ca18854baeb64dbdc64a8bc64d) --- src/ua-parser.js | 6 ++++-- test/browser-test.json | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ua-parser.js b/src/ua-parser.js index dad87fa..ec6976c 100755 --- a/src/ua-parser.js +++ b/src/ua-parser.js @@ -239,7 +239,7 @@ /(?: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|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo|klar)\/([-\w\.]+)/i, + /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar)\/([-\w\.]+)/i, // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar /(heytap|ovi)browser\/([\d\.]+)/i, // HeyTap/Ovi /(weibo)__([\d\.]+)/i // Weibo @@ -277,7 +277,9 @@ /fxios\/([-\w\.]+)/i // Firefox for iOS ], [VERSION, [NAME, FIREFOX]], [ /\bqihu|(qi?ho?o?|360)browser/i // 360 - ], [[NAME, '360 ' + BROWSER]], [ + ], [[NAME, '360' + SUFFIX_BROWSER]], [ + /\b(qq)\/([\w\.]+)/i // QQ + ], [[NAME, /(.+)/, '$1Browser'], VERSION], [ /(oculus|sailfish|huawei|vivo)browser\/([\w\.]+)/i ], [[NAME, /(.+)/, '$1 ' + BROWSER], VERSION], [ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser /samsungbrowser\/([\w\.]+)/i // Samsung Internet diff --git a/test/browser-test.json b/test/browser-test.json index 635adc1..b3eaf10 100644 --- a/test/browser-test.json +++ b/test/browser-test.json @@ -1904,7 +1904,7 @@ "ua" : "Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A456 QQ/6.5.3.410 V1_IPH_SQ_6.5.3_1_APP_A Pixel/1080 Core/UIWebView NetType/WIFI Mem/26", "expect" : { - "name" : "QQ", + "name" : "QQBrowser", "version" : "6.5.3.410", "major" : "6" } @@ -1914,7 +1914,7 @@ "ua" : "Mozilla/5.0 (Linux; Android 6.0; PRO 6 Build/MRA58K) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile MQQBrowser/6.8 TBS/036824 Safari/537.36 V1_AND_SQ_6.5.8_422_YYB_D PA QQ/6.5.8.2910 NetType/WIFI WebP/0.3.0 Pixel/1080", "expect" : { - "name" : "QQ", + "name" : "QQBrowser", "version" : "6.5.8.2910", "major" : "6" }