django-vue3-admin-web/node_modules/@interactjs/modifiers/restrict/edges.prod.js
2025-10-20 21:21:14 +08:00

5 lines
1.6 KiB
JavaScript

/* interact.js 1.10.27 | https://raw.github.com/taye/interact.js/main/LICENSE */
import extend from"../../utils/extend.prod.js";import*as rectUtils from"../../utils/rect.prod.js";import{makeModifier}from"../base.prod.js";import{getRestrictionRect}from"./pointer.prod.js";import"../Modification.prod.js";import"../../utils/clone.prod.js";import"../../utils/is.prod.js";const noInner={top:1/0,left:1/0,bottom:-1/0,right:-1/0},noOuter={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function start(t){let{interaction:o,startOffset:e,state:r}=t;const{options:i}=r;let s;if(i){const t=getRestrictionRect(i.offset,o,o.coords.start.page);s=rectUtils.rectToXY(t)}s=s||{x:0,y:0},r.offset={top:s.y+e.top,left:s.x+e.left,bottom:s.y-e.bottom,right:s.x-e.right}}function set(t){let{coords:o,edges:e,interaction:r,state:i}=t;const{offset:s,options:n}=i;if(!e)return;const f=extend({},o),c=getRestrictionRect(n.inner,r,f)||{},a=getRestrictionRect(n.outer,r,f)||{};fixRect(c,noInner),fixRect(a,noOuter),e.top?o.y=Math.min(Math.max(a.top+s.top,f.y),c.top+s.top):e.bottom&&(o.y=Math.max(Math.min(a.bottom+s.bottom,f.y),c.bottom+s.bottom)),e.left?o.x=Math.min(Math.max(a.left+s.left,f.x),c.left+s.left):e.right&&(o.x=Math.max(Math.min(a.right+s.right,f.x),c.right+s.right))}function fixRect(t,o){for(const e of["top","left","bottom","right"])e in t||(t[e]=o[e]);return t}const defaults={inner:null,outer:null,offset:null,endOnly:!1,enabled:!1},restrictEdges={noInner:noInner,noOuter:noOuter,start:start,set:set,defaults:defaults};var restrictEdges$1=makeModifier(restrictEdges,"restrictEdges");export{restrictEdges$1 as default,restrictEdges};
//# sourceMappingURL=edges.prod.js.map