From e9f78ceb8052c78855f549090445aa9972370024 Mon Sep 17 00:00:00 2001 From: Faisal Salman Date: Sat, 8 Nov 2025 10:06:04 +0700 Subject: [PATCH] Add new device vendor: Logitech - G-Cloud https://www.logitechg.com/en-ch/shop/p/cloud-handheld-gaming --- src/enums/ua-parser-enums.js | 1 + src/main/ua-parser.js | 9 +++------ test/data/ua/device/logitech.json | 11 +++++++++++ 3 files changed, 15 insertions(+), 6 deletions(-) create mode 100644 test/data/ua/device/logitech.json diff --git a/src/enums/ua-parser-enums.js b/src/enums/ua-parser-enums.js index b64b992..d6ef646 100644 --- a/src/enums/ua-parser-enums.js +++ b/src/enums/ua-parser-enums.js @@ -256,6 +256,7 @@ const DeviceVendor = Object.freeze({ LAVA: 'Lava', LENOVO: 'Lenovo', LG: 'LG', + LOGITECH: 'Logitech', MEIZU: 'Meizu', MICROMAX: 'Micromax', MICROSOFT: 'Microsoft', diff --git a/src/main/ua-parser.js b/src/main/ua-parser.js index 972fa65..ec31ab9 100755 --- a/src/main/ua-parser.js +++ b/src/main/ua-parser.js @@ -852,12 +852,9 @@ ], [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]], [ /(ouya)/i, // Ouya /(nintendo) (\w+)/i, // Nintendo - /(retroid) (pocket ([^\)]+))/i // Retroid Pocket - ], [VENDOR, MODEL, [TYPE, CONSOLE]], [ - /droid.+; (shield)( bui|\))/i // Nvidia Portable - ], [MODEL, [VENDOR, NVIDIA], [TYPE, CONSOLE]], [ - /droid.+; (rgcube)\)/i // Anbernic - ], [MODEL, [VENDOR, 'Anbernic'], [TYPE, CONSOLE]], [ + /(retroid) (pocket ([^\)]+))/i, // Retroid Pocket + /droid.+; ((shield|rgcube|gr0006))( bui|\))/i // Nvidia Portable/Anbernic/Logitech + ], [[VENDOR, strMapper, { 'Nvidia': 'Shield', 'Anbernic': 'RGCUBE', 'Logitech': 'GR0006' }], MODEL, [TYPE, CONSOLE]], [ /////////////////// // WEARABLES diff --git a/test/data/ua/device/logitech.json b/test/data/ua/device/logitech.json new file mode 100644 index 0000000..d725a4b --- /dev/null +++ b/test/data/ua/device/logitech.json @@ -0,0 +1,11 @@ +[ + { + "desc": "Logitech", + "ua": "Dalvik/2.1.0 (Linux; U; Android 11; GR0006 Build/SQ02K.00.0018)", + "expect": { + "vendor": "Logitech", + "model": "GR0006", + "type": "console" + } + } +] \ No newline at end of file