{"ast":null,"code":"import { useEffect } from 'react';\nfunction addDomEvent(target, eventName, handler, options) {\n  target.addEventListener(eventName, handler, options);\n  return function () {\n    return target.removeEventListener(eventName, handler, options);\n  };\n}\n/**\n * Attaches an event listener directly to the provided DOM element.\n *\n * Bypassing React's event system can be desirable, for instance when attaching non-passive\n * event handlers.\n *\n * ```jsx\n * const ref = useRef(null)\n *\n * useDomEvent(ref, 'wheel', onWheel, { passive: false })\n *\n * return <div ref={ref} />\n * ```\n *\n * @param ref - React.RefObject that's been provided to the element you want to bind the listener to.\n * @param eventName - Name of the event you want listen for.\n * @param handler - Function to fire when receiving the event.\n * @param options - Options to pass to `Event.addEventListener`.\n *\n * @public\n */\nfunction useDomEvent(ref, eventName, handler, options) {\n  useEffect(function () {\n    var element = ref.current;\n    if (handler && element) {\n      return addDomEvent(element, eventName, handler, options);\n    }\n  }, [ref, eventName, handler, options]);\n}\nexport { addDomEvent, useDomEvent };","map":{"version":3,"names":["useEffect","addDomEvent","target","eventName","handler","options","addEventListener","removeEventListener","useDomEvent","ref","element","current"],"sources":["D:/DSP_Management/node_modules/framer-motion/dist/es/events/use-dom-event.js"],"sourcesContent":["import { useEffect } from 'react';\n\nfunction addDomEvent(target, eventName, handler, options) {\n    target.addEventListener(eventName, handler, options);\n    return function () { return target.removeEventListener(eventName, handler, options); };\n}\n/**\n * Attaches an event listener directly to the provided DOM element.\n *\n * Bypassing React's event system can be desirable, for instance when attaching non-passive\n * event handlers.\n *\n * ```jsx\n * const ref = useRef(null)\n *\n * useDomEvent(ref, 'wheel', onWheel, { passive: false })\n *\n * return <div ref={ref} />\n * ```\n *\n * @param ref - React.RefObject that's been provided to the element you want to bind the listener to.\n * @param eventName - Name of the event you want listen for.\n * @param handler - Function to fire when receiving the event.\n * @param options - Options to pass to `Event.addEventListener`.\n *\n * @public\n */\nfunction useDomEvent(ref, eventName, handler, options) {\n    useEffect(function () {\n        var element = ref.current;\n        if (handler && element) {\n            return addDomEvent(element, eventName, handler, options);\n        }\n    }, [ref, eventName, handler, options]);\n}\n\nexport { addDomEvent, useDomEvent };\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,WAAWA,CAACC,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,OAAO,EAAE;EACtDH,MAAM,CAACI,gBAAgB,CAACH,SAAS,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACpD,OAAO,YAAY;IAAE,OAAOH,MAAM,CAACK,mBAAmB,CAACJ,SAAS,EAAEC,OAAO,EAAEC,OAAO,CAAC;EAAE,CAAC;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,WAAWA,CAACC,GAAG,EAAEN,SAAS,EAAEC,OAAO,EAAEC,OAAO,EAAE;EACnDL,SAAS,CAAC,YAAY;IAClB,IAAIU,OAAO,GAAGD,GAAG,CAACE,OAAO;IACzB,IAAIP,OAAO,IAAIM,OAAO,EAAE;MACpB,OAAOT,WAAW,CAACS,OAAO,EAAEP,SAAS,EAAEC,OAAO,EAAEC,OAAO,CAAC;IAC5D;EACJ,CAAC,EAAE,CAACI,GAAG,EAAEN,SAAS,EAAEC,OAAO,EAAEC,OAAO,CAAC,CAAC;AAC1C;AAEA,SAASJ,WAAW,EAAEO,WAAW","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}