[Feature] Service #4

Merged
javier merged 13 commits from feature/service into main 2023-04-21 18:16:38 +00:00
Showing only changes of commit d1de1939e4 - Show all commits

View File

@ -0,0 +1,56 @@
public struct KeyNameFilter {
// MARK: Properties
private let key: String?
private let name: String?
// MARK: Initialisers
public init(
key: String?,
name: String?
) {
self.key = key
self.name = name
}
}
// MARK: - Filter
extension KeyNameFilter: Filter {
// MARK: Functions
func makeParameters() -> [String : String?] {
var parameters: [String : String?] = [:]
if let key {
parameters[.Key.key] = key
}
if let name {
parameters[.Key.name] = name
}
return parameters
}
}
// MARK: - Type aliases
public typealias AmiiboSeriesFilter = KeyNameFilter
public typealias AmiiboTypeFilter = KeyNameFilter
public typealias CharacterFilter = KeyNameFilter
public typealias GameSeriesFilter = KeyNameFilter
// MARK: - String+Key
private extension String {
enum Key {
static let key = "key"
static let name = "name"
}
}