UNPKG

@carbon/utilities

Version:

Utilities and helpers to drive consistency across software products using the Carbon Design System

2 lines (1 loc) 1.5 kB
"use strict";var a=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var D=(e,n)=>{for(var l in n)a(e,l,{get:n[l],enumerable:!0})},T=(e,n,l,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of S(n))!p.call(e,o)&&o!==l&&a(e,o,{get:()=>n[o],enumerable:!(s=H(n,o))||s.enumerable});return e};var g=e=>T(a({},"__esModule",{value:!0}),e);var U={};D(U,{registerSwipeEvents:()=>C});module.exports=g(U);const C=(e,n,l,s)=>{let i=null,u=null,m=0;const b=400;let d=!1,v=null,r=null;const c=t=>{i=t.touches[0].clientX},h=t=>{u=t.touches[0].clientX},E=()=>{if(i!==null&&u!==null){const t=i-u;Math.abs(t)>50&&(t>0?n():l())}i=null,u=null},L=t=>{d=!0,v=t.clientX},f=t=>{d&&(r=t.clientX)},w=()=>{if(d&&v!==null&&r!==null){const t=v-r;Math.abs(t)>50&&(t>0?n():l())}d=!1,v=null,r=null},M=t=>{const X=Date.now();if(Math.abs(t.deltaX)>Math.abs(t.deltaY)&&Math.abs(t.deltaX)>20){if(t.preventDefault(),X-m<b)return;t.deltaX>0?n():l(),m=X}};s&&(e.removeEventListener("touchstart",c),e.removeEventListener("touchmove",h),e.removeEventListener("touchend",E),e.removeEventListener("mousedown",L),e.removeEventListener("mousemove",f),e.removeEventListener("mouseup",w),e.removeEventListener("wheel",M)),e.addEventListener("touchstart",c),e.addEventListener("touchmove",h),e.addEventListener("touchend",E),e.addEventListener("mousedown",L),e.addEventListener("mousemove",f),e.addEventListener("mouseup",w),e.addEventListener("wheel",M)};