Implemented phase 0 for the POC prototype in the Website service.
This commit is contained in:
1 parent
916df7e2f0
commit
717df5208c
31 files changed
+2351
-240
No files matched your search
@@ -0,0 +1,34 @@
|
||||
/// A format listings are published in, declared in navigation order; the raw value is the search filter token.
|
||||
enum Format: String, CaseIterable, Sendable {
|
||||
/// Single-issue comics.
|
||||
case singleIssues = "single-issues"
|
||||
/// Manga volumes.
|
||||
case manga
|
||||
/// Trade paperbacks.
|
||||
case tradePaperbacks = "trade-paperbacks"
|
||||
/// Hardcovers.
|
||||
case hardcovers
|
||||
}
|
||||
|
||||
// MARK: - Extensions
|
||||
|
||||
extension Format {
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The format's name as shown in the navigation.
|
||||
var label: String {
|
||||
switch self {
|
||||
case .singleIssues: "Single issues"
|
||||
case .manga: "Manga"
|
||||
case .tradePaperbacks: "Trade paperbacks"
|
||||
case .hardcovers: "Hardcovers"
|
||||
}
|
||||
}
|
||||
|
||||
/// The path of the search screen filtered to the format.
|
||||
var path: String {
|
||||
"\(String.Route.search)?format=\(rawValue)"
|
||||
}
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user