{"version":3,"file":"useEscape.mjs","sources":["../../../packages/hooks/useEscape.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react'\n\nexport const useEscape = (callback?: () => void): void => {\n  const handleKeyDown = useCallback(\n    (event: KeyboardEvent) => {\n      if (event.key === 'Escape') {\n        callback?.()\n      }\n    },\n    [callback],\n  )\n\n  useEffect(() => {\n    window.addEventListener('keydown', handleKeyDown)\n\n    return () => window.removeEventListener('keydown', handleKeyDown)\n  }, [handleKeyDown])\n}\n"],"names":["useEscape","callback","handleKeyDown","useCallback","event","key","useEffect","window","addEventListener","removeEventListener"],"mappings":";;AAEaA,MAAAA,SAAS,GAAIC,QAAqB,IAAW;AACxD,EAAA,MAAMC,aAAa,GAAGC,WAAW,CAC9BC,KAAoB,IAAK;AACxB,IAAA,IAAIA,KAAK,CAACC,GAAG,KAAK,QAAQ,EAAE;AAC1BJ,MAAAA,QAAQ,IAAI,CAAA;AACd,KAAA;AACF,GAAC,EACD,CAACA,QAAQ,CACX,CAAC,CAAA;AAEDK,EAAAA,SAAS,CAAC,MAAM;AACdC,IAAAA,MAAM,CAACC,gBAAgB,CAAC,SAAS,EAAEN,aAAa,CAAC,CAAA;IAEjD,OAAO,MAAMK,MAAM,CAACE,mBAAmB,CAAC,SAAS,EAAEP,aAAa,CAAC,CAAA;AACnE,GAAC,EAAE,CAACA,aAAa,CAAC,CAAC,CAAA;AACrB;;;;"}