diff --git a/src/components/Accordion.js b/src/components/Accordion.js new file mode 100644 index 0000000..5c7d0d3 --- /dev/null +++ b/src/components/Accordion.js @@ -0,0 +1,24 @@ +import { $html } from "sigpro"; +import { joinClass } from "../core/utils.js"; + +/** ACCORDION */ +export const Accordion = (props, children) => { + const { title, name, open, ...rest } = props; + + return $html( + "div", + { + ...rest, + class: joinClass("collapse collapse-arrow bg-base-200 mb-2", props.class), + }, + [ + $html("input", { + type: name ? "radio" : "checkbox", + name: name, + checked: open + }), + $html("div", { class: "collapse-title text-xl font-medium" }, title), + $html("div", { class: "collapse-content" }, children), + ], + ); +};