Build 574548stable
Module 114099
633 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>r});var i=n(64700);function r(){let e=(0,i.useRef)(new Map),t=(0,i.useCallback)((t,n,i,r)=>{let s=(null==r?void 0:r.once)?(...t)=>{e.current.delete(i),i(...t)}:i;e.current.set(i,{type:n,eventTarget:t,fn:s,options:r}),t.addEventListener(n,s,r)},[]),n=(0,i.useCallback)((t,n,i,r)=>{var s;let a=(null==(s=e.current.get(i))?void 0:s.fn)||i;t.removeEventListener(n,a,r),e.current.delete(i)},[]),r=(0,i.useCallback)(()=>{e.current.forEach((e,t)=>{n(e.eventTarget,e.type,t,e.options)})},[n]);return(0,i.useEffect)(()=>r,[r]),{addGlobalListener:t,removeGlobalListener:n,removeAllGlobalListeners:r}}}