{"version":3,"file":"index-76f2e0d1.js","sources":["../../../app/packs/src/design-system/components/molecules/GlobalModal/index.tsx"],"sourcesContent":["import { composeEventHandlers } from '../../../utils/compose-event-handlers'\nimport { Modal } from '../Modal'\nimport { useModalContext } from '../../../contexts/modal-context'\nimport * as React from 'react'\n\nexport type RootProps = {\n  id: string\n  onOpenChange?(open: boolean, props?: unknown): void\n} & Omit<Modal.RootProps, 'onOpenChange'>\n\nexport const Root = (props: RootProps) => {\n  const {\n    children,\n    id,\n    title,\n    onOpenChange,\n    defaultOpen,\n    className,\n    ...restProps\n  } = props\n  const { activeModalId, activeModalProps, closeModal, openModal } =\n    useModalContext()\n\n  const open = React.useMemo(() => activeModalId === id, [activeModalId, id])\n\n  React.useEffect(() => {\n    if (defaultOpen) openModal(id)\n  }, [])\n\n  React.useEffect(() => {\n    onOpenChange?.(open, activeModalProps)\n  }, [open, onOpenChange, activeModalProps])\n\n  return (\n    <Modal.Root\n      title={title}\n      onOpenChange={(open) => (open ? openModal(id) : closeModal())}\n      open={open}\n      className={className}\n      {...restProps}\n    >\n      {children}\n    </Modal.Root>\n  )\n}\n\nexport const CloseButton = (props: Modal.CloseButtonProps) => {\n  const { onClick, ...restProps } = props\n\n  const { closeModal } = useModalContext()\n\n  return (\n    <Modal.CloseButton\n      onClick={composeEventHandlers(onClick, closeModal)}\n      {...restProps}\n    />\n  )\n}\n"],"names":["Root","props","children","id","title","onOpenChange","defaultOpen","className","restProps","activeModalId","activeModalProps","closeModal","openModal","useModalContext","open","React.useMemo","React.useEffect","jsx","Modal.Root","CloseButton","onClick","Modal.CloseButton","composeEventHandlers"],"mappings":"kJAUa,MAAAA,EAAQC,GAAqB,CAClC,KAAA,CACJ,SAAAC,EACA,GAAAC,EACA,MAAAC,EACA,aAAAC,EACA,YAAAC,EACA,UAAAC,EACA,GAAGC,CACD,EAAAP,EACE,CAAE,cAAAQ,EAAe,iBAAAC,EAAkB,WAAAC,EAAY,UAAAC,CAAA,EACnDC,IAEIC,EAAOC,EAAc,QAAA,IAAMN,IAAkBN,EAAI,CAACM,EAAeN,CAAE,CAAC,EAE1Ea,OAAAA,EAAAA,UAAgB,IAAM,CAChBV,GAAaM,EAAUT,CAAE,CAC/B,EAAG,CAAE,CAAA,EAELa,EAAAA,UAAgB,IAAM,CACpBX,GAAA,MAAAA,EAAeS,EAAMJ,EACpB,EAAA,CAACI,EAAMT,EAAcK,CAAgB,CAAC,EAGvCO,EAACC,EAAA,CACC,MAAAd,EACA,aAAeU,GAAUA,EAAOF,EAAUT,CAAE,EAAIQ,EAAW,EAC3D,KAAAG,EACA,UAAAP,EACC,GAAGC,EAEH,SAAAN,CAAA,CAAA,CAGP,EAEaiB,EAAelB,GAAkC,CAC5D,KAAM,CAAE,QAAAmB,EAAS,GAAGZ,CAAA,EAAcP,EAE5B,CAAE,WAAAU,GAAeE,IAGrB,OAAAI,EAACI,EAAA,CACC,QAASC,EAAqBF,EAAST,CAAU,EAChD,GAAGH,CAAA,CAAA,CAGV"}