import ArgumentParser import CliClient import Dependencies // TODO: Need to add a step to build prior to generating file. struct GeneratePdfCommand: AsyncParsableCommand { static let commandName = "pdf" static let configuration = CommandConfiguration( commandName: commandName ) @Option( name: [.customShort("e"), .customLong("engine")], help: "The pdf engine to use." ) var pdfEngine: String? @OptionGroup var globals: GenerateOptions mutating func run() async throws { @Dependency(\.cliClient) var cliClient let output = try await cliClient.runPandocCommand( globals.pandocOptions(.pdf(engine: pdfEngine)), logging: globals.loggingOptions(commandName: Self.commandName) ) print(output) } }