from htmldoom import elements as e from htmldoom import renders from .layout import render_document @renders(e.body()( e.h3()("{contents}"), e.a(href="/")("Home"), e.br(), e.a(href="/jinja2")("jinja2"), )) def render_body(data): return {"contents": data["data"]} def render(data): return render_document(data, body_renderer=render_body)
'... e.textarea("required", class_="input")("text")\n' "... ))\n" '<textarea required class="input">text</textarea>'), ), e.p()( e.h2()("A custom tag"), e.pre()(">>> from htmldoom import render, composite_tag\n" ">>> \n" '>>> clipboard_copy = composite_tag("clipboard-copy")\n' '>>> print(render(clipboard_copy(value="foo")("Copy Me")))\n' '<clipboard-copy value="foo">Copy Me</clipboard-copy>'), ), e.p()( e.h2()("A fast dynamic elements rendering mechanism"), e.p()("Choose whichever syntax suits you:"), e.h3()("Syntax 1"), e.pre()(">>> from htmldoom import renders, elements as e\n" ">>> \n" ">>> @renders(\n" '... e.p()("{x}"),\n' '... e.p()("another {x}"),\n' "... )\n" "... def render_paras(data: dict) -> dict:\n" '... return {"x": data["x"]}\n' ">>> \n" '>>> render_paras({"x": "awesome paragraph"})\n' "<p>awesome paragraph</p><p>another awesome paragraph</p>\n"), e.h3()("Syntax 2"), e.pre()(">>> from htmldoom import renders, elements as e\n" ">>> \n" ">>> render_paras = renders(\n"
"https://niteo.co/static_niteo_co/video/niteo_website_video.webm", type_="video/webm", ), e.source( src= "https://niteo.co/static_niteo_co/video/niteo_website_video.mp4", type_="video/mp4", ), ), e.div(class_="container") (e.div(class_="row justify-content-center") (e.div(class_="col-md-9 text-center")( e.h1( class_="text-white")("Empowering Small Businesses"), e.h3(class_="text-white") ("Niteo is a decade old SaaS studio full of bright ideas, building smart solutions that empower small businesses online." ), e.a( href="/projects", class_= "btn btn-primary btn-lg d-block d-sm-inline mr-sm-2 mt-2", )("View Our Projects"), e.a( href="/team", class_= "btn btn-outline-primary btn-lg d-block d-sm-inline ml-sm-2 mt-3 mt-sm-2 text-white", )("Meet Our Team"), ))), ), b.comment(" END HOME "), b.comment(" VALUES "),