{"version":3,"file":"index47.cjs","sources":["../src/hooks/useClickOutside.ts"],"sourcesContent":["import { useEffect, RefObject } from \"react\";\n\nexport const useClickOutside = (\n  ref: RefObject<HTMLElement | null>,\n  callback: () => void,\n  ignoredElements?: string[]\n) => {\n  useEffect(() => {\n    const handleClickOutside = (event: MouseEvent) => {\n      const target = event.target as HTMLElement;\n      const isOverlayClick =\n        target?.className?.includes?.(\"quill-ui-next-overlay\") ?? false;\n      const isInsideOverlay =\n        target?.closest(\".quill-ui-next-overlay\") !== null;\n\n      if (\n        ref.current &&\n        !ref.current.contains(target) &&\n        !isOverlayClick &&\n        !isInsideOverlay &&\n        !ignoredElements?.some((element) => {\n          if (target?.className?.includes?.(element)) return true;\n          if (typeof target?.closest === 'function') {\n            const found = target.closest(`[class*=\"${element}\"]`);\n            if (found) return true;\n          }\n          return false;\n        })\n      ) {\n        callback();\n      }\n    };\n\n    document.addEventListener(\"mousedown\", handleClickOutside);\n    return () => {\n      document.removeEventListener(\"mousedown\", handleClickOutside);\n    };\n  }, [ref, callback]);\n};\n"],"names":["useEffect","_b","_a"],"mappings":";;;AAEO,MAAM,kBAAkB,CAC7B,KACA,UACA,oBACG;AACHA,QAAAA,UAAU,MAAM;AACR,UAAA,qBAAqB,CAAC,UAAsB;;AAChD,YAAM,SAAS,MAAM;AACrB,YAAM,mBACJ,4CAAQ,cAAR,mBAAmB,aAAnB,4BAA8B,6BAA4B;AAC5D,YAAM,mBACJ,iCAAQ,QAAQ,+BAA8B;AAEhD,UACE,IAAI,WACJ,CAAC,IAAI,QAAQ,SAAS,MAAM,KAC5B,CAAC,kBACD,CAAC,mBACD,EAAC,mDAAiB,KAAK,CAAC,YAAY;;AAClC,aAAIC,OAAAC,MAAA,iCAAQ,cAAR,gBAAAA,IAAmB,aAAnB,gBAAAD,IAAA,KAAAC,KAA8B,SAAiB,QAAA;AAC/C,YAAA,QAAO,iCAAQ,aAAY,YAAY;AACzC,gBAAM,QAAQ,OAAO,QAAQ,YAAY,OAAO,IAAI;AACpD,cAAI,MAAc,QAAA;AAAA,QAAA;AAEb,eAAA;AAAA,MAAA,KAET;AACS,iBAAA;AAAA,MAAA;AAAA,IAEb;AAES,aAAA,iBAAiB,aAAa,kBAAkB;AACzD,WAAO,MAAM;AACF,eAAA,oBAAoB,aAAa,kBAAkB;AAAA,IAC9D;AAAA,EAAA,GACC,CAAC,KAAK,QAAQ,CAAC;AACpB;;"}