Current section

Files

Jump to
scriptorium src scriptorium rendering views page.gleam
Raw

src/scriptorium/rendering/views/page.gleam

import gleam/list
import lustre/attribute.{attribute, class}
import lustre/element.{text}
import lustre/element/html.{article, h2, header}
import scriptorium/compiler.{type CompiledPage}
import scriptorium/config.{type Configuration}
import scriptorium/models/database.{type Database}
pub fn generate(db: Database, config: Configuration) {
view(_, db, config)
}
fn view(page: CompiledPage, _db: Database, _config: Configuration) {
let language = case list.key_find(page.orig.headers, "lang") {
Ok(l) -> [attribute("lang", l)]
Error(_) -> []
}
article([class("page"), ..language], [
header([], [h2([], [text(page.orig.title)])]),
element.unsafe_raw_html("", "div", [], page.content),
])
}