feat: Mostly implemented routing using url-routing package.
This commit is contained in:
@@ -28,4 +28,16 @@ extension Request {
|
||||
let html = try await html()
|
||||
return HTMLResponse { html }
|
||||
}
|
||||
|
||||
// Render the html if we're an htmx request, otherwise render the main page.
|
||||
func render<C: HTML, D: SendableHTMLDocument>(
|
||||
mainPage: (C) async throws -> D,
|
||||
@HTMLBuilder html: () async throws -> C
|
||||
) async rethrows -> HTMLResponse where C: Sendable {
|
||||
let html = try await html()
|
||||
guard isHtmxRequest else {
|
||||
return try await render { try await mainPage(html) }
|
||||
}
|
||||
return HTMLResponse { html }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user