Create a standard search form

This commit is contained in:
Marcus Kammer 2023-08-16 09:30:35 +02:00
parent 4233a7008f
commit d9985dcc98
2 changed files with 18 additions and 3 deletions

View file

@ -1,11 +1,15 @@
(defpackage cl-sbt/form
(:use
:cl)
(:import-from
:cl-sbt/btn
:btn-outline-success)
(:export
:ctrl
:ctrl-col
:select
:select-option))
:select-option
:search-form))
(in-package :cl-sbt/form)
@ -115,3 +119,13 @@ Example:
:aria-label "Default select example"
(:option :selected t "Open this selected menu")
(select-option ,@body)))))
(defun search-form ()
(spinneret:with-html
(:form :class "d-flex"
:role "search"
(:input :class "form-control me-2"
:type "search"
:placeholder "Search"
:aria-label "Search")
(btn-outline-success (:type "submit") "Search"))))

View file

@ -8,7 +8,8 @@
:ctrl
:ctrl-col
:select
:select-option))
:select-option
:search-form))
(in-package :cl-sbt/tests/form)
@ -96,7 +97,7 @@
(ok (search "option value=1" result)))))
(deftest test-default-search-form
(let ((result (spinneret:with-html-string (search))))
(let ((result (spinneret:with-html-string (search-form))))
(testing "Generates correct HTML for search form"
(ok (search "class=\"form-control me-2\"" result))
(ok (search "type=search" result))