aboutsummaryrefslogtreecommitdiff
path: root/examples/server_demo/src/demo/web.gleam
diff options
context:
space:
mode:
Diffstat (limited to 'examples/server_demo/src/demo/web.gleam')
-rw-r--r--examples/server_demo/src/demo/web.gleam58
1 files changed, 0 insertions, 58 deletions
diff --git a/examples/server_demo/src/demo/web.gleam b/examples/server_demo/src/demo/web.gleam
deleted file mode 100644
index b8c17e2..0000000
--- a/examples/server_demo/src/demo/web.gleam
+++ /dev/null
@@ -1,58 +0,0 @@
-// IMPORTS ---------------------------------------------------------------------
-
-import gleam/http/request.{type Request as HttpRequest}
-import gleam/http/response.{type Response as HttpResponse}
-import gleam/result
-import gleam/string_builder
-import lustre/attribute.{attribute}
-import lustre/element
-import lustre/element/html.{html}
-import lustre/server
-import lustre/ui/styles
-import mist.{type Connection, type ResponseData}
-import wisp.{type Request, type Response}
-
-//
-
-pub fn handle(req: HttpRequest(Connection)) -> HttpResponse(ResponseData) {
- wisp.mist_handler(handler, "")(req)
-}
-
-fn handler(req: Request) -> Response {
- use req <- wisp.handle_head(req)
- use <- wisp.serve_static(req, under: "/static", from: static_directory())
-
- html([attribute("lang", "en")], [
- html.head([], [
- html.meta([attribute("charset", "utf-8")]),
- html.meta([
- attribute("name", "viewport"),
- attribute("content", "width=device-width, initial-scale=1"),
- ]),
- styles.elements(),
- html.script(
- [attribute("type", "module")],
- "
- import '/static/lustre-server-component.mjs'
-
- document.addEventListener('DOMContentLoaded', () => {
- document
- .querySelector('lustre-server-component')
- .addEventListener('alert', event => {
- console.log(`The server count says: ${event.detail}`)
- })
- })
- ",
- ),
- ]),
- html.body([], [server.component([server.route("/ws")])]),
- ])
- |> element.to_string_builder
- |> string_builder.prepend("<!DOCTYPE html>\n")
- |> wisp.html_response(200)
-}
-
-fn static_directory() -> String {
- wisp.priv_directory("lustre")
- |> result.unwrap("")
-}