22#: package CliFx
33
44using CliFx;
5- using CliFx . Attributes ;
5+ using CliFx . Binding ;
66using CliFx . Infrastructure ;
77
8- return await new CliApplicationBuilder ( )
9- . AddCommand < PublishMacOSBundleCommand > ( )
10- . Build ( )
11- . RunAsync ( args ) ;
12-
138[ Command ( Description = "Publishes the GUI app as a macOS .app bundle." ) ]
14- public class PublishMacOSBundleCommand : ICommand
9+ public partial class PublishMacOSBundleCommand : ICommand
1510{
1611 private const string BundleName = "YoutubeDownloader.app" ;
1712 private const string AppName = "YoutubeDownloader" ;
@@ -21,16 +16,16 @@ public class PublishMacOSBundleCommand : ICommand
2116 private const string AppIconName = "AppIcon" ;
2217
2318 [ CommandOption ( "publish-dir" , Description = "Path to the publish output directory." ) ]
24- public required string PublishDirPath { get ; init ; }
19+ public required string PublishDirPath { get ; set ; }
2520
2621 [ CommandOption ( "icons-file" , Description = "Path to the .icns icons file." ) ]
27- public required string IconsFilePath { get ; init ; }
22+ public required string IconsFilePath { get ; set ; }
2823
2924 [ CommandOption ( "full-version" , Description = "Full version string (e.g. '1.2.3.4')." ) ]
30- public required string FullVersion { get ; init ; }
25+ public required string FullVersion { get ; set ; }
3126
3227 [ CommandOption ( "short-version" , Description = "Short version string (e.g. '1.2.3')." ) ]
33- public required string ShortVersion { get ; init ; }
28+ public required string ShortVersion { get ; set ; }
3429
3530 public async ValueTask ExecuteAsync ( IConsole console )
3631 {
0 commit comments