@vela-ui/react
Version:
Vela UI React components
3 lines (2 loc) • 416 B
JavaScript
"use client"
import{a as l}from"./chunk-JUHRWWM4.mjs";import{useCallback as r,useState as p}from"react";function C(e={}){let n=l(e.onOpen),o=l(e.onClose),[f,t]=p(e.defaultOpen||!1),i=e.isOpen!==void 0?e.isOpen:f,s=e.isOpen!==void 0,u=r(()=>{s||t(!1),o==null||o()},[s,o]),c=r(()=>{s||t(!0),n==null||n()},[s,n]),a=r(()=>{i?u():c()},[i,c,u]);return{isOpen:i,onOpen:c,onClose:u,onOpenChange:a,setOpen:t}}export{C as a};