From cb242c0242d3a629778168fa1a8b975370502670 Mon Sep 17 00:00:00 2001 From: acailly Date: Tue, 28 Apr 2020 11:37:01 +0200 Subject: [PATCH] handle Firefox on iPad on iOS 13 --- src/parser-os.js | 11 +++++++---- src/parser-platforms.js | 2 +- test/acceptance/useragentstrings.yml | 15 +++++++++++++++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/parser-os.js b/src/parser-os.js index c95992d..4c516dd 100644 --- a/src/parser-os.js +++ b/src/parser-os.js @@ -43,13 +43,16 @@ export default [ /* Firefox on iPad */ { - test: [/Macintosh(.*?) FxiOS(.*?) Version\//], + test: [/Macintosh(.*?) FxiOS(.*?)\//], describe(ua) { - const version = Utils.getSecondMatch(/(Version\/)(\d[\d.]+)/, ua); - return { + const result = { name: OS_MAP.iOS, - version, }; + const version = Utils.getSecondMatch(/(Version\/)(\d[\d.]+)/, ua); + if (version) { + result.version = version; + } + return result; }, }, diff --git a/src/parser-platforms.js b/src/parser-platforms.js index 9c191ba..48b1eb1 100644 --- a/src/parser-platforms.js +++ b/src/parser-platforms.js @@ -59,7 +59,7 @@ export default [ /* Firefox on iPad */ { - test: [/Macintosh(.*?) FxiOS(.*?) Version\//], + test: [/Macintosh(.*?) FxiOS(.*?)\//], describe() { return { type: PLATFORMS_MAP.tablet, diff --git a/test/acceptance/useragentstrings.yml b/test/acceptance/useragentstrings.yml index b2a47de..4df5f1d 100644 --- a/test/acceptance/useragentstrings.yml +++ b/test/acceptance/useragentstrings.yml @@ -1839,6 +1839,21 @@ engine: name: "WebKit" version: "605.1.15" + - + ua: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/24.1 Safari/605.1.15" + spec: + browser: + name: "Firefox" + version: "24.1" + os: + name: "iOS" + platform: + type: "tablet" + vendor: "Apple" + model: "iPad" + engine: + name: "WebKit" + version: "605.1.15" SeaMonkey: - ua: "Mozilla/5.0 (Windows NT 5.2; rv:10.0.1) Gecko/20100101 Firefox/10.0.1 SeaMonkey/2.7.1"