summaryrefslogtreecommitdiff
path: root/Sora/Data/GenericItem.swift
blob: 7881a00d89b86e6af0b95b0b3f6b672f479026d4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import Foundation

protocol GenericItem {
  var id: UUID { get }
  var tags: [String] { get }
  var provider: BooruProvider { get }
  var date: Date { get }
  var folder: UUID? { get }
  var lastVisit: Date { get }
  var visitedCount: Int { get }
}

extension BooruSearchQuery: GenericItem {
  var date: Date { searchedAt }
  var folder: UUID? { nil }
  var visitedCount: Int { 0 }
  var lastVisit: Date { searchedAt }
}

extension SettingsBookmark: GenericItem {
  var date: Date { createdAt }
}