@interactjs/auto-start
Advanced tools
Comparing version 1.9.14 to 1.9.15
@@ -5,3 +5,3 @@ import * as domUtils from "../utils/domUtils.js"; | ||
import { copyAction } from "../utils/misc.js"; | ||
import InteractableMethods from "./InteractableMethods.js"; | ||
import InteractableMethods from './InteractableMethods'; | ||
@@ -8,0 +8,0 @@ function install(scope) { |
@@ -1,2 +0,2 @@ | ||
import*as t from"../utils/domUtils.min.js";import e from"../utils/extend.min.js";import n from"../utils/is.min.js";import{copyAction as r}from"../utils/misc.min.js";import o from"./InteractableMethods.min.js";function a(t,e,n,r,o){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&l(e,n,t,o)?t:null}function i(t,e,n,r,o,i,s){for(let c=0,l=r.length;c<l;c++){const l=r[c],u=o[c],m=l.getAction(e,n,t,u);if(!m)continue;const p=a(m,l,u,i,s);if(p)return{action:p,interactable:l,element:u}}return{action:null,interactable:null,element:null}}function s(e,r,o,a,s){let c=[],l=[],u=a;function m(t){c.push(t),l.push(u)}for(;n.element(u);){c=[],l=[],s.interactables.forEachMatch(u,m);const n=i(e,r,o,c,l,a,s);if(n.action&&!n.interactable.options[n.action.name].manualStart)return n;u=t.parentNode(u)}return{action:null,interactable:null,element:null}}function c(t,{action:e,interactable:n,element:o},a){e=e||{name:null},t.interactable=n,t.element=o,r(t.prepared,e),t.rect=n&&e.name?n.getRect(o):null,p(t,a),a.fire("autoStart:prepared",{interaction:t})}function l(t,e,n,r){const o=t.options,a=o[n.name].max,i=o[n.name].maxPerElement,s=r.autoStart.maxInteractions;let c=0,l=0,u=0;if(!(a&&i&&s))return!1;for(const o of r.interactions.list){const r=o.prepared.name;if(o.interacting()){if(c++,c>=s)return!1;if(o.interactable===t){if(l+=r===n.name?1:0,l>=a)return!1;if(o.element===e&&(u++,r===n.name&&u>=i))return!1}}}return s>0}function u(t,e){return n.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function m(t,e,n){const{cursorElement:r}=n.autoStart;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function p(t,e){const{interactable:r,element:o,prepared:a}=t;if("mouse"!==t.pointerType||!r||!r.options.styleCursor)return void(e.autoStart.cursorElement&&m(e.autoStart.cursorElement,"",e));let i="";if(a.name){const s=r.options[a.name].cursorChecker;i=n.func(s)?s(a,r,o,t._interacting):e.actions.map[a.name].getCursor(a)}m(t.element,i||"",e)}const f={id:"auto-start/base",before:["actions","actions/drag","actions/resize","actions/gesture"],install(t){const{interactStatic:n,defaults:r}=t;t.usePlugin(o),r.base.actionChecker=null,r.base.styleCursor=!0,e(r.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),n.maxInteractions=e=>u(e,t),t.autoStart={maxInteractions:1/0,withinInteractionLimit:l,cursorElement:null}},listeners:{"interactions:down"({interaction:t,pointer:e,event:n,eventTarget:r},o){t.interacting()||c(t,s(t,e,n,r,o),o)},"interactions:move"(t,e){!function({interaction:t,pointer:e,event:n,eventTarget:r},o){if("mouse"!==t.pointerType||t.pointerIsDown||t.interacting())return;c(t,s(t,e,n,r,o),o)}(t,e),function(t,e){const{interaction:n}=t;if(!n.pointerIsDown||n.interacting()||!n.pointerWasMoved||!n.prepared.name)return;e.fire("autoStart:before-start",t);const{interactable:r}=n,o=n.prepared.name;o&&r&&(r.options[o].manualStart||!l(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),p(n,e)))}(t,e)},"interactions:stop"({interaction:t},e){const{interactable:n}=t;n&&n.options.styleCursor&&m(t.element,"",e)}},maxInteractions:u,withinInteractionLimit:l,validateAction:a};export default f; | ||
import*as t from"../utils/domUtils.min.js";import e from"../utils/extend.min.js";import n from"../utils/is.min.js";import{copyAction as r}from"../utils/misc.min.js";import o from"./InteractableMethods";function a(t,e,n,r,o){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&l(e,n,t,o)?t:null}function i(t,e,n,r,o,i,s){for(let c=0,l=r.length;c<l;c++){const l=r[c],u=o[c],m=l.getAction(e,n,t,u);if(!m)continue;const p=a(m,l,u,i,s);if(p)return{action:p,interactable:l,element:u}}return{action:null,interactable:null,element:null}}function s(e,r,o,a,s){let c=[],l=[],u=a;function m(t){c.push(t),l.push(u)}for(;n.element(u);){c=[],l=[],s.interactables.forEachMatch(u,m);const n=i(e,r,o,c,l,a,s);if(n.action&&!n.interactable.options[n.action.name].manualStart)return n;u=t.parentNode(u)}return{action:null,interactable:null,element:null}}function c(t,{action:e,interactable:n,element:o},a){e=e||{name:null},t.interactable=n,t.element=o,r(t.prepared,e),t.rect=n&&e.name?n.getRect(o):null,p(t,a),a.fire("autoStart:prepared",{interaction:t})}function l(t,e,n,r){const o=t.options,a=o[n.name].max,i=o[n.name].maxPerElement,s=r.autoStart.maxInteractions;let c=0,l=0,u=0;if(!(a&&i&&s))return!1;for(const o of r.interactions.list){const r=o.prepared.name;if(o.interacting()){if(c++,c>=s)return!1;if(o.interactable===t){if(l+=r===n.name?1:0,l>=a)return!1;if(o.element===e&&(u++,r===n.name&&u>=i))return!1}}}return s>0}function u(t,e){return n.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function m(t,e,n){const{cursorElement:r}=n.autoStart;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function p(t,e){const{interactable:r,element:o,prepared:a}=t;if("mouse"!==t.pointerType||!r||!r.options.styleCursor)return void(e.autoStart.cursorElement&&m(e.autoStart.cursorElement,"",e));let i="";if(a.name){const s=r.options[a.name].cursorChecker;i=n.func(s)?s(a,r,o,t._interacting):e.actions.map[a.name].getCursor(a)}m(t.element,i||"",e)}const f={id:"auto-start/base",before:["actions","actions/drag","actions/resize","actions/gesture"],install(t){const{interactStatic:n,defaults:r}=t;t.usePlugin(o),r.base.actionChecker=null,r.base.styleCursor=!0,e(r.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),n.maxInteractions=e=>u(e,t),t.autoStart={maxInteractions:1/0,withinInteractionLimit:l,cursorElement:null}},listeners:{"interactions:down"({interaction:t,pointer:e,event:n,eventTarget:r},o){t.interacting()||c(t,s(t,e,n,r,o),o)},"interactions:move"(t,e){!function({interaction:t,pointer:e,event:n,eventTarget:r},o){if("mouse"!==t.pointerType||t.pointerIsDown||t.interacting())return;c(t,s(t,e,n,r,o),o)}(t,e),function(t,e){const{interaction:n}=t;if(!n.pointerIsDown||n.interacting()||!n.pointerWasMoved||!n.prepared.name)return;e.fire("autoStart:before-start",t);const{interactable:r}=n,o=n.prepared.name;o&&r&&(r.options[o].manualStart||!l(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),p(n,e)))}(t,e)},"interactions:stop"({interaction:t},e){const{interactable:n}=t;n&&n.options.styleCursor&&m(t.element,"",e)}},maxInteractions:u,withinInteractionLimit:l,validateAction:a};export default f; | ||
//# sourceMappingURL=base.min.js.map |
import { parentNode } from "../utils/domUtils.js"; | ||
import is from "../utils/is.js"; | ||
import autoStart from "./base.js"; | ||
import autoStart from './base'; | ||
@@ -5,0 +5,0 @@ function beforeStart({ |
@@ -1,2 +0,2 @@ | ||
import{parentNode as t}from"../utils/domUtils.min.js";import r from"../utils/is.min.js";import e from"./base.min.js";export default{id:"auto-start/dragAxis",listeners:{"autoStart:before-start"({interaction:a,eventTarget:n,dx:i,dy:o},s){if("drag"!==a.prepared.name)return;const l=Math.abs(i),c=Math.abs(o),d=a.interactable.options.drag,m=d.startAxis,f=l>c?"x":l<c?"y":"xy";if(a.prepared.axis="start"===d.lockAxis?f[0]:d.lockAxis,"xy"!==f&&"xy"!==m&&m!==f){a.prepared.name=null;let i=n;const o=t=>{if(t===a.interactable)return;const r=a.interactable.options.drag;if(!r.manualStart&&t.testIgnoreAllow(r,i,n)){const r=t.getAction(a.downPointer,a.downEvent,a,i);if(r&&"drag"===r.name&&function(t,r){if(!r)return!1;const e=r.options.drag.startAxis;return"xy"===t||"xy"===e||e===t}(f,t)&&e.validateAction(r,t,i,n,s))return t}};for(;r.element(i);){const r=s.interactables.forEachMatch(i,o);if(r){a.prepared.name="drag",a.interactable=r,a.element=i;break}i=t(i)}}}}}; | ||
import{parentNode as t}from"../utils/domUtils.min.js";import r from"../utils/is.min.js";import e from"./base";export default{id:"auto-start/dragAxis",listeners:{"autoStart:before-start"({interaction:a,eventTarget:n,dx:i,dy:o},s){if("drag"!==a.prepared.name)return;const l=Math.abs(i),c=Math.abs(o),d=a.interactable.options.drag,m=d.startAxis,f=l>c?"x":l<c?"y":"xy";if(a.prepared.axis="start"===d.lockAxis?f[0]:d.lockAxis,"xy"!==f&&"xy"!==m&&m!==f){a.prepared.name=null;let i=n;const o=t=>{if(t===a.interactable)return;const r=a.interactable.options.drag;if(!r.manualStart&&t.testIgnoreAllow(r,i,n)){const r=t.getAction(a.downPointer,a.downEvent,a,i);if(r&&"drag"===r.name&&function(t,r){if(!r)return!1;const e=r.options.drag.startAxis;return"xy"===t||"xy"===e||e===t}(f,t)&&e.validateAction(r,t,i,n,s))return t}};for(;r.element(i);){const r=s.interactables.forEachMatch(i,o);if(r){a.prepared.name="drag",a.interactable=r,a.element=i;break}i=t(i)}}}}}; | ||
//# sourceMappingURL=dragAxis.min.js.map |
@@ -1,2 +0,2 @@ | ||
import basePlugin from "./base.js"; | ||
import basePlugin from './base'; | ||
@@ -3,0 +3,0 @@ function install(scope) { |
@@ -1,2 +0,2 @@ | ||
import t from"./base.min.js";function e(t){const e=t.prepared&&t.prepared.name;if(!e)return null;const r=t.interactable.options;return r[e].hold||r[e].delay}export default{id:"auto-start/hold",install(e){const{defaults:r}=e;e.usePlugin(t),r.perAction.hold=0,r.perAction.delay=0},listeners:{"interactions:new"({interaction:t}){t.autoStartHoldTimer=null},"autoStart:prepared"({interaction:t}){const r=e(t);r>0&&(t.autoStartHoldTimer=setTimeout(()=>{t.start(t.prepared,t.interactable,t.element)},r))},"interactions:move"({interaction:t,duplicate:e}){t.pointerWasMoved&&!e&&clearTimeout(t.autoStartHoldTimer)},"autoStart:before-start"({interaction:t}){e(t)>0&&(t.prepared.name=null)}},getHoldDuration:e}; | ||
import t from"./base";function e(t){const e=t.prepared&&t.prepared.name;if(!e)return null;const r=t.interactable.options;return r[e].hold||r[e].delay}export default{id:"auto-start/hold",install(e){const{defaults:r}=e;e.usePlugin(t),r.perAction.hold=0,r.perAction.delay=0},listeners:{"interactions:new"({interaction:t}){t.autoStartHoldTimer=null},"autoStart:prepared"({interaction:t}){const r=e(t);r>0&&(t.autoStartHoldTimer=setTimeout(()=>{t.start(t.prepared,t.interactable,t.element)},r))},"interactions:move"({interaction:t,duplicate:e}){t.pointerWasMoved&&!e&&clearTimeout(t.autoStartHoldTimer)},"autoStart:before-start"({interaction:t}){e(t)>0&&(t.prepared.name=null)}},getHoldDuration:e}; | ||
//# sourceMappingURL=hold.min.js.map |
{ | ||
"name": "@interactjs/auto-start", | ||
"version": "1.9.14", | ||
"version": "1.9.15", | ||
"license": "MIT", | ||
"peerDependencies": { | ||
"@interactjs/core": "1.9.14", | ||
"@interactjs/utils": "1.9.14" | ||
"@interactjs/core": "1.9.15", | ||
"@interactjs/utils": "1.9.15" | ||
}, | ||
"optionalDependencies": { | ||
"@interactjs/interact": "1.9.14" | ||
"@interactjs/interact": "1.9.15" | ||
}, | ||
@@ -15,3 +15,3 @@ "publishConfig": { | ||
}, | ||
"gitHead": "baf83fba" | ||
"gitHead": "96ae04e4" | ||
} |
@@ -1,4 +0,4 @@ | ||
import autoStart from "./base.js"; | ||
import dragAxis from "./dragAxis.js"; | ||
import hold from "./hold.js"; | ||
import autoStart from './base'; | ||
import dragAxis from './dragAxis'; | ||
import hold from './hold'; | ||
export default { | ||
@@ -5,0 +5,0 @@ id: 'auto-start', |
@@ -1,2 +0,2 @@ | ||
import i from"./base.min.js";import s from"./dragAxis.min.js";import m from"./hold.min.js";export default{id:"auto-start",install(o){o.usePlugin(i),o.usePlugin(m),o.usePlugin(s)}}; | ||
import i from"./base";import o from"./dragAxis";import r from"./hold";export default{id:"auto-start",install(t){t.usePlugin(i),t.usePlugin(r),t.usePlugin(o)}}; | ||
//# sourceMappingURL=plugin.min.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
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
102315
27
587