{"version":3,"file":"event.mjs","sources":["../../../../../packages/utils/dom/event.ts"],"sourcesContent":["/** @deprecated use `element.addEventListener` instead */\nexport const on = (\n  element: HTMLElement | Document | Window,\n  event: string,\n  handler: EventListenerOrEventListenerObject,\n  useCapture = false\n): void => {\n  if (element && event && handler) {\n    element?.addEventListener(event, handler, useCapture)\n  }\n}\n\n/** @deprecated use `element.addEventListener` instead */\nexport const off = (\n  element: HTMLElement | Document | Window,\n  event: string,\n  handler: EventListenerOrEventListenerObject,\n  useCapture = false\n): void => {\n  if (element && event && handler) {\n    element?.removeEventListener(event, handler, useCapture)\n  }\n}\n\n/** @deprecated use `element.addEventListener` instead */\nexport const once = (\n  el: HTMLElement,\n  event: string,\n  fn: EventListener\n): void => {\n  const listener = function (this: any, ...args: any) {\n    if (fn) {\n      fn.apply(this, args)\n    }\n    off(el, event, listener)\n  }\n  on(el, event, listener)\n}\n\nexport const composeEventHandlers = <E>(\n  theirsHandler?: (event: E) => boolean | void,\n  oursHandler?: (event: E) => void,\n  { checkForDefaultPrevented = true } = {}\n) => {\n  const handleEvent = (event: E) => {\n    const shouldPrevent = theirsHandler?.(event)\n\n    if (checkForDefaultPrevented === false || !shouldPrevent) {\n      return oursHandler?.(event)\n    }\n  }\n  return handleEvent\n}\n\ntype WhenMouseHandler = (e: PointerEvent) => any\nexport const whenMouse = (handler: WhenMouseHandler): WhenMouseHandler => {\n  return (e: PointerEvent) =>\n    e.pointerType === 'mouse' ? handler(e) : undefined\n}\n"],"names":[],"mappings":"AAAY,MAAC,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,GAAG,KAAK,KAAK;AACnE,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,EAAE;AACnC,IAAI,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AACpF,GAAG;AACH,EAAE;AACU,MAAC,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,GAAG,KAAK,KAAK;AACpE,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,EAAE;AACnC,IAAI,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AACvF,GAAG;AACH,EAAE;AACU,MAAC,IAAI,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK;AACvC,EAAE,MAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE;AACrC,IAAI,IAAI,EAAE,EAAE;AACZ,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC3B,KAAK;AACL,IAAI,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC7B,GAAG,CAAC;AACJ,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC1B,EAAE;AACU,MAAC,oBAAoB,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,EAAE,wBAAwB,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK;AAC9G,EAAE,MAAM,WAAW,GAAG,CAAC,KAAK,KAAK;AACjC,IAAI,MAAM,aAAa,GAAG,aAAa,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;AAChF,IAAI,IAAI,wBAAwB,KAAK,KAAK,IAAI,CAAC,aAAa,EAAE;AAC9D,MAAM,OAAO,WAAW,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;AAC/D,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,OAAO,WAAW,CAAC;AACrB,EAAE;AACU,MAAC,SAAS,GAAG,CAAC,OAAO,KAAK;AACtC,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,KAAK,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAChE;;;;"}