feat: Working on layout / css.

This commit is contained in:
2025-01-15 14:31:36 -05:00
parent cf28e52fa2
commit 24570e7191
15 changed files with 285 additions and 118 deletions

View File

@@ -6,7 +6,7 @@ import SharedModels
struct UserTable: HTML {
@Dependency(\.database.users.fetchAll) var fetchAll
let users: [User]
var content: some HTML {
table(.id("user-table")) {
@@ -14,11 +14,17 @@ struct UserTable: HTML {
tr {
th { "Username" }
th { "Email" }
th(.style("width: 50px;")) { ToggleFormButton() }
th(.style("width: 50px;")) {
Button.add()
.attributes(
.hx.get("/users/create"),
.hx.target("#float"),
.hx.swap(.outerHTML)
)
}
}
}
tbody {
let users = try await fetchAll()
tbody(.id("user-table-body")) {
for user in users {
Row(user: user)
}
@@ -29,8 +35,12 @@ struct UserTable: HTML {
struct Row: HTML {
let user: User
init(user: User) {
self.user = user
}
var content: some HTML<HTMLTag.tr> {
tr {
tr(.id("user_\(user.id)")) {
td { user.username }
td { user.email }
td {
@@ -38,6 +48,7 @@ struct UserTable: HTML {
.hx.get("/users/\(user.id.uuidString)"),
.hx.target("#float"),
.hx.swap(.outerHTML),
.hx.pushURL(true),
.class("btn-detail")
) {
""