Rework content commands, add audio player
This commit is contained in:
@ -0,0 +1,49 @@
|
||||
|
||||
struct PageIssue {
|
||||
|
||||
let page: Page
|
||||
|
||||
let language: ContentLanguage
|
||||
|
||||
let message: PageContentAnomaly
|
||||
|
||||
init(page: Page, language: ContentLanguage, message: PageContentAnomaly) {
|
||||
self.page = page
|
||||
self.language = language
|
||||
self.message = message
|
||||
|
||||
print("\(title) (\(language)): \(message)")
|
||||
}
|
||||
|
||||
var title: String {
|
||||
page.localized(in: language).title
|
||||
}
|
||||
}
|
||||
|
||||
extension PageIssue: Identifiable {
|
||||
|
||||
var id: String {
|
||||
page.id + "-" + language.rawValue + "-" + message.id
|
||||
}
|
||||
}
|
||||
|
||||
extension PageIssue: Equatable {
|
||||
|
||||
static func == (lhs: PageIssue, rhs: PageIssue) -> Bool {
|
||||
lhs.id == rhs.id
|
||||
}
|
||||
}
|
||||
|
||||
extension PageIssue: Hashable {
|
||||
|
||||
func hash(into hasher: inout Hasher) {
|
||||
hasher.combine(id)
|
||||
}
|
||||
}
|
||||
|
||||
extension PageIssue: Comparable {
|
||||
|
||||
static func < (lhs: PageIssue, rhs: PageIssue) -> Bool {
|
||||
lhs.id < rhs.id
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user