Moved the Create.Options model to its own file in the executable target.
This commit is contained in:
@@ -1,6 +1,5 @@
|
|||||||
import ArgumentParser
|
import ArgumentParser
|
||||||
import ColibriLibrary
|
import ColibriLibrary
|
||||||
import Foundation
|
|
||||||
|
|
||||||
extension Colibri {
|
extension Colibri {
|
||||||
struct Create: AsyncParsableCommand {
|
struct Create: AsyncParsableCommand {
|
||||||
@@ -32,25 +31,3 @@ extension Colibri {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// MARK: - Options
|
|
||||||
|
|
||||||
extension Colibri.Create {
|
|
||||||
struct Options: ParsableArguments {
|
|
||||||
|
|
||||||
// MARK: Properties
|
|
||||||
|
|
||||||
@Option(name: .shortAndLong)
|
|
||||||
var name: String
|
|
||||||
|
|
||||||
@Option(name: .shortAndLong)
|
|
||||||
var location: String?
|
|
||||||
|
|
||||||
// MARK: Computed
|
|
||||||
|
|
||||||
var locationURL: URL? {
|
|
||||||
location.flatMap { URL(fileURLWithPath: $0) }
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
import ArgumentParser
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
extension Colibri.Create {
|
||||||
|
struct Options: ParsableArguments {
|
||||||
|
|
||||||
|
// MARK: Properties
|
||||||
|
|
||||||
|
@Option(name: .shortAndLong)
|
||||||
|
var name: String
|
||||||
|
|
||||||
|
@Option(name: .shortAndLong)
|
||||||
|
var location: String?
|
||||||
|
|
||||||
|
// MARK: Computed
|
||||||
|
|
||||||
|
var locationURL: URL? {
|
||||||
|
location.flatMap { URL(fileURLWithPath: $0) }
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user