{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-events/index.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { on, off } from '@element-plus/utils/dom'\n\nimport type { Ref } from 'vue'\n\nexport type Event = {\n  name: string\n  handler: (...args: any[]) => any\n}\n\nexport default (el: Ref<HTMLElement>, events: Event[]) => {\n  watch(el, (val) => {\n    if (val) {\n      events.forEach(({ name, handler }) => {\n        on(el.value, name, handler)\n      })\n    } else {\n      events.forEach(({ name, handler }) => {\n        off(el.value, name, handler)\n      })\n    }\n  })\n}\n"],"names":[],"mappings":";;;AAUA,YAAe,CAAC,IAAsB,WAAoB;AACxD,QAAM,IAAI,CAAC,QAAQ;AACjB,QAAI,KAAK;AACP,aAAO,QAAQ,CAAC,EAAE,MAAM,cAAc;AACpC,WAAG,GAAG,OAAO,MAAM;AAAA;AAAA,WAEhB;AACL,aAAO,QAAQ,CAAC,EAAE,MAAM,cAAc;AACpC,YAAI,GAAG,OAAO,MAAM;AAAA;AAAA;AAAA;AAAA;;;;"}