Remove metadata component
This commit is contained in:
parent
0ad8c14e10
commit
f1c711ea43
6 changed files with 30 additions and 42 deletions
src
|
@ -18,8 +18,8 @@
|
|||
(defmethod jg:not-found ((app jg:app))
|
||||
(view:render (cmp:not-found-page)
|
||||
:status :not-found
|
||||
:title "404 Not Found"
|
||||
:description "お探しのページは見つかりませんでした。"))
|
||||
:metadata '(:title "404 Not Found"
|
||||
:description "お探しのページは見つかりませんでした。")))
|
||||
|
||||
(defun start ()
|
||||
(jg:start *app*))
|
||||
|
|
|
@ -4,9 +4,23 @@
|
|||
(:export #:document))
|
||||
(in-package #:hp/components/global/document)
|
||||
|
||||
(pi:define-element document (metadata)
|
||||
(pi:define-element document (title description)
|
||||
(pi:h
|
||||
(html :lang "ja"
|
||||
metadata
|
||||
(body :hx-ext "head-support"
|
||||
pi:children))))
|
||||
(head
|
||||
(meta :charset "UTF-8")
|
||||
(script :src "/scripts/htmx.js")
|
||||
(script :src "/scripts/htmx-ext/head-support.js")
|
||||
(script :src "/scripts/alpine.js" :defer t)
|
||||
(link :rel "stylesheet" :type "text/css" :href "/styles/ress.css")
|
||||
(link :rel "stylesheet" :type "text/css" :href "/styles/global.css")
|
||||
(link :rel "preconnect" :href "https://fonts.googleapis.com")
|
||||
(link :rel "preconnect" :href "https://fonts.gstatic.com" :crossorigin t)
|
||||
(link
|
||||
:rel "stylesheet"
|
||||
:href "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap")
|
||||
(title (format nil "~@[~a - ~]skyizwhite.dev" title))
|
||||
(meta
|
||||
:name "description"
|
||||
:content (or description "pakuの個人サイト")))
|
||||
pi:children)))
|
||||
|
|
|
@ -6,4 +6,5 @@
|
|||
|
||||
(pi:define-element layout ()
|
||||
(pi:h
|
||||
(main pi:children)))
|
||||
(body :hx-ext "head-support"
|
||||
(main pi:children))))
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
(defpackage #:hp/components/global/metadata
|
||||
(:use #:cl)
|
||||
(:local-nicknames (#:pi #:piccolo))
|
||||
(:export #:metadata))
|
||||
(in-package #:hp/components/global/metadata)
|
||||
|
||||
(pi:define-element metadata (title description)
|
||||
(pi:h
|
||||
(head
|
||||
(meta :charset "UTF-8")
|
||||
(script :src "/scripts/htmx.js")
|
||||
(script :src "/scripts/htmx-ext/head-support.js")
|
||||
(script :src "/scripts/alpine.js" :defer t)
|
||||
(link :rel "stylesheet" :type "text/css" :href "/styles/ress.css")
|
||||
(link :rel "stylesheet" :type "text/css" :href "/styles/global.css")
|
||||
(link :rel "preconnect" :href "https://fonts.googleapis.com")
|
||||
(link :rel "preconnect" :href "https://fonts.gstatic.com" :crossorigin t)
|
||||
(link
|
||||
:rel "stylesheet"
|
||||
:href "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap")
|
||||
(title (format nil "~@[~a - ~]skyizwhite.dev" title))
|
||||
(meta
|
||||
:name "description"
|
||||
:content (or description "pakuの個人サイト")))))
|
|
@ -5,6 +5,10 @@
|
|||
(:export #:on-get))
|
||||
(in-package #:hp/routes/about)
|
||||
|
||||
(defparameter *metadata*
|
||||
'(:title "about"
|
||||
:description "pakuの自己紹介"))
|
||||
|
||||
(pi:define-element page ()
|
||||
(pi:h
|
||||
(section
|
||||
|
@ -12,6 +16,4 @@
|
|||
|
||||
(defun on-get (params)
|
||||
(declare (ignore params))
|
||||
(view:render (page)
|
||||
:title "about"
|
||||
:description "pakuの自己紹介"))
|
||||
(view:render (page) :metadata *metadata*))
|
||||
|
|
|
@ -6,14 +6,9 @@
|
|||
(:export #:render))
|
||||
(in-package #:hp/view)
|
||||
|
||||
(defun render (page &key status title description)
|
||||
(defun render (page &key metadata status)
|
||||
(jg:with-html-response
|
||||
(and status (jg:set-response-status status))
|
||||
(pi:elem-str
|
||||
(let ((md (cmp:metadata :title title :description description))
|
||||
(body (cmp:layout page)))
|
||||
(pi:h
|
||||
(if (jg:get-request-header "HX-Boosted")
|
||||
(<> md body)
|
||||
(cmp:document :metadata md
|
||||
body)))))))
|
||||
(cmp:document metadata
|
||||
(cmp:layout page)))))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue