UNPKG

@wener/console

Version:

Base console UI toolkit

33 lines (32 loc) 978 B
import { flexRender } from "@wener/reaction"; import { isDefined, parseBoolean } from "@wener/utils"; import { cn } from "../../tw/cn.js"; export const ActiveToggleIcon = ({ icon, pass, activeClassName, inactiveClassName, iconActive = icon, className, active, ...props }) => { if (!isDefined(active)) { active = parseBoolean(props["data-active"]) ?? className?.includes("active"); } if (active) { className = cn(className, activeClassName ?? "active"); } else { className = cn(className, inactiveClassName ?? "inactive"); } let p = pass ? { activeClassName, inactiveClassName, active } : {}; if (pass) { for (let [k] of Object.entries(p)) { if (!pass[k]) { delete p[k]; } } } return flexRender(active ? iconActive : icon, { ...props, ...p, className }); }; //# sourceMappingURL=ActiveToggleIcon.js.map