Socket
Socket
Sign inDemoInstall

@interactjs/modifiers

Package Overview
Dependencies
Maintainers
2
Versions
136
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@interactjs/modifiers - npm Package Compare versions

Comparing version 1.10.24 to 1.10.25

57

all.js

@@ -0,28 +1,35 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _aspectRatio = _interopRequireDefault(require("./aspectRatio"));
var _avoid = _interopRequireDefault(require("./avoid/avoid"));
var _edges = _interopRequireDefault(require("./restrict/edges"));
var _pointer = _interopRequireDefault(require("./restrict/pointer"));
var _rect = _interopRequireDefault(require("./restrict/rect"));
var _size = _interopRequireDefault(require("./restrict/size"));
var _rubberband = _interopRequireDefault(require("./rubberband/rubberband"));
var _edges2 = _interopRequireDefault(require("./snap/edges"));
var _pointer2 = _interopRequireDefault(require("./snap/pointer"));
var _size2 = _interopRequireDefault(require("./snap/size"));
var _spring = _interopRequireDefault(require("./spring/spring"));
var _transform = _interopRequireDefault(require("./transform/transform"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable n/no-extraneous-import, import/no-unresolved */
import aspectRatio from './aspectRatio';
import avoid from './avoid/avoid';
import restrictEdges from './restrict/edges';
import restrict from './restrict/pointer';
import restrictRect from './restrict/rect';
import restrictSize from './restrict/size';
import rubberband from './rubberband/rubberband';
import snapEdges from './snap/edges';
import snap from './snap/pointer';
import snapSize from './snap/size';
import spring from './spring/spring';
import transform from './transform/transform';
export default {
aspectRatio,
restrictEdges,
restrict,
restrictRect,
restrictSize,
snapEdges,
snap,
snapSize,
spring,
avoid,
transform,
rubberband
var _default = exports.default = {
aspectRatio: _aspectRatio.default,
restrictEdges: _edges.default,
restrict: _pointer.default,
restrictRect: _rect.default,
restrictSize: _size.default,
snapEdges: _edges2.default,
snap: _pointer2.default,
snapSize: _size2.default,
spring: _spring.default,
avoid: _avoid.default,
transform: _transform.default,
rubberband: _rubberband.default
};
//# sourceMappingURL=all.js.map

@@ -1,2 +0,2 @@

import r from"./aspectRatio";import t from"./avoid/avoid";import o from"./restrict/edges";import i from"./restrict/pointer";import e from"./restrict/rect";import s from"./restrict/size";import m from"./rubberband/rubberband";import p from"./snap/edges";import a from"./snap/pointer";import n from"./snap/size";import f from"./spring/spring";import c from"./transform/transform";export default{aspectRatio:r,restrictEdges:o,restrict:i,restrictRect:e,restrictSize:s,snapEdges:p,snap:a,snapSize:n,spring:f,avoid:t,transform:c,rubberband:m};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=p(require("./aspectRatio")),r=p(require("./avoid/avoid")),t=p(require("./restrict/edges")),i=p(require("./restrict/pointer")),a=p(require("./restrict/rect")),u=p(require("./restrict/size")),s=p(require("./rubberband/rubberband")),d=p(require("./snap/edges")),n=p(require("./snap/pointer")),f=p(require("./snap/size")),l=p(require("./spring/spring")),o=p(require("./transform/transform"));function p(e){return e&&e.__esModule?e:{default:e}}exports.default={aspectRatio:e.default,restrictEdges:t.default,restrict:i.default,restrictRect:a.default,restrictSize:u.default,snapEdges:d.default,snap:n.default,snapSize:f.default,spring:l.default,avoid:r.default,transform:o.default,rubberband:s.default};
//# sourceMappingURL=all.prod.js.map

@@ -0,1 +1,12 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.aspectRatio = void 0;
var _extend = _interopRequireDefault(require("../utils/extend.js"));
var _rect = require("../utils/rect.js");
var _base = require("./base");
var _Modification = require("./Modification");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**

@@ -19,7 +30,3 @@ * @module modifiers/aspectRatio

import extend from "../utils/extend.js";
import { addEdges } from "../utils/rect.js";
import { makeModifier } from './base';
import { Modification } from './Modification';
const aspectRatio = {
const aspectRatio = exports.aspectRatio = {
start(arg) {

@@ -43,4 +50,4 @@ const {

}
state.startCoords = extend({}, coords);
state.startRect = extend({}, rect);
state.startCoords = (0, _extend.default)({}, coords);
state.startRect = (0, _extend.default)({}, rect);
state.ratio = ratio;

@@ -68,6 +75,6 @@ state.equalDelta = equalDelta;

if (enabled !== false) {
extend(edges, linkedEdges);
(0, _extend.default)(edges, linkedEdges);
}
if (!(modifiers != null && modifiers.length)) return;
const subModification = new Modification(arg.interaction);
const subModification = new _Modification.Modification(arg.interaction);
subModification.copyFrom(arg.interaction.modification);

@@ -89,5 +96,5 @@ subModification.prepareStates(modifiers);

} = state;
const initialCoords = extend({}, coords);
const initialCoords = (0, _extend.default)({}, coords);
const aspectMethod = state.equalDelta ? setEqualDelta : setRatio;
extend(arg.edges, linkedEdges);
(0, _extend.default)(arg.edges, linkedEdges);
aspectMethod(state, state.xIsPrimaryAxis, coords, rect);

@@ -97,4 +104,4 @@ if (!state.subModification) {

}
const correctedRect = extend({}, rect);
addEdges(linkedEdges, correctedRect, {
const correctedRect = (0, _extend.default)({}, rect);
(0, _rect.addEdges)(linkedEdges, correctedRect, {
x: coords.x - initialCoords.x,

@@ -119,3 +126,3 @@ y: coords.y - initialCoords.y

aspectMethod(state, xIsCriticalAxis, result.coords, result.rect);
extend(coords, result.coords);
(0, _extend.default)(coords, result.coords);
}

@@ -155,4 +162,3 @@ return result.eventProps;

}
export default makeModifier(aspectRatio, 'aspectRatio');
export { aspectRatio };
var _default = exports.default = (0, _base.makeModifier)(aspectRatio, 'aspectRatio');
//# sourceMappingURL=aspectRatio.js.map

@@ -1,2 +0,2 @@

import t from"../utils/extend.prod.js";import{addEdges as e}from"../utils/rect.prod.js";import{makeModifier as o}from"./base";import{Modification as r}from"./Modification";const i={start(e){const{state:o,rect:i,edges:s,pageCoords:a}=e;let{ratio:n,enabled:d}=o.options;const{equalDelta:l,modifiers:c}=o.options;"preserve"===n&&(n=i.width/i.height),o.startCoords=t({},a),o.startRect=t({},i),o.ratio=n,o.equalDelta=l;const p=o.linkedEdges={top:s.top||s.left&&!s.bottom,left:s.left||s.top&&!s.right,bottom:s.bottom||s.right&&!s.top,right:s.right||s.bottom&&!s.left};if(o.xIsPrimaryAxis=!(!s.left&&!s.right),o.equalDelta){const t=(p.left?1:-1)*(p.top?1:-1);o.edgeSign={x:t,y:t}}else o.edgeSign={x:p.left?-1:1,y:p.top?-1:1};if(!1!==d&&t(s,p),null==c||!c.length)return;const f=new r(e.interaction);f.copyFrom(e.interaction.modification),f.prepareStates(c),o.subModification=f,f.startAll({...e})},set(o){const{state:r,rect:i,coords:n}=o,{linkedEdges:d}=r,l=t({},n),c=r.equalDelta?s:a;if(t(o.edges,d),c(r,r.xIsPrimaryAxis,n,i),!r.subModification)return null;const p=t({},i);e(d,p,{x:n.x-l.x,y:n.y-l.y});const f=r.subModification.setAll({...o,rect:p,edges:d,pageCoords:n,prevCoords:n,prevRect:p}),{delta:g}=f;return f.changed&&(c(r,Math.abs(g.x)>Math.abs(g.y),f.coords,f.rect),t(n,f.coords)),f.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function s({startCoords:t,edgeSign:e},o,r){o?r.y=t.y+(r.x-t.x)*e.y:r.x=t.x+(r.y-t.y)*e.x}function a({startRect:t,startCoords:e,ratio:o,edgeSign:r},i,s,a){if(i){const i=a.width/o;s.y=e.y+(i-t.height)*r.y}else{const i=a.height*o;s.x=e.x+(i-t.width)*r.x}}export default o(i,"aspectRatio");export{i as aspectRatio};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.aspectRatio=void 0;var t,e=(t=require("../utils/extend.prod.js"))&&t.__esModule?t:{default:t},o=require("../utils/rect.prod.js"),r=require("./base"),i=require("./Modification");const s=exports.aspectRatio={start(t){const{state:o,rect:r,edges:s,pageCoords:a}=t;let{ratio:d,enabled:l}=o.options;const{equalDelta:n,modifiers:c}=o.options;"preserve"===d&&(d=r.width/r.height),o.startCoords=(0,e.default)({},a),o.startRect=(0,e.default)({},r),o.ratio=d,o.equalDelta=n;const u=o.linkedEdges={top:s.top||s.left&&!s.bottom,left:s.left||s.top&&!s.right,bottom:s.bottom||s.right&&!s.top,right:s.right||s.bottom&&!s.left};if(o.xIsPrimaryAxis=!(!s.left&&!s.right),o.equalDelta){const t=(u.left?1:-1)*(u.top?1:-1);o.edgeSign={x:t,y:t}}else o.edgeSign={x:u.left?-1:1,y:u.top?-1:1};if(!1!==l&&(0,e.default)(s,u),null==c||!c.length)return;const f=new i.Modification(t.interaction);f.copyFrom(t.interaction.modification),f.prepareStates(c),o.subModification=f,f.startAll({...t})},set(t){const{state:r,rect:i,coords:s}=t,{linkedEdges:l}=r,n=(0,e.default)({},s),c=r.equalDelta?a:d;if((0,e.default)(t.edges,l),c(r,r.xIsPrimaryAxis,s,i),!r.subModification)return null;const u=(0,e.default)({},i);(0,o.addEdges)(l,u,{x:s.x-n.x,y:s.y-n.y});const f=r.subModification.setAll({...t,rect:u,edges:l,pageCoords:s,prevCoords:s,prevRect:u}),{delta:p}=f;return f.changed&&(c(r,Math.abs(p.x)>Math.abs(p.y),f.coords,f.rect),(0,e.default)(s,f.coords)),f.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function a({startCoords:t,edgeSign:e},o,r){o?r.y=t.y+(r.x-t.x)*e.y:r.x=t.x+(r.y-t.y)*e.x}function d({startRect:t,startCoords:e,ratio:o,edgeSign:r},i,s,a){if(i){const i=a.width/o;s.y=e.y+(i-t.height)*r.y}else{const i=a.height*o;s.x=e.x+(i-t.width)*r.x}}exports.default=(0,r.makeModifier)(s,"aspectRatio");
//# sourceMappingURL=aspectRatio.prod.js.map

@@ -1,2 +0,14 @@

export { default } from '../noop';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function () {
return _noop.default;
}
});
var _noop = _interopRequireDefault(require("../noop"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=avoid.js.map

@@ -1,2 +0,2 @@

export{default}from"../noop";
Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r.default});var e,r=(e=require("../noop"))&&e.__esModule?e:{default:e};
//# sourceMappingURL=avoid.prod.js.map

@@ -1,3 +0,11 @@

import { Modification } from './Modification';
export function makeModifier(module, name) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.addEventModifiers = addEventModifiers;
exports.default = void 0;
exports.makeModifier = makeModifier;
var _Modification = require("./Modification");
function makeModifier(module, name) {
const {

@@ -45,3 +53,3 @@ defaults

}
export function addEventModifiers({
function addEventModifiers({
iEvent,

@@ -65,3 +73,3 @@ interaction

}) => {
interaction.modification = new Modification(interaction);
interaction.modification = new _Modification.Modification(interaction);
},

@@ -107,3 +115,3 @@ 'interactions:before-action-start': arg => {

};
export default modifiersBase;
var _default = exports.default = modifiersBase;
//# sourceMappingURL=base.js.map

@@ -1,2 +0,2 @@

import{Modification as t}from"./Modification";export function makeModifier(t,e){const{defaults:i}=t,n={start:t.start,set:t.set,beforeEnd:t.beforeEnd,stop:t.stop},o=t=>{const o=t||{};o.enabled=!1!==o.enabled;for(const t in i)t in o||(o[t]=i[t]);const r={options:o,methods:n,name:e,enable:()=>(o.enabled=!0,r),disable:()=>(o.enabled=!1,r)};return r};return e&&"string"==typeof e&&(o._defaults=i,o._methods=n),o}export function addEventModifiers({iEvent:t,interaction:e}){const i=e.modification.result;i&&(t.modifiers=i.eventProps)}const e={id:"modifiers/base",before:["actions"],install(t){t.defaults.perAction.modifiers=[]},listeners:{"interactions:new"({interaction:e}){e.modification=new t(e)},"interactions:before-action-start"(t){const{interaction:e}=t,i=t.interaction.modification;i.start(t,e.coords.start.page),e.edges=i.edges,i.applyToInteraction(t)},"interactions:before-action-move"(t){const{interaction:e}=t,{modification:i}=e,n=i.setAndApply(t);return e.edges=i.edges,n},"interactions:before-action-end"(t){const{interaction:e}=t,{modification:i}=e,n=i.beforeEnd(t);return e.edges=i.startEdges,n},"interactions:action-start":addEventModifiers,"interactions:action-move":addEventModifiers,"interactions:action-end":addEventModifiers,"interactions:after-action-start":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:after-action-move":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:stop":t=>t.interaction.modification.stop(t)}};export default e;
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addEventModifiers=e,exports.default=void 0,exports.makeModifier=(t,e)=>{const{defaults:o}=t,i={start:t.start,set:t.set,beforeEnd:t.beforeEnd,stop:t.stop},n=t=>{const n=t||{};n.enabled=!1!==n.enabled;for(const t in o)t in n||(n[t]=o[t]);const r={options:n,methods:i,name:e,enable:()=>(n.enabled=!0,r),disable:()=>(n.enabled=!1,r)};return r};return e&&"string"==typeof e&&(n._defaults=o,n._methods=i),n};var t=require("./Modification");function e({iEvent:t,interaction:e}){const o=e.modification.result;o&&(t.modifiers=o.eventProps)}const o={id:"modifiers/base",before:["actions"],install(t){t.defaults.perAction.modifiers=[]},listeners:{"interactions:new"({interaction:e}){e.modification=new t.Modification(e)},"interactions:before-action-start"(t){const{interaction:e}=t,o=t.interaction.modification;o.start(t,e.coords.start.page),e.edges=o.edges,o.applyToInteraction(t)},"interactions:before-action-move"(t){const{interaction:e}=t,{modification:o}=e,i=o.setAndApply(t);return e.edges=o.edges,i},"interactions:before-action-end"(t){const{interaction:e}=t,{modification:o}=e,i=o.beforeEnd(t);return e.edges=o.startEdges,i},"interactions:action-start":e,"interactions:action-move":e,"interactions:action-end":e,"interactions:after-action-start":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:after-action-move":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:stop":t=>t.interaction.modification.stop(t)}};exports.default=o;
//# sourceMappingURL=base.prod.js.map

@@ -0,6 +1,9 @@

"use strict";
var _plugin = _interopRequireDefault(require("./plugin.js"));
var _index = _interopRequireDefault(require("../interact/index.js"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable no-console, eol-last, import/no-duplicates, import/no-extraneous-dependencies, import/order */
import "./plugin.js";
import interact from "../interact/index.js";
import plugin from "./plugin.js";
interact.use(plugin);
_index.default.use(_plugin.default);
//# sourceMappingURL=index.js.map

@@ -1,2 +0,2 @@

import"./plugin.prod.js";import r from"../interact/index.prod.js";import o from"./plugin.prod.js";r.use(o);
var e=r(require("./plugin.prod.js"));function r(e){return e&&e.__esModule?e:{default:e}}r(require("../interact/index.prod.js")).default.use(e.default);
//# sourceMappingURL=index.prod.js.map

@@ -1,5 +0,15 @@

import clone from "../utils/clone.js";
import extend from "../utils/extend.js";
import * as rectUtils from "../utils/rect.js";
export class Modification {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Modification = void 0;
exports.getRectOffset = getRectOffset;
var _clone = _interopRequireDefault(require("../utils/clone.js"));
var _extend = _interopRequireDefault(require("../utils/extend.js"));
var rectUtils = _interopRequireWildcard(require("../utils/rect.js"));
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
class Modification {
states = [];

@@ -36,4 +46,4 @@ startOffset = {

this.prepareStates(modifierList);
this.startEdges = extend({}, interaction.edges);
this.edges = extend({}, this.startEdges);
this.startEdges = (0, _extend.default)({}, interaction.edges);
this.edges = (0, _extend.default)({}, this.startEdges);
this.startOffset = getRectOffset(interaction.rect, pageCoords);

@@ -61,4 +71,4 @@ this.startDelta = {

arg.element = interaction.element;
arg.rect ||= interaction.rect;
arg.edges ||= this.startEdges;
arg.rect || (arg.rect = interaction.rect);
arg.edges || (arg.edges = this.startEdges);
arg.startOffset = this.startOffset;

@@ -83,5 +93,5 @@ return arg;

} = arg;
arg.coords = extend({}, arg.pageCoords);
arg.rect = extend({}, unmodifiedRect);
arg.edges = extend({}, unmodifiedEdges);
arg.coords = (0, _extend.default)({}, arg.pageCoords);
arg.rect = (0, _extend.default)({}, unmodifiedRect);
arg.edges = (0, _extend.default)({}, unmodifiedEdges);
const states = skipModifiers ? this.states.slice(skipModifiers) : this.states;

@@ -94,3 +104,3 @@ const newResult = createResult(arg.coords, arg.rect);

} = state;
const lastModifierCoords = extend({}, arg.coords);
const lastModifierCoords = (0, _extend.default)({}, arg.coords);
let returnValue = null;

@@ -107,3 +117,3 @@ if ((_state$methods = state.methods) != null && _state$methods.set && this.shouldDo(options, preEnd, phase)) {

}
extend(this.edges, arg.edges);
(0, _extend.default)(this.edges, arg.edges);
newResult.delta.x = arg.coords.x - arg.pageCoords.x;

@@ -138,3 +148,3 @@ newResult.delta.y = arg.coords.y - arg.pageCoords.y;

if (phase === 'start') {
extend(this.startDelta, result.delta);
(0, _extend.default)(this.startDelta, result.delta);
}

@@ -232,3 +242,3 @@ for (const [coordsSet, delta] of [[startCoords, startDelta], [curCoords, curDelta]]) {

}
const modifierArg = extend({
const modifierArg = (0, _extend.default)({
states: this.states,

@@ -312,4 +322,4 @@ interactable: interaction.interactable,

this.edges = other.edges;
this.states = other.states.map(s => clone(s));
this.result = createResult(extend({}, other.result.coords), extend({}, other.result.rect));
this.states = other.states.map(s => (0, _clone.default)(s));
this.result = createResult((0, _extend.default)({}, other.result.coords), (0, _extend.default)({}, other.result.rect));
}

@@ -322,2 +332,3 @@ destroy() {

}
exports.Modification = Modification;
function createResult(coords, rect) {

@@ -355,3 +366,3 @@ return {

}
export function getRectOffset(rect, coords) {
function getRectOffset(rect, coords) {
return rect ? {

@@ -358,0 +369,0 @@ left: coords.x - rect.left,

@@ -1,2 +0,2 @@

import t from"../utils/clone.prod.js";import e from"../utils/extend.prod.js";import*as s from"../utils/rect.prod.js";export class Modification{states=[];startOffset={left:0,right:0,top:0,bottom:0};startDelta;result;endResult;startEdges;edges;interaction;constructor(t){this.interaction=t,this.result=o(),this.edges={left:!1,right:!1,top:!1,bottom:!1}}start({phase:t},s){const{interaction:r}=this,i=(t=>{const e=t.interactable.options[t.prepared.name],s=e.modifiers;return s&&s.length?s:["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map((t=>{const s=e[t];return s&&s.enabled&&{options:s,methods:s._methods}})).filter((t=>!!t))})(r);this.prepareStates(i),this.startEdges=e({},r.edges),this.edges=e({},this.startEdges),this.startOffset=getRectOffset(r.rect,s),this.startDelta={x:0,y:0};const n=this.fillArg({phase:t,pageCoords:s,preEnd:!1});return this.result=o(),this.startAll(n),this.result=this.setAll(n)}fillArg(t){const{interaction:e}=this;return t.interaction=e,t.interactable=e.interactable,t.element=e.element,t.rect||=e.rect,t.edges||=this.startEdges,t.startOffset=this.startOffset,t}startAll(t){for(const e of this.states)e.methods.start&&(t.state=e,e.methods.start(t))}setAll(t){const{phase:r,preEnd:i,skipModifiers:n,rect:a,edges:l}=t;t.coords=e({},t.pageCoords),t.rect=e({},a),t.edges=e({},l);const c=n?this.states.slice(n):this.states,d=o(t.coords,t.rect);for(const o of c){var h;const{options:n}=o,a=e({},t.coords);let l=null;null!=(h=o.methods)&&h.set&&this.shouldDo(n,i,r)&&(t.state=o,l=o.methods.set(t),s.addEdges(t.edges,t.rect,{x:t.coords.x-a.x,y:t.coords.y-a.y})),d.eventProps.push(l)}e(this.edges,t.edges),d.delta.x=t.coords.x-t.pageCoords.x,d.delta.y=t.coords.y-t.pageCoords.y,d.rectDelta.left=t.rect.left-a.left,d.rectDelta.right=t.rect.right-a.right,d.rectDelta.top=t.rect.top-a.top,d.rectDelta.bottom=t.rect.bottom-a.bottom;const p=this.result.coords,f=this.result.rect;if(p&&f){const t=d.rect.left!==f.left||d.rect.right!==f.right||d.rect.top!==f.top||d.rect.bottom!==f.bottom;d.changed=t||p.x!==d.coords.x||p.y!==d.coords.y}return d}applyToInteraction(t){const{interaction:s}=this,{phase:o}=t,r=s.coords.cur,i=s.coords.start,{result:n,startDelta:a}=this,l=n.delta;"start"===o&&e(this.startDelta,n.delta);for(const[t,e]of[[i,a],[r,l]])t.page.x+=e.x,t.page.y+=e.y,t.client.x+=e.x,t.client.y+=e.y;const{rectDelta:c}=this.result,d=t.rect||s.rect;d.left+=c.left,d.right+=c.right,d.top+=c.top,d.bottom+=c.bottom,d.width=d.right-d.left,d.height=d.bottom-d.top}setAndApply(t){const{interaction:e}=this,{phase:s,preEnd:o,skipModifiers:r}=t,i=this.setAll(this.fillArg({preEnd:o,phase:s,pageCoords:t.modifiedCoords||e.coords.cur.page}));if(this.result=i,!i.changed&&(!r||r<this.states.length)&&e.interacting())return!1;if(t.modifiedCoords){const{page:s}=e.coords.cur,o={x:t.modifiedCoords.x-s.x,y:t.modifiedCoords.y-s.y};i.coords.x+=o.x,i.coords.y+=o.y,i.delta.x+=o.x,i.delta.y+=o.y}this.applyToInteraction(t)}beforeEnd(t){const{interaction:e,event:s}=t,o=this.states;if(!o||!o.length)return;let r=!1;for(const e of o){t.state=e;const{options:s,methods:o}=e,i=o.beforeEnd&&o.beforeEnd(t);if(i)return this.endResult=i,!1;r=r||!r&&this.shouldDo(s,!0,t.phase,!0)}r&&e.move({event:s,preEnd:!0})}stop(t){const{interaction:s}=t;if(!this.states||!this.states.length)return;const o=e({states:this.states,interactable:s.interactable,element:s.element,rect:null},t);this.fillArg(o);for(const t of this.states)o.state=t,t.methods.stop&&t.methods.stop(o);this.states=null,this.endResult=null}prepareStates(t){this.states=[];for(let e=0;e<t.length;e++){const{options:s,methods:o,name:r}=t[e];this.states.push({options:s,methods:o,index:e,name:r})}return this.states}restoreInteractionCoords({interaction:{coords:t,rect:e,modification:s}}){if(!s.result)return;const{startDelta:o}=s,{delta:r,rectDelta:i}=s.result,n=[[t.start,o],[t.cur,r]];for(const[t,e]of n)t.page.x-=e.x,t.page.y-=e.y,t.client.x-=e.x,t.client.y-=e.y;e.left-=i.left,e.right-=i.right,e.top-=i.top,e.bottom-=i.bottom}shouldDo(t,e,s,o){return!(!t||!1===t.enabled||o&&!t.endOnly||t.endOnly&&!e||"start"===s&&!t.setStart)}copyFrom(s){this.startOffset=s.startOffset,this.startDelta=s.startDelta,this.startEdges=s.startEdges,this.edges=s.edges,this.states=s.states.map((e=>t(e))),this.result=o(e({},s.result.coords),e({},s.result.rect))}destroy(){for(const t in this)this[t]=null}}function o(t,e){return{rect:e,coords:t,delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},eventProps:[],changed:!0}}export function getRectOffset(t,e){return t?{left:e.x-t.left,top:e.y-t.top,right:t.right-e.x,bottom:t.bottom-e.y}:{left:0,top:0,right:0,bottom:0}}
Object.defineProperty(exports,"__esModule",{value:!0}),exports.Modification=void 0,exports.getRectOffset=a;var t=o(require("../utils/clone.prod.js")),e=o(require("../utils/extend.prod.js")),s=((t,e)=>{if(t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var s=r(e);if(s&&s.has(t))return s.get(t);var o={__proto__:null},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in t)if("default"!==a&&Object.prototype.hasOwnProperty.call(t,a)){var n=i?Object.getOwnPropertyDescriptor(t,a):null;n&&(n.get||n.set)?Object.defineProperty(o,a,n):o[a]=t[a]}return o.default=t,s&&s.set(t,o),o})(require("../utils/rect.prod.js"));function r(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,s=new WeakMap;return(r=t=>t?s:e)(t)}function o(t){return t&&t.__esModule?t:{default:t}}function i(t,e){return{rect:e,coords:t,delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},eventProps:[],changed:!0}}function a(t,e){return t?{left:e.x-t.left,top:e.y-t.top,right:t.right-e.x,bottom:t.bottom-e.y}:{left:0,top:0,right:0,bottom:0}}exports.Modification=class{states=[];startOffset={left:0,right:0,top:0,bottom:0};startDelta;result;endResult;startEdges;edges;interaction;constructor(t){this.interaction=t,this.result=i(),this.edges={left:!1,right:!1,top:!1,bottom:!1}}start({phase:t},s){const{interaction:r}=this,o=(t=>{const e=t.interactable.options[t.prepared.name],s=e.modifiers;return s&&s.length?s:["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map((t=>{const s=e[t];return s&&s.enabled&&{options:s,methods:s._methods}})).filter((t=>!!t))})(r);this.prepareStates(o),this.startEdges=(0,e.default)({},r.edges),this.edges=(0,e.default)({},this.startEdges),this.startOffset=a(r.rect,s),this.startDelta={x:0,y:0};const n=this.fillArg({phase:t,pageCoords:s,preEnd:!1});return this.result=i(),this.startAll(n),this.result=this.setAll(n)}fillArg(t){const{interaction:e}=this;return t.interaction=e,t.interactable=e.interactable,t.element=e.element,t.rect||(t.rect=e.rect),t.edges||(t.edges=this.startEdges),t.startOffset=this.startOffset,t}startAll(t){for(const e of this.states)e.methods.start&&(t.state=e,e.methods.start(t))}setAll(t){const{phase:r,preEnd:o,skipModifiers:a,rect:n,edges:l}=t;t.coords=(0,e.default)({},t.pageCoords),t.rect=(0,e.default)({},n),t.edges=(0,e.default)({},l);const d=a?this.states.slice(a):this.states,c=i(t.coords,t.rect);for(const i of d){var h;const{options:a}=i,n=(0,e.default)({},t.coords);let l=null;null!=(h=i.methods)&&h.set&&this.shouldDo(a,o,r)&&(t.state=i,l=i.methods.set(t),s.addEdges(t.edges,t.rect,{x:t.coords.x-n.x,y:t.coords.y-n.y})),c.eventProps.push(l)}(0,e.default)(this.edges,t.edges),c.delta.x=t.coords.x-t.pageCoords.x,c.delta.y=t.coords.y-t.pageCoords.y,c.rectDelta.left=t.rect.left-n.left,c.rectDelta.right=t.rect.right-n.right,c.rectDelta.top=t.rect.top-n.top,c.rectDelta.bottom=t.rect.bottom-n.bottom;const f=this.result.coords,p=this.result.rect;if(f&&p){const t=c.rect.left!==p.left||c.rect.right!==p.right||c.rect.top!==p.top||c.rect.bottom!==p.bottom;c.changed=t||f.x!==c.coords.x||f.y!==c.coords.y}return c}applyToInteraction(t){const{interaction:s}=this,{phase:r}=t,o=s.coords.cur,i=s.coords.start,{result:a,startDelta:n}=this,l=a.delta;"start"===r&&(0,e.default)(this.startDelta,a.delta);for(const[t,e]of[[i,n],[o,l]])t.page.x+=e.x,t.page.y+=e.y,t.client.x+=e.x,t.client.y+=e.y;const{rectDelta:d}=this.result,c=t.rect||s.rect;c.left+=d.left,c.right+=d.right,c.top+=d.top,c.bottom+=d.bottom,c.width=c.right-c.left,c.height=c.bottom-c.top}setAndApply(t){const{interaction:e}=this,{phase:s,preEnd:r,skipModifiers:o}=t,i=this.setAll(this.fillArg({preEnd:r,phase:s,pageCoords:t.modifiedCoords||e.coords.cur.page}));if(this.result=i,!i.changed&&(!o||o<this.states.length)&&e.interacting())return!1;if(t.modifiedCoords){const{page:s}=e.coords.cur,r={x:t.modifiedCoords.x-s.x,y:t.modifiedCoords.y-s.y};i.coords.x+=r.x,i.coords.y+=r.y,i.delta.x+=r.x,i.delta.y+=r.y}this.applyToInteraction(t)}beforeEnd(t){const{interaction:e,event:s}=t,r=this.states;if(!r||!r.length)return;let o=!1;for(const e of r){t.state=e;const{options:s,methods:r}=e,i=r.beforeEnd&&r.beforeEnd(t);if(i)return this.endResult=i,!1;o=o||!o&&this.shouldDo(s,!0,t.phase,!0)}o&&e.move({event:s,preEnd:!0})}stop(t){const{interaction:s}=t;if(!this.states||!this.states.length)return;const r=(0,e.default)({states:this.states,interactable:s.interactable,element:s.element,rect:null},t);this.fillArg(r);for(const t of this.states)r.state=t,t.methods.stop&&t.methods.stop(r);this.states=null,this.endResult=null}prepareStates(t){this.states=[];for(let e=0;e<t.length;e++){const{options:s,methods:r,name:o}=t[e];this.states.push({options:s,methods:r,index:e,name:o})}return this.states}restoreInteractionCoords({interaction:{coords:t,rect:e,modification:s}}){if(!s.result)return;const{startDelta:r}=s,{delta:o,rectDelta:i}=s.result,a=[[t.start,r],[t.cur,o]];for(const[t,e]of a)t.page.x-=e.x,t.page.y-=e.y,t.client.x-=e.x,t.client.y-=e.y;e.left-=i.left,e.right-=i.right,e.top-=i.top,e.bottom-=i.bottom}shouldDo(t,e,s,r){return!(!t||!1===t.enabled||r&&!t.endOnly||t.endOnly&&!e||"start"===s&&!t.setStart)}copyFrom(s){this.startOffset=s.startOffset,this.startDelta=s.startDelta,this.startEdges=s.startEdges,this.edges=s.edges,this.states=s.states.map((e=>(0,t.default)(e))),this.result=i((0,e.default)({},s.result.coords),(0,e.default)({},s.result.rect))}destroy(){for(const t in this)this[t]=null}};
//# sourceMappingURL=Modification.prod.js.map

@@ -0,4 +1,10 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
const noop = () => {};
noop._defaults = {};
export default noop;
var _default = exports.default = noop;
//# sourceMappingURL=noop.js.map

@@ -1,2 +0,2 @@

const t=()=>{};t._defaults={};export default t;
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;const e=()=>{};e._defaults={},exports.default=e;
//# sourceMappingURL=noop.prod.js.map
{
"name": "@interactjs/modifiers",
"version": "1.10.24",
"version": "1.10.25",
"main": "index",

@@ -13,10 +13,10 @@ "module": "index",

"dependencies": {
"@interactjs/snappers": "1.10.24"
"@interactjs/snappers": "1.10.25"
},
"peerDependencies": {
"@interactjs/core": "1.10.24",
"@interactjs/utils": "1.10.24"
"@interactjs/core": "1.10.25",
"@interactjs/utils": "1.10.25"
},
"optionalDependencies": {
"@interactjs/interact": "1.10.24"
"@interactjs/interact": "1.10.25"
},

@@ -31,3 +31,3 @@ "publishConfig": {

"license": "MIT",
"gitHead": "86c64a3f"
"gitHead": "ee3c52c4"
}

@@ -1,8 +0,13 @@

import snappers from "../snappers/plugin.js";
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _plugin = _interopRequireDefault(require("../snappers/plugin.js"));
var _all = _interopRequireDefault(require("./all"));
var _base = _interopRequireDefault(require("./base"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable import/no-duplicates -- for typescript module augmentations */
import './all';
import './base';
import all from './all';
import base from './base';
/* eslint-enable import/no-duplicates */

@@ -16,12 +21,12 @@

} = scope;
scope.usePlugin(base);
scope.usePlugin(snappers);
interact.modifiers = all;
scope.usePlugin(_base.default);
scope.usePlugin(_plugin.default);
interact.modifiers = _all.default;
// for backwrads compatibility
for (const type in all) {
for (const type in _all.default) {
const {
_defaults,
_methods
} = all[type];
} = _all.default[type];
_defaults._methods = _methods;

@@ -32,3 +37,3 @@ scope.defaults.perAction[type] = _defaults;

};
export default modifiers;
var _default = exports.default = modifiers;
//# sourceMappingURL=plugin.js.map

@@ -1,2 +0,2 @@

import t from"../snappers/plugin.prod.js";import"./all";import"./base";import o from"./all";import i from"./base";const s={id:"modifiers",install(s){const{interactStatic:r}=s;s.usePlugin(i),s.usePlugin(t),r.modifiers=o;for(const t in o){const{_defaults:i,_methods:r}=o[t];i._methods=r,s.defaults.perAction[t]=i}}};export default s;
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=s(require("../snappers/plugin.prod.js")),t=s(require("./all")),u=s(require("./base"));function s(e){return e&&e.__esModule?e:{default:e}}const r={id:"modifiers",install(s){const{interactStatic:r}=s;s.usePlugin(u.default),s.usePlugin(e.default),r.modifiers=t.default;for(const e in t.default){const{_defaults:u,_methods:r}=t.default[e];u._methods=r,s.defaults.perAction[e]=u}}};exports.default=r;
//# sourceMappingURL=plugin.prod.js.map

@@ -0,1 +1,14 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.restrictEdges = exports.default = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var rectUtils = _interopRequireWildcard(require("../../utils/rect.js"));
var _base = require("../base");
var _pointer = require("./pointer");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// This modifier adds the options.resize.restrictEdges setting which sets min and

@@ -12,6 +25,2 @@ // max for the top, left, bottom and right edges of the target being resized.

import extend from "../../utils/extend.js";
import * as rectUtils from "../../utils/rect.js";
import { makeModifier } from '../base';
import { getRestrictionRect } from './pointer';
const noInner = {

@@ -39,3 +48,3 @@ top: +Infinity,

if (options) {
const offsetRect = getRestrictionRect(options.offset, interaction, interaction.coords.start.page);
const offsetRect = (0, _pointer.getRestrictionRect)(options.offset, interaction, interaction.coords.start.page);
offset = rectUtils.rectToXY(offsetRect);

@@ -67,5 +76,5 @@ }

}
const page = extend({}, coords);
const inner = getRestrictionRect(options.inner, interaction, page) || {};
const outer = getRestrictionRect(options.outer, interaction, page) || {};
const page = (0, _extend.default)({}, coords);
const inner = (0, _pointer.getRestrictionRect)(options.inner, interaction, page) || {};
const outer = (0, _pointer.getRestrictionRect)(options.outer, interaction, page) || {};
fixRect(inner, noInner);

@@ -99,3 +108,3 @@ fixRect(outer, noOuter);

};
const restrictEdges = {
const restrictEdges = exports.restrictEdges = {
noInner,

@@ -107,4 +116,3 @@ noOuter,

};
export default makeModifier(restrictEdges, 'restrictEdges');
export { restrictEdges };
var _default = exports.default = (0, _base.makeModifier)(restrictEdges, 'restrictEdges');
//# sourceMappingURL=edges.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import*as o from"../../utils/rect.prod.js";import{makeModifier as e}from"../base";import{getRestrictionRect as r}from"./pointer";const n={top:1/0,left:1/0,bottom:-1/0,right:-1/0},i={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function s(t,o){for(const e of["top","left","bottom","right"])e in t||(t[e]=o[e]);return t}const f={noInner:n,noOuter:i,start({interaction:t,startOffset:e,state:n}){const{options:i}=n;let s;if(i){const e=r(i.offset,t,t.coords.start.page);s=o.rectToXY(e)}s=s||{x:0,y:0},n.offset={top:s.y+e.top,left:s.x+e.left,bottom:s.y-e.bottom,right:s.x-e.right}},set({coords:o,edges:e,interaction:f,state:m}){const{offset:a,options:l}=m;if(!e)return;const p=t({},o),h=r(l.inner,f,p)||{},c=r(l.outer,f,p)||{};s(h,n),s(c,i),e.top?o.y=Math.min(Math.max(c.top+a.top,p.y),h.top+a.top):e.bottom&&(o.y=Math.max(Math.min(c.bottom+a.bottom,p.y),h.bottom+a.bottom)),e.left?o.x=Math.min(Math.max(c.left+a.left,p.x),h.left+a.left):e.right&&(o.x=Math.max(Math.min(c.right+a.right,p.x),h.right+a.right))},defaults:{inner:null,outer:null,offset:null,endOnly:!1,enabled:!1}};export default e(f,"restrictEdges");export{f as restrictEdges};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.restrictEdges=exports.default=void 0;var t,e=(t=require("../../utils/extend.prod.js"))&&t.__esModule?t:{default:t},o=((t,e)=>{if(t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var o=i(e);if(o&&o.has(t))return o.get(t);var r={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var f=n?Object.getOwnPropertyDescriptor(t,s):null;f&&(f.get||f.set)?Object.defineProperty(r,s,f):r[s]=t[s]}return r.default=t,o&&o.set(t,r),r})(require("../../utils/rect.prod.js")),r=require("../base"),n=require("./pointer");function i(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,o=new WeakMap;return(i=t=>t?o:e)(t)}const s={top:1/0,left:1/0,bottom:-1/0,right:-1/0},f={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function a(t,e){for(const o of["top","left","bottom","right"])o in t||(t[o]=e[o]);return t}const l=exports.restrictEdges={noInner:s,noOuter:f,start({interaction:t,startOffset:e,state:r}){const{options:i}=r;let s;if(i){const e=(0,n.getRestrictionRect)(i.offset,t,t.coords.start.page);s=o.rectToXY(e)}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}},set({coords:t,edges:o,interaction:r,state:i}){const{offset:l,options:u}=i;if(!o)return;const p=(0,e.default)({},t),c=(0,n.getRestrictionRect)(u.inner,r,p)||{},d=(0,n.getRestrictionRect)(u.outer,r,p)||{};a(c,s),a(d,f),o.top?t.y=Math.min(Math.max(d.top+l.top,p.y),c.top+l.top):o.bottom&&(t.y=Math.max(Math.min(d.bottom+l.bottom,p.y),c.bottom+l.bottom)),o.left?t.x=Math.min(Math.max(d.left+l.left,p.x),c.left+l.left):o.right&&(t.x=Math.max(Math.min(d.right+l.right,p.x),c.right+l.right))},defaults:{inner:null,outer:null,offset:null,endOnly:!1,enabled:!1}};exports.default=(0,r.makeModifier)(l,"restrictEdges");
//# sourceMappingURL=edges.prod.js.map

@@ -1,5 +0,16 @@

import extend from "../../utils/extend.js";
import is from "../../utils/is.js";
import * as rectUtils from "../../utils/rect.js";
import { makeModifier } from '../base';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
exports.getRestrictionRect = getRestrictionRect;
exports.restrict = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var _is = _interopRequireDefault(require("../../utils/is.js"));
var rectUtils = _interopRequireWildcard(require("../../utils/rect.js"));
var _base = require("../base");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function start({

@@ -18,3 +29,3 @@ rect,

} = options;
const offset = extend({
const offset = (0, _extend.default)({
left: 0,

@@ -61,4 +72,4 @@ top: 0,

}
export function getRestrictionRect(value, interaction, coords) {
if (is.func(value)) {
function getRestrictionRect(value, interaction, coords) {
if (_is.default.func(value)) {
return rectUtils.resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]);

@@ -76,3 +87,3 @@ } else {

};
const restrict = {
const restrict = exports.restrict = {
start,

@@ -82,4 +93,3 @@ set,

};
export default makeModifier(restrict, 'restrict');
export { restrict };
var _default = exports.default = (0, _base.makeModifier)(restrict, 'restrict');
//# sourceMappingURL=pointer.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import e from"../../utils/is.prod.js";import*as o from"../../utils/rect.prod.js";import{makeModifier as i}from"../base";export function getRestrictionRect(t,i,r){return e.func(t)?o.resolveRectLike(t,i.interactable,i.element,[r.x,r.y,i]):o.resolveRectLike(t,i.interactable,i.element)}const r={start({rect:e,startOffset:o,state:i,interaction:r,pageCoords:s}){const{options:n}=i,{elementRect:l}=n,c=t({left:0,top:0,right:0,bottom:0},n.offset||{});if(e&&l){const t=getRestrictionRect(n.restriction,r,s);if(t){const o=t.right-t.left-e.width,i=t.bottom-t.top-e.height;o<0&&(c.left+=o,c.right+=o),i<0&&(c.top+=i,c.bottom+=i)}c.left+=o.left-e.width*l.left,c.top+=o.top-e.height*l.top,c.right+=o.right-e.width*(1-l.right),c.bottom+=o.bottom-e.height*(1-l.bottom)}i.offset=c},set({coords:t,interaction:e,state:i}){const{options:r,offset:s}=i,n=getRestrictionRect(r.restriction,e,t);if(!n)return;const l=o.xywhToTlbr(n);t.x=Math.max(Math.min(l.right-s.right,t.x),l.left+s.left),t.y=Math.max(Math.min(l.bottom-s.bottom,t.y),l.top+s.top)},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};export default i(r,"restrict");export{r as restrict};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getRestrictionRect=s,exports.restrict=void 0;var t=n(require("../../utils/extend.prod.js")),e=n(require("../../utils/is.prod.js")),r=((t,e)=>{if(t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var r=i(e);if(r&&r.has(t))return r.get(t);var o={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var l=n?Object.getOwnPropertyDescriptor(t,s):null;l&&(l.get||l.set)?Object.defineProperty(o,s,l):o[s]=t[s]}return o.default=t,r&&r.set(t,o),o})(require("../../utils/rect.prod.js")),o=require("../base");function i(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,r=new WeakMap;return(i=t=>t?r:e)(t)}function n(t){return t&&t.__esModule?t:{default:t}}function s(t,o,i){return e.default.func(t)?r.resolveRectLike(t,o.interactable,o.element,[i.x,i.y,o]):r.resolveRectLike(t,o.interactable,o.element)}const l=exports.restrict={start({rect:e,startOffset:r,state:o,interaction:i,pageCoords:n}){const{options:l}=o,{elementRect:f}=l,a=(0,t.default)({left:0,top:0,right:0,bottom:0},l.offset||{});if(e&&f){const t=s(l.restriction,i,n);if(t){const r=t.right-t.left-e.width,o=t.bottom-t.top-e.height;r<0&&(a.left+=r,a.right+=r),o<0&&(a.top+=o,a.bottom+=o)}a.left+=r.left-e.width*f.left,a.top+=r.top-e.height*f.top,a.right+=r.right-e.width*(1-f.right),a.bottom+=r.bottom-e.height*(1-f.bottom)}o.offset=a},set({coords:t,interaction:e,state:o}){const{options:i,offset:n}=o,l=s(i.restriction,e,t);if(!l)return;const f=r.xywhToTlbr(l);t.x=Math.max(Math.min(f.right-n.right,t.x),f.left+n.left),t.y=Math.max(Math.min(f.bottom-n.bottom,t.y),f.top+n.top)},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};exports.default=(0,o.makeModifier)(l,"restrict");
//# sourceMappingURL=pointer.prod.js.map

@@ -1,5 +0,12 @@

import extend from "../../utils/extend.js";
import { makeModifier } from '../base';
import { restrict } from './pointer';
const defaults = extend({
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.restrictRect = exports.default = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var _base = require("../base");
var _pointer = require("./pointer");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const defaults = (0, _extend.default)({
get elementRect() {

@@ -14,10 +21,9 @@ return {

set elementRect(_) {}
}, restrict.defaults);
const restrictRect = {
start: restrict.start,
set: restrict.set,
}, _pointer.restrict.defaults);
const restrictRect = exports.restrictRect = {
start: _pointer.restrict.start,
set: _pointer.restrict.set,
defaults
};
export default makeModifier(restrictRect, 'restrictRect');
export { restrictRect };
var _default = exports.default = (0, _base.makeModifier)(restrictRect, 'restrictRect');
//# sourceMappingURL=rect.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import{makeModifier as e}from"../base";import{restrict as r}from"./pointer";const o=t({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(t){}},r.defaults),s={start:r.start,set:r.set,defaults:o};export default e(s,"restrictRect");export{s as restrictRect};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.restrictRect=exports.default=void 0;var e,t=(e=require("../../utils/extend.prod.js"))&&e.__esModule?e:{default:e},r=require("../base"),s=require("./pointer");const i=(0,t.default)({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(e){}},s.restrict.defaults),o=exports.restrictRect={start:s.restrict.start,set:s.restrict.set,defaults:i};exports.default=(0,r.makeModifier)(o,"restrictRect");
//# sourceMappingURL=rect.prod.js.map

@@ -1,6 +0,15 @@

import extend from "../../utils/extend.js";
import * as rectUtils from "../../utils/rect.js";
import { makeModifier } from '../base';
import { restrictEdges } from './edges';
import { getRestrictionRect } from './pointer';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.restrictSize = exports.default = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var rectUtils = _interopRequireWildcard(require("../../utils/rect.js"));
var _base = require("../base");
var _edges = require("./edges");
var _pointer = require("./pointer");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const noMin = {

@@ -15,3 +24,3 @@ width: -Infinity,

function start(arg) {
return restrictEdges.start(arg);
return _edges.restrictEdges.start(arg);
}

@@ -31,8 +40,8 @@ function set(arg) {

}
const minSize = rectUtils.tlbrToXywh(getRestrictionRect(options.min, interaction, arg.coords)) || noMin;
const maxSize = rectUtils.tlbrToXywh(getRestrictionRect(options.max, interaction, arg.coords)) || noMax;
const minSize = rectUtils.tlbrToXywh((0, _pointer.getRestrictionRect)(options.min, interaction, arg.coords)) || noMin;
const maxSize = rectUtils.tlbrToXywh((0, _pointer.getRestrictionRect)(options.max, interaction, arg.coords)) || noMax;
state.options = {
endOnly: options.endOnly,
inner: extend({}, restrictEdges.noInner),
outer: extend({}, restrictEdges.noOuter)
inner: (0, _extend.default)({}, _edges.restrictEdges.noInner),
outer: (0, _extend.default)({}, _edges.restrictEdges.noOuter)
};

@@ -53,3 +62,3 @@ if (edges.top) {

}
restrictEdges.set(arg);
_edges.restrictEdges.set(arg);
state.options = options;

@@ -63,3 +72,3 @@ }

};
const restrictSize = {
const restrictSize = exports.restrictSize = {
start,

@@ -69,4 +78,3 @@ set,

};
export default makeModifier(restrictSize, 'restrictSize');
export { restrictSize };
var _default = exports.default = (0, _base.makeModifier)(restrictSize, 'restrictSize');
//# sourceMappingURL=size.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import*as o from"../../utils/rect.prod.js";import{makeModifier as e}from"../base";import{restrictEdges as i}from"./edges";import{getRestrictionRect as r}from"./pointer";const n={width:-1/0,height:-1/0},s={width:1/0,height:1/0},p={start:t=>i.start(t),set(e){const{interaction:p,state:h,rect:d,edges:l}=e,{options:m}=h;if(!l)return;const f=o.tlbrToXywh(r(m.min,p,e.coords))||n,g=o.tlbrToXywh(r(m.max,p,e.coords))||s;h.options={endOnly:m.endOnly,inner:t({},i.noInner),outer:t({},i.noOuter)},l.top?(h.options.inner.top=d.bottom-f.height,h.options.outer.top=d.bottom-g.height):l.bottom&&(h.options.inner.bottom=d.top+f.height,h.options.outer.bottom=d.top+g.height),l.left?(h.options.inner.left=d.right-f.width,h.options.outer.left=d.right-g.width):l.right&&(h.options.inner.right=d.left+f.width,h.options.outer.right=d.left+g.width),i.set(e),h.options=m},defaults:{min:null,max:null,endOnly:!1,enabled:!1}};export default e(p,"restrictSize");export{p as restrictSize};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.restrictSize=exports.default=void 0;var t,e=(t=require("../../utils/extend.prod.js"))&&t.__esModule?t:{default:t},r=((t,e)=>{if(t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var r=s(e);if(r&&r.has(t))return r.get(t);var o={__proto__:null},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in t)if("default"!==n&&Object.prototype.hasOwnProperty.call(t,n)){var u=i?Object.getOwnPropertyDescriptor(t,n):null;u&&(u.get||u.set)?Object.defineProperty(o,n,u):o[n]=t[n]}return o.default=t,r&&r.set(t,o),o})(require("../../utils/rect.prod.js")),o=require("../base"),i=require("./edges"),n=require("./pointer");function s(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,r=new WeakMap;return(s=t=>t?r:e)(t)}const u={width:-1/0,height:-1/0},p={width:1/0,height:1/0},l=exports.restrictSize={start:t=>i.restrictEdges.start(t),set(t){const{interaction:o,state:s,rect:l,edges:d}=t,{options:a}=s;if(!d)return;const c=r.tlbrToXywh((0,n.getRestrictionRect)(a.min,o,t.coords))||u,f=r.tlbrToXywh((0,n.getRestrictionRect)(a.max,o,t.coords))||p;s.options={endOnly:a.endOnly,inner:(0,e.default)({},i.restrictEdges.noInner),outer:(0,e.default)({},i.restrictEdges.noOuter)},d.top?(s.options.inner.top=l.bottom-c.height,s.options.outer.top=l.bottom-f.height):d.bottom&&(s.options.inner.bottom=l.top+c.height,s.options.outer.bottom=l.top+f.height),d.left?(s.options.inner.left=l.right-c.width,s.options.outer.left=l.right-f.width):d.right&&(s.options.inner.right=l.left+c.width,s.options.outer.right=l.left+f.width),i.restrictEdges.set(t),s.options=a},defaults:{min:null,max:null,endOnly:!1,enabled:!1}};exports.default=(0,o.makeModifier)(l,"restrictSize");
//# sourceMappingURL=size.prod.js.map

@@ -1,2 +0,14 @@

export { default } from '../noop';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function () {
return _noop.default;
}
});
var _noop = _interopRequireDefault(require("../noop"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=rubberband.js.map

@@ -1,2 +0,2 @@

export{default}from"../noop";
Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r.default});var e,r=(e=require("../noop"))&&e.__esModule?e:{default:e};
//# sourceMappingURL=rubberband.prod.js.map

@@ -0,1 +1,12 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.snapEdges = exports.default = void 0;
var _clone = _interopRequireDefault(require("../../utils/clone.js"));
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var _base = require("../base");
var _size = require("./size");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**

@@ -30,6 +41,2 @@ * @module modifiers/snapEdges

import clone from "../../utils/clone.js";
import extend from "../../utils/extend.js";
import { makeModifier } from '../base';
import { snapSize } from './size';
function start(arg) {

@@ -43,8 +50,8 @@ const {

arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']];
return snapSize.start(arg);
return _size.snapSize.start(arg);
}
const snapEdges = {
const snapEdges = exports.snapEdges = {
start,
set: snapSize.set,
defaults: extend(clone(snapSize.defaults), {
set: _size.snapSize.set,
defaults: (0, _extend.default)((0, _clone.default)(_size.snapSize.defaults), {
targets: undefined,

@@ -58,4 +65,3 @@ range: undefined,

};
export default makeModifier(snapEdges, 'snapEdges');
export { snapEdges };
var _default = exports.default = (0, _base.makeModifier)(snapEdges, 'snapEdges');
//# sourceMappingURL=edges.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/clone.prod.js";import e from"../../utils/extend.prod.js";import{makeModifier as s}from"../base";import{snapSize as o}from"./size";const r={start(t){const{edges:e}=t;return e?(t.state.targetFields=t.state.targetFields||[[e.left?"left":"right",e.top?"top":"bottom"]],o.start(t)):null},set:o.set,defaults:e(t(o.defaults),{targets:void 0,range:void 0,offset:{x:0,y:0}})};export default s(r,"snapEdges");export{r as snapEdges};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.snapEdges=exports.default=void 0;var e=a(require("../../utils/clone.prod.js")),t=a(require("../../utils/extend.prod.js")),s=require("../base"),r=require("./size");function a(e){return e&&e.__esModule?e:{default:e}}const d=exports.snapEdges={start(e){const{edges:t}=e;return t?(e.state.targetFields=e.state.targetFields||[[t.left?"left":"right",t.top?"top":"bottom"]],r.snapSize.start(e)):null},set:r.snapSize.set,defaults:(0,t.default)((0,e.default)(r.snapSize.defaults),{targets:void 0,range:void 0,offset:{x:0,y:0}})};exports.default=(0,s.makeModifier)(d,"snapEdges");
//# sourceMappingURL=edges.prod.js.map

@@ -1,7 +0,14 @@

import extend from "../../utils/extend.js";
import getOriginXY from "../../utils/getOriginXY.js";
import hypot from "../../utils/hypot.js";
import is from "../../utils/is.js";
import { resolveRectLike, rectToXY } from "../../utils/rect.js";
import { makeModifier } from '../base';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.snap = exports.default = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var _getOriginXY = _interopRequireDefault(require("../../utils/getOriginXY.js"));
var _hypot = _interopRequireDefault(require("../../utils/hypot.js"));
var _is = _interopRequireDefault(require("../../utils/is.js"));
var _rect = require("../../utils/rect.js");
var _base = require("../base");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function start(arg) {

@@ -30,4 +37,4 @@ const {

} else {
const offsetRect = resolveRectLike(options.offset, interactable, element, [interaction]);
snapOffset = rectToXY(offsetRect) || {
const offsetRect = (0, _rect.resolveRectLike)(options.offset, interactable, element, [interaction]);
snapOffset = (0, _rect.rectToXY)(offsetRect) || {
x: 0,

@@ -64,4 +71,4 @@ y: 0

} = state;
const origin = getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name);
const page = extend({}, coords);
const origin = (0, _getOriginXY.default)(interaction.interactable, interaction.element, interaction.prepared.name);
const page = (0, _extend.default)({}, coords);
const targets = [];

@@ -78,3 +85,3 @@ if (!options.offsetWithOrigin) {

let target;
if (is.func(snapTarget)) {
if (_is.default.func(snapTarget)) {
target = snapTarget(relativeX, relativeY, interaction._proxy, offset, index);

@@ -88,5 +95,5 @@ } else {

targets.push({
x: (is.number(target.x) ? target.x : relativeX) + offset.x,
y: (is.number(target.y) ? target.y : relativeY) + offset.y,
range: is.number(target.range) ? target.range : options.range,
x: (_is.default.number(target.x) ? target.x : relativeX) + offset.x,
y: (_is.default.number(target.y) ? target.y : relativeY) + offset.y,
range: _is.default.number(target.range) ? target.range : options.range,
source: snapTarget,

@@ -112,3 +119,3 @@ index,

const dy = target.y - page.y;
const distance = hypot(dx, dy);
const distance = (0, _hypot.default)(dx, dy);
let inRange = distance <= range;

@@ -151,4 +158,4 @@

} = arg.interaction;
const optionsOrigin = rectToXY(resolveRectLike(arg.state.options.origin, null, null, [element]));
const origin = optionsOrigin || getOriginXY(arg.interactable, element, arg.interaction.prepared.name);
const optionsOrigin = (0, _rect.rectToXY)((0, _rect.resolveRectLike)(arg.state.options.origin, null, null, [element]));
const origin = optionsOrigin || (0, _getOriginXY.default)(arg.interactable, element, arg.interaction.prepared.name);
return origin;

@@ -166,3 +173,3 @@ }

};
const snap = {
const snap = exports.snap = {
start,

@@ -172,4 +179,3 @@ set,

};
export default makeModifier(snap, 'snap');
export { snap };
var _default = exports.default = (0, _base.makeModifier)(snap, 'snap');
//# sourceMappingURL=pointer.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import e from"../../utils/getOriginXY.prod.js";import n from"../../utils/hypot.prod.js";import r from"../../utils/is.prod.js";import{resolveRectLike as o,rectToXY as s}from"../../utils/rect.prod.js";import{makeModifier as a}from"../base";const i={start(t){const{interaction:n,interactable:r,element:a,rect:i,state:l,startOffset:g}=t,{options:f}=l,c=f.offsetWithOrigin?(t=>{const{element:n}=t.interaction;return s(o(t.state.options.origin,null,null,[n]))||e(t.interactable,n,t.interaction.prepared.name)})(t):{x:0,y:0};let x;if("startCoords"===f.offset)x={x:n.coords.start.page.x,y:n.coords.start.page.y};else{const t=o(f.offset,r,a,[n]);x=s(t)||{x:0,y:0},x.x+=c.x,x.y+=c.y}const{relativePoints:d}=f;l.offsets=i&&d&&d.length?d.map(((t,e)=>({index:e,relativePoint:t,x:g.left-i.width*t.x+x.x,y:g.top-i.height*t.y+x.y}))):[{index:0,relativePoint:null,x:x.x,y:x.y}]},set(o){const{interaction:s,coords:a,state:i}=o,{options:l,offsets:g}=i,f=e(s.interactable,s.element,s.prepared.name),c=t({},a),x=[];l.offsetWithOrigin||(c.x-=f.x,c.y-=f.y);for(const t of g){const e=c.x-t.x,n=c.y-t.y;for(let o=0,a=l.targets.length;o<a;o++){const a=l.targets[o];let i;i=r.func(a)?a(e,n,s._proxy,t,o):a,i&&x.push({x:(r.number(i.x)?i.x:e)+t.x,y:(r.number(i.y)?i.y:n)+t.y,range:r.number(i.range)?i.range:l.range,source:a,index:o,offset:t})}}const d={target:null,inRange:!1,distance:0,range:0,delta:{x:0,y:0}};for(const t of x){const e=t.range,r=t.x-c.x,o=t.y-c.y,s=n(r,o);let a=s<=e;e===1/0&&d.inRange&&d.range!==1/0&&(a=!1),d.target&&!(a?d.inRange&&e!==1/0?s/e<d.distance/d.range:e===1/0&&d.range!==1/0||s<d.distance:!d.inRange&&s<d.distance)||(d.target=t,d.distance=s,d.range=e,d.inRange=a,d.delta.x=r,d.delta.y=o)}return d.inRange&&(a.x=d.target.x,a.y=d.target.y),i.closest=d,d},defaults:{range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1}};export default a(i,"snap");export{i as snap};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.snap=exports.default=void 0;var e=o(require("../../utils/extend.prod.js")),t=o(require("../../utils/getOriginXY.prod.js")),n=o(require("../../utils/hypot.prod.js")),r=o(require("../../utils/is.prod.js")),a=require("../../utils/rect.prod.js"),s=require("../base");function o(e){return e&&e.__esModule?e:{default:e}}const i=exports.snap={start(e){const{interaction:n,interactable:r,element:s,rect:o,state:i,startOffset:l}=e,{options:u}=i,d=u.offsetWithOrigin?(e=>{const{element:n}=e.interaction;return(0,a.rectToXY)((0,a.resolveRectLike)(e.state.options.origin,null,null,[n]))||(0,t.default)(e.interactable,n,e.interaction.prepared.name)})(e):{x:0,y:0};let f;if("startCoords"===u.offset)f={x:n.coords.start.page.x,y:n.coords.start.page.y};else{const e=(0,a.resolveRectLike)(u.offset,r,s,[n]);f=(0,a.rectToXY)(e)||{x:0,y:0},f.x+=d.x,f.y+=d.y}const{relativePoints:c}=u;i.offsets=o&&c&&c.length?c.map(((e,t)=>({index:t,relativePoint:e,x:l.left-o.width*e.x+f.x,y:l.top-o.height*e.y+f.y}))):[{index:0,relativePoint:null,x:f.x,y:f.y}]},set(a){const{interaction:s,coords:o,state:i}=a,{options:l,offsets:u}=i,d=(0,t.default)(s.interactable,s.element,s.prepared.name),f=(0,e.default)({},o),c=[];l.offsetWithOrigin||(f.x-=d.x,f.y-=d.y);for(const e of u){const t=f.x-e.x,n=f.y-e.y;for(let a=0,o=l.targets.length;a<o;a++){const o=l.targets[a];let i;i=r.default.func(o)?o(t,n,s._proxy,e,a):o,i&&c.push({x:(r.default.number(i.x)?i.x:t)+e.x,y:(r.default.number(i.y)?i.y:n)+e.y,range:r.default.number(i.range)?i.range:l.range,source:o,index:a,offset:e})}}const g={target:null,inRange:!1,distance:0,range:0,delta:{x:0,y:0}};for(const e of c){const t=e.range,r=e.x-f.x,a=e.y-f.y,s=(0,n.default)(r,a);let o=s<=t;t===1/0&&g.inRange&&g.range!==1/0&&(o=!1),g.target&&!(o?g.inRange&&t!==1/0?s/t<g.distance/g.range:t===1/0&&g.range!==1/0||s<g.distance:!g.inRange&&s<g.distance)||(g.target=e,g.distance=s,g.range=t,g.inRange=o,g.delta.x=r,g.delta.y=a)}return g.inRange&&(o.x=g.target.x,o.y=g.target.y),i.closest=g,g},defaults:{range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1}};exports.default=(0,s.makeModifier)(i,"snap");
//# sourceMappingURL=pointer.prod.js.map

@@ -0,8 +1,15 @@

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.snapSize = exports.default = void 0;
var _extend = _interopRequireDefault(require("../../utils/extend.js"));
var _is = _interopRequireDefault(require("../../utils/is.js"));
var _base = require("../base");
var _pointer = require("./pointer");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// This modifier allows snapping of the size of targets during resize
// interactions.
import extend from "../../utils/extend.js";
import is from "../../utils/is.js";
import { makeModifier } from '../base';
import { snap } from './pointer';
function start(arg) {

@@ -35,3 +42,3 @@ const {

state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']];
snap.start(arg);
_pointer.snap.start(arg);
state.offsets = arg.state.offsets;

@@ -54,7 +61,7 @@ arg.state = state;

};
state.options = extend({}, options);
state.options = (0, _extend.default)({}, options);
state.options.targets = [];
for (const snapTarget of options.targets || []) {
let target;
if (is.func(snapTarget)) {
if (_is.default.func(snapTarget)) {
target = snapTarget(relative.x, relative.y, interaction);

@@ -76,3 +83,3 @@ } else {

}
const returnValue = snap.set(arg);
const returnValue = _pointer.snap.set(arg);
state.options = options;

@@ -88,3 +95,3 @@ return returnValue;

};
const snapSize = {
const snapSize = exports.snapSize = {
start,

@@ -94,4 +101,3 @@ set,

};
export default makeModifier(snapSize, 'snapSize');
export { snapSize };
var _default = exports.default = (0, _base.makeModifier)(snapSize, 'snapSize');
//# sourceMappingURL=size.js.map

@@ -1,2 +0,2 @@

import t from"../../utils/extend.prod.js";import s from"../../utils/is.prod.js";import{makeModifier as e}from"../base";import{snap as o}from"./pointer";const r={start(t){const{state:s,edges:e}=t,{options:r}=s;if(!e)return null;t.state={options:{targets:null,relativePoints:[{x:e.left?0:1,y:e.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},s.targetFields=s.targetFields||[["width","height"],["x","y"]],o.start(t),s.offsets=t.state.offsets,t.state=s},set(e){const{interaction:r,state:n,coords:i}=e,{options:f,offsets:a}=n,l={x:i.x-a[0].x,y:i.y-a[0].y};n.options=t({},f),n.options.targets=[];for(const t of f.targets||[]){let e;if(e=s.func(t)?t(l.x,l.y,r):t,e){for(const[t,s]of n.targetFields)if(t in e||s in e){e.x=e[t],e.y=e[s];break}n.options.targets.push(e)}}const p=o.set(e);return n.options=f,p},defaults:{range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1}};export default e(r,"snapSize");export{r as snapSize};
Object.defineProperty(exports,"__esModule",{value:!0}),exports.snapSize=exports.default=void 0;var t=r(require("../../utils/extend.prod.js")),e=r(require("../../utils/is.prod.js")),s=require("../base"),o=require("./pointer");function r(t){return t&&t.__esModule?t:{default:t}}const n=exports.snapSize={start(t){const{state:e,edges:s}=t,{options:r}=e;if(!s)return null;t.state={options:{targets:null,relativePoints:[{x:s.left?0:1,y:s.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},e.targetFields=e.targetFields||[["width","height"],["x","y"]],o.snap.start(t),e.offsets=t.state.offsets,t.state=e},set(s){const{interaction:r,state:n,coords:i}=s,{options:a,offsets:f}=n,l={x:i.x-f[0].x,y:i.y-f[0].y};n.options=(0,t.default)({},a),n.options.targets=[];for(const t of a.targets||[]){let s;if(s=e.default.func(t)?t(l.x,l.y,r):t,s){for(const[t,e]of n.targetFields)if(t in s||e in s){s.x=s[t],s.y=s[e];break}n.options.targets.push(s)}}const u=o.snap.set(s);return n.options=a,u},defaults:{range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1}};exports.default=(0,s.makeModifier)(n,"snapSize");
//# sourceMappingURL=size.prod.js.map

@@ -1,2 +0,14 @@

export { default } from '../noop';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function () {
return _noop.default;
}
});
var _noop = _interopRequireDefault(require("../noop"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=spring.js.map

@@ -1,2 +0,2 @@

export{default}from"../noop";
Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r.default});var e,r=(e=require("../noop"))&&e.__esModule?e:{default:e};
//# sourceMappingURL=spring.prod.js.map

@@ -1,2 +0,14 @@

export { default } from '../noop';
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function () {
return _noop.default;
}
});
var _noop = _interopRequireDefault(require("../noop"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=transform.js.map

@@ -1,2 +0,2 @@

export{default}from"../noop";
Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r.default});var e,r=(e=require("../noop"))&&e.__esModule?e:{default:e};
//# sourceMappingURL=transform.prod.js.map

@@ -1,2 +0,6 @@

export {};
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
//# sourceMappingURL=types.js.map

@@ -1,2 +0,2 @@

export{};
Object.defineProperty(exports,"__esModule",{value:!0});
//# sourceMappingURL=types.prod.js.map

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc