ua-parser-js 0.7.25 → 0.7.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ua-parser-js might be problematic. Click here for more details.

@@ -1,30 +1,129 @@
1
1
  [{
2
- "desc": "Asus Nexus 7",
2
+ "desc": "ASUS Nexus 7",
3
3
  "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 7 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.99 Safari/537.36",
4
4
  "expect": {
5
- "vendor": "Asus",
5
+ "vendor": "ASUS",
6
6
  "model": "Nexus 7",
7
7
  "type": "tablet"
8
8
  }
9
9
  },
10
10
  {
11
- "desc": "Asus Padfone",
11
+ "desc": "ASUS Padfone",
12
12
  "ua": "Mozilla/5.0 (Linux; Android 4.1.1; PadFone 2 Build/JRO03L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.117 Safari/537.36",
13
13
  "expect": {
14
- "vendor": "Asus",
14
+ "vendor": "ASUS",
15
15
  "model": "PadFone",
16
16
  "type": "tablet"
17
17
  }
18
18
  },
19
19
  {
20
- "desc": "Asus ZenPad 10",
20
+ "desc": "ASUS ZenPad 10",
21
21
  "ua": "Mozilla/5.0 (Linux; Android 6.0; P00C Build/MRA58K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Safari/537.36",
22
22
  "expect": {
23
- "vendor": "Asus",
23
+ "vendor": "ASUS",
24
24
  "model": "P00C",
25
25
  "type": "tablet"
26
26
  }
27
27
  },
28
+ {
29
+ "desc": "ASUS ROG",
30
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; ZS600KL Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36",
31
+ "expect": {
32
+ "vendor": "ASUS",
33
+ "model": "ZS600KL",
34
+ "type": "mobile"
35
+ }
36
+ },
37
+ {
38
+ "desc": "ASUS ROG II",
39
+ "ua": "Mozilla/5.0 (Linux; Android 9; ASUS_I001DA Build/PKQ1.190414.001; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36",
40
+ "expect": {
41
+ "vendor": "ASUS",
42
+ "model": "I001DA",
43
+ "type": "mobile"
44
+ }
45
+ },
46
+ {
47
+ "desc": "ASUS Zenfone 2",
48
+ "ua": "Mozilla/5.0 (Linux; Android 5.0; ASUS ZenFone 2 Build/LRX22C) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile Safari/537.36",
49
+ "expect": {
50
+ "vendor": "ASUS",
51
+ "model": "ZenFone 2",
52
+ "type": "mobile"
53
+ }
54
+ },
55
+ {
56
+ "desc": "ASUS Zenfone 3 Deluxe",
57
+ "ua": "Mozilla/5.0 (Linux; Android 6.0; ASUS_Z016D Build/MXB48T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.132 Mobile Safari/537.36",
58
+ "expect": {
59
+ "vendor": "ASUS",
60
+ "model": "Z016D",
61
+ "type": "mobile"
62
+ }
63
+ },
64
+ {
65
+ "desc": "ASUS Zenfone 5",
66
+ "ua": "Mozilla/5.0 (Linux; Android 8.0; ZE620KL Build/OPR1.170623.032) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36",
67
+ "expect": {
68
+ "vendor": "ASUS",
69
+ "model": "ZE620KL",
70
+ "type": "mobile"
71
+ }
72
+ },
73
+ {
74
+ "desc": "ASUS Zenfone 7",
75
+ "ua": "Mozilla/5.0 (Linux; Android 10; ASUS_I002D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.81 Mobile Safari/537.36",
76
+ "expect": {
77
+ "vendor": "ASUS",
78
+ "model": "I002D",
79
+ "type": "mobile"
80
+ }
81
+ },
82
+ {
83
+ "desc": "ASUS Zenfone 7 Pro",
84
+ "ua": "Mozilla/5.0 (Linux; Android 10; ZS671KS) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Mobile Safari/537.36",
85
+ "expect": {
86
+ "vendor": "ASUS",
87
+ "model": "ZS671KS",
88
+ "type": "mobile"
89
+ }
90
+ },
91
+ {
92
+ "desc": "ASUS Zenfone Max Pro (M1)",
93
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X00TD Build/OPM1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.137 Mobile Safari/537.36",
94
+ "expect": {
95
+ "vendor": "ASUS",
96
+ "model": "X00TD",
97
+ "type": "mobile"
98
+ }
99
+ },
100
+ {
101
+ "desc": "ASUS Zenfone Max M2",
102
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X01AD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36",
103
+ "expect": {
104
+ "vendor": "ASUS",
105
+ "model": "X01AD",
106
+ "type": "mobile"
107
+ }
108
+ },
109
+ {
110
+ "desc": "ASUS Zenfone Max Pro M2",
111
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X01BDA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36",
112
+ "expect": {
113
+ "vendor": "ASUS",
114
+ "model": "X01BDA",
115
+ "type": "mobile"
116
+ }
117
+ },
118
+ {
119
+ "desc": "ASUS Zenfone Go",
120
+ "ua": "Mozilla/5.0 (Linux; Android 6.0; ASUS_X009DA Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Mobile Safari/537.36",
121
+ "expect": {
122
+ "vendor": "ASUS",
123
+ "model": "X009DA",
124
+ "type": "mobile"
125
+ }
126
+ },
28
127
  {
29
128
  "desc": "Acer Iconia A1-810",
30
129
  "ua": "Mozilla/5.0 (Linux; Android 4.2.2; A1-810 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.109 Safari/537.36",
@@ -65,8 +164,8 @@
65
164
  "desc": "HTC Evo Shift 4G",
66
165
  "ua": "Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; Sprint APA7373KT Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0",
67
166
  "expect": {
68
- "vendor": "HTC",
69
- "model": "Evo Shift 4G",
167
+ "vendor": "Sprint",
168
+ "model": "APA7373KT",
70
169
  "type": "mobile"
71
170
  }
72
171
  },
@@ -124,6 +223,15 @@
124
223
  "type": "tablet"
125
224
  }
126
225
  },
226
+ {
227
+ "desc": "iPad Air",
228
+ "ua": "Mozilla/5.0 (iPad; CPU OS 12_4_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPad4,1;FBMD/iPad;FBSN/iOS;FBSV/12.4.5;FBSS/2;FBID/tablet;FBLC/en_US;FBOP/5;FBCR/]",
229
+ "expect": {
230
+ "vendor": "Apple",
231
+ "model": "iPad",
232
+ "type": "tablet"
233
+ }
234
+ },
127
235
  {
128
236
  "desc": "iPod",
129
237
  "ua": "Mozilla/5.0 (iPod touch; CPU iPhone OS 7_0_4 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11B554a Safari/9537.53",
@@ -160,6 +268,15 @@
160
268
  "type": "tablet"
161
269
  }
162
270
  },
271
+ {
272
+ "desc": "LG K500",
273
+ "ua": "Mozilla/5.0 (Linux; Android 6.0.1; LG-K500 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36",
274
+ "expect": {
275
+ "vendor": "LG",
276
+ "model": "K500",
277
+ "type": "mobile"
278
+ }
279
+ },
163
280
  {
164
281
  "desc": "LG Nexus 4",
165
282
  "ua": "Mozilla/5.0 (Linux; Android 4.2.1; Nexus 4 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19",
@@ -169,6 +286,15 @@
169
286
  "type": "mobile"
170
287
  }
171
288
  },
289
+ {
290
+ "desc": "LG Nexus 4",
291
+ "ua": "Mozilla/5.0 (Linux; U; Android 4.3; en-us; Google Nexus 4 - 4.3 - API 18 - 768x1280 Build/JLS36G) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
292
+ "expect": {
293
+ "vendor": "LG",
294
+ "model": "Nexus 4",
295
+ "type": "mobile"
296
+ }
297
+ },
172
298
  {
173
299
  "desc": "LG Nexus 5",
174
300
  "ua": "Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19",
@@ -214,6 +340,15 @@
214
340
  "type": "mobile"
215
341
  }
216
342
  },
343
+ {
344
+ "desc": "Microsoft Surface Duo",
345
+ "ua": "Dalvik/2.1.0 (Linux; U; Android 10; Surface Duo Build/2020.1014.61)",
346
+ "expect": {
347
+ "vendor": "Microsoft",
348
+ "model": "Surface Duo",
349
+ "type": "tablet"
350
+ }
351
+ },
217
352
  {
218
353
  "desc": "Motorola Moto X",
219
354
  "ua": "Mozilla/5.0 (Linux; Android 4.4.4; XT1097 Build/KXE21.187-38) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.109 Mobile Safari/537.36",
@@ -271,7 +406,34 @@
271
406
  }
272
407
  },
273
408
  {
274
- "desc": "Motorola Droid RAZR 4G",
409
+ "desc": "iPhone SE",
410
+ "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone8,4;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/2;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
411
+ "expect": {
412
+ "vendor": "Apple",
413
+ "model": "iPhone",
414
+ "type": "mobile"
415
+ }
416
+ },
417
+ {
418
+ "desc": "iPhone 11 Pro Max",
419
+ "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone12,5;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/3;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
420
+ "expect": {
421
+ "vendor": "Apple",
422
+ "model": "iPhone",
423
+ "type": "mobile"
424
+ }
425
+ },
426
+ {
427
+ "desc": "iPhone XS",
428
+ "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone11,2;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/3;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
429
+ "expect": {
430
+ "vendor": "Apple",
431
+ "model": "iPhone",
432
+ "type": "mobile"
433
+ }
434
+ },
435
+ {
436
+ "desc": "iPod touch",
275
437
  "ua": "Mozilla/5.0 (iPod touch; CPU iPhone OS 7_0_2 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A501 Safari/9537.53",
276
438
  "expect": {
277
439
  "vendor": "Apple",
@@ -333,6 +495,15 @@
333
495
  "type": "mobile"
334
496
  }
335
497
  },
498
+ {
499
+ "desc": "Nokia N9",
500
+ "ua": "Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",
501
+ "expect": {
502
+ "vendor": "Nokia",
503
+ "model": "N9",
504
+ "type": "mobile"
505
+ }
506
+ },
336
507
  {
337
508
  "desc": "OnePlus One",
338
509
  "ua": "Mozilla/5.0 (Linux; Android 4.4.4; A0001 Build/KTU84Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36",
@@ -342,6 +513,15 @@
342
513
  "type": "mobile"
343
514
  }
344
515
  },
516
+ {
517
+ "desc": "OnePlus One",
518
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.2; OnePlus One A0001 Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.117 Mobile Safari/537.36",
519
+ "expect": {
520
+ "vendor": "OnePlus",
521
+ "model": "1",
522
+ "type": "mobile"
523
+ }
524
+ },
345
525
  {
346
526
  "desc": "OnePlus 3",
347
527
  "ua": "Mozilla/5.0 (Linux; Android 7.1.1; ONEPLUS A3000 Build/NMF26F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.98 Mobile Safari/537.36",
@@ -369,6 +549,51 @@
369
549
  "type": "mobile"
370
550
  }
371
551
  },
552
+ {
553
+ "desc": "OnePlus 8T",
554
+ "ua": "Mozilla/5.0 (Linux; Android 11; KB2005) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.127 Mobile Safari/537.36",
555
+ "expect": {
556
+ "vendor": "OnePlus",
557
+ "model": "KB2005",
558
+ "type": "mobile"
559
+ }
560
+ },
561
+ {
562
+ "desc": "OnePlus 8 Pro",
563
+ "ua": "Mozilla/5.0 (Linux; Android 10; IN2025) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.119 Mobile Safari/537.36",
564
+ "expect": {
565
+ "vendor": "OnePlus",
566
+ "model": "IN2025",
567
+ "type": "mobile"
568
+ }
569
+ },
570
+ {
571
+ "desc": "OnePlus Nord N100",
572
+ "ua": "Mozilla/5.0 (Linux; Android 10; BE2015 Build/QKQ1.200719.002; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Mobile Safari/537.36",
573
+ "expect": {
574
+ "vendor": "OnePlus",
575
+ "model": "BE2015",
576
+ "type": "mobile"
577
+ }
578
+ },
579
+ {
580
+ "desc": "OnePlus Nord N10 5G",
581
+ "ua": "Mozilla/5.0 (Linux; Android 10; BE2029) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.185 Mobile Safari/537.36",
582
+ "expect": {
583
+ "vendor": "OnePlus",
584
+ "model": "BE2029",
585
+ "type": "mobile"
586
+ }
587
+ },
588
+ {
589
+ "desc": "OPPO Neo",
590
+ "ua": "Mozilla/5.0 (Linux; U; Android 4.2.2; zh-cn; R831T Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 OppoBrowser/3.3.2 Mobile Safari/534.30",
591
+ "expect": {
592
+ "vendor": "OPPO",
593
+ "model": "R831T",
594
+ "type": "mobile"
595
+ }
596
+ },
372
597
  {
373
598
  "desc": "OPPO R7s",
374
599
  "ua": "Mozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; OPPO R7s Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 Chrome/37.0.0.0 MQQBrowser/7.1 Mobile Safari/537.36",
@@ -378,6 +603,105 @@
378
603
  "type": "mobile"
379
604
  }
380
605
  },
606
+ {
607
+ "desc": "OPPO A3s",
608
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; CPH1803 Build/OPM1.171019.026; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 Mobile Safari/537.36",
609
+ "expect": {
610
+ "vendor": "OPPO",
611
+ "model": "CPH1803",
612
+ "type": "mobile"
613
+ }
614
+ },
615
+ {
616
+ "desc": "OPPO A12",
617
+ "ua": "Mozilla/5.0 (Linux; Android 9; CPH2083) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.116 Mobile Safari/537.36",
618
+ "expect": {
619
+ "vendor": "OPPO",
620
+ "model": "CPH2083",
621
+ "type": "mobile"
622
+ }
623
+ },
624
+ {
625
+ "desc": "OPPO Reno",
626
+ "ua": "Mozilla/5.0 (Linux; Android 9; PCAT00 Build/PKQ1.190101.001; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36",
627
+ "expect": {
628
+ "vendor": "OPPO",
629
+ "model": "PCAT00",
630
+ "type": "mobile"
631
+ }
632
+ },
633
+ {
634
+ "desc": "OPPO Reno3 Pro 5G",
635
+ "ua": "Mozilla/5.0 (Linux; Android 10; PCLM50) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.117 Mobile Safari/537.36",
636
+ "expect": {
637
+ "vendor": "OPPO",
638
+ "model": "PCLM50",
639
+ "type": "mobile"
640
+ }
641
+ },
642
+ {
643
+ "desc": "OPPO Reno4 SE",
644
+ "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; PEAM00 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
645
+ "expect": {
646
+ "vendor": "OPPO",
647
+ "model": "PEAM00",
648
+ "type": "mobile"
649
+ }
650
+ },
651
+ {
652
+ "desc": "OPPO Reno4 5G",
653
+ "ua": "Mozilla/5.0 (Linux; Android 10; PDPM00 Build/QKQ1.200216.002; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 Mobile Safari/537.36",
654
+ "expect": {
655
+ "vendor": "OPPO",
656
+ "model": "PDPM00",
657
+ "type": "mobile"
658
+ }
659
+ },
660
+ {
661
+ "desc": "OPPO Reno4 Pro 5G",
662
+ "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; PDNT00 Build/QKQ1.200216.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
663
+ "expect": {
664
+ "vendor": "OPPO",
665
+ "model": "PDNT00",
666
+ "type": "mobile"
667
+ }
668
+ },
669
+ {
670
+ "desc": "OPPO Find X",
671
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; PAFM00 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36",
672
+ "expect": {
673
+ "vendor": "OPPO",
674
+ "model": "PAFM00",
675
+ "type": "mobile"
676
+ }
677
+ },
678
+ {
679
+ "desc": "OPPO Find 7a",
680
+ "ua": "Mozilla/5.0 (Linux; U; Android 4.3; xx-xx; X9007 Build/JLS36C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
681
+ "expect": {
682
+ "vendor": "OPPO",
683
+ "model": "X9007",
684
+ "type": "mobile"
685
+ }
686
+ },
687
+ {
688
+ "desc": "Realme C1",
689
+ "ua": "Mozilla/5.0 (Linux; Android 8.1; RMX1811 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36",
690
+ "expect": {
691
+ "vendor": "Realme",
692
+ "model": "RMX1811",
693
+ "type": "mobile"
694
+ }
695
+ },
696
+ {
697
+ "desc": "Realme Narzo 20",
698
+ "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; RMX2193 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
699
+ "expect": {
700
+ "vendor": "Realme",
701
+ "model": "RMX2193",
702
+ "type": "mobile"
703
+ }
704
+ },
381
705
  {
382
706
  "desc": "Philips SmartTV",
383
707
  "ua": "Opera/9.80 HbbTV/1.1.1 (; Philips; ; ; ; ) NETTV/4.0.2; en) Version/11.60",
@@ -406,12 +730,66 @@
406
730
  }
407
731
  },
408
732
  {
409
- "desc": "Samsung Galaxy Note 8",
410
- "ua": "Mozilla/5.0 (Linux; Android 4.2.2; GT-N5100 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.141 Safari/537.36",
733
+ "desc": "Samsung Galaxy A21s",
734
+ "ua": "Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-A217F) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/11.0 Chrome/75.0.3770.143 Mobile Safari/537.36",
411
735
  "expect": {
412
736
  "vendor": "Samsung",
413
- "model": "GT-N5100",
414
- "type": "tablet"
737
+ "model": "SM-A217F",
738
+ "type": "mobile"
739
+ }
740
+ },
741
+ {
742
+ "desc": "Samsung Galaxy A31",
743
+ "ua": "Mozilla/5.0 (Linux; Android 10; SM-A315G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36",
744
+ "expect": {
745
+ "vendor": "Samsung",
746
+ "model": "SM-A315G",
747
+ "type": "mobile"
748
+ }
749
+ },
750
+ {
751
+ "desc": "Samsung Galaxy A50",
752
+ "ua": "Mozilla/5.0 (Linux; Android 9; SM-A505F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.105 Mobile Safari/537.36",
753
+ "expect": {
754
+ "vendor": "Samsung",
755
+ "model": "SM-A505F",
756
+ "type": "mobile"
757
+ }
758
+ },
759
+ {
760
+ "desc": "Samsung Galaxy A80",
761
+ "ua": "Mozilla/5.0 (Linux; Android 9; SM-A805F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.112 Mobile Safari/537.36",
762
+ "expect": {
763
+ "vendor": "Samsung",
764
+ "model": "SM-A805F",
765
+ "type": "mobile"
766
+ }
767
+ },
768
+ {
769
+ "desc": "Samsung Galaxy Fold",
770
+ "ua": "Mozilla/5.0 (Linux; Android 9; SAMSUNG SM-F900U Build/PPR1.180610.011) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.2 Chrome/67.0.3396.87 Mobile Safari/537.36",
771
+ "expect": {
772
+ "vendor": "Samsung",
773
+ "model": "SM-F900U",
774
+ "type": "mobile"
775
+ }
776
+ },
777
+ {
778
+ "desc": "Samsung Galaxy S10E",
779
+ "ua": "Mozilla/5.0 (Linux; Android 9; SM-G970F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Mobile Safari/537.36",
780
+ "expect": {
781
+ "vendor": "Samsung",
782
+ "model": "SM-G970F",
783
+ "type": "mobile"
784
+ }
785
+ },
786
+ {
787
+ "desc": "Samsung Galaxy Note 10+",
788
+ "ua": "Mozilla/5.0 (Linux; Android 9; SM-N976V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.89 Mobile Safari/537.36",
789
+ "expect": {
790
+ "vendor": "Samsung",
791
+ "model": "SM-N976V",
792
+ "type": "mobile"
415
793
  }
416
794
  },
417
795
  {
@@ -423,6 +801,15 @@
423
801
  "type": "mobile"
424
802
  }
425
803
  },
804
+ {
805
+ "desc": "Samsung Galaxy Note 8",
806
+ "ua": "Mozilla/5.0 (Linux; Android 4.2.2; GT-N5100 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.141 Safari/537.36",
807
+ "expect": {
808
+ "vendor": "Samsung",
809
+ "model": "GT-N5100",
810
+ "type": "tablet"
811
+ }
812
+ },
426
813
  {
427
814
  "desc": "Samsung SM-T231",
428
815
  "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T231 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
@@ -442,30 +829,30 @@
442
829
  }
443
830
  },
444
831
  {
445
- "desc": "Samsung SM-T700",
446
- "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T700 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
832
+ "desc": "Samsung Galaxy Tab S7",
833
+ "ua": "Mozilla/5.0 (Linux; Android 10; SM-T870) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36",
447
834
  "expect": {
448
835
  "vendor": "Samsung",
449
- "model": "SM-T700",
836
+ "model": "SM-T870",
450
837
  "type": "tablet"
451
838
  }
452
839
  },
453
840
  {
454
- "desc": "Samsung SM-T520",
455
- "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T520 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
841
+ "desc": "Samsung Galaxy Tab S",
842
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T700 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
456
843
  "expect": {
457
844
  "vendor": "Samsung",
458
- "model": "SM-T520",
845
+ "model": "SM-T700",
459
846
  "type": "tablet"
460
847
  }
461
848
  },
462
849
  {
463
- "desc": "Samsung SmartTV2011",
464
- "ua": "HbbTV/1.1.1 (;;;;;) Maple;2011",
850
+ "desc": "Samsung Galaxy Tab Pro 10.1",
851
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T520 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
465
852
  "expect": {
466
853
  "vendor": "Samsung",
467
- "model": "SmartTV2011",
468
- "type": "smarttv"
854
+ "model": "SM-T520",
855
+ "type": "tablet"
469
856
  }
470
857
  },
471
858
  {
@@ -477,6 +864,15 @@
477
864
  "type": "tablet"
478
865
  }
479
866
  },
867
+ {
868
+ "desc": "Samsung SmartTV2011",
869
+ "ua": "HbbTV/1.1.1 (;;;;;) Maple;2011",
870
+ "expect": {
871
+ "vendor": "Samsung",
872
+ "model": "SmartTV2011",
873
+ "type": "smarttv"
874
+ }
875
+ },
480
876
  {
481
877
  "desc": "Samsung SmartTV2012",
482
878
  "ua": "HbbTV/1.1.1 (;Samsung;SmartTV2012;;;) WebKit",
@@ -738,6 +1134,15 @@
738
1134
  "type": "tablet"
739
1135
  }
740
1136
  },
1137
+ {
1138
+ "desc": "Xiaomi POCO X2",
1139
+ "ua": "Mozilla/5.0 (Linux; Android 10; POCO X2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.136 Mobile Safari/537.36",
1140
+ "expect": {
1141
+ "vendor": "Xiaomi",
1142
+ "model": "POCO X2",
1143
+ "type": "mobile"
1144
+ }
1145
+ },
741
1146
  {
742
1147
  "desc": "Xiaomi Redmi 4A",
743
1148
  "ua": "Mozilla/5.0 (Linux; Android 6.0; Redmi 4A Build/MMB29M; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/56.0.2924.87 Mobile Safari/537.36",
@@ -801,6 +1206,15 @@
801
1206
  "type": "console"
802
1207
  }
803
1208
  },
1209
+ {
1210
+ "desc": "PlayStation Vita",
1211
+ "ua": "Mozilla/5.0 (PlayStation Vita 3.52) AppleWebKit/537.73 (KHTML, like Gecko) Silk/3.2",
1212
+ "expect": {
1213
+ "vendor": "Sony",
1214
+ "model": "PlayStation Vita",
1215
+ "type": "console"
1216
+ }
1217
+ },
804
1218
  {
805
1219
  "desc": "Nintendo Switch",
806
1220
  "ua": "Mozilla/5.0 (Nintendo Switch; WifiWebAuthApplet) AppleWebKit/606.4 (KHTML, like Gecko) NF/6.0.1.15.4 NintendoBrowser/5.1.0.20393",
@@ -810,6 +1224,42 @@
810
1224
  "type": "console"
811
1225
  }
812
1226
  },
1227
+ {
1228
+ "desc": "Nintendo WiiU",
1229
+ "ua": "Mozilla/5.0 (Nintendo WiiU) AppleWebKit/536.30 (KHTML, like Gecko) NX/3.0.4.2.9 NintendoBrowser/4.2.0.11146.EU",
1230
+ "expect": {
1231
+ "vendor": "Nintendo",
1232
+ "model": "WiiU",
1233
+ "type": "console"
1234
+ }
1235
+ },
1236
+ {
1237
+ "desc": "Nintendo Wii",
1238
+ "ua": "Opera/9.10 (Nintendo Wii; U; ; 1621; en)",
1239
+ "expect": {
1240
+ "vendor": "Nintendo",
1241
+ "model": "Wii",
1242
+ "type": "console"
1243
+ }
1244
+ },
1245
+ {
1246
+ "desc": "Nintendo 3DS",
1247
+ "ua": "Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1.7610.EU",
1248
+ "expect": {
1249
+ "vendor": "Nintendo",
1250
+ "model": "3DS",
1251
+ "type": "console"
1252
+ }
1253
+ },
1254
+ {
1255
+ "desc": "Nintendo 3DS",
1256
+ "ua": "Mozilla/5.0 (New Nintendo 3DS like iPhone) AppleWebKit/536.30 (KHTML, like Gecko) NX/3.0.0.5.15 Mobile NintendoBrowser/1.3.10126.EU",
1257
+ "expect": {
1258
+ "vendor": "Nintendo",
1259
+ "model": "3DS",
1260
+ "type": "console"
1261
+ }
1262
+ },
813
1263
  {
814
1264
  "desc": "Galaxy Nexus",
815
1265
  "ua": "Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19",
@@ -1008,6 +1458,15 @@
1008
1458
  "type": "mobile"
1009
1459
  }
1010
1460
  },
1461
+ {
1462
+ "desc": "Google Pixel 4a",
1463
+ "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 4a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.83 Mobile Safari/537.36",
1464
+ "expect": {
1465
+ "vendor": "Google",
1466
+ "model": "Pixel 4a",
1467
+ "type": "mobile"
1468
+ }
1469
+ },
1011
1470
  {
1012
1471
  "desc": "Google Pixel 4 XL",
1013
1472
  "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 4 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36",
@@ -1017,6 +1476,15 @@
1017
1476
  "type": "mobile"
1018
1477
  }
1019
1478
  },
1479
+ {
1480
+ "desc": "Google Pixel 5",
1481
+ "ua": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.120 Mobile Safari/537.36",
1482
+ "expect": {
1483
+ "vendor": "Google",
1484
+ "model": "Pixel 5",
1485
+ "type": "mobile"
1486
+ }
1487
+ },
1020
1488
  {
1021
1489
  "desc": "Generic Android Device",
1022
1490
  "ua": "Mozilla/5.0 (Linux; U; Android 6.0.1; i980 Build/MRA58K)",
@@ -1165,6 +1633,24 @@
1165
1633
  "type": "tablet"
1166
1634
  }
1167
1635
  },
1636
+ {
1637
+ "desc": "ZTE-Z431",
1638
+ "ua": "ZTE-Z431/1.4.0 NetFront/4.2 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1",
1639
+ "expect": {
1640
+ "vendor": "ZTE",
1641
+ "model": "Z431",
1642
+ "type": "mobile"
1643
+ }
1644
+ },
1645
+ {
1646
+ "desc": "ZTE",
1647
+ "ua": "Mozilla/5.0 (Linux; U; Android 4.1.2; en-us; ZTE-Z740G Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1648
+ "expect": {
1649
+ "vendor": "ZTE",
1650
+ "model": "Z740G",
1651
+ "type": "mobile"
1652
+ }
1653
+ },
1168
1654
  {
1169
1655
  "desc": "ZTE K Series Tablet",
1170
1656
  "ua": "Mozilla/5.0 (Linux; Android 6.0.1; K88 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
@@ -1391,11 +1877,11 @@
1391
1877
  }
1392
1878
  },
1393
1879
  {
1394
- "desc": "Huawei P30 Pro",
1395
- "ua": "Mozilla/5.0 (Linux; Android 9; VOG-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.143 Mobile Safari/537.36",
1880
+ "desc": "Huawei Mate 10 Pro",
1881
+ "ua": "Mozilla/5.0 (Linux; Android 8.0; BLA-L29 Build/HUAWEIBLA-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3236.6 Mobile Safari/537.36",
1396
1882
  "expect": {
1397
1883
  "vendor": "Huawei",
1398
- "model": "VOG-L29",
1884
+ "model": "BLA-L29",
1399
1885
  "type": "mobile"
1400
1886
  }
1401
1887
  },
@@ -1427,49 +1913,49 @@
1427
1913
  }
1428
1914
  },
1429
1915
  {
1430
- "desc": "Huawei Mate 20 Pro",
1431
- "ua": "Mozilla/5.0 (Linux; Android 9; LYA-L09) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1916
+ "desc": "Huawei Mate 20 X",
1917
+ "ua": "Mozilla/5.0 (Linux; Android 9; EVR-L29 Build/HUAWEIEVR-L29; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36",
1432
1918
  "expect": {
1433
1919
  "vendor": "Huawei",
1434
- "model": "LYA-L09",
1920
+ "model": "EVR-L29",
1435
1921
  "type": "mobile"
1436
1922
  }
1437
1923
  },
1438
1924
  {
1439
1925
  "desc": "Huawei Mate 20 Pro",
1440
- "ua": "Mozilla/5.0 (Linux; Android 9; LYA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1926
+ "ua": "Mozilla/5.0 (Linux; Android 9; LYA-L09) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1441
1927
  "expect": {
1442
1928
  "vendor": "Huawei",
1443
- "model": "LYA-AL00",
1929
+ "model": "LYA-L09",
1444
1930
  "type": "mobile"
1445
1931
  }
1446
1932
  },
1447
1933
  {
1448
1934
  "desc": "Huawei Mate 20 Pro",
1449
- "ua": "Mozilla/5.0 (Linux; Android 9; LYA-AL10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1935
+ "ua": "Mozilla/5.0 (Linux; Android 9; LYA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1450
1936
  "expect": {
1451
1937
  "vendor": "Huawei",
1452
- "model": "LYA-AL10",
1938
+ "model": "LYA-AL00",
1453
1939
  "type": "mobile"
1454
1940
  }
1455
1941
  },
1456
1942
  {
1457
- "desc": "Huawei Mate 20 Pro",
1458
- "ua": "Mozilla/5.0 (Linux; Android 9; LYA-L0C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1459
- "expect": {
1460
- "vendor": "Huawei",
1461
- "model": "LYA-L0C",
1462
- "type": "mobile"
1463
- }
1943
+ "desc": "Huawei P30",
1944
+ "ua": "Mozilla/5.0 (Linux; Android 9; ELE-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.90 Mobile Safari/537.36",
1945
+ "expect": {
1946
+ "vendor": "Huawei",
1947
+ "model": "ELE-L29",
1948
+ "type": "mobile"
1949
+ }
1464
1950
  },
1465
1951
  {
1466
- "desc": "Huawei Mate 20 Pro",
1467
- "ua": "Mozilla/5.0 (Linux; Android 9; LYA-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
1468
- "expect": {
1469
- "vendor": "Huawei",
1470
- "model": "LYA-L29",
1471
- "type": "mobile"
1472
- }
1952
+ "desc": "Huawei P30 Pro",
1953
+ "ua": "Mozilla/5.0 (Linux; Android 9; VOG-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.143 Mobile Safari/537.36",
1954
+ "expect": {
1955
+ "vendor": "Huawei",
1956
+ "model": "VOG-L29",
1957
+ "type": "mobile"
1958
+ }
1473
1959
  },
1474
1960
  {
1475
1961
  "desc": "Huawei P40",
@@ -1516,6 +2002,51 @@
1516
2002
  "type": "mobile"
1517
2003
  }
1518
2004
  },
2005
+ {
2006
+ "desc": "Amazon Fire 7",
2007
+ "ua": "Mozilla/5.0 (Linux; Android 5.1.1; KFAUWI) AppleWebKit/537.36 (KHTML, like Gecko) Silk/80.5.3 like Chrome/80.0.3987.162 Safari/537.36",
2008
+ "expect": {
2009
+ "vendor": "Amazon",
2010
+ "model": "KFAUWI",
2011
+ "type": "tablet"
2012
+ }
2013
+ },
2014
+ {
2015
+ "desc": "AT&T Radiant Core U304AA",
2016
+ "ua": "Dalvik/2.1.0 (Linux; U; Android 9; U304AA Build/P00610)",
2017
+ "expect": {
2018
+ "vendor": "AT&T",
2019
+ "model": "U304AA",
2020
+ "type": "mobile"
2021
+ }
2022
+ },
2023
+ {
2024
+ "desc": "Vodafone Smart Tab 4G",
2025
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.4; Vodafone Smart Tab 4G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36",
2026
+ "expect": {
2027
+ "vendor": "Vodafone",
2028
+ "model": "Smart Tab 4G",
2029
+ "type": "tablet"
2030
+ }
2031
+ },
2032
+ {
2033
+ "desc": "Vodafone Smart ultra 6",
2034
+ "ua": "Mozilla/5.0 (Linux; Android 5.0.2; Vodafone Smart ultra 6 Build/LRX22G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.133 Mobile Safari/537.36",
2035
+ "expect": {
2036
+ "vendor": "Vodafone",
2037
+ "model": "Smart ultra 6",
2038
+ "type": "tablet"
2039
+ }
2040
+ },
2041
+ {
2042
+ "desc": "4ife 4K Smart TV Box",
2043
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.2; 4ife 4K Smart TV Box Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36 Vinebre",
2044
+ "expect": {
2045
+ "vendor": "undefined",
2046
+ "model": "undefined",
2047
+ "type": "smarttv"
2048
+ }
2049
+ },
1519
2050
  {
1520
2051
  "desc": "FaceBook Mobile App",
1521
2052
  "ua": "[FBAN/FBIOS;FBAV/283.0.0.44.117;FBBV/238386386;FBDV/iPhone12,1;FBMD/iPhone;FBSN/iOS;FBSV/13.6.1;FBSS/2;FBID/phone;FBLC/en_US;FBOP/5;FBRV/240127608]",
@@ -1531,5 +2062,104 @@
1531
2062
  "model": "undefined",
1532
2063
  "type": "undefined"
1533
2064
  }
2065
+ },
2066
+ {
2067
+ "desc": "Alcatel",
2068
+ "ua": "Mozilla/5.0 (Linux; Android 4.4.2; ALCATEL A564C Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.133 Mobile Safari/537.36",
2069
+ "expect": {
2070
+ "vendor": "ALCATEL",
2071
+ "model": "A564C",
2072
+ "type": "mobile"
2073
+ }
2074
+ },
2075
+ {
2076
+ "desc": "Jolla",
2077
+ "ua": "Mozilla/5.0 (Maemo; Linux; U; Jolla; Sailfish; Mobile; rv:31.0) Gecko/31.0 Firefox/31.0 SailfishBrowser/1.0",
2078
+ "expect": {
2079
+ "vendor": "Jolla",
2080
+ "model": "undefined",
2081
+ "type": "mobile"
2082
+ }
2083
+ },
2084
+ {
2085
+ "desc": "Xbox One",
2086
+ "ua": "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; Xbox; Xbox One)",
2087
+ "expect": {
2088
+ "vendor": "Microsoft",
2089
+ "model": "Xbox One",
2090
+ "type": "console"
2091
+ }
2092
+ },
2093
+ {
2094
+ "desc": "Xbox",
2095
+ "ua": "Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; Xbox)",
2096
+ "expect": {
2097
+ "vendor": "Microsoft",
2098
+ "model": "Xbox",
2099
+ "type": "console"
2100
+ }
2101
+ },
2102
+ {
2103
+ "desc": "Nvidia Shield Tablet",
2104
+ "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SHIELD Tablet Build/LVY48E; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.19 Safari/537.36",
2105
+ "expect": {
2106
+ "vendor": "Nvidia",
2107
+ "model": "SHIELD Tablet",
2108
+ "type": "tablet"
2109
+ }
2110
+ },
2111
+ {
2112
+ "desc": "Ouya",
2113
+ "ua": "Mozilla/5.0 (Linux; Android 4.1.2; OUYA Console Build/JZO54L-OUYA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.84 Safari/537.36",
2114
+ "expect": {
2115
+ "vendor": "OUYA",
2116
+ "model": "undefined",
2117
+ "type": "console"
2118
+ }
2119
+ },
2120
+ {
2121
+ "desc": "Vivo Y52s",
2122
+ "ua": "Mozilla/5.0 (Linux; Android 10; V2057A Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 Mobile Safari/537.36 T7/12.10 SP-engine/2.28.0 baiduboxapp/12.10.0.10 (Baidu; P1 10) NABar/1.0",
2123
+ "expect": {
2124
+ "vendor": "Vivo",
2125
+ "model": "V2057A",
2126
+ "type": "mobile"
2127
+ }
2128
+ },
2129
+ {
2130
+ "desc": "Vivo X60",
2131
+ "ua": "Mozilla/5.0 (Linux; Android 11; V2046A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/8.8.71.0",
2132
+ "expect": {
2133
+ "vendor": "Vivo",
2134
+ "model": "V2046A",
2135
+ "type": "mobile"
2136
+ }
2137
+ },
2138
+ {
2139
+ "desc": "Vivo Y79A",
2140
+ "ua": "Mozilla/5.0 (Linux; Android 7.1.2; vivo Y79A Build/N2G47H; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.0.14.0",
2141
+ "expect": {
2142
+ "vendor": "Vivo",
2143
+ "model": "Y79A",
2144
+ "type": "mobile"
2145
+ }
2146
+ },
2147
+ {
2148
+ "desc": "Vivo Y97",
2149
+ "ua": "Mozilla/5.0 (Linux; Android 8.1.0; V1813T Build/O11019; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.0.14.0",
2150
+ "expect": {
2151
+ "vendor": "Vivo",
2152
+ "model": "V1813T",
2153
+ "type": "mobile"
2154
+ }
2155
+ },
2156
+ {
2157
+ "desc": "Vivo iQOO Pro",
2158
+ "ua": "Mozilla/5.0 (Linux; Android 11; V1916A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.1.10.6",
2159
+ "expect": {
2160
+ "vendor": "Vivo",
2161
+ "model": "V1916A",
2162
+ "type": "mobile"
2163
+ }
1534
2164
  }
1535
2165
  ]