/* interact.js 1.10.27 | https://raw.github.com/taye/interact.js/main/LICENSE */ import*as arr from"../utils/arr.prod.js";import*as domUtils from"../utils/domUtils.prod.js";import is from"../utils/is.prod.js";import pExtend from"../utils/pointerExtend.prod.js";import*as pointerUtils from"../utils/pointerUtils.prod.js";function install(t){var e;const n=[],s={},o=[],i={add:r,remove:a,addDelegate(t,e,n,i,a){const c=getOptions(a);if(!s[n]){s[n]=[];for(const t of o)r(t,n,p),r(t,n,l,!0)}const u=s[n];let v=arr.find(u,(n=>n.selector===t&&n.context===e));v||(v={selector:t,context:e,listeners:[]},u.push(v)),v.listeners.push({func:i,options:c})},removeDelegate(t,e,n,o,i){const r=getOptions(i),c=s[n];let u,v=!1;if(c)for(u=c.length-1;u>=0;u--){const s=c[u];if(s.selector===t&&s.context===e){const{listeners:t}=s;for(let s=t.length-1;s>=0;s--){const i=t[s];if(i.func===o&&optionsMatch(i.options,r)){t.splice(s,1),t.length||(c.splice(u,1),a(e,n,p),a(e,n,l,!0)),v=!0;break}}if(v)break}}},delegateListener:p,delegateUseCapture:l,delegatedEvents:s,documents:o,targets:n,supportsOptions:!1,supportsPassive:!1};function r(t,e,s,o){if(!t.addEventListener)return;const r=getOptions(o);let a=arr.find(n,(e=>e.eventTarget===t));a||(a={eventTarget:t,events:{}},n.push(a)),a.events[e]||(a.events[e]=[]),arr.find(a.events[e],(t=>t.func===s&&optionsMatch(t.options,r)))||(t.addEventListener(e,s,i.supportsOptions?r:r.capture),a.events[e].push({func:s,options:r}))}function a(t,e,s,o){if(!t.addEventListener||!t.removeEventListener)return;const r=arr.findIndex(n,(e=>e.eventTarget===t)),p=n[r];if(!p||!p.events)return;if("all"===e){for(e in p.events)p.events.hasOwnProperty(e)&&a(t,e,"all");return}let l=!1;const c=p.events[e];if(c){if("all"===s){for(let n=c.length-1;n>=0;n--){const s=c[n];a(t,e,s.func,s.options)}return}{const n=getOptions(o);for(let o=0;o