Everywhere: Implement HTMX todo page

This commit is contained in:
Riyyi
2024-11-17 02:27:50 +01:00
parent 56dcd4fb35
commit 6b93045514
17 changed files with 373 additions and 124 deletions
+10 -2
View File
@@ -4,10 +4,10 @@ import Vapor
struct TodoDTO: Content {
var id: UUID?
var title: String?
func toModel() -> Todo {
let model = Todo()
model.id = self.id
if let title = self.title {
model.title = title
@@ -15,3 +15,11 @@ struct TodoDTO: Content {
return model
}
}
extension TodoDTO: Validatable {
static func validations(_ validations: inout Validations) {
validations.add(
"title", as: String.self, is: !.empty, required: true,
customFailureDescription: "Title is required")
}
}