UNPKG

@tindtechnologies/universalviewer

Version:

The Universal Viewer is a community-developed open source project on a mission to help you share your 📚📜📰📽️📻🗿 with the 🌎

2 lines (1 loc) 2.02 kB
import{g as v,h as C}from"./chunk-4DAZ7WDM.js";import"./chunk-L67DAW3A.js";var V=function(n){var a=-E*10,u=0,i,r,p,s,y=n.getBoolean("animated",!0)&&n.getBoolean("rippleEffect",!0),d=new WeakMap,M=function(){return i!==void 0&&i.parentElement!==null},x=function(e){a=v(e),T(e)},m=function(e){a=v(e),A(e)},I=function(e){var t=v(e)-E;a<t&&T(e)},U=function(e){var t=v(e)-E;a<t&&A(e)},L=function(){clearTimeout(s),s=void 0,r&&(R(!1),r=void 0)},T=function(e){r||M()||(i=void 0,h(q(e),e))},A=function(e){h(void 0,e)},h=function(e,t){if(!(e&&e===r)){clearTimeout(s),s=void 0;var f=C(t),c=f.x,S=f.y;if(r){if(d.has(r))throw new Error("internal error");r.classList.contains(l)||D(r,c,S),R(!0)}if(e){var g=d.get(e);g&&(clearTimeout(g),d.delete(e));var k=_(e)?0:F;e.classList.remove(l),s=setTimeout(function(){D(e,c,S),s=void 0},k)}r=e}},D=function(e,t,f){u=Date.now(),e.classList.add(l);var c=y&&B(e);c&&c.addRipple&&(w(),p=c.addRipple(t,f))},w=function(){p!==void 0&&(p.then(function(e){return e()}),p=void 0)},R=function(e){w();var t=r;if(t){var f=b-Date.now()+u;if(e&&f>0&&!_(t)){var c=setTimeout(function(){t.classList.remove(l),d.delete(t)},b);d.set(t,c)}else t.classList.remove(l)}},o=document;o.addEventListener("ionScrollStart",function(e){i=e.target,L()}),o.addEventListener("ionScrollEnd",function(){i=void 0}),o.addEventListener("ionGestureCaptured",L),o.addEventListener("touchstart",x,!0),o.addEventListener("touchcancel",m,!0),o.addEventListener("touchend",m,!0),o.addEventListener("mousedown",I,!0),o.addEventListener("mouseup",U,!0)},q=function(n){if(n.composedPath)for(var a=n.composedPath(),u=0;u<a.length-2;u++){var i=a[u];if(i.classList&&i.classList.contains("ion-activatable"))return i}else return n.target.closest(".ion-activatable")},_=function(n){return n.classList.contains("ion-activatable-instant")},B=function(n){if(n.shadowRoot){var a=n.shadowRoot.querySelector("ion-ripple-effect");if(a)return a}return n.querySelector("ion-ripple-effect")},l="activated",F=200,b=200,E=2500;export{V as startTapClick};