@@ -144,6 +144,10 @@ public enum Device {
144
144
///
145
145
/// 
146
146
case iPhone11ProMax
147
+ /// Device is an [iPhone SE (2nd generation)](https://support.apple.com/kb/SP820)
148
+ ///
149
+ /// 
150
+ case iPhoneSE2
147
151
/// Device is an [iPad 2](https://support.apple.com/kb/SP622)
148
152
///
149
153
/// 
@@ -356,6 +360,7 @@ public enum Device {
356
360
case " iPhone12,1 " : return iPhone11
357
361
case " iPhone12,3 " : return iPhone11Pro
358
362
case " iPhone12,5 " : return iPhone11ProMax
363
+ case " iPhone12,8 " : return iPhoneSE2
359
364
case " iPad2,1 " , " iPad2,2 " , " iPad2,3 " , " iPad2,4 " : return iPad2
360
365
case " iPad3,1 " , " iPad3,2 " , " iPad3,3 " : return iPad3
361
366
case " iPad3,4 " , " iPad3,5 " , " iPad3,6 " : return iPad4
@@ -453,6 +458,7 @@ public enum Device {
453
458
case . iPhone11: return 6.1
454
459
case . iPhone11Pro: return 5.8
455
460
case . iPhone11ProMax: return 6.5
461
+ case . iPhoneSE2: return 4.7
456
462
case . iPad2: return 9.7
457
463
case . iPad3: return 9.7
458
464
case . iPad4: return 9.7
@@ -528,6 +534,7 @@ public enum Device {
528
534
case . iPhone11: return ( width: 9 , height: 19.5 )
529
535
case . iPhone11Pro: return ( width: 9 , height: 19.5 )
530
536
case . iPhone11ProMax: return ( width: 9 , height: 19.5 )
537
+ case . iPhoneSE2: return ( width: 9 , height: 16 )
531
538
case . iPad2: return ( width: 3 , height: 4 )
532
539
case . iPad3: return ( width: 3 , height: 4 )
533
540
case . iPad4: return ( width: 3 , height: 4 )
@@ -584,7 +591,7 @@ public enum Device {
584
591
585
592
/// All iPhones
586
593
public static var allPhones : [ Device ] {
587
- return [ . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax]
594
+ return [ . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPhoneSE2 ]
588
595
}
589
596
590
597
/// All iPads
@@ -692,7 +699,7 @@ public enum Device {
692
699
693
700
/// All Touch ID Capable Devices
694
701
public static var allTouchIDCapableDevices : [ Device ] {
695
- return [ . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch]
702
+ return [ . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneSE2 , . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch]
696
703
}
697
704
698
705
/// All Face ID Capable Devices
@@ -702,7 +709,7 @@ public enum Device {
702
709
703
710
/// All Devices with Touch ID or Face ID
704
711
public static var allBiometricAuthenticationCapableDevices : [ Device ] {
705
- return [ . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
712
+ return [ . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPhoneSE2 , . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
706
713
}
707
714
708
715
/// Returns whether or not the device has Touch ID
@@ -757,7 +764,7 @@ public enum Device {
757
764
758
765
/// All devices that support wireless charging.
759
766
public static var allDevicesWithWirelessChargingSupport : [ Device ] {
760
- return [ . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax]
767
+ return [ . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPhoneSE2 ]
761
768
}
762
769
763
770
/// Returns whether or not the device supports wireless charging.
@@ -940,6 +947,7 @@ public enum Device {
940
947
case . iPhone11: return 326
941
948
case . iPhone11Pro: return 458
942
949
case . iPhone11ProMax: return 458
950
+ case . iPhoneSE2: return 326
943
951
case . iPad2: return 132
944
952
case . iPad3: return 264
945
953
case . iPad4: return 264
@@ -1042,6 +1050,7 @@ extension Device: CustomStringConvertible {
1042
1050
case . iPhone11: return " iPhone 11 "
1043
1051
case . iPhone11Pro: return " iPhone 11 Pro "
1044
1052
case . iPhone11ProMax: return " iPhone 11 Pro Max "
1053
+ case . iPhoneSE2: return " iPhone SE (2nd generation) "
1045
1054
case . iPad2: return " iPad 2 "
1046
1055
case . iPad3: return " iPad (3rd generation) "
1047
1056
case . iPad4: return " iPad (4th generation) "
@@ -1126,6 +1135,7 @@ extension Device: CustomStringConvertible {
1126
1135
case . iPhone11: return " iPhone 11 "
1127
1136
case . iPhone11Pro: return " iPhone 11 Pro "
1128
1137
case . iPhone11ProMax: return " iPhone 11 Pro Max "
1138
+ case . iPhoneSE2: return " iPhone SE (2nd generation) "
1129
1139
case . iPad2: return " iPad 2 "
1130
1140
case . iPad3: return " iPad (3rd generation) "
1131
1141
case . iPad4: return " iPad (4th generation) "
@@ -1489,6 +1499,7 @@ extension Device {
1489
1499
case . iPhoneSE: return [ . wide]
1490
1500
case . iPhone8: return [ . wide]
1491
1501
case . iPhoneXR: return [ . wide]
1502
+ case . iPhoneSE2: return [ . wide]
1492
1503
case . iPad2: return [ . wide]
1493
1504
case . iPad3: return [ . wide]
1494
1505
case . iPad4: return [ . wide]
@@ -1525,18 +1536,18 @@ extension Device {
1525
1536
1526
1537
/// All devices that feature a camera
1527
1538
public static var allDevicesWithCamera : [ Device ] {
1528
- return [ . iPodTouch5, . iPodTouch6, . iPodTouch7, . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPad2, . iPad3, . iPad4, . iPadAir, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini, . iPadMini2, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
1539
+ return [ . iPodTouch5, . iPodTouch6, . iPodTouch7, . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPhoneSE2 , . iPad2, . iPad3, . iPad4, . iPadAir, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini, . iPadMini2, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
1529
1540
}
1530
1541
1531
1542
/// All devices that feature a normal camera
1532
1543
@available ( * , deprecated, renamed: " allDevicesWithWideCamera " )
1533
1544
public static var allDevicesWithNormalCamera : [ Device ] {
1534
- return [ . iPodTouch5 , . iPodTouch6 , . iPodTouch7 , . iPhone4 , . iPhone4s , . iPhone5 , . iPhone5c , . iPhone5s , . iPhone6 , . iPhone6Plus , . iPhone6s , . iPhone6sPlus , . iPhone7 , . iPhone7Plus , . iPhoneSE , . iPhone8 , . iPhone8Plus , . iPhoneX , . iPhoneXS , . iPhoneXSMax , . iPhoneXR , . iPhone11 , . iPhone11Pro , . iPhone11ProMax , . iPad2 , . iPad3 , . iPad4 , . iPadAir , . iPadAir2 , . iPad5 , . iPad6 , . iPadAir3 , . iPad7 , . iPadMini , . iPadMini2 , . iPadMini3 , . iPadMini4 , . iPadMini5 , . iPadPro9Inch , . iPadPro12Inch , . iPadPro12Inch2 , . iPadPro10Inch , . iPadPro11Inch , . iPadPro12Inch3 , . iPadPro11Inch2 , . iPadPro12Inch4 ]
1545
+ return Device . allDevicesWithWideCamera
1535
1546
}
1536
1547
1537
1548
/// All devices that feature a wide camera
1538
1549
public static var allDevicesWithWideCamera : [ Device ] {
1539
- return [ . iPodTouch5, . iPodTouch6, . iPodTouch7, . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPad2, . iPad3, . iPad4, . iPadAir, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini, . iPadMini2, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
1550
+ return [ . iPodTouch5, . iPodTouch6, . iPodTouch7, . iPhone4, . iPhone4s, . iPhone5, . iPhone5c, . iPhone5s, . iPhone6, . iPhone6Plus, . iPhone6s, . iPhone6sPlus, . iPhone7, . iPhone7Plus, . iPhoneSE, . iPhone8, . iPhone8Plus, . iPhoneX, . iPhoneXS, . iPhoneXSMax, . iPhoneXR, . iPhone11, . iPhone11Pro, . iPhone11ProMax, . iPhoneSE2 , . iPad2, . iPad3, . iPad4, . iPadAir, . iPadAir2, . iPad5, . iPad6, . iPadAir3, . iPad7, . iPadMini, . iPadMini2, . iPadMini3, . iPadMini4, . iPadMini5, . iPadPro9Inch, . iPadPro12Inch, . iPadPro12Inch2, . iPadPro10Inch, . iPadPro11Inch, . iPadPro12Inch3, . iPadPro11Inch2, . iPadPro12Inch4]
1540
1551
}
1541
1552
1542
1553
/// All devices that feature a telephoto camera
@@ -1557,7 +1568,7 @@ extension Device {
1557
1568
/// Returns whether or not the current device has a normal camera
1558
1569
@available ( * , deprecated, renamed: " hasWideCamera " )
1559
1570
public var hasNormalCamera : Bool {
1560
- return self . cameras . contains ( . wide )
1571
+ return self . hasWideCamera
1561
1572
}
1562
1573
1563
1574
/// Returns whether or not the current device has a wide camera
0 commit comments