Files
vapor-po/Sources/SharedModels/Routes/ApiRoute.swift

38 lines
886 B
Swift

import CasePathsCore
import Foundation
@preconcurrency import URLRouting
public enum ApiRoute: Sendable, Equatable {
case employee(BaseRoute.EmployeeRoute)
case purchaseOrder(BaseRoute.PurchaseOrderRoute)
case user(BaseRoute.UserRoute)
case vendor(BaseRoute.VendorRoute)
case vendorBranch(BaseRoute.VendorBranchRoute)
static let rootPath = Path { "api"; "v1" }
public static let router = OneOf {
Route(.case(Self.employee)) {
rootPath
BaseRoute.EmployeeRoute.router
}
Route(.case(Self.purchaseOrder)) {
rootPath
BaseRoute.PurchaseOrderRoute.router
}
Route(.case(Self.user)) {
rootPath
BaseRoute.UserRoute.router
}
Route(.case(Self.vendor)) {
rootPath
BaseRoute.VendorRoute.router
}
Route(.case(Self.vendorBranch)) {
rootPath
BaseRoute.VendorBranchRoute.router
}
}
}