device_detector 0.4.0 → 0.5.0

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.
@@ -71,14 +71,14 @@ HTC:
71
71
 
72
72
  - regex: 'NexusHD2' # custom rom for hd2
73
73
  model: 'HD2'
74
- - regex: 'HTC[ _-]((?:Flyer|P715a).*) Build'
74
+ - regex: 'HTC[ _\-]((?:Flyer|P715a).*) Build'
75
75
  device: 'tablet'
76
76
  model: '$1'
77
77
  - regex: 'HTC[ _]([^/;]+) [0-9]+(?:\.[0-9]+)+ Build'
78
78
  model: '$1'
79
79
  - regex: 'HTC[ _]([^/;]+) Build'
80
80
  model: '$1'
81
- - regex: 'HTC[ _]([a-z0-9]+[ _-]?(?:[a-z0-9_+\-])*)'
81
+ - regex: 'HTC[ _]([a-z0-9]+[ _\-]?(?:[a-z0-9_+\-])*)'
82
82
  model: '$1'
83
83
  - regex: 'USCCHTC(\d+)'
84
84
  model: '$1'
@@ -163,7 +163,7 @@ Palm:
163
163
  models:
164
164
  - regex: '((?:Pre|Pixi))/(\d+\.\d+)'
165
165
  model: '$1 $2'
166
- - regex: 'Palm(?:[ -])?((?!OS|Source)[a-z0-9]+)'
166
+ - regex: 'Palm(?:[ \-])?((?!OS|Source)[a-z0-9]+)'
167
167
  model: '$1'
168
168
  - regex: 'Treo([a-z0-9]+)'
169
169
  model: 'Treo $1'
@@ -321,7 +321,7 @@ Acer:
321
321
 
322
322
  - regex: 'Acer; ?([^;\)]+)'
323
323
  model: '$1'
324
- - regex: 'Acer[ _-]?([^;\)]+) Build'
324
+ - regex: 'Acer[ _\-]?([^;\)]+) Build'
325
325
  model: '$1'
326
326
  - regex: 'acer[\-_]([a-z0-9]+)'
327
327
  model: '$1'
@@ -655,9 +655,9 @@ Coolpad:
655
655
  regex: '(?:YL-)?Coolpad'
656
656
  device: 'smartphone'
657
657
  models:
658
- - regex: '(?:YL-)?Coolpad[ _-]?([^/;]+) Build'
658
+ - regex: '(?:YL-)?Coolpad[ _\-]?([^/;]+) Build'
659
659
  model: '$1'
660
- - regex: '(?:YL-)?Coolpad[ _-]?([a-z0-9-]+)'
660
+ - regex: '(?:YL-)?Coolpad[ _\-]?([a-z0-9\-]+)'
661
661
  model: '$1'
662
662
 
663
663
  # Cricket
@@ -707,7 +707,7 @@ Dell:
707
707
  device: 'tablet'
708
708
  - regex: 'Dell; ([^;/\)]+)'
709
709
  model: '$1'
710
- - regex: 'Dell[ _-]([^/;]+) Build'
710
+ - regex: 'Dell[ _\-]([^/;]+) Build'
711
711
  model: '$1'
712
712
 
713
713
  # Dbtel
@@ -774,37 +774,282 @@ Ericy:
774
774
  device: 'feature phone'
775
775
  model: '$1'
776
776
 
777
- # Sony Ericsson
778
- Sony Ericsson:
779
- regex: 'Sony ?Ericsson|portalmmm/2\.0 K|(?:WT|LT|SO|ST|SK)[0-9]+[a-z]*[0-9]*(?: Build|\))|X10[ia]v?|E1[05][ai]v?|MT[0-9]{2}[a-z]? Build'
777
+ # Rikomagic
778
+ Rikomagic:
779
+ regex: 'MK(80[28][^/;]*) Build'
780
+ device: 'tv'
781
+ model: 'MK$1'
782
+
783
+ # Sony & Sony Ericsson (combined as they are mixed up)
784
+ Sony:
785
+ regex: 'Sony(?: ?Ericsson)?|SGP|Xperia|C1[569]0[45]|C2[01]0[45]|C2305|C530[236]|C5502|C6[56]0[236]|C6616|C68(?:0[26]|[34]3)|C69(?:0[236]|16|43)|D200[45]|D21(?:0[45]|14)|D22(?:0[236]|12|43)|D230[2356]|D240[36]|D25(?:02|33)|D510[236]|D530[36]|D5322|D5503|D58[03]3|D65(?:0[23]|43)|D66[05]3|(?:WT|LT|SO|ST|SK|MK)[0-9]+[a-z]*[0-9]*(?: Build|\))|X?L39H|portalmmm/2\.0 K|X10[ia]v?|E1[05][ai]v?|MT[0-9]{2}[a-z]? Build|SO-0(?:[35]D|4E|[12]C)|R800[aix]'
780
786
  device: 'smartphone'
781
787
  models:
782
- # explicit smartphone models
783
- - regex: '(?:SonyEricsson)?CK13i'
784
- model: 'txt'
785
- - regex: '(?:SonyEricsson)?CK15[ai]'
786
- model: 'txt pro'
787
- - regex: '(?:SonyEricsson)?E10[ai]v?'
788
+ # SONY ERICSSON: explicit smartphone models
789
+ - regex: '(?:Sony(?:Ericsson)?)?E10[ai]v?'
788
790
  model: 'Xperia X10 mini'
789
- - regex: '(?:SonyEricsson)?E15[ai]v?'
791
+ brand: 'Sony Ericsson'
792
+ - regex: '(?:Sony(?:Ericsson)?)?U20'
793
+ model: 'Xperia X10 mini pro'
794
+ brand: 'Sony Ericsson'
795
+ - regex: '(?:Sony(?:Ericsson)?)?E15[ai]v?'
790
796
  model: 'Xperia X8'
791
- - regex: '(?:SonyEricsson)?LT15[ai]v?'
797
+ brand: 'Sony Ericsson'
798
+ - regex: '(?:Sony(?:Ericsson)?)?(LT15[ai]?v?|SO-01C)'
792
799
  model: 'Xperia arc'
793
- - regex: '(?:SonyEricsson)?LT18[ai]v?'
800
+ brand: 'Sony Ericsson'
801
+ - regex: '(?:Sony(?:Ericsson)?)?LT18[ai]v?'
794
802
  model: 'Xperia arc S'
795
- - regex: '(?:SonyEricsson)?X10[ai]v?'
803
+ brand: 'Sony Ericsson'
804
+ - regex: '(?:Sony(?:Ericsson)?)?MT11'
805
+ model: 'Xperia neo V'
806
+ brand: 'Sony Ericsson'
807
+ - regex: '(?:Sony(?:Ericsson)?)?MT15'
808
+ model: 'Xperia neo'
809
+ brand: 'Sony Ericsson'
810
+ - regex: '(?:Sony(?:Ericsson)?)?MT27'
811
+ model: 'Xperia Sola'
812
+ brand: 'Sony Ericsson'
813
+ - regex: '(?:Sony(?:Ericsson)?)?MK16[ai]'
814
+ model: 'Xperia pro'
815
+ brand: 'Sony Ericsson'
816
+ - regex: '(?:Sony(?:Ericsson)?)?ST15[ai]'
817
+ model: 'Xperia mini'
818
+ brand: 'Sony Ericsson'
819
+ - regex: '(?:Sony(?:Ericsson)?)?ST17[ai]'
820
+ model: 'Xperia active'
821
+ brand: 'Sony Ericsson'
822
+ - regex: '(?:Sony(?:Ericsson)?)?ST18[ai]'
823
+ model: 'Xperia ray'
824
+ brand: 'Sony Ericsson'
825
+ - regex: '(?:Sony(?:Ericsson)?)?SK17[ai]?'
826
+ model: 'Xperia mini pro'
827
+ brand: 'Sony Ericsson'
828
+ - regex: '(?:Sony(?:Ericsson)?)?X10[ai]v?'
796
829
  model: 'Xperia X10'
830
+ brand: 'Sony Ericsson'
831
+ - regex: '(?:Sony(?:Ericsson)?)?M1'
832
+ model: 'Aspen'
833
+ brand: 'Sony Ericsson'
834
+ - regex: '(?:Sony(?:Ericsson)?)?R800'
835
+ model: 'Xperia PLAY'
836
+ brand: 'Sony Ericsson'
837
+ - regex: '(?:Sony(?:Ericsson)?)?WT19'
838
+ model: 'Live with Walkman'
839
+ brand: 'Sony Ericsson'
840
+
841
+ # SONY ERICSSON: explicit feature phone models
842
+ - regex: '(?:Sony(?:Ericsson)?)?CK13i'
843
+ model: 'txt'
844
+ brand: 'Sony Ericsson'
845
+ device: 'feature phone'
846
+ - regex: '(?:Sony(?:Ericsson)?)?CK15[ai]'
847
+ model: 'txt pro'
848
+ brand: 'Sony Ericsson'
849
+ device: 'feature phone'
850
+ - regex: '(?:Sony(?:Ericsson)?)?F100i'
851
+ model: 'Jalou'
852
+ brand: 'Sony Ericsson'
853
+ device: 'feature phone'
854
+ - regex: '(?:Sony(?:Ericsson)?)?J105'
855
+ model: 'Naite'
856
+ brand: 'Sony Ericsson'
857
+ device: 'feature phone'
858
+ - regex: '(?:Sony(?:Ericsson)?)?J108'
859
+ model: 'Cedar'
860
+ brand: 'Sony Ericsson'
861
+ device: 'feature phone'
862
+ - regex: '(?:Sony(?:Ericsson)?)?J10'
863
+ model: 'Elm'
864
+ brand: 'Sony Ericsson'
865
+ device: 'feature phone'
866
+ - regex: '(?:Sony(?:Ericsson)?)?J20'
867
+ model: 'Hazel'
868
+ brand: 'Sony Ericsson'
869
+ device: 'feature phone'
870
+ - regex: '(?:Sony(?:Ericsson)?)?U10'
871
+ model: 'Aino'
872
+ brand: 'Sony Ericsson'
873
+ device: 'feature phone'
874
+ - regex: '(?:Sony(?:Ericsson)?)?U100'
875
+ model: 'Yari'
876
+ brand: 'Sony Ericsson'
877
+ device: 'feature phone'
878
+ - regex: '(?:Sony(?:Ericsson)?)?U1'
879
+ model: 'Satio'
880
+ brand: 'Sony Ericsson'
881
+ device: 'feature phone'
882
+ - regex: '(?:Sony(?:Ericsson)?)?U5'
883
+ model: 'Vivaz'
884
+ brand: 'Sony Ericsson'
885
+ device: 'feature phone'
886
+ - regex: '(?:Sony(?:Ericsson)?)?U8'
887
+ model: 'Vivaz pro'
888
+ brand: 'Sony Ericsson'
889
+ device: 'feature phone'
890
+ - regex: '(?:Sony(?:Ericsson)?)?W20'
891
+ model: 'Zylo'
892
+ brand: 'Sony Ericsson'
893
+ device: 'feature phone'
894
+ - regex: '(?:Sony(?:Ericsson)?)?W100'
895
+ model: 'Spiro'
896
+ brand: 'Sony Ericsson'
897
+ device: 'feature phone'
898
+ - regex: '(?:Sony(?:Ericsson)?)?W150'
899
+ model: 'Yendo'
900
+ brand: 'Sony Ericsson'
901
+ device: 'feature phone'
902
+ - regex: '(?:Sony(?:Ericsson)?)?WT13'
903
+ model: 'Mix Walkman'
904
+ brand: 'Sony Ericsson'
905
+ device: 'feature phone'
797
906
 
798
- - regex: 'SonyEricsson([a-z0-9]+) Build'
799
- model: '$1'
800
- - regex: 'Sony(?: )?Ericsson ?([a-z0-9\-]+)'
801
- model: '$1'
802
- - regex: '((?:WT|LT|SO|ST|SK)[0-9]+[a-z]*[0-9]*)(?: Build|\))'
907
+ # SONY: explicit smartphone models
908
+ - regex: '(?:Sony(?:Ericsson)?)?LT22i'
909
+ model: 'Xperia P'
910
+ - regex: '(?:Sony(?:Ericsson)?)?LT25i'
911
+ model: 'Xperia V'
912
+ - regex: '(?:Sony(?:Ericsson)?)?LT26ii'
913
+ model: 'Xperia SL'
914
+ - regex: '(?:Sony(?:Ericsson)?)?LT26i'
915
+ model: 'Xperia S'
916
+ - regex: '(?:Sony(?:Ericsson)?)?SO-02C'
917
+ model: 'Xperia arco'
918
+ - regex: '(?:Sony(?:Ericsson)?)?SO-03D'
919
+ model: 'Xperia arco HD'
920
+ - regex: '(?:Sony(?:Ericsson)?)?LT26w'
921
+ model: 'Xperia arco S'
922
+ - regex: '(?:Sony(?:Ericsson)?)?LT28[aih]'
923
+ model: 'Xperia ion'
924
+ - regex: '(?:Sony(?:Ericsson)?)?LT29i'
925
+ model: 'Xperia TX'
926
+ - regex: '(?:Sony(?:Ericsson)?)?LT30a'
927
+ model: 'Xperia T LTE'
928
+ - regex: '(?:Sony(?:Ericsson)?)?LT30p'
929
+ model: 'Xperia T'
930
+ - regex: '(?:Sony(?:Ericsson)?)?ST21[ia]2'
931
+ model: 'Xperia tipo dual'
932
+ - regex: '(?:Sony(?:Ericsson)?)?ST21[ia]'
933
+ model: 'Xperia tipo'
934
+ - regex: '(?:Sony(?:Ericsson)?)?ST23[ia]'
935
+ model: 'Xperia miro'
936
+ - regex: '(?:Sony(?:Ericsson)?)?ST25[ia]'
937
+ model: 'Xperia U'
938
+ - regex: '(?:Sony(?:Ericsson)?)?ST26[ia]'
939
+ model: 'Xperia J'
940
+ - regex: '(?:Sony(?:Ericsson)?)?ST27[ia]'
941
+ model: 'Xperia go'
942
+ - regex: '(?:Sony(?:Ericsson)?)?C150[45]'
943
+ model: 'Xperia E'
944
+ - regex: '(?:Sony(?:Ericsson)?)?C160[45]'
945
+ model: 'Xperia E Dual'
946
+ - regex: '(?:Sony(?:Ericsson)?)?C190[45]'
947
+ model: 'Xperia M'
948
+ - regex: '(?:Sony(?:Ericsson)?)?C200[45]'
949
+ model: 'Xperia M Dual'
950
+ - regex: '(?:Sony(?:Ericsson)?)?C210[45]'
951
+ model: 'Xperia L'
952
+ - regex: '(?:Sony(?:Ericsson)?)?C2305'
953
+ model: 'Xperia C'
954
+ - regex: '(?:Sony(?:Ericsson)?)?C530[236]'
955
+ model: 'Xperia SP'
956
+ - regex: '(?:Sony(?:Ericsson)?)?C5502'
957
+ model: 'Xperia ZR'
958
+ - regex: '(?:Sony(?:Ericsson)?)?C650[236]'
959
+ model: 'Xperia ZL'
960
+ - regex: '(?:Sony(?:Ericsson)?)?C66(?:0[236]|16)'
961
+ model: 'Xperia Z'
962
+ - regex: '(?:Sony(?:Ericsson)?)?(?:C68(?:0[26]|[34]3)|XL39H)'
963
+ model: 'Xperia Z Ultra'
964
+ - regex: '(?:Sony(?:Ericsson)?)?C69(?:0[236]|16|43)|L39H'
965
+ model: 'Xperia Z1'
966
+ - regex: '(?:Sony(?:Ericsson)?)?D200[45]'
967
+ model: 'Xperia E1'
968
+ - regex: '(?:Sony(?:Ericsson)?)?D21(?:0[45]|14)'
969
+ model: 'Xperia E1 Dual'
970
+ - regex: '(?:Sony(?:Ericsson)?)?D22(?:0[236]|43)'
971
+ model: 'Xperia E3'
972
+ - regex: '(?:Sony(?:Ericsson)?)?D2212'
973
+ model: 'Xperia E3 Dual'
974
+ - regex: '(?:Sony(?:Ericsson)?)?D2302'
975
+ model: 'Xperia M2 Dual'
976
+ - regex: '(?:Sony(?:Ericsson)?)?D230[356]'
977
+ model: 'Xperia M2'
978
+ - regex: '(?:Sony(?:Ericsson)?)?D240[36]'
979
+ model: 'Xperia M2 Aqua'
980
+ - regex: '(?:Sony(?:Ericsson)?)?D2502'
981
+ model: 'Xperia C3 Dual'
982
+ - regex: '(?:Sony(?:Ericsson)?)?D2533'
983
+ model: 'Xperia C3'
984
+ - regex: '(?:Sony(?:Ericsson)?)?D510[236]'
985
+ model: 'Xperia T3'
986
+ - regex: '(?:Sony(?:Ericsson)?)?D530[36]'
987
+ model: 'Xperia T2 Ultra'
988
+ - regex: '(?:Sony(?:Ericsson)?)?D5322'
989
+ model: 'Xperia T2 Ultra Dual'
990
+ - regex: '(?:Sony(?:Ericsson)?)?D5503'
991
+ model: 'Xperia Z1 Compact'
992
+ - regex: '(?:Sony(?:Ericsson)?)?D58[03]3'
993
+ model: 'Xperia Z3 Compact'
994
+ - regex: '(?:Sony(?:Ericsson)?)?D65(?:0[23]|43)'
995
+ model: 'Xperia Z2'
996
+ - regex: '(?:Sony(?:Ericsson)?)?D66[05]3'
997
+ model: 'Xperia Z3'
998
+ - regex: '(?:Sony(?:Ericsson)?)?SO-04E'
999
+ model: 'Xperia A'
1000
+ - regex: '(?:Sony(?:Ericsson)?)?SO-05D'
1001
+ model: 'Xperia SX'
1002
+
1003
+ # SONY: explicit tablet models
1004
+ - regex: 'SGP(?:311|312|321) Build'
1005
+ model: 'Xperia Tablet Z'
1006
+ device: 'tablet'
1007
+ - regex: 'SGP(?:511|512|521) Build'
1008
+ model: 'Xperia Tablet Z2'
1009
+ device: 'tablet'
1010
+ - regex: 'SGP(?:6[24]1) Build'
1011
+ model: 'Xperia Tablet Z3 Compact'
1012
+ device: 'tablet'
1013
+ - regex: 'SGPT(?:12|121|122|123|13|131|132|133) Build'
1014
+ model: 'Xperia Tablet S'
1015
+ device: 'tablet'
1016
+
1017
+ # general detections
1018
+ - regex: '((?:WT|SO|ST|SK|MK)[0-9]+[a-z]*[0-9]*)(?: Build|\))'
803
1019
  model: '$1'
1020
+ brand: 'Sony Ericsson'
804
1021
  - regex: '(MT[0-9]{2}[a-z]?) Build'
805
1022
  model: '$1'
1023
+ brand: 'Sony Ericsson'
806
1024
  - regex: 'portalmmm/2.0 K([a-z0-9]+)'
807
1025
  model: 'K$1'
1026
+ brand: 'Sony Ericsson'
1027
+ - regex: 'Sony ?Ericsson?([^/;]*) Build'
1028
+ model: '$1'
1029
+ brand: 'Sony Ericsson'
1030
+ - regex: 'SonyEricsson([CGJKPTWZ][0-9]+[a-z]+)/'
1031
+ model: '$1'
1032
+ brand: 'Sony Ericsson'
1033
+ device: 'feature phone'
1034
+ - regex: 'Sony ?Ericsson ?([a-z0-9\-]+)'
1035
+ model: '$1'
1036
+ brand: 'Sony Ericsson'
1037
+
1038
+ - regex: 'Sony (Tablet[^/;]*) Build'
1039
+ model: '$1'
1040
+ device: 'tablet'
1041
+ - regex: '(SGP[^/;]*) Build'
1042
+ model: '$1'
1043
+ device: 'tablet'
1044
+ - regex: 'Xperia ([^/;]*Tablet[^/;]*) Build'
1045
+ model: 'Xperia $1'
1046
+ device: 'tablet'
1047
+ - regex: 'Xperia ([^;/]+) Build'
1048
+ model: 'Xperia $1'
1049
+ - regex: 'Sony[ ]?([^/;]*) Build'
1050
+ model: '$1'
1051
+ - regex: 'Sony[ ]?([a-z0-9\-]+)'
1052
+ model: '$1'
808
1053
 
809
1054
  # Ericsson
810
1055
  Ericsson:
@@ -931,16 +1176,35 @@ Haier:
931
1176
  regex: 'Haier'
932
1177
  device: 'smartphone'
933
1178
  models:
934
- - regex: 'Haier[ _-](H[WT]-[^/;]+) Build'
1179
+ - regex: 'Haier[ _\-](H[WT]-[^/;]+) Build'
935
1180
  model: '$1'
936
- - regex: 'Haier[ _-](H[WT]-[a-z0-9_-]+)'
1181
+ - regex: 'Haier[ _\-](H[WT]-[a-z0-9_\-]+)'
937
1182
  model: '$1'
938
- - regex: 'Haier[ _-](sy[0-9]+)'
1183
+ - regex: 'Haier[ _\-](sy[0-9]+)'
939
1184
  model: '$1'
940
- - regex: 'Haier[ _-]([a-z0-9\-]+)'
1185
+ - regex: 'Haier[ _\-]([a-z0-9\-]+)'
941
1186
  model: '$1'
942
1187
  device: 'feature phone'
943
1188
 
1189
+ # Hisense
1190
+ Hisense:
1191
+ regex: 'HS-(?:U|EG?)[0-9]+[a-z0-9\-]*|E270BSA|M470BS[AE]|E2281'
1192
+ device: 'smartphone'
1193
+ models:
1194
+ # explicit tablet models
1195
+ - regex: 'E270BSA'
1196
+ device: 'tablet'
1197
+ model: 'Sero 7'
1198
+ - regex: 'M470BS[AE]'
1199
+ device: 'tablet'
1200
+ model: 'Sero 7 Pro'
1201
+ - regex: 'E2281'
1202
+ device: 'tablet'
1203
+ model: 'Sero 8'
1204
+
1205
+ - regex: '(HS-(?:U|EG?)[0-9]+[a-z0-9\-]*)'
1206
+ model: '$1'
1207
+
944
1208
  # Huawei
945
1209
  Huawei:
946
1210
  regex: '(HW-)?Huawei|Ideos|vodafone[a-z0-9]+'
@@ -951,11 +1215,11 @@ Huawei:
951
1215
  model: '$1'
952
1216
  - regex: 'Ideos([^;/]*) Build'
953
1217
  model: 'Ideos$1'
954
- - regex: 'Huawei[ _-]?([^/;]*) Build'
1218
+ - regex: 'Huawei[ _\-]?([^/;]*) Build'
955
1219
  model: '$1'
956
1220
  - regex: '(?:HW-)?Huawei(?:/1\.0/0?(?:Huawei))?[_\- /]?([a-z0-9\-_]+)'
957
1221
  model: '$1'
958
- - regex: 'Huawei; ([a-z0-9 -]+)'
1222
+ - regex: 'Huawei; ([a-z0-9 \-]+)'
959
1223
  model: '$1'
960
1224
  - regex: 'vodafone([a-z0-9]+)'
961
1225
  model: 'Vodafone $1'
@@ -986,7 +1250,7 @@ Infinix:
986
1250
  model: '$1'
987
1251
  - regex: 'Infinix (X\d+)'
988
1252
  model: '$1'
989
- - regex: 'Infinix[ _]([a-z0-9_-]+)'
1253
+ - regex: 'Infinix[ _]([a-z0-9_\-]+)'
990
1254
  model: '$1'
991
1255
 
992
1256
  # Inkti
@@ -1021,7 +1285,7 @@ Intex:
1021
1285
  model: '$1'
1022
1286
  - regex: '(Aqua|Cloud)[ _\.]([^/;\)]+)(?:[ _]Build|(?<!Build)/|\))'
1023
1287
  model: '$1 $2'
1024
- - regex: 'Intex[ _]([a-z0-9_+-]+)'
1288
+ - regex: 'Intex[ _]([a-z0-9_+\-]+)'
1025
1289
  model: '$1'
1026
1290
 
1027
1291
  # i-mate
@@ -1175,7 +1439,7 @@ Lenovo:
1175
1439
  device: 'tablet'
1176
1440
  - regex: 'Lenovo ([^/;]*) Build'
1177
1441
  model: '$1'
1178
- - regex: '(?:LNV-|Lenovo-)?Lenovo[ \-_]([a-z0-9_+-]+)'
1442
+ - regex: '(?:LNV-|Lenovo-)?Lenovo[ \-_]([a-z0-9_+\-]+)'
1179
1443
  model: '$1'
1180
1444
  - regex: 'IdeaTab[ \-_]?([a-z0-9]+)'
1181
1445
  model: 'IdeaTab $1'
@@ -1240,14 +1504,11 @@ LG:
1240
1504
  regex: 'LG|portalmmm/2\.0 (?:KE|KG|KP|L3)|VX[0-9]+'
1241
1505
  device: 'smartphone'
1242
1506
  models:
1243
- - regex: 'LGE_DLNA_SDK|NetCast'
1244
- device: 'tv'
1245
- model: 'NetCast'
1246
1507
  - regex: 'LGE(?: |-LG| LG-AX|-)([a-z0-9]+)'
1247
1508
  model: '$1'
1248
1509
  - regex: 'LGE;([a-z0-9\-]+)'
1249
1510
  model: '$1'
1250
- - regex: 'LG[ _-](V90.*|Optimus[ _-]Pad.*) Build'
1511
+ - regex: 'LG[ _\-](V90.*|Optimus[ _\-]Pad.*) Build'
1251
1512
  device: 'tablet'
1252
1513
  model: '$1'
1253
1514
  - regex: 'LG(?:/|-LG| |-)?([^/;]*) Build'
@@ -1315,7 +1576,7 @@ Sagem:
1315
1576
  regex: 'SAGEM|portalmmm/2.0 (?:SG|my)'
1316
1577
  device: 'smartphone'
1317
1578
  models:
1318
- - regex: 'SAGEM-(my[a-z0-9-]+)'
1579
+ - regex: 'SAGEM-(my[a-z0-9\-]+)'
1319
1580
  model: '$1'
1320
1581
  device: 'feature phone'
1321
1582
  - regex: 'SAGEM ([a-z0-9]+)'
@@ -1671,11 +1932,29 @@ Siemens:
1671
1932
 
1672
1933
  # Samsung
1673
1934
  Samsung:
1674
- regex: 'SAMSUNG|SC-(?:02C|04E|01F)|S(?:CH|GH|PH|EC|AM|HV|HW|M)-|SMART-TV|GT-|Galaxy|(?:portalmmm|o2imode)/2\.0 [SZ]|sam[rua]'
1935
+ regex: 'SAMSUNG|SC-(?:02C|04E|01F)|N7100|S(?:CH|GH|PH|EC|AM|HV|HW|M)-|SMART-TV|GT-|Galaxy|(?:portalmmm|o2imode)/2\.0 [SZ]|sam[rua]'
1675
1936
  device: 'smartphone'
1676
1937
  models:
1677
1938
  # explicit tablet models
1678
- - regex: '(?:SAMSUNG-)?GT-P1000M?'
1939
+ - regex: '(?:SAMSUNG-)?GT-N5100'
1940
+ device: 'tablet'
1941
+ model: 'GALAXY Note 8.0"'
1942
+ - regex: '(?:SAMSUNG-)?GT-N5110'
1943
+ device: 'tablet'
1944
+ model: 'GALAXY Note 8.0" WiFi'
1945
+ - regex: '(?:SAMSUNG-)?GT-N5120'
1946
+ device: 'tablet'
1947
+ model: 'GALAXY Note 8.0" LTE'
1948
+ - regex: '(?:SAMSUNG-)?GT-N8000'
1949
+ device: 'tablet'
1950
+ model: 'GALAXY Note 10.1"'
1951
+ - regex: '(?:SAMSUNG-)?GT-N8010'
1952
+ device: 'tablet'
1953
+ model: 'GALAXY Note 10.1" WiFi'
1954
+ - regex: '(?:SAMSUNG-)?GT-N8020'
1955
+ device: 'tablet'
1956
+ model: 'GALAXY Note 10.1" LTE'
1957
+ - regex: '(?:SAMSUNG-)?GT-P1000M?|SCH-I800'
1679
1958
  device: 'tablet'
1680
1959
  model: 'GALAXY Tab'
1681
1960
  - regex: '(?:SAMSUNG-)?GT-P3100B?'
@@ -1684,7 +1963,7 @@ Samsung:
1684
1963
  - regex: '(?:SAMSUNG-)?GT-P311[03]'
1685
1964
  device: 'tablet'
1686
1965
  model: 'GALAXY Tab 2 7" WiFi'
1687
- - regex: '(?:SAMSUNG-)?GT-P5100'
1966
+ - regex: '(?:SAMSUNG-)?GT-P5100|SCH-I915'
1688
1967
  device: 'tablet'
1689
1968
  model: 'GALAXY Tab 2 10.1"'
1690
1969
  - regex: '(?:SAMSUNG-)?GT-P511[03]'
@@ -1759,9 +2038,15 @@ Samsung:
1759
2038
  - regex: '(?:SAMSUNG-)?SM-T315'
1760
2039
  device: 'tablet'
1761
2040
  model: 'GALAXY Tab 3 8.0" LTE'
2041
+ - regex: '(?:SAMSUNG-)?SM-T335'
2042
+ device: 'tablet'
2043
+ model: 'GALAXY Tab 8.0" LTE'
1762
2044
  - regex: '(?:SAMSUNG-)?SM-T520'
1763
2045
  device: 'tablet'
1764
2046
  model: 'GALAXY TabPRO 10.1" WiFi'
2047
+ - regex: '(?:SAMSUNG-)?SM-T535'
2048
+ device: 'tablet'
2049
+ model: 'GALAXY Tab 4 10.1" LTE'
1765
2050
  - regex: '(?:SAMSUNG-)?SM-T320'
1766
2051
  device: 'tablet'
1767
2052
  model: 'GALAXY TabPRO 8.4" WiFi'
@@ -1774,11 +2059,77 @@ Samsung:
1774
2059
  - regex: '(?:SAMSUNG-)?SM-T530(?:NU)?'
1775
2060
  device: 'tablet'
1776
2061
  model: 'GALAXY Tab 4 10.1" WiFi'
2062
+ - regex: '(?:SAMSUNG-)?SM-T700'
2063
+ device: 'tablet'
2064
+ model: 'GALAXY Tab S 8.4" WiFi'
2065
+ - regex: '(?:SAMSUNG-)?SM-T705'
2066
+ device: 'tablet'
2067
+ model: 'GALAXY Tab S 8.4" LTE'
2068
+ - regex: '(?:SAMSUNG-)?SM-T800'
2069
+ device: 'tablet'
2070
+ model: 'GALAXY Tab S 10.5" WiFi'
2071
+ - regex: '(?:SAMSUNG-)?SM-T805'
2072
+ device: 'tablet'
2073
+ model: 'GALAXY Tab S 10.5" LTE'
1777
2074
  - regex: '(?:SAMSUNG-)?SM-T900'
1778
2075
  device: 'tablet'
1779
2076
  model: 'GALAXY TabPRO 12.2" WiFi'
1780
2077
 
1781
2078
  # explicit smartphone models
2079
+ - regex: '(?:SAMSUNG-)?GT-I8190'
2080
+ model: 'GALAXY S III mini'
2081
+ - regex: '(?:SAMSUNG-)?GT-I9105'
2082
+ model: 'GALAXY S II Plus'
2083
+ - regex: '(?:SAMSUNG-)?(?:GT-I9195|SCH-I435)'
2084
+ model: 'GALAXY S4 mini'
2085
+ - regex: '(?:SAMSUNG-)?GT-I9205'
2086
+ model: 'GALAXY MEGA'
2087
+ - regex: '(?:SAMSUNG-)?GT-I9295'
2088
+ model: 'GALAXY S4 ACTIVE'
2089
+ - regex: '(?:SAMSUNG-)?(?:GT-I9300|SCH-I535|SCH-L710)'
2090
+ model: 'GALAXY S III'
2091
+ - regex: '(?:SAMSUNG-)?(?:GT-I9305|SCH-R530)'
2092
+ model: 'GALAXY S III LTE'
2093
+ - regex: '(?:SAMSUNG-)?(?:GT-I9505|SCH-I545|SCH-I959|SCH-R970)'
2094
+ model: 'GALAXY S4'
2095
+ - regex: '(?:SAMSUNG-)?GT-I9506'
2096
+ model: 'GALAXY S4 with LTE+'
2097
+ - regex: '(?:SAMSUNG-)?(?:(?:GT-)?N7100|SCH-I605|SCH-N719|SCH-R950|SPH-L900)'
2098
+ model: 'GALAXY Note II'
2099
+ - regex: '(?:SAMSUNG-)?GT-N7105'
2100
+ model: 'GALAXY Note II LTE'
2101
+ - regex: '(?:SAMSUNG-)?GT-S5280'
2102
+ model: 'GALAXY STAR'
2103
+ - regex: '(?:SAMSUNG-)?GT-S5301'
2104
+ model: 'GALAXY POCKET Plus'
2105
+ - regex: '(?:SAMSUNG-)?GT-S5310'
2106
+ model: 'GALAXY POCKET Neo'
2107
+ - regex: '(?:SAMSUNG-)?GT-S5360'
2108
+ model: 'GALAXY Y Hello Kitty'
2109
+ - regex: '(?:SAMSUNG-)?GT-S6310'
2110
+ model: 'GALAXY Young'
2111
+ - regex: '(?:SAMSUNG-)?GT-S6312'
2112
+ model: 'GALAXY Young DUOS'
2113
+ - regex: '(?:SAMSUNG-)?GT-S6790'
2114
+ model: 'GALAXY FAME Lite with NFC'
2115
+ - regex: '(?:SAMSUNG-)?GT-S6810'
2116
+ model: 'GALAXY FAME'
2117
+ - regex: '(?:SAMSUNG-)?GT-S7275'
2118
+ model: 'GALAXY ACE 3'
2119
+ - regex: '(?:SAMSUNG-)?GT-S7390'
2120
+ model: 'GALAXY Trend Lite'
2121
+ - regex: '(?:SAMSUNG-)?GT-S7500'
2122
+ model: 'GALAXY ACE Plus'
2123
+ - regex: '(?:SAMSUNG-)?(?:GT-S7560|SCH-I699)'
2124
+ model: 'GALAXY Trend'
2125
+ - regex: '(?:SAMSUNG-)?(?:GT-S7562|SCH-I919)'
2126
+ model: 'GALAXY S DUOS'
2127
+ - regex: '(?:SAMSUNG-)?GT-S7580'
2128
+ model: 'GALAXY Trend Plus'
2129
+ - regex: '(?:SAMSUNG-)?GT-S7582'
2130
+ model: 'GALAXY DUOS 2'
2131
+ - regex: '(?:SAMSUNG-)?GT-S7710'
2132
+ model: 'GALAXY Xcover 2'
1782
2133
  - regex: '(?:SAMSUNG-)?SM-C101'
1783
2134
  model: 'GALAXY S4 zoom'
1784
2135
  - regex: '(?:SAMSUNG-)?SM-C115'
@@ -1789,22 +2140,38 @@ Samsung:
1789
2140
  model: 'GALAXY CORE LTE'
1790
2141
  - regex: '(?:SAMSUNG-)?SM-G3815'
1791
2142
  model: 'GALAXY EXPRESS II'
2143
+ - regex: '(?:SAMSUNG-)?SM-G7105'
2144
+ model: 'GALAXY Grand 2'
2145
+ - regex: '(?:SAMSUNG-)?SM-G800'
2146
+ model: 'GALAXY S5 mini'
1792
2147
  - regex: '(?:SAMSUNG-)?SM-G9009D'
1793
2148
  model: 'GALAXY S5 Dual-SIM'
1794
2149
  - regex: '(?:SAMSUNG-)?SM-G900'
1795
2150
  model: 'GALAXY S5'
1796
2151
  - regex: '(?:SAMSUNG-)?SM-N7502'
1797
- model: 'Galaxy Note 3 Neo Duos'
2152
+ model: 'GALAXY Note 3 Neo Duos'
1798
2153
  - regex: '(?:SAMSUNG-)?SM-N750[L50]?'
1799
- model: 'Galaxy Note 3 Neo'
2154
+ model: 'GALAXY Note 3 Neo'
1800
2155
  - regex: '(?:SAMSUNG-)?SM-N9002'
1801
2156
  model: 'GALAXY Note 3 Duos'
1802
2157
  - regex: '(?:SAMSUNG-)?SM-N900(?:[05689][VQ]?|[AKLPSTV]|W8)?'
1803
2158
  model: 'GALAXY Note 3'
2159
+ - regex: '(?:SAMSUNG-)?SCH-I200'
2160
+ model: 'GALAXY Stellar'
2161
+ - regex: '(?:SAMSUNG-)?SCH-I829'
2162
+ model: 'GALAXY Style Duos'
2163
+ - regex: '(?:SAMSUNG-)?(?:SGH-S730|SCH-R740)'
2164
+ model: 'GALAXY Discover'
2165
+ - regex: '(?:SAMSUNG-)?SCH-S738'
2166
+ model: 'GALAXY Centura'
2167
+
2168
+ # explicit phablet models
1804
2169
  - regex: '(?:SAMSUNG-)?SM-N910'
1805
2170
  model: 'GALAXY Note 4'
2171
+ device: 'phablet'
1806
2172
  - regex: '(?:SAMSUNG-)?SM-N915'
1807
2173
  model: 'GALAXY Note 4 Edge'
2174
+ device: 'phablet'
1808
2175
 
1809
2176
  # general detections
1810
2177
  - regex: '(?:SAMSUNG-)?(GT-(P|N8|N5)[0-9]+[a-z]?)'
@@ -1816,16 +2183,16 @@ Samsung:
1816
2183
  model: 'GALAXY Note 3'
1817
2184
  - regex: 'SC-04E'
1818
2185
  model: 'GALAXY S4'
1819
- - regex: '(?:SAMSUNG-)?((?:SM-[TNP]|GT-P)[a-z0-9_-]+)'
2186
+ - regex: '(?:SAMSUNG-)?((?:SM-[TNP]|GT-P)[a-z0-9_\-]+)'
1820
2187
  device: 'tablet'
1821
2188
  model: '$1'
1822
- - regex: '((?:SCH|SGH|SPH|SHV|SHW|GT|SM)-[a-z0-9_-]+)'
2189
+ - regex: '((?:SCH|SGH|SPH|SHV|SHW|GT|SM)-[a-z0-9_\-]+)'
1823
2190
  model: '$1'
1824
2191
  - regex: 'SAMSUNG[\-][ ]?([a-z0-9]+[\-_][a-z0-9]+)'
1825
2192
  model: '$1'
1826
2193
  - regex: 'SAMSUNG;[ ]?([a-z0-9]+[\-_][a-z0-9]+)'
1827
2194
  model: '$1'
1828
- - regex: 'SAMSUNG[ _/-]?([a-z0-9\-]+)'
2195
+ - regex: 'SAMSUNG[ _/\-]?([a-z0-9\-]+)'
1829
2196
  model: '$1'
1830
2197
  - regex: 'SAMSUNG;[ ]?([a-z0-9 ]+)'
1831
2198
  model: '$1'
@@ -1845,6 +2212,46 @@ Samsung:
1845
2212
  - regex: 'sam([rua][0-9]+)'
1846
2213
  model: 'SCH-$1'
1847
2214
 
2215
+ # Smartfren
2216
+ Smartfren:
2217
+ regex: 'Smartfren|Androtab|Andromax|PD6D1J|AD682J|AD68[89]G|AD6B1H|AD9A1H|AD682H|AD683G'
2218
+ device: 'smartphone'
2219
+ models:
2220
+ # explicit tablet models
2221
+ - regex: 'S7 Build'
2222
+ model: 'Andromax Tab 7.0'
2223
+ device: 'tablet'
2224
+
2225
+ # explicit smartphone models
2226
+ - regex: 'PD6D1J'
2227
+ model: 'Andromax V3s'
2228
+ - regex: 'AD682J'
2229
+ model: 'Andromax T'
2230
+ - regex: 'AD688G'
2231
+ model: 'Andromax C2'
2232
+ - regex: 'AD689G'
2233
+ model: 'Andromax i3'
2234
+ - regex: 'AD682H'
2235
+ model: 'Andromax i3s'
2236
+ - regex: 'AD6B1H'
2237
+ model: 'Andromax G2 Hot'
2238
+ - regex: 'AD9A1H'
2239
+ model: 'Andromax G2'
2240
+ - regex: 'AD683G'
2241
+ model: 'Andromax I'
2242
+ - regex: 'New Andromax-i'
2243
+ model: 'New Andromax I'
2244
+
2245
+ - regex: 'Andromax[ _\-]([^/;]+) Build'
2246
+ model: 'Andromax $1'
2247
+ - regex: 'Andromax[ _\-]([a-z0-9]+)'
2248
+ model: 'Andromax $1'
2249
+ - regex: 'Smartfren[ _\-]([^/;]+) Build'
2250
+ model: '$1'
2251
+ - regex: '(Androtab[^/;]+) Build'
2252
+ model: '$1'
2253
+ device: 'tablet'
2254
+
1848
2255
  # SuperSonic
1849
2256
  SuperSonic:
1850
2257
  regex: '(SC-[0-9]+[a-z]+)'
@@ -1879,9 +2286,23 @@ Pantech:
1879
2286
 
1880
2287
  #Polaroid
1881
2288
  Polaroid:
1882
- regex: 'Polaroid|(?:PMID|MIDC)[0-9a-z]+ Build|MID(?:1014|0714)'
2289
+ regex: 'Polaroid|(?:PMID|MIDC)[0-9a-z]+ Build|MID(?:1014|0714)|PRO[VG]?(?:[0-9]{3,}[a-z]*|[0-9]{2}[a-z])'
1883
2290
  device: 'tablet'
1884
2291
  models:
2292
+ # explicit smartphone models
2293
+ - regex: 'PRO4611(?:PR201)?'
2294
+ model: 'Pro4611'
2295
+ device: 'smartphone'
2296
+ - regex: 'PROV400'
2297
+ model: 'Agate'
2298
+ device: 'smartphone'
2299
+ - regex: 'PROV350'
2300
+ model: 'ProV350'
2301
+ device: 'smartphone'
2302
+
2303
+ - regex: 'PRO([VG]?(?:[0-9]{3,}[a-z]*|[0-9]{2}[a-z]))'
2304
+ model: 'Pro$1'
2305
+ device: 'smartphone'
1885
2306
  - regex: '(MID(?:1014|0714))'
1886
2307
  model: '$1'
1887
2308
  - regex: '((?:PMID|MIDC)[0-9a-z]+) Build'
@@ -1975,9 +2396,9 @@ Spice:
1975
2396
  regex: 'Spice'
1976
2397
  device: 'smartphone'
1977
2398
  models:
1978
- - regex: 'Spice[ _-]?([^/;]+)(?:[\)]| Build)'
2399
+ - regex: 'Spice[ _\-]?([^/;]+)(?:[\)]| Build)'
1979
2400
  model: '$1'
1980
- - regex: 'Spice[ _-]?([^/;]+)(?:/|$)'
2401
+ - regex: 'Spice[ _\-]?([^/;]+)(?:/|$)'
1981
2402
  model: '$1'
1982
2403
 
1983
2404
  # Sharp
@@ -2018,88 +2439,6 @@ Softbank:
2018
2439
  - regex: 'J-PHONE/[0-9]\.[0-9]/([a-z0-9\-]+)'
2019
2440
  model: '$1'
2020
2441
 
2021
- # Sony
2022
- Sony:
2023
- regex: 'Sony(?! ?Ericsson)|SGP|Xperia|C1[569]0[45]|C2[01]0[45]|C2305|C530[236]|C5502|C6[56]0[236]|C6616|C68(?:0[26]|[34]3)|C69(?:0[236]|16|43)|D200[45]|D21(?:0[45]|14)|D22(?:0[236]|12|43)|D230[2356]|D530[36]|D5322|D5503|D65(?:0[23]|43)|LT22i|XL39H'
2024
- device: 'smartphone'
2025
- models:
2026
- # explicit smartphone models
2027
- - regex: '(?:Sony)?C150[45]'
2028
- model: 'Xperia E'
2029
- - regex: '(?:Sony)?C160[45]'
2030
- model: 'Xperia E Dual'
2031
- - regex: '(?:Sony)?C190[45]'
2032
- model: 'Xperia M'
2033
- - regex: '(?:Sony)?C200[45]'
2034
- model: 'Xperia M Dual'
2035
- - regex: '(?:Sony)?C210[45]'
2036
- model: 'Xperia L'
2037
- - regex: '(?:Sony)?C2305'
2038
- model: 'Xperia C'
2039
- - regex: '(?:Sony)?C530[236]'
2040
- model: 'Xperia SP'
2041
- - regex: '(?:Sony)?C5502'
2042
- model: 'Xperia ZR'
2043
- - regex: '(?:Sony)?C650[236]'
2044
- model: 'Xperia ZL'
2045
- - regex: '(?:Sony)?C66(?:0[236]|16)'
2046
- model: 'Xperia Z'
2047
- - regex: '(?:Sony)?(?:C68(?:0[26]|[34]3)|XL39H)'
2048
- model: 'Xperia Z Ultra'
2049
- - regex: '(?:Sony)?C69(?:0[236]|16|43)'
2050
- model: 'Xperia Z1'
2051
- - regex: '(?:Sony)?D200[45]'
2052
- model: 'Xperia E1'
2053
- - regex: '(?:Sony)?D21(?:0[45]|14)'
2054
- model: 'Xperia E1 Dual'
2055
- - regex: '(?:Sony)?D22(?:0[236]|43)'
2056
- model: 'Xperia E3'
2057
- - regex: '(?:Sony)?D2212'
2058
- model: 'Xperia E3 Dual'
2059
- - regex: '(?:Sony)?D2302'
2060
- model: 'Xperia M2 Dual'
2061
- - regex: '(?:Sony)?D230[356]'
2062
- model: 'Xperia M2'
2063
- - regex: '(?:Sony)?D530[36]'
2064
- model: 'Xperia T2 Ultra'
2065
- - regex: '(?:Sony)?D5322'
2066
- model: 'Xperia T2 Ultra Dual'
2067
- - regex: '(?:Sony)?D5503'
2068
- model: 'Xperia Z1 Compact'
2069
- - regex: '(?:Sony)?D65(?:0[23]|43)'
2070
- model: 'Xperia Z2'
2071
-
2072
- # explicit tablet models
2073
- - regex: 'SGP(?:311|312|321) Build'
2074
- model: 'Xperia Tablet Z'
2075
- device: 'tablet'
2076
- - regex: 'SGP(?:511|512|521) Build'
2077
- model: 'Xperia Tablet Z2'
2078
- device: 'tablet'
2079
- - regex: 'SGP(?:6[24]1) Build'
2080
- model: 'Xperia Tablet Z3 Compact'
2081
- device: 'tablet'
2082
- - regex: 'SGPT(?:12|121|122|123|13|131|132|133) Build'
2083
- model: 'Xperia Tablet S'
2084
- device: 'tablet'
2085
-
2086
- # general detections
2087
- - regex: 'Sony (Tablet[^/;]*) Build'
2088
- model: '$1'
2089
- device: 'tablet'
2090
- - regex: '(SGP[^/;]*) Build'
2091
- model: '$1'
2092
- device: 'tablet'
2093
- - regex: 'Xperia ([^/;]*Tablet[^/;]*) Build'
2094
- model: 'Xperia $1'
2095
- device: 'tablet'
2096
- - regex: 'Xperia ([^;/]+) Build'
2097
- model: 'Xperia $1'
2098
- - regex: 'Sony[ ]?([^/;]*) Build'
2099
- model: '$1'
2100
- - regex: 'Sony[ ]?([a-z0-9\-]+)'
2101
- model: '$1'
2102
-
2103
2442
  # Kindle
2104
2443
  Kindle:
2105
2444
  regex: 'KF(?:OT|TT|JWI|JWA|SOWI|APWI|THWI) Build|Kindle|Silk/\d+\.\d+'
@@ -2161,7 +2500,7 @@ Tecno Mobile:
2161
2500
  models:
2162
2501
  - regex: 'Tecno ([^;/]+) Build'
2163
2502
  model: '$1'
2164
- - regex: 'Tecno_?([a-z0-9_-]+)'
2503
+ - regex: 'Tecno_?([a-z0-9_\-]+)'
2165
2504
  model: '$1'
2166
2505
 
2167
2506
  # teXet
@@ -2274,11 +2613,11 @@ Wiko:
2274
2613
  models:
2275
2614
  - regex: '(?:Wiko-)?CINK(.*) Build'
2276
2615
  model: 'Cink$1'
2277
- - regex: '(?:Wiko-)?CINK[ _-]([a-z0-9]+)'
2616
+ - regex: '(?:Wiko-)?CINK[ _\-]([a-z0-9]+)'
2278
2617
  model: 'Cink $1'
2279
2618
  - regex: '(?:Wiko-)?IGGY(.*) Build'
2280
2619
  model: 'Iggy$1'
2281
- - regex: '(?:Wiko-)?IGGY[ _-]([a-z0-9]+)'
2620
+ - regex: '(?:Wiko-)?IGGY[ _\-]([a-z0-9]+)'
2282
2621
  model: 'Iggy $1'
2283
2622
  - regex: 'Stairway'
2284
2623
  model: 'Stairway'
@@ -2306,9 +2645,9 @@ Wolder:
2306
2645
  regex: 'miSmart|miTab'
2307
2646
  device: 'smartphone'
2308
2647
  models:
2309
- - regex: 'miSmart[ -_]?([^/]+) Build'
2648
+ - regex: 'miSmart[ \-_]?([^/]+) Build'
2310
2649
  model: 'miSmart $1'
2311
- - regex: 'miTab[ -_]?([^/]+) Build'
2650
+ - regex: 'miTab[ \-_]?([^/]+) Build'
2312
2651
  device: 'tablet'
2313
2652
  model: 'miTab $1'
2314
2653
 
@@ -2347,9 +2686,9 @@ Toshiba:
2347
2686
  regex: 'Toshiba|portalmmm/[12].0 TS'
2348
2687
  device: 'smartphone'
2349
2688
  models:
2350
- - regex: 'Toshiba[ /_\-]?([a-z0-9_ -]+) Build'
2689
+ - regex: 'Toshiba[ /_\-]?([a-z0-9_ \-]+) Build'
2351
2690
  model: '$1'
2352
- - regex: 'Toshiba[ /_\-]?([a-z0-9_-]+)'
2691
+ - regex: 'Toshiba[ /_\-]?([a-z0-9_\-]+)'
2353
2692
  model: '$1'
2354
2693
  - regex: 'portalmmm/[12].0 (TS[a-z0-9 ]+)'
2355
2694
  model: '$1'
@@ -2410,3 +2749,4 @@ ZTE:
2410
2749
  #Nokia:
2411
2750
  # regex: 'Symbian'
2412
2751
  # device: 'feature phone'
2752
+