Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
620577e
New translations en.json (French)
sameerasw Mar 11, 2026
f221974
New translations en.json (Spanish)
sameerasw Mar 11, 2026
6f63938
New translations en.json (Afrikaans)
sameerasw Mar 11, 2026
c5f9aa7
New translations en.json (Arabic)
sameerasw Mar 11, 2026
fb21fd2
New translations en.json (Catalan)
sameerasw Mar 11, 2026
590bff6
New translations en.json (Czech)
sameerasw Mar 11, 2026
fb68ee2
New translations en.json (Danish)
sameerasw Mar 11, 2026
52874ab
New translations en.json (German)
sameerasw Mar 11, 2026
be4709c
New translations en.json (Greek)
sameerasw Mar 11, 2026
55605aa
New translations en.json (Finnish)
sameerasw Mar 11, 2026
7ee101e
New translations en.json (Hebrew)
sameerasw Mar 11, 2026
3b835a5
New translations en.json (Hungarian)
sameerasw Mar 11, 2026
94ea833
New translations en.json (Italian)
sameerasw Mar 11, 2026
ef515ca
New translations en.json (Japanese)
sameerasw Mar 11, 2026
e610984
New translations en.json (Korean)
sameerasw Mar 11, 2026
16d3b99
New translations en.json (Dutch)
sameerasw Mar 11, 2026
783aaa0
New translations en.json (Norwegian)
sameerasw Mar 11, 2026
035e72b
New translations en.json (Polish)
sameerasw Mar 11, 2026
c59730a
New translations en.json (Portuguese)
sameerasw Mar 11, 2026
f891ad6
New translations en.json (Russian)
sameerasw Mar 11, 2026
8656623
New translations en.json (Slovak)
sameerasw Mar 11, 2026
27a0808
New translations en.json (Serbian (Cyrillic))
sameerasw Mar 11, 2026
dd00878
New translations en.json (Swedish)
sameerasw Mar 11, 2026
44d4159
New translations en.json (Turkish)
sameerasw Mar 11, 2026
3d57346
New translations en.json (Ukrainian)
sameerasw Mar 11, 2026
fc0cdfd
New translations en.json (Chinese Simplified)
sameerasw Mar 11, 2026
7adb957
New translations en.json (Chinese Traditional)
sameerasw Mar 11, 2026
21adb30
New translations en.json (Vietnamese)
sameerasw Mar 11, 2026
59d8f5e
New translations en.json (Portuguese, Brazilian)
sameerasw Mar 11, 2026
935a0a9
New translations en.json (Hindi)
sameerasw Mar 11, 2026
47b6b3c
New translations en.json (Sinhala)
sameerasw Mar 11, 2026
41df54d
Merge pull request #197 from sameerasw/l10n_develop
sameerasw Mar 12, 2026
b1abebe
New translations en.json (French)
sameerasw Mar 12, 2026
9c37bfa
New translations en.json (Spanish)
sameerasw Mar 12, 2026
fc1b522
New translations en.json (Afrikaans)
sameerasw Mar 12, 2026
dd18b08
New translations en.json (Arabic)
sameerasw Mar 12, 2026
495669a
New translations en.json (Catalan)
sameerasw Mar 12, 2026
8e26d68
New translations en.json (Czech)
sameerasw Mar 12, 2026
208dbed
New translations en.json (Danish)
sameerasw Mar 12, 2026
8437fc8
New translations en.json (German)
sameerasw Mar 12, 2026
070905e
New translations en.json (Greek)
sameerasw Mar 12, 2026
ee7a727
New translations en.json (Finnish)
sameerasw Mar 12, 2026
b578bbc
New translations en.json (Hebrew)
sameerasw Mar 12, 2026
e30b1b2
New translations en.json (Hungarian)
sameerasw Mar 12, 2026
d5b218b
New translations en.json (Italian)
sameerasw Mar 12, 2026
aeef95b
New translations en.json (Japanese)
sameerasw Mar 12, 2026
bccc61c
New translations en.json (Korean)
sameerasw Mar 12, 2026
c313821
New translations en.json (Dutch)
sameerasw Mar 12, 2026
4c85ba1
New translations en.json (Norwegian)
sameerasw Mar 12, 2026
0d35233
New translations en.json (Polish)
sameerasw Mar 12, 2026
c2e9bb9
New translations en.json (Portuguese)
sameerasw Mar 12, 2026
ce028f9
New translations en.json (Russian)
sameerasw Mar 12, 2026
60b48a9
New translations en.json (Slovak)
sameerasw Mar 12, 2026
af51a56
New translations en.json (Serbian (Cyrillic))
sameerasw Mar 12, 2026
67aa912
New translations en.json (Swedish)
sameerasw Mar 12, 2026
dcc4bd3
New translations en.json (Turkish)
sameerasw Mar 12, 2026
f312dd1
New translations en.json (Ukrainian)
sameerasw Mar 12, 2026
1c2e566
New translations en.json (Chinese Simplified)
sameerasw Mar 12, 2026
abee2c7
New translations en.json (Chinese Traditional)
sameerasw Mar 12, 2026
1bdfddf
New translations en.json (Vietnamese)
sameerasw Mar 12, 2026
835c1fc
New translations en.json (Portuguese, Brazilian)
sameerasw Mar 12, 2026
479cf39
New translations en.json (Hindi)
sameerasw Mar 12, 2026
f9619f8
New translations en.json (Sinhala)
sameerasw Mar 12, 2026
462ce08
New translations en.json (Romanian)
sameerasw Mar 12, 2026
4187d84
New translations en.json (Italian)
sameerasw Mar 13, 2026
eff8aeb
Merge pull request #200 from sameerasw/l10n_develop
sameerasw Mar 13, 2026
53a2508
feat: New app icon, v3.0.0
sameerasw Mar 13, 2026
2631db5
version: Updated to v3.0.0
sameerasw Mar 13, 2026
8b84056
feat: New icon in welcome
sameerasw Mar 13, 2026
6e514d1
fix: QS outgoing transfer failure
sameerasw Mar 13, 2026
0aeda90
feat: Updated device mappings
sameerasw Mar 13, 2026
64d4326
feat: MacBook neo support
sameerasw Mar 13, 2026
2a7f230
feat: QS auto receive notify for Android
sameerasw Mar 13, 2026
92a9789
feat: App icon credits
sameerasw Mar 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 13 additions & 9 deletions AirSync.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
B94971692F62525800F59BC9 /* SwiftProtobuf in Frameworks */ = {isa = PBXBuildFile; productRef = B94971682F62525800F59BC9 /* SwiftProtobuf */; };
B949716B2F62525800F59BC9 /* SwiftProtobufPluginLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = B949716A2F62525800F59BC9 /* SwiftProtobufPluginLibrary */; };
B995A3332E4D2B3F00FA7A41 /* AppIcon-uni.icon in Resources */ = {isa = PBXBuildFile; fileRef = B995A3322E4D2B3F00FA7A41 /* AppIcon-uni.icon */; };
B99B04C62F641E1400FF3E2D /* AppIcon.icon in Resources */ = {isa = PBXBuildFile; fileRef = B99B04C52F641E1400FF3E2D /* AppIcon.icon */; };
B9AEBC0A2E6235D3006BA027 /* Sparkle in Frameworks */ = {isa = PBXBuildFile; productRef = B9AEBC092E6235D3006BA027 /* Sparkle */; };
B9B1C00D2E94E15D0005F6CB /* LottieUI in Frameworks */ = {isa = PBXBuildFile; productRef = B9B1C00C2E94E15D0005F6CB /* LottieUI */; };
B9C3181E2E37AA1D00367F16 /* QRCode in Frameworks */ = {isa = PBXBuildFile; productRef = B9C3181D2E37AA1D00367F16 /* QRCode */; };
Expand All @@ -24,6 +25,7 @@
/* Begin PBXFileReference section */
B9673B572E35A2A1006D284A /* AirSync.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AirSync.app; sourceTree = BUILT_PRODUCTS_DIR; };
B995A3322E4D2B3F00FA7A41 /* AppIcon-uni.icon */ = {isa = PBXFileReference; lastKnownFileType = folder.iconcomposer.icon; path = "AppIcon-uni.icon"; sourceTree = "<group>"; };
B99B04C52F641E1400FF3E2D /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = folder.iconcomposer.icon; path = AppIcon.icon; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
Expand Down Expand Up @@ -80,6 +82,7 @@
B9673B592E35A2A1006D284A /* airsync-mac */,
B9D263192F60D97900628704 /* Frameworks */,
B9673B582E35A2A1006D284A /* Products */,
B99B04C52F641E1400FF3E2D /* AppIcon.icon */,
);
sourceTree = "<group>";
};
Expand Down Expand Up @@ -184,6 +187,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
B99B04C62F641E1400FF3E2D /* AppIcon.icon in Resources */,
B995A3332E4D2B3F00FA7A41 /* AppIcon-uni.icon in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -268,14 +272,14 @@
baseConfigurationReferenceAnchor = B9673B592E35A2A1006D284A /* airsync-mac */;
baseConfigurationReferenceRelativePath = Configs/SelfCompiled.xcconfig;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon-uni";
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = NO;
AUTOMATION_APPLE_EVENTS = NO;
CODE_SIGN_ENTITLEMENTS = "";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 23;
CURRENT_PROJECT_VERSION = 25;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = WCB4HTANA6;
ENABLE_APP_SANDBOX = NO;
Expand All @@ -293,7 +297,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 2.6.1;
MARKETING_VERSION = 3.0.0;
PRODUCT_BUNDLE_IDENTIFIER = "sameerasw.airsync-mac";
PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = YES;
Expand Down Expand Up @@ -444,14 +448,14 @@
baseConfigurationReferenceAnchor = B9673B592E35A2A1006D284A /* airsync-mac */;
baseConfigurationReferenceRelativePath = Configs/Shared.xcconfig;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon-uni";
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = NO;
AUTOMATION_APPLE_EVENTS = NO;
CODE_SIGN_ENTITLEMENTS = "";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 23;
CURRENT_PROJECT_VERSION = 25;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = WCB4HTANA6;
ENABLE_APP_SANDBOX = NO;
Expand All @@ -469,7 +473,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 2.6.1;
MARKETING_VERSION = 3.0.0;
PRODUCT_BUNDLE_IDENTIFIER = "sameerasw.airsync-mac";
PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = YES;
Expand All @@ -492,14 +496,14 @@
baseConfigurationReferenceAnchor = B9673B592E35A2A1006D284A /* airsync-mac */;
baseConfigurationReferenceRelativePath = Configs/Shared.xcconfig;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon-uni";
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = NO;
AUTOMATION_APPLE_EVENTS = NO;
CODE_SIGN_ENTITLEMENTS = "";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 23;
CURRENT_PROJECT_VERSION = 25;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = WCB4HTANA6;
ENABLE_APP_SANDBOX = NO;
Expand All @@ -517,7 +521,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 2.6.1;
MARKETING_VERSION = 3.0.0;
PRODUCT_BUNDLE_IDENTIFIER = "sameerasw.airsync-mac";
PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = YES;
Expand Down
3 changes: 3 additions & 0 deletions AppIcon.icon/Assets/Frame 2608031(2).svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions AppIcon.icon/Assets/Frame 2608031(3).svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
38 changes: 38 additions & 0 deletions AppIcon.icon/icon.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
"fill" : "automatic",
"groups" : [
{
"layers" : [
{
"image-name" : "Frame 2608031(3).svg",
"name" : "Frame 2608031(3)"
},
{
"image-name" : "Frame 2608031(2).svg",
"name" : "Frame 2608031(2)"
}
],
"position" : {
"scale" : 1.44,
"translation-in-points" : [
0,
0
]
},
"shadow" : {
"kind" : "neutral",
"opacity" : 0.5
},
"translucency" : {
"enabled" : true,
"value" : 0.5
}
}
],
"supported-platforms" : {
"circles" : [
"watchOS"
],
"squares" : "shared"
}
}
2 changes: 1 addition & 1 deletion airsync-mac/Components/Custom/DropTargetModifier.swift
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ struct QuickShareDropDelegate: DropDelegate {
let connectedDeviceName = appState.device?.name
let targetName = (!optionPressed) ? connectedDeviceName : nil

QuickShareManager.shared.startDiscovery(autoTargetName: targetName)
QuickShareManager.shared.transferURLs = urls
QuickShareManager.shared.startDiscovery(autoTargetName: targetName)
appState.showingQuickShareTransfer = true
} else if let text = text {
appState.sendClipboardToAndroid(text: text)
Expand Down
111 changes: 62 additions & 49 deletions airsync-mac/Constants/MacDeviceMappings.json
Original file line number Diff line number Diff line change
@@ -1,91 +1,104 @@
{
"MacBook Air": {
"MacBookAir8,1": "MacBook Air (13-inch, 2018)",
"MacBookAir8,1": "MacBook Air (2018)",
"MacBookAir8,1_icon": "macbook.gen1",
"MacBookAir8,2": "MacBook Air (13-inch, 2019)",
"MacBookAir8,2": "MacBook Air (2019)",
"MacBookAir8,2_icon": "macbook.gen1",
"MacBookAir10,1": "MacBook Air (13-inch, M1, 2020)",
"MacBookAir10,1": "MacBook Air (M1, 2020)",
"MacBookAir10,1_icon": "macbook.gen1",
"MacBookAir9,1": "MacBook Air (13-inch, M1, 2021)",
"MacBookAir9,1": "MacBook Air (2020)",
"MacBookAir9,1_icon": "macbook.gen1",
"Mac14,2": "MacBook Air (13-inch, M2, 2022)",
"Mac14,2": "MacBook Air (M2, 2022)",
"Mac14,5": "MacBook Air (15-inch, M2, 2023)",
"Mac15,12": "MacBook Air (13-inch, M3, 2024)",
"Mac15,13": "MacBook Air (15-inch, M3, 2024)",
"Mac16,12": "MacBook Air (13-inch, M4, 2025)",
"Mac16,13": "MacBook Air (15-inch, M4, 2025)"
"Mac16,13": "MacBook Air (15-inch, M4, 2025)",
"Mac17,3": "MacBook Air (13-inch, M5, 2026)",
"Mac17,4": "MacBook Air (15-inch, M5, 2026)"
},
"MacBook Neo": {
"Mac17,5": "MacBook Neo (13-inch, 2026)",
"Mac17,5_icon": "macbook.gen1"
},
"MacBook Pro": {
"MacBookPro15,1": "MacBook Pro (13-inch, 2018)",
"MacBookPro15,1": "MacBook Pro (15-inch, 2018/2019)",
"MacBookPro15,1_icon": "macbook.gen1",
"MacBookPro15,2": "MacBook Pro (15-inch, 2018)",
"MacBookPro15,2": "MacBook Pro (13-inch, 2018/2019, Four Thunderbolt 3 ports)",
"MacBookPro15,2_icon": "macbook.gen1",
"MacBookPro15,4": "MacBook Pro (13-inch, 2019)",
"MacBookPro15,3": "MacBook Pro (15-inch, 2019)",
"MacBookPro15,4": "MacBook Pro (13-inch, 2019, Two Thunderbolt 3 ports)",
"MacBookPro15,4_icon": "macbook.gen1",
"MacBookPro16,1": "MacBook Pro (16-inch, 2019)",
"MacBookPro16,1_icon": "macbook.gen1",
"MacBookPro16,2": "MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)",
"MacBookPro16,3": "MacBook Pro (13-inch, 2020, Two Thunderbolt 3 ports)",
"MacBookPro16,4": "MacBook Pro (16-inch, 2019)",
"MacBookPro16,4_icon": "macbook.gen1",
"MacBookPro17,1": "MacBook Pro (13-inch, M1, 2020)",
"MacBookPro17,1_icon": "macbook.gen1",
"MacBookPro16,4": "MacBook Pro (16-inch, 2020)",
"MacBookPro16,4_icon": "macbook.gen1",
"MacBookPro18,1": "MacBook Pro (14-inch, M1 Pro, 2021)",
"MacBookPro18,2": "MacBook Pro (14-inch, M1 Max, 2021)",
"MacBookPro18,3": "MacBook Pro (16-inch, M1 Pro, 2021)",
"MacBookPro18,4": "MacBook Pro (16-inch, M1 Max, 2021)",
"MacBookPro19,1": "MacBook Pro (14-inch, M1 Pro, 2022)",
"MacBookPro19,2": "MacBook Pro (16-inch, M1 Pro, 2022)",
"MacBookPro18,1": "MacBook Pro (16-inch, 2021)",
"MacBookPro18,2": "MacBook Pro (16-inch, 2021)",
"MacBookPro18,3": "MacBook Pro (14-inch, 2021)",
"MacBookPro18,4": "MacBook Pro (14-inch, 2021)",
"Mac14,5": "MacBook Pro (14-inch, 2023)",
"Mac14,6": "MacBook Pro (16-inch, 2023)",
"Mac14,7": "MacBook Pro (13-inch, M2, 2022)",
"Mac14,9": "MacBook Pro (14-inch, M2 Pro, 2023)",
"Mac14,10": "MacBook Pro (16-inch, M2 Pro, 2023)",
"Mac14,9": "MacBook Pro (14-inch, 2023)",
"Mac14,10": "MacBook Pro (16-inch, 2023)",
"Mac15,3": "MacBook Pro (14-inch, M3, 2023)",
"Mac15,6": "MacBook Pro (14-inch, M3 Pro, 2023)",
"Mac15,7": "MacBook Pro (16-inch, M3 Pro, 2023)",
"Mac15,8": "MacBook Pro (14-inch, M3 Max, 2023)",
"Mac15,9": "MacBook Pro (16-inch, M3 Max, 2023)",
"Mac15,10": "MacBook Pro (14-inch, M3 Max, 2023)",
"Mac15,11": "MacBook Pro (16-inch, M3 Max, 2023)",
"Mac15,6": "MacBook Pro (14-inch, M3 Pro/Max, 2023)",
"Mac15,7": "MacBook Pro (16-inch, M3 Pro/Max, 2023)",
"Mac15,8": "MacBook Pro (14-inch, M3 Pro/Max, 2023)",
"Mac15,9": "MacBook Pro (16-inch, M3 Pro/Max, 2023)",
"Mac15,10": "MacBook Pro (14-inch, M3 Pro/Max, 2023)",
"Mac15,11": "MacBook Pro (16-inch, M3 Pro/Max, 2023)",
"Mac16,1": "MacBook Pro (14-inch, M4, 2024)",
"Mac16,2": "MacBook Pro (16-inch, M4, 2024)",
"Mac16,8": "MacBook Pro (14-inch, M4 Pro, 2024)",
"Mac16,7": "MacBook Pro (16-inch, M4 Pro, 2024)",
"Mac16,6": "MacBook Pro (14-inch, M4 Max, 2024)",
"Mac16,5": "MacBook Pro (16-inch, M4 Max, 2024)"
"Mac16,5": "MacBook Pro (16-inch, M4 Pro/Max, 2024)",
"Mac16,6": "MacBook Pro (14-inch, M4 Pro/Max, 2024)",
"Mac16,7": "MacBook Pro (16-inch, M4 Pro/Max, 2024)",
"Mac16,8": "MacBook Pro (14-inch, M4 Pro/Max, 2024)",
"Mac17,2": "MacBook Pro (14-inch, M5, 2025)",
"Mac17,6": "MacBook Pro (16-inch, M5 Pro/Max, 2026)",
"Mac17,7": "MacBook Pro (14-inch, M5 Pro/Max, 2026)",
"Mac17,8": "MacBook Pro (16-inch, M5 Pro/Max, 2026)",
"Mac17,9": "MacBook Pro (14-inch, M5 Pro/Max, 2026)"
},
"Mac mini": {
"Macmini8,1": "Mac mini (2018)",
"Macmini8,1_icon": "macmini.gen2",
"Macmini9,1": "Mac mini (M1, 2020)",
"Macmini9,1_icon": "macmini.gen2",
"Macmini10,1": "Mac mini (M1, 2021)",
"Macmini10,1_icon": "macmini.gen2",
"Mac14,3": "Mac mini (M2, 2022)",
"Mac14,3": "Mac mini (M2, 2023)",
"Mac14,3_icon": "macmini.gen2",
"Mac14,12": "Mac mini (M2 Pro, 2022)",
"Mac14,12": "Mac mini (M2 Pro, 2023)",
"Mac14,12_icon": "macmini.gen2",
"Mac16,10": "Mac mini (M4, 2024)",
"Mac16,11": "Mac mini (M4 Pro, 2024)"
"Mac16,10": "Mac mini (2024)",
"Mac16,11": "Mac mini (2024)"
},
"iMac": {
"iMac19,1": "iMac (21.5-inch, 2018)",
"iMac19,2": "iMac (27-inch, 2018)",
"iMac19,3": "iMac (21.5-inch, 2019)",
"iMac19,4": "iMac (27-inch, 2019)",
"iMac21,1": "iMac (24-inch, M1, 2020)",
"iMac20,1": "iMac (27-inch, 2020)",
"iMacPro1,1": "iMac Pro (2017)",
"iMac19,1": "iMac (Retina 5K, 27-inch, 2019)",
"iMac19,2": "iMac (Retina 4K, 21.5-inch, 2019)",
"iMac20,1": "iMac (Retina 5K, 27-inch, 2020)",
"iMac20,2": "iMac (Retina 5K, 27-inch, 2020)",
"iMac21,1": "iMac (24-inch, M1, 2021)",
"iMac21,2": "iMac (24-inch, M1, 2021)",
"iMac21,3": "iMac (24-inch, M3, 2023)",
"iMac21,4": "iMac (24-inch, M4, 2024)"
"Mac15,4": "iMac (24-inch, 2023)",
"Mac15,5": "iMac (24-inch, 2023)",
"Mac16,2": "iMac (24-inch, 2024)",
"Mac16,3": "iMac (24-inch, 2024)"
},
"Mac Studio": {
"Mac13,1": "Mac Studio (M1 Max, 2021)",
"Mac13,2": "Mac Studio (M1 Ultra, 2021)",
"Mac13,1": "Mac Studio (M1 Max, 2022)",
"Mac13,2": "Mac Studio (M1 Ultra, 2022)",
"Mac14,13": "Mac Studio (M2 Max, 2023)",
"Mac14,14": "Mac Studio (M2 Ultra, 2023)",
"Mac16,15": "Mac Studio (M4 Max, 2024)",
"Mac16,14": "Mac Studio (M4 Ultra, 2024)"
"Mac15,14": "Mac Studio (M3 Ultra, 2025)",
"Mac16,9": "Mac Studio (M4 Max, 2025)"
},
"Mac Pro": {
"MacPro7,1": "Mac Pro (2019)",
"MacPro7,3": "Mac Pro (2022)"
"Mac14,8": "Mac Pro (2023)"
}
}
Loading