| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 
							- import { Fragment, useCallback } from 'react'
 - import type { ReactNode } from 'react'
 - import { Dialog, Transition } from '@headlessui/react'
 - import cn from '@/utils/classnames'
 - 
 - type DialogProps = {
 -   className?: string
 -   children: ReactNode
 -   show: boolean
 -   onClose?: () => void
 -   inWorkflow?: boolean
 - }
 - 
 - const DialogWrapper = ({
 -   className,
 -   children,
 -   show,
 -   onClose,
 -   inWorkflow = true,
 - }: DialogProps) => {
 -   const close = useCallback(() => onClose?.(), [onClose])
 -   return (
 -     <Transition appear show={show} as={Fragment}>
 -       <Dialog as="div" className="relative z-40" onClose={close}>
 -         <Transition.Child
 -           as={Fragment}
 -           enter="ease-out duration-300"
 -           enterFrom="opacity-0"
 -           enterTo="opacity-100"
 -           leave="ease-in duration-200"
 -           leaveFrom="opacity-100"
 -           leaveTo="opacity-0"
 -         >
 -           <div className="fixed inset-0 bg-black bg-opacity-25" />
 -         </Transition.Child>
 - 
 -         <div className="fixed inset-0">
 -           <div className={cn('flex flex-col items-end justify-center min-h-full pb-2', inWorkflow ? 'pt-[112px]' : 'pt-[64px] pr-2')}>
 -             <Transition.Child
 -               as={Fragment}
 -               enter="ease-out duration-300"
 -               enterFrom="opacity-0 scale-95"
 -               enterTo="opacity-100 scale-100"
 -               leave="ease-in duration-200"
 -               leaveFrom="opacity-100 scale-100"
 -               leaveTo="opacity-0 scale-95"
 -             >
 -               <Dialog.Panel className={cn('grow flex flex-col relative w-[420px] h-0 p-0 overflow-hidden text-left align-middle transition-all transform bg-components-panel-bg-alt border-components-panel-border shadow-xl', inWorkflow ? 'border-t-[0.5px] border-l-[0.5px] border-b-[0.5px] rounded-l-2xl' : 'border-[0.5px] rounded-2xl', className)}>
 -                 {children}
 -               </Dialog.Panel>
 -             </Transition.Child>
 -           </div>
 -         </div>
 -       </Dialog>
 -     </Transition >
 -   )
 - }
 - 
 - export default DialogWrapper
 
 
  |