Socket
Socket
Sign inDemoInstall

@interactjs/auto-scroll

Package Overview
Dependencies
Maintainers
2
Versions
137
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@interactjs/auto-scroll - npm Package Compare versions

Comparing version 1.10.24 to 1.10.25

11

index.js

@@ -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
{
"name": "@interactjs/auto-scroll",
"version": "1.10.24",
"version": "1.10.25",
"main": "index",

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

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

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

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

@@ -1,6 +0,19 @@

import * as domUtils from "../utils/domUtils.js";
import is from "../utils/is.js";
import raf from "../utils/raf.js";
import { getStringOptionResult } from "../utils/rect.js";
import { getWindow } from "../utils/window.js";
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
exports.getContainer = getContainer;
exports.getScroll = getScroll;
exports.getScrollSize = getScrollSize;
exports.getScrollSizeDelta = getScrollSizeDelta;
var domUtils = _interopRequireWildcard(require("../utils/domUtils.js"));
var _is = _interopRequireDefault(require("../utils/is.js"));
var _raf = _interopRequireDefault(require("../utils/raf.js"));
var _rect = require("../utils/rect.js");
var _window = require("../utils/window.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
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 install(scope) {

@@ -39,7 +52,7 @@ const {

autoScroll.isScrolling = true;
raf.cancel(autoScroll.i);
_raf.default.cancel(autoScroll.i);
interaction.autoScroll = autoScroll;
autoScroll.interaction = interaction;
autoScroll.prevTime = autoScroll.now();
autoScroll.i = raf.request(autoScroll.scroll);
autoScroll.i = _raf.default.request(autoScroll.scroll);
},

@@ -51,3 +64,3 @@ stop() {

}
raf.cancel(autoScroll.i);
_raf.default.cancel(autoScroll.i);
},

@@ -78,3 +91,3 @@ // scroll the window by the values in scroll.x/y

const prevScroll = getScroll(container);
if (is.window(container)) {
if (_is.default.window(container)) {
container.scrollBy(scrollBy.x, scrollBy.y);

@@ -104,4 +117,4 @@ } else if (container) {

if (autoScroll.isScrolling) {
raf.cancel(autoScroll.i);
autoScroll.i = raf.request(autoScroll.scroll);
_raf.default.cancel(autoScroll.i);
autoScroll.i = _raf.default.request(autoScroll.scroll);
}

@@ -136,3 +149,3 @@ },

const container = getContainer(options.container, interactable, element);
if (is.window(container)) {
if (_is.default.window(container)) {
left = pointer.clientX < autoScroll.margin;

@@ -159,7 +172,7 @@ top = pointer.clientY < autoScroll.margin;

};
export function getContainer(value, interactable, element) {
return (is.string(value) ? getStringOptionResult(value, interactable, element) : value) || getWindow(element);
function getContainer(value, interactable, element) {
return (_is.default.string(value) ? (0, _rect.getStringOptionResult)(value, interactable, element) : value) || (0, _window.getWindow)(element);
}
export function getScroll(container) {
if (is.window(container)) {
function getScroll(container) {
if (_is.default.window(container)) {
container = window.document.body;

@@ -172,4 +185,4 @@ }

}
export function getScrollSize(container) {
if (is.window(container)) {
function getScrollSize(container) {
if (_is.default.window(container)) {
container = window.document.body;

@@ -182,3 +195,3 @@ }

}
export function getScrollSizeDelta({
function getScrollSizeDelta({
interaction,

@@ -226,3 +239,3 @@ element

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

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

import*as t from"../utils/domUtils.prod.js";import n from"../utils/is.prod.js";import e from"../utils/raf.prod.js";import{getStringOptionResult as o}from"../utils/rect.prod.js";import{getWindow as i}from"../utils/window.prod.js";const r={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:0,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start(t){r.isScrolling=!0,e.cancel(r.i),t.autoScroll=r,r.interaction=t,r.prevTime=r.now(),r.i=e.request(r.scroll)},stop(){r.isScrolling=!1,r.interaction&&(r.interaction.autoScroll=null),e.cancel(r.i)},scroll(){const{interaction:t}=r,{interactable:o,element:i}=t,l=t.prepared.name,c=o.options[l].autoScroll,a=getContainer(c.container,o,i),s=r.now(),p=(s-r.prevTime)/1e3,u=c.speed*p;if(u>=1){const e={x:r.x*u,y:r.y*u};if(e.x||e.y){const r=getScroll(a);n.window(a)?a.scrollBy(e.x,e.y):a&&(a.scrollLeft+=e.x,a.scrollTop+=e.y);const l=getScroll(a),c={x:l.x-r.x,y:l.y-r.y};(c.x||c.y)&&o.fire({type:"autoscroll",target:i,interactable:o,delta:c,interaction:t,container:a})}r.prevTime=s}r.isScrolling&&(e.cancel(r.i),r.i=e.request(r.scroll))},check(t,n){var e;return null==(e=t.options[n].autoScroll)?void 0:e.enabled},onInteractionMove({interaction:e,pointer:o}){if(!e.interacting()||!r.check(e.interactable,e.prepared.name))return;if(e.simulation)return void(r.x=r.y=0);let i,l,c,a;const{interactable:s,element:p}=e,u=e.prepared.name,d=s.options[u].autoScroll,m=getContainer(d.container,s,p);if(n.window(m))a=o.clientX<r.margin,i=o.clientY<r.margin,l=o.clientX>m.innerWidth-r.margin,c=o.clientY>m.innerHeight-r.margin;else{const n=t.getElementClientRect(m);a=o.clientX<n.left+r.margin,i=o.clientY<n.top+r.margin,l=o.clientX>n.right-r.margin,c=o.clientY>n.bottom-r.margin}r.x=l?1:a?-1:0,r.y=c?1:i?-1:0,r.isScrolling||(r.margin=d.margin,r.speed=d.speed,r.start(e))}};export function getContainer(t,e,r){return(n.string(t)?o(t,e,r):t)||i(r)}export function getScroll(t){return n.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}export function getScrollSize(t){return n.window(t)&&(t=window.document.body),{x:t.scrollWidth,y:t.scrollHeight}}export function getScrollSizeDelta({interaction:t,element:n},e){const o=t&&t.interactable.options[t.prepared.name].autoScroll;if(!o||!o.enabled)return e(),{x:0,y:0};const i=getContainer(o.container,t.interactable,n),r=getScroll(i);e();const l=getScroll(i);return{x:l.x-r.x,y:l.y-r.y}}const l={id:"auto-scroll",install(t){const{defaults:n,actions:e}=t;t.autoScroll=r,r.now=()=>t.now(),e.phaselessTypes.autoscroll=!0,n.perAction.autoScroll=r.defaults},listeners:{"interactions:new"({interaction:t}){t.autoScroll=null},"interactions:destroy"({interaction:t}){t.autoScroll=null,r.stop(),r.interaction&&(r.interaction=null)},"interactions:stop":r.stop,"interactions:action-move":t=>r.onInteractionMove(t)}};export default l;
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getContainer=c,exports.getScroll=s,exports.getScrollSize=e=>(t.default.window(e)&&(e=window.document.body),{x:e.scrollWidth,y:e.scrollHeight}),exports.getScrollSizeDelta=({interaction:e,element:t},n)=>{const r=e&&e.interactable.options[e.prepared.name].autoScroll;if(!r||!r.enabled)return n(),{x:0,y:0};const o=c(r.container,e.interactable,t),i=s(o);n();const l=s(o);return{x:l.x-i.x,y:l.y-i.y}};var e=((e,t)=>{if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=o?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r})(require("../utils/domUtils.prod.js")),t=i(require("../utils/is.prod.js")),n=i(require("../utils/raf.prod.js")),r=require("../utils/rect.prod.js"),o=require("../utils/window.prod.js");function i(e){return e&&e.__esModule?e:{default:e}}function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=e=>e?n:t)(e)}const a={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:0,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start(e){a.isScrolling=!0,n.default.cancel(a.i),e.autoScroll=a,a.interaction=e,a.prevTime=a.now(),a.i=n.default.request(a.scroll)},stop(){a.isScrolling=!1,a.interaction&&(a.interaction.autoScroll=null),n.default.cancel(a.i)},scroll(){const{interaction:e}=a,{interactable:r,element:o}=e,i=e.prepared.name,l=r.options[i].autoScroll,u=c(l.container,r,o),d=a.now(),p=(d-a.prevTime)/1e3,f=l.speed*p;if(f>=1){const n={x:a.x*f,y:a.y*f};if(n.x||n.y){const i=s(u);t.default.window(u)?u.scrollBy(n.x,n.y):u&&(u.scrollLeft+=n.x,u.scrollTop+=n.y);const l=s(u),a={x:l.x-i.x,y:l.y-i.y};(a.x||a.y)&&r.fire({type:"autoscroll",target:o,interactable:r,delta:a,interaction:e,container:u})}a.prevTime=d}a.isScrolling&&(n.default.cancel(a.i),a.i=n.default.request(a.scroll))},check(e,t){var n;return null==(n=e.options[t].autoScroll)?void 0:n.enabled},onInteractionMove({interaction:n,pointer:r}){if(!n.interacting()||!a.check(n.interactable,n.prepared.name))return;if(n.simulation)return void(a.x=a.y=0);let o,i,l,s;const{interactable:u,element:d}=n,p=n.prepared.name,f=u.options[p].autoScroll,g=c(f.container,u,d);if(t.default.window(g))s=r.clientX<a.margin,o=r.clientY<a.margin,i=r.clientX>g.innerWidth-a.margin,l=r.clientY>g.innerHeight-a.margin;else{const t=e.getElementClientRect(g);s=r.clientX<t.left+a.margin,o=r.clientY<t.top+a.margin,i=r.clientX>t.right-a.margin,l=r.clientY>t.bottom-a.margin}a.x=i?1:s?-1:0,a.y=l?1:o?-1:0,a.isScrolling||(a.margin=f.margin,a.speed=f.speed,a.start(n))}};function c(e,n,i){return(t.default.string(e)?(0,r.getStringOptionResult)(e,n,i):e)||(0,o.getWindow)(i)}function s(e){return t.default.window(e)&&(e=window.document.body),{x:e.scrollLeft,y:e.scrollTop}}const u={id:"auto-scroll",install(e){const{defaults:t,actions:n}=e;e.autoScroll=a,a.now=()=>e.now(),n.phaselessTypes.autoscroll=!0,t.perAction.autoScroll=a.defaults},listeners:{"interactions:new"({interaction:e}){e.autoScroll=null},"interactions:destroy"({interaction:e}){e.autoScroll=null,a.stop(),a.interaction&&(a.interaction=null)},"interactions:stop":a.stop,"interactions:action-move":e=>a.onInteractionMove(e)}};exports.default=u;
//# sourceMappingURL=plugin.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

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