diff options
Diffstat (limited to 'Sora')
| -rw-r--r-- | Sora/Data/GenericItem.swift | 2 | ||||
| -rw-r--r-- | Sora/Data/Settings/SettingsBookmark.swift | 4 | ||||
| -rw-r--r-- | Sora/Views/Generic/GenericItemView.swift | 6 |
3 files changed, 11 insertions, 1 deletions
diff --git a/Sora/Data/GenericItem.swift b/Sora/Data/GenericItem.swift index 719ee5f..fc1744e 100644 --- a/Sora/Data/GenericItem.swift +++ b/Sora/Data/GenericItem.swift @@ -5,10 +5,12 @@ protocol GenericItem { var tags: [String] { get } var provider: BooruProvider { get } var date: Date { get } + var folder: String? { get } } extension BooruSearchQuery: GenericItem { var date: Date { searchedAt } + var folder: String? { nil } } extension SettingsBookmark: GenericItem { diff --git a/Sora/Data/Settings/SettingsBookmark.swift b/Sora/Data/Settings/SettingsBookmark.swift index 1acfaa5..ef0d64f 100644 --- a/Sora/Data/Settings/SettingsBookmark.swift +++ b/Sora/Data/Settings/SettingsBookmark.swift @@ -5,11 +5,13 @@ struct SettingsBookmark: Codable, Identifiable, Hashable { let tags: [String] let createdAt: Date let provider: BooruProvider + let folder: String? - init(provider: BooruProvider, tags: [String], id: UUID = UUID()) { + init(provider: BooruProvider, tags: [String], folder: String? = nil, id: UUID = UUID()) { createdAt = Date() self.id = id self.tags = tags self.provider = provider + self.folder = folder } } diff --git a/Sora/Views/Generic/GenericItemView.swift b/Sora/Views/Generic/GenericItemView.swift index bb2be1f..af79736 100644 --- a/Sora/Views/Generic/GenericItemView.swift +++ b/Sora/Views/Generic/GenericItemView.swift @@ -27,6 +27,12 @@ struct GenericItemView<T: GenericItem>: View { Text("On \(item.date.formatted()) from \(item.provider.rawValue)") .font(.caption) .foregroundStyle(Color.secondary) + + if let folder = item.folder { + Text("In \(folder)") + .font(.caption) + .foregroundStyle(Color.secondary) + } } #endif } |