From f43c875b53fbcd6a7633f4e97942c8bb3660720e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carl-Gerhard=20Lindesva=CC=88rd?= Date: Mon, 7 Oct 2024 20:27:15 +0200 Subject: [PATCH] fix(common): handle iPadOS version number --- packages/common/server/parser-user-agent.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/common/server/parser-user-agent.ts b/packages/common/server/parser-user-agent.ts index b99d5867..fe1f6f46 100644 --- a/packages/common/server/parser-user-agent.ts +++ b/packages/common/server/parser-user-agent.ts @@ -45,6 +45,20 @@ const parse = (ua: string): UAParser.IResult => { } } + // Mozilla/5.0 (iPad; iPadOS 18_0; like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/18.0 + if (res.device.model === 'iPad' && !res.os.version) { + const osVersion = ua.match(/iPadOS\s*([0-9_]+)/i); + if (osVersion) { + return { + ...res, + os: { + ...res.os, + version: osVersion[1]!.replace('_', '.'), + }, + }; + } + } + return res; };