feat: Refactoring route declarations.
This commit is contained in:
@@ -74,7 +74,7 @@ struct EmployeeForm: HTML {
|
||||
return "Update"
|
||||
}
|
||||
|
||||
private var targetURL: SharedModels.ViewRoute {
|
||||
private var targetURL: SiteRoute.View {
|
||||
guard let employee else { return .employee(.index) }
|
||||
return .employee(.get(id: employee.id))
|
||||
}
|
||||
|
||||
@@ -4,23 +4,23 @@ import SharedModels
|
||||
|
||||
extension HTMLAttribute.hx {
|
||||
@Sendable
|
||||
static func get(route: SharedModels.ViewRoute) -> HTMLAttribute {
|
||||
get(SharedModels.ViewRoute.router.path(for: route))
|
||||
static func get(route: SiteRoute.View) -> HTMLAttribute {
|
||||
get(SiteRoute.View.router.path(for: route))
|
||||
}
|
||||
|
||||
@Sendable
|
||||
static func post(route: SharedModels.ViewRoute) -> HTMLAttribute {
|
||||
post(SharedModels.ViewRoute.router.path(for: route))
|
||||
static func post(route: SiteRoute.View) -> HTMLAttribute {
|
||||
post(SiteRoute.View.router.path(for: route))
|
||||
}
|
||||
|
||||
@Sendable
|
||||
static func put(route: SharedModels.ViewRoute) -> HTMLAttribute {
|
||||
put(SharedModels.ViewRoute.router.path(for: route))
|
||||
static func put(route: SiteRoute.View) -> HTMLAttribute {
|
||||
put(SiteRoute.View.router.path(for: route))
|
||||
}
|
||||
|
||||
@Sendable
|
||||
static func delete(route: SharedModels.ApiRoute) -> HTMLAttribute {
|
||||
delete(SharedModels.ApiRoute.router.path(for: route))
|
||||
static func delete(route: SiteRoute.Api) -> HTMLAttribute {
|
||||
delete(SiteRoute.Api.router.path(for: route))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,8 +65,8 @@ indirect enum HXOnValue: Sendable {
|
||||
}
|
||||
|
||||
@Sendable
|
||||
static func setWindowLocation(to route: ViewRoute) -> Self {
|
||||
setWindowLocation(ViewRoute.router.path(for: route))
|
||||
static func setWindowLocation(to route: SiteRoute.View) -> Self {
|
||||
setWindowLocation(SiteRoute.View.router.path(for: route))
|
||||
}
|
||||
|
||||
@Sendable
|
||||
|
||||
@@ -53,7 +53,7 @@ struct LoggedIn: HTML, Sendable {
|
||||
let next: String?
|
||||
var content: some HTML {
|
||||
div(
|
||||
.hx.get(nextRoute ?? ViewRoute.router.path(for: .purchaseOrder(.index))),
|
||||
.hx.get(nextRoute ?? SiteRoute.View.router.path(for: .purchaseOrder(.index))),
|
||||
.hx.pushURL(true),
|
||||
.hx.target(.body),
|
||||
.hx.trigger(.event(.revealed)),
|
||||
@@ -66,7 +66,9 @@ struct LoggedIn: HTML, Sendable {
|
||||
// HACK: to get search route to work after login.
|
||||
var nextRoute: String? {
|
||||
if let next, next.contains("search") {
|
||||
return ViewRoute.router.path(for: .purchaseOrder(.search(.index(context: .employee, table: true))))
|
||||
return SiteRoute.View.router.path(
|
||||
for: .purchaseOrder(.search(.index(context: .employee, table: true)))
|
||||
)
|
||||
}
|
||||
return next
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ import Vapor
|
||||
|
||||
struct PurchaseOrderSearch: HTML, Sendable {
|
||||
|
||||
typealias Context = SharedModels.ViewRoute.PurchaseOrderRoute.Search.Context
|
||||
typealias Context = SiteRoute.View.PurchaseOrderRoute.Search.Context
|
||||
|
||||
let context: Context
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import SharedModels
|
||||
import Vapor
|
||||
|
||||
struct PurchaseOrderTable: HTML, Sendable {
|
||||
typealias SearchContext = SharedModels.ViewRoute.PurchaseOrderRoute.Search.Context
|
||||
typealias SearchContext = SiteRoute.View.PurchaseOrderRoute.Search.Context
|
||||
|
||||
let page: Page<PurchaseOrder>
|
||||
let context: Context
|
||||
|
||||
@@ -101,7 +101,7 @@ struct UserForm: HTML, Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
var targetURL: ViewRoute {
|
||||
var targetURL: SiteRoute.View {
|
||||
switch self {
|
||||
case .create:
|
||||
return .user(.index)
|
||||
|
||||
@@ -22,10 +22,10 @@ enum Button {
|
||||
}
|
||||
|
||||
@Sendable
|
||||
static func close(id: IDKey, resetURL route: ViewRoute? = nil) -> some HTML<HTMLTag.button> {
|
||||
static func close(id: IDKey, resetURL route: SiteRoute.View? = nil) -> some HTML<HTMLTag.button> {
|
||||
close(
|
||||
id: id.description,
|
||||
resetURL: route != nil ? ViewRoute.router.path(for: route!) : nil
|
||||
resetURL: route != nil ? SiteRoute.View.router.path(for: route!) : nil
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ extension Float where B == DefaultCloseButton {
|
||||
init(
|
||||
id: String = "float",
|
||||
shouldDisplay: Bool,
|
||||
resetURL route: ViewRoute? = nil,
|
||||
resetURL route: SiteRoute.View? = nil,
|
||||
@HTMLBuilder body: () -> C
|
||||
) {
|
||||
self.init(
|
||||
@@ -71,7 +71,7 @@ extension Float where B == DefaultCloseButton {
|
||||
body: body,
|
||||
closeButton: { DefaultCloseButton(
|
||||
id: id,
|
||||
resetURL: route != nil ? ViewRoute.router.path(for: route!) : nil
|
||||
resetURL: route != nil ? SiteRoute.View.router.path(for: route!) : nil
|
||||
) }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ import Vapor
|
||||
struct EmployeeSelect: HTML, Sendable {
|
||||
|
||||
let employees: [Employee]?
|
||||
let context: ViewRoute.SelectContext
|
||||
let context: SiteRoute.View.SelectContext
|
||||
|
||||
var content: some HTML {
|
||||
if let employees {
|
||||
@@ -42,7 +42,7 @@ struct EmployeeSelect: HTML, Sendable {
|
||||
|
||||
struct VendorBranchSelect: HTML, Sendable {
|
||||
let branches: [VendorBranch.Detail]?
|
||||
let context: ViewRoute.SelectContext
|
||||
let context: SiteRoute.View.SelectContext
|
||||
|
||||
var content: some HTML {
|
||||
if let branches {
|
||||
@@ -79,7 +79,7 @@ struct VendorBranchSelect: HTML, Sendable {
|
||||
// case purchaseOrderForm
|
||||
// case purchaseOrderSearch
|
||||
|
||||
extension ViewRoute.SelectContext {
|
||||
extension SiteRoute.View.SelectContext {
|
||||
var classString: String {
|
||||
switch self {
|
||||
case .purchaseOrderForm: return "col-3"
|
||||
|
||||
@@ -85,7 +85,7 @@ struct VendorForm: HTML, Sendable {
|
||||
return "Update"
|
||||
}
|
||||
|
||||
var targetURL: SharedModels.ViewRoute {
|
||||
var targetURL: SiteRoute.View {
|
||||
guard let vendor else { return .vendor(.index) }
|
||||
return .vendor(.get(id: vendor.id))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user