diff --git a/src/ua-parser.js b/src/ua-parser.js index 813f001..4a9b863 100644 --- a/src/ua-parser.js +++ b/src/ua-parser.js @@ -289,6 +289,9 @@ /xiaomi\/miuibrowser\/([\w\.]+)/i // MIUI Browser ], [VERSION, [NAME, 'MIUI Browser']], [ + /(headlesschrome) ([\w\.]+)/i // Chrome Headless + ], [VERSION, [NAME, 'Chrome Headless']], [ + /\swv\).+(chrome)\/([\w\.]+)/i // Chrome WebView ], [[NAME, /(.+)/, '$1 WebView'], VERSION], [ @@ -844,7 +847,7 @@ mapper.rgx.call(os, ua, rgxmap.os); return os; }; - this.getResult = function() { + this.getResult = function () { return { ua : this.getUA(), browser : this.getBrowser(), @@ -932,7 +935,7 @@ if (typeof $ !== UNDEF_TYPE) { var parser = new UAParser(); $.ua = parser.getResult(); - $.ua.get = function() { + $.ua.get = function () { return parser.getUA(); }; $.ua.set = function (uastring) { diff --git a/test/browser-test.json b/test/browser-test.json index 9ec60ca..66dddd0 100644 --- a/test/browser-test.json +++ b/test/browser-test.json @@ -1,4 +1,14 @@ [ + { + "desc" : "Chrome Headless", + "ua" : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome Safari/537.36", + "expect" : + { + "name" : "Chrome Headless", + "version" : "HeadlessChrome", + "major" : "" + } + }, { "desc" : "Android Browser on Galaxy Nexus", "ua" : "Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",