feat: Completes hvac-system-performance views and api call.
This commit is contained in:
56
Sources/Routes/Models/DehumidifierSizing.swift
Normal file
56
Sources/Routes/Models/DehumidifierSizing.swift
Normal file
@@ -0,0 +1,56 @@
|
||||
import Foundation
|
||||
|
||||
public enum DehumidifierSize {
|
||||
|
||||
/// Represents the request for determining dehumidifier size based on
|
||||
/// latent load and indoor conditions.
|
||||
public struct Request: Codable, Equatable, Sendable {
|
||||
|
||||
public let latentLoad: Double
|
||||
public let temperature: Double
|
||||
public let humidity: Double
|
||||
|
||||
public init(latentLoad: Double, temperature: Double, humidity: Double) {
|
||||
self.latentLoad = latentLoad
|
||||
self.temperature = temperature
|
||||
self.humidity = humidity
|
||||
}
|
||||
}
|
||||
|
||||
/// Represents the response for determining dehumidifier size based on
|
||||
/// latent load and indoor conditions.
|
||||
public struct Response: Codable, Equatable, Sendable {
|
||||
|
||||
public let requiredCapacity: Double
|
||||
public let pintsPerDay: Double
|
||||
public let recommendedSize: Int
|
||||
public let recommendedUrl: String?
|
||||
public let warnings: [String]
|
||||
|
||||
public init(
|
||||
requiredCapacity: Double,
|
||||
pintsPerDay: Double,
|
||||
recommendedSize: Int,
|
||||
recommendedUrl: String? = nil,
|
||||
warnings: [String] = []
|
||||
) {
|
||||
self.requiredCapacity = requiredCapacity
|
||||
self.pintsPerDay = pintsPerDay
|
||||
self.recommendedSize = recommendedSize
|
||||
self.recommendedUrl = recommendedUrl
|
||||
self.warnings = warnings
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
|
||||
public extension DehumidifierSize.Response {
|
||||
|
||||
static var mock: Self {
|
||||
.init(requiredCapacity: 100, pintsPerDay: 100, recommendedSize: 100, recommendedUrl: "#", warnings: [
|
||||
"A warning.", "B warning"
|
||||
])
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user