Extract admin dashboard from ghabilee-frontend2 into a dedicated Next.js app for backoffice.ghabilee.ir (no SEO indexing / Clarity).
19 lines
459 B
TypeScript
19 lines
459 B
TypeScript
'use client'
|
|
|
|
import { useCallback, useState } from 'react'
|
|
|
|
export default function useDisclosure(initiallyOpen = false) {
|
|
const [isOpen, setIsOpen] = useState(initiallyOpen)
|
|
const onOpen = useCallback(() => {
|
|
setIsOpen(true)
|
|
}, [])
|
|
const onClose = useCallback(() => {
|
|
setIsOpen(false)
|
|
}, [])
|
|
const onOpenChange = useCallback((nextOpen: boolean) => {
|
|
setIsOpen(nextOpen)
|
|
}, [])
|
|
|
|
return { isOpen, onOpen, onClose, onOpenChange }
|
|
}
|