UNPKG

sci-pro

Version:
2 lines (1 loc) 1.08 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=e=>typeof Element>"u"?!1:e instanceof Element,s=new Map;let d;const y=typeof window<"u";y&&(document.addEventListener("mousedown",e=>d=e),document.addEventListener("mouseup",e=>{for(const t of s.values())for(const{documentHandler:n}of t)n(e,d)}));function i(e,t){let n=[];return Array.isArray(t.arg)?n=t.arg:f(t.arg)&&n.push(t.arg),function(a,o){const r=t.instance.popperRef,c=a.target,u=o==null?void 0:o.target,p=!t||!t.instance,g=!c||!u,h=e.contains(c)||e.contains(u),E=e===c,v=n.length&&n.some(l=>l==null?void 0:l.contains(c))||n.length&&n.includes(u),m=r&&(r.contains(c)||r.contains(u));p||g||h||E||v||m||t.value(a,o)}}const H={beforeMount(e,t){s.has(e)||s.set(e,[]),s.get(e).push({documentHandler:i(e,t),bindingFn:t.value})},updated(e,t){s.has(e)||s.set(e,[]);const n=s.get(e),a=n.findIndex(r=>r.bindingFn===t.oldValue),o={documentHandler:i(e,t),bindingFn:t.value};a>=0?n.splice(a,1,o):n.push(o)},unmounted(e){s.delete(e)}};exports.default=H;exports.isElement=f;