monday-ui-react-core
Version:
Official monday.com UI resources for application development in React.js
3 lines (2 loc) • 1.3 kB
JavaScript
import{slicedToArray as l,toConsumableArray as o}from"../../../_virtual/_rollupPluginBabelHelpers.js";import{useState as n,useCallback as e,useEffect as i}from"react";import t from"./useAnimationProps.js";import s from"../../hooks/useKeyEvent/index.js";import"../../constants/dialog.js";import{keyCodes as a}from"../../constants/keyCodes.js";import"../../constants/sizes.js";import"../../constants/positions.js";var r=[a.ESCAPE];function u(a){var u=a.instance,d=a.show,c=a.triggerElement,m=a.onClose,p=a.alertDialog,v=n(!1),f=l(v,2),h=f[0],j=f[1],y=t(c,u),g=e((function(l){!p&&(null==u?void 0:u.$el.contains(document.activeElement))&&(l.stopPropagation(),null==m||m())}),[p,null==u?void 0:u.$el,m]);return s({callback:g,capture:!0,keys:r}),i((function(){var l,n,e,i;if(d)j(!0),null==u||u.show(),(null==u?void 0:u.$el.childNodes[1].animate)&&(null===(n=null==u?void 0:(l=u.$el.childNodes[1]).animate)||void 0===n||(i=n).call.apply(i,[l].concat(o(y()))));else if(null==u?void 0:u.$el.childNodes[1].animate){var t,s=null===(e=null==u?void 0:u.$el.childNodes[1])||void 0===e?void 0:(t=e).animate.apply(t,o(y(!0)));null==s||s.finished.then((function(){j(!1),null==u||u.hide()}))}else j(!1),null==u||u.hide()}),[d,u,y]),{shouldShow:h}}export{u as default};
//# sourceMappingURL=useShowHideModal.js.map