UNPKG

welcome-ui

Version:

Customizable design system with react, typescript, tailwindcss and ariakit.

38 lines (37 loc) 1.39 kB
"use client"; import { c as p } from "./WLZ6H5FH-CuTcX7sR.js"; import { u as P } from "./HMKTUWOU-NkVXWCyR.js"; import { f as g, c as C, a as x, i as k, m as S, K as b, u as N, q as R } from "./U6HHPQDW-CzxyP5H7.js"; import { useRef as w, useState as y, useEffect as B } from "react"; var M = "button", O = Symbol("disclosure"), T = C( function({ store: e, toggleOnClick: o = !0, ...t }) { const i = p(); e = e || i, k( e, process.env.NODE_ENV !== "production" && "Disclosure must receive a `store` prop or be wrapped in a DisclosureProvider component." ); const r = w(null), [d, m] = y(!1), s = e.useState("disclosureElement"), u = e.useState("open"); B(() => { let n = s === r.current; s != null && s.isConnected || (e == null || e.setDisclosureElement(r.current), n = !0), m(u && n); }, [s, e, u]); const l = t.onClick, f = S(o), [v, D] = b(t, O, !0), E = N((n) => { l == null || l(n), !n.defaultPrevented && (v || f(n) && (e == null || e.setDisclosureElement(n.currentTarget), e == null || e.toggle())); }), a = e.useState("contentElement"); return t = { "aria-expanded": d, "aria-controls": a == null ? void 0 : a.id, ...D, ...t, ref: R(r, t.ref), onClick: E }, t = P(t), t; } ), V = g(function(e) { const o = T(e); return x(M, o); }); export { V as D, T as u };