Files
sigpro-ui/src/components/Accordion.js
2026-04-06 18:07:39 +02:00

29 lines
846 B
JavaScript

// components/Accordion.js
// import { Tag } from "../sigpro.js";
import { ui, val } from "../core/utils.js";
/**
* Accordion component
*
* daisyUI classes used:
* - collapse, collapse-arrow, collapse-plus, collapse-title, collapse-content
* - collapse-open, collapse-close
* - bg-base-200, bg-base-100, bg-primary, bg-secondary
* - mb-2, mt-2, rounded-box
*/
export const Accordion = (props, children) => {
const { class: className, title, name, open, ...rest } = props;
return Tag("div", {
...rest,
class: ui('collapse collapse-arrow bg-base-200 mb-2', className),
}, [
Tag("input", {
type: name ? "radio" : "checkbox",
name: name,
checked: val(open),
}),
Tag("div", { class: "collapse-title text-xl font-medium" }, title),
Tag("div", { class: "collapse-content" }, children),
]);
};