feat: Begins room-pressure calculator

This commit is contained in:
2025-02-28 16:27:39 -05:00
parent d08e4b0839
commit 49af734a97
15 changed files with 548 additions and 50 deletions

View File

@@ -56,6 +56,7 @@ public extension SiteRoute {
case dehumidifierSize(DehumidifierSize)
case hvacSystemPerformance(HVACSystemPerformance)
case moldRisk(MoldRisk)
case roomPressure(RoomPressure)
public static let router = OneOf {
Route(.case(Self.index)) {
@@ -70,6 +71,9 @@ public extension SiteRoute {
Route(.case(Self.moldRisk)) {
MoldRisk.router
}
Route(.case(Self.roomPressure)) {
RoomPressure.router
}
}
public enum DehumidifierSize: Equatable, Sendable {
@@ -157,5 +161,23 @@ public extension SiteRoute {
}
}
}
public enum RoomPressure: Equatable, Sendable {
case index(mode: Routes.RoomPressure.Mode? = nil)
public static var index: Self { .index() }
static let rootPath = "room-pressure"
public static let router = OneOf {
Route(.case(Self.index)) {
Path { rootPath }
Method.get
Query {
Optionally { Field("form") { Routes.RoomPressure.Mode.parser() } }
}
}
}
}
}
}