Last active
October 31, 2022 18:50
-
-
Save BrentMifsud/dab24388bf79700cecee3265f9a98800 to your computer and use it in GitHub Desktop.
Extension on PreviewDevice that includes all available devices
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import SwiftUI | |
/// Static properties for all preview devices. | |
/// | |
/// Usage: | |
/// | |
/// ```swift | |
/// struct TestView_Previews: PreviewProvider { | |
/// static var previews: some View { | |
/// Group { | |
/// TestView() | |
/// .previewDevice(.iPhone13ProMax) | |
/// } | |
/// } | |
/// } | |
/// ``` | |
extension PreviewDevice { | |
static let iPhone4s: PreviewDevice = "iPhone 4s" | |
static let iPhone5: PreviewDevice = "iPhone 5" | |
static let iPhone5s: PreviewDevice = "iPhone 5s" | |
static let iPhone6Plus: PreviewDevice = "iPhone 6 Plus" | |
static let iPhone6: PreviewDevice = "iPhone 6" | |
static let iPhone6s: PreviewDevice = "iPhone 6s" | |
static let iPhone6sPlus: PreviewDevice = "iPhone 6s Plus" | |
static let iPhoneSE_1stGen: PreviewDevice = "iPhone SE (1st generation)" | |
static let iPhone7: PreviewDevice = "iPhone 7" | |
static let iPhone7Plus: PreviewDevice = "iPhone 7 Plus" | |
static let iPhone8: PreviewDevice = "iPhone 8" | |
static let iPhone8Plus: PreviewDevice = "iPhone 8 Plus" | |
static let iPhoneX: PreviewDevice = "iPhone X" | |
static let iPhoneXs: PreviewDevice = "iPhone Xs" | |
static let iPhoneXsMax: PreviewDevice = "iPhone Xs Max" | |
static let iPhoneXʀ: PreviewDevice = "iPhone Xʀ" | |
static let iPhone11: PreviewDevice = "iPhone 11" | |
static let iPhone11Pro: PreviewDevice = "iPhone 11 Pro" | |
static let iPhone11ProMax: PreviewDevice = "iPhone 11 Pro Max" | |
static let iPhoneSE2ndGen: PreviewDevice = "iPhone SE (2nd generation)" | |
static let iPhone12Mini: PreviewDevice = "iPhone 12 mini" | |
static let iPhone12: PreviewDevice = "iPhone 12" | |
static let iPhone12Pro: PreviewDevice = "iPhone 12 Pro" | |
static let iPhone12ProMax: PreviewDevice = "iPhone 12 Pro Max" | |
static let iPhone13Pro: PreviewDevice = "iPhone 13 Pro" | |
static let iPhone13ProMax: PreviewDevice = "iPhone 13 Pro Max" | |
static let iPhone13Mini: PreviewDevice = "iPhone 13 mini" | |
static let iPhone13: PreviewDevice = "iPhone 13" | |
static let iPhoneSE_3rdGen: PreviewDevice = "iPhone SE (3rd generation)" | |
static let iPhone14: PreviewDevice = "iPhone 14" | |
static let iPhone14Plus: PreviewDevice = "iPhone 14 Plus" | |
static let iPhone14Pro: PreviewDevice = "iPhone 14 Pro" | |
static let iPhone14ProMax: PreviewDevice = "iPhone 14 Pro Max" | |
static let iPodTouch_7thGen: PreviewDevice = "iPod touch (7th generation)" | |
static let iPad2: PreviewDevice = "iPad 2" | |
static let iPadRetina: PreviewDevice = "iPad Retina" | |
static let iPadAir: PreviewDevice = "iPad Air" | |
static let iPadMini2: PreviewDevice = "iPad mini 2" | |
static let iPadMini3: PreviewDevice = "iPad mini 3" | |
static let iPadMini4: PreviewDevice = "iPad mini 4" | |
static let iPadAir2: PreviewDevice = "iPad Air 2" | |
static let iPadPro_9_7: PreviewDevice = "iPad Pro (9.7-inch)" | |
static let iPadPro12_9_1stGen: PreviewDevice = "iPad Pro (12.9-inch) (1st generation)" | |
static let iPad_5thGen: PreviewDevice = "iPad (5th generation)" | |
static let iPadPro_12_9_2ndGen: PreviewDevice = "iPad Pro (12.9-inch) (2nd generation)" | |
static let iPadPro10_5: PreviewDevice = "iPad Pro (10.5-inch)" | |
static let iPad_6thGen: PreviewDevice = "iPad (6th generation)" | |
static let iPad_7thGen: PreviewDevice = "iPad (7th generation)" | |
static let iPadPro_11_1stGen: PreviewDevice = "iPad Pro (11-inch) (1st generation)" | |
static let iPadPro_12_9_3rdGen: PreviewDevice = "iPad Pro (12.9-inch) (3rd generation)" | |
static let iPadPro_11_2ndGen: PreviewDevice = "iPad Pro (11-inch) (2nd generation)" | |
static let iPadPro_12_9_4thGen: PreviewDevice = "iPad Pro (12.9-inch) (4th generation)" | |
static let iPadMini_5thGen: PreviewDevice = "iPad mini (5th generation)" | |
static let iPadAir_3rdGen: PreviewDevice = "iPad Air (3rd generation)" | |
static let iPad_8thGen: PreviewDevice = "iPad (8th generation)" | |
static let iPad_9thGen: PreviewDevice = "iPad (9th generation)" | |
static let iPadAir_4thGen: PreviewDevice = "iPad Air (4th generation)" | |
static let iPadPro_11_3rdGen: PreviewDevice = "iPad Pro (11-inch) (3rd generation)" | |
static let iPadPro_12_9_5thGen: PreviewDevice = "iPad Pro (12.9-inch) (5th generation)" | |
static let iPadAir_5thGen: PreviewDevice = "iPad Air (5th generation)" | |
static let iPadMini_6thGen: PreviewDevice = "iPad mini (6th generation)" | |
static let AppleTV: PreviewDevice = "Apple TV" | |
static let AppleTV4K: PreviewDevice = "Apple TV 4K" | |
static let AppleTV4KAt1080p: PreviewDevice = "Apple TV 4K (at 1080p)" | |
static let AppleTV4K_2ndGen: PreviewDevice = "Apple TV 4K (2nd generation)" | |
static let AppleTV4KAt1080p_2ndGen: PreviewDevice = "Apple TV 4K (at 1080p) (2nd generation)" | |
static let AppleWatch_38mm: PreviewDevice = "Apple Watch (38mm)" | |
static let AppleWatch_42mm: PreviewDevice = "Apple Watch (42mm)" | |
static let AppleWatchSeries2_38mm: PreviewDevice = "Apple Watch Series 2 (38mm)" | |
static let AppleWatchSeries2_42mm: PreviewDevice = "Apple Watch Series 2 (42mm)" | |
static let AppleWatchSeries3_38mm: PreviewDevice = "Apple Watch Series 3 (38mm)" | |
static let AppleWatchSeries3_42mm: PreviewDevice = "Apple Watch Series 3 (42mm)" | |
static let AppleWatchSeries4_40mm: PreviewDevice = "Apple Watch Series 4 (40mm)" | |
static let AppleWatchSeries4_44mm: PreviewDevice = "Apple Watch Series 4 (44mm)" | |
static let AppleWatchSeries5_40mm: PreviewDevice = "Apple Watch Series 5 (40mm)" | |
static let AppleWatchSeries5_44mm: PreviewDevice = "Apple Watch Series 5 (44mm)" | |
static let AppleWatchSE_40mm: PreviewDevice = "Apple Watch SE (40mm)" | |
static let AppleWatchSE_44mm: PreviewDevice = "Apple Watch SE (44mm)" | |
static let AppleWatchSeries6_40mm: PreviewDevice = "Apple Watch Series 6 (40mm)" | |
static let AppleWatchSeries6_44mm: PreviewDevice = "Apple Watch Series 6 (44mm)" | |
static let AppleWatchSeries7_41mm: PreviewDevice = "Apple Watch Series 7 (41mm)" | |
static let AppleWatchSeries7_45mm: PreviewDevice = "Apple Watch Series 7 (45mm)" | |
static let AppleWatchSE_40mm_2ndGen: PreviewDevice = "Apple Watch SE (40mm) (2nd generation)" | |
static let AppleWatchSE_44mm_2ndGen: PreviewDevice = "Apple Watch SE (44mm) (2nd generation)" | |
static let AppleWatchSeries8_41mm: PreviewDevice = "Apple Watch Series 8 (41mm)" | |
static let AppleWatchSeries8_45mm: PreviewDevice = "Apple Watch Series 8 (45mm)" | |
static let AppleWatchUltra_49mm: PreviewDevice = "Apple Watch Ultra (49mm)" | |
static let mac: PreviewDevice = "Mac" | |
static let macCatalyst: PreviewDevice = "Mac Catalyst" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment