|
222 | 222 |
|
223 | 223 | // Presto based
|
224 | 224 | /(opera\smini)\/([\w\.-]+)/i, // Opera Mini
|
225 |
| - /(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet |
| 225 | + /(opera\s[mobiletab]{3,6}).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet |
226 | 226 | /(opera).+version\/([\w\.]+)/i, // Opera > 9.80
|
227 | 227 | /(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80
|
228 | 228 | ], [NAME, VERSION], [
|
|
252 | 252 | /(konqueror)\/([\w\.]+)/i // Konqueror
|
253 | 253 | ], [[NAME, 'Konqueror'], VERSION], [
|
254 | 254 |
|
255 |
| - /(trident).+rv[:\s]([\w\.]+).+like\sgecko/i // IE11 |
| 255 | + /(trident).+rv[:\s]([\w\.]{1,9}).+like\sgecko/i // IE11 |
256 | 256 | ], [[NAME, 'IE'], VERSION], [
|
257 | 257 |
|
258 | 258 | /(edge|edgios|edga|edg)\/((\d+)?[\w\.]+)/i // Microsoft Edge
|
|
362 | 362 | /fxios\/([\w\.-]+)/i // Firefox for iOS
|
363 | 363 | ], [VERSION, [NAME, 'Firefox']], [
|
364 | 364 |
|
365 |
| - /version\/([\w\.]+).+?mobile\/\w+\s(safari)/i // Mobile Safari |
| 365 | + /version\/([\w\.]+)\s.*mobile\/\w+\s(safari)/i // Mobile Safari |
366 | 366 | ], [VERSION, [NAME, 'Mobile Safari']], [
|
367 | 367 |
|
368 |
| - /version\/([\w\.]+).+?(mobile\s?safari|safari)/i // Safari & Safari Mobile |
| 368 | + /version\/([\w\.]+)\s.*(mobile\s?safari|safari)/i // Safari & Safari Mobile |
369 | 369 | ], [VERSION, NAME], [
|
370 | 370 |
|
371 |
| - /webkit.+?(gsa)\/([\w\.]+).+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Google Search Appliance on iOS |
| 371 | + /webkit.+?(gsa)\/([\w\.]+)\s.*(mobile\s?safari|safari)(\/[\w\.]+)/i // Google Search Appliance on iOS |
372 | 372 | ], [[NAME, 'GSA'], VERSION], [
|
373 | 373 |
|
374 | 374 | /webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Safari < 3.0
|
|
387 | 387 |
|
388 | 388 | // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
|
389 | 389 | /(firefox)\/([\w\.]+)\s[\w\s\-]+\/[\w\.]+$/i, // Other Firefox-based
|
390 |
| - /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i, // Mozilla |
| 390 | + /(mozilla)\/([\w\.]+)\s.+rv\:.+gecko\/\d+/i, // Mozilla |
391 | 391 |
|
392 | 392 | // Other
|
393 | 393 | /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i,
|
|
487 | 487 | /(sprint\s(\w+))/i // Sprint Phones
|
488 | 488 | ], [[VENDOR, mapper.str, maps.device.sprint.vendor], [MODEL, mapper.str, maps.device.sprint.model], [TYPE, MOBILE]], [
|
489 | 489 |
|
490 |
| - /(htc)[;_\s-]+([\w\s]+(?=\)|\sbuild)|\w+)/i, // HTC |
| 490 | + /(htc)[;_\s-]{1,2}([\w\s]+(?=\)|\sbuild)|\w+)/i, // HTC |
491 | 491 | /(zte)-(\w*)/i, // ZTE
|
492 | 492 | /(alcatel|geeksphone|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]*)/i
|
493 | 493 | // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
|
|
591 | 591 | ], [MODEL, [VENDOR, 'Google'], [TYPE, MOBILE]], [
|
592 | 592 |
|
593 | 593 | /android.+;\s(\w+)\s+build\/hm\1/i, // Xiaomi Hongmi 'numeric' models
|
594 |
| - /android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i, // Xiaomi Hongmi |
595 |
| - /android.+(redmi[\s\-_]*(?:note|k)?(?:[\s_]?[\w\s]+))(?:\s+build|\))/i, |
| 594 | + /android.+(hm[\s\-_]?note?[\s_]?(?:\d\w)?)\sbuild/i, // Xiaomi Hongmi |
| 595 | + /android.+(redmi[\s\-_]?(?:note|k)?(?:[\s_]?[\w\s]+))(?:\sbuild|\))/i, |
596 | 596 | // Xiaomi Redmi
|
597 |
| - /android.+(mi[\s\-_]*(?:a\d|one|one[\s_]plus|note lte)?[\s_]?(?:\d?\w?)[\s_]*(?:plus)?)\s+build/i |
| 597 | + /android.+(mi[\s\-_]?(?:a\d|one|one[\s_]plus|note lte)?[\s_]?(?:\d?\w?)[\s_]?(?:plus)?)\sbuild/i |
598 | 598 | // Xiaomi Mi
|
599 | 599 | ], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [
|
600 |
| - /android.+(mi[\s\-_]*(?:pad)(?:[\s_]?[\w\s]+))(?:\s+build|\))/i // Mi Pad tablets |
| 600 | + /android.+(mi[\s\-_]?(?:pad)(?:[\s_]?[\w\s]+))(?:\sbuild|\))/i // Mi Pad tablets |
601 | 601 | ],[[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, TABLET]], [
|
602 | 602 | /android.+;\s(m[1-5]\snote)\sbuild/i // Meizu
|
603 | 603 | ], [MODEL, [VENDOR, 'Meizu'], [TYPE, MOBILE]], [
|
|
611 | 611 | /android.+[;\/]\s*(RCT[\d\w]+)\s+build/i // RCA Tablets
|
612 | 612 | ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [
|
613 | 613 |
|
614 |
| - /android.+[;\/\s]+(Venue[\d\s]{2,7})\s+build/i // Dell Venue Tablets |
| 614 | + /android.+[;\/\s](Venue[\d\s]{2,7})\s+build/i // Dell Venue Tablets |
615 | 615 | ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [
|
616 | 616 |
|
617 | 617 | /android.+[;\/]\s*(Q[T|M][\d\w]+)\s+build/i // Verizon Tablet
|
|
669 | 669 | /android.+[;\/]\s*TU_(1491)\s+build/i // Rotor Tablets
|
670 | 670 | ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [
|
671 | 671 |
|
672 |
| - /android.+(KS(.+))\s+build/i // Amazon Kindle Tablets |
673 |
| - ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ |
| 672 | + //android.+(KS(.+))\s+build/i // Amazon Kindle Tablets |
| 673 | + //], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ |
674 | 674 |
|
675 | 675 | /android.+(Gigaset)[\s\-]+(Q\w{1,9})\s+build/i // Gigaset Tablets
|
676 | 676 | ], [VENDOR, MODEL, [TYPE, TABLET]], [
|
|
0 commit comments