mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Unminify using 1.5.323
Repo with tag: https://github.com/MediaBrowser/emby-webcomponents/tree/1.5.323
This commit is contained in:
parent
4678528d00
commit
de6ac33ec1
289 changed files with 78483 additions and 54701 deletions
|
@ -1,74 +1,174 @@
|
|||
define(["dom", "events"], function(dom, events) {
|
||||
"use strict";
|
||||
define(['dom', 'events'], function (dom, events) {
|
||||
'use strict';
|
||||
|
||||
function getTouches(e) {
|
||||
return e.changedTouches || e.targetTouches || e.touches
|
||||
|
||||
return e.changedTouches || e.targetTouches || e.touches;
|
||||
}
|
||||
|
||||
function TouchHelper(elem, options) {
|
||||
|
||||
options = options || {};
|
||||
var touchTarget, touchStartX, touchStartY, lastDeltaX, lastDeltaY, thresholdYMet, self = this,
|
||||
swipeXThreshold = options.swipeXThreshold || 50,
|
||||
swipeYThreshold = options.swipeYThreshold || 50,
|
||||
excludeTagNames = options.ignoreTagNames || [],
|
||||
touchStart = function(e) {
|
||||
var touchTarget;
|
||||
var touchStartX;
|
||||
var touchStartY;
|
||||
var lastDeltaX;
|
||||
var lastDeltaY;
|
||||
var thresholdYMet;
|
||||
var self = this;
|
||||
|
||||
var swipeXThreshold = options.swipeXThreshold || 50;
|
||||
var swipeYThreshold = options.swipeYThreshold || 50;
|
||||
var swipeXMaxY = 30;
|
||||
|
||||
var excludeTagNames = options.ignoreTagNames || [];
|
||||
|
||||
var touchStart = function (e) {
|
||||
|
||||
var touch = getTouches(e)[0];
|
||||
touchTarget = null;
|
||||
touchStartX = 0;
|
||||
touchStartY = 0;
|
||||
lastDeltaX = null;
|
||||
lastDeltaY = null;
|
||||
thresholdYMet = false;
|
||||
|
||||
if (touch) {
|
||||
|
||||
var currentTouchTarget = touch.target;
|
||||
|
||||
if (dom.parentWithTag(currentTouchTarget, excludeTagNames)) {
|
||||
return;
|
||||
}
|
||||
|
||||
touchTarget = currentTouchTarget;
|
||||
touchStartX = touch.clientX;
|
||||
touchStartY = touch.clientY;
|
||||
}
|
||||
};
|
||||
|
||||
var touchEnd = function (e) {
|
||||
|
||||
var isTouchMove = e.type === 'touchmove';
|
||||
|
||||
if (touchTarget) {
|
||||
var touch = getTouches(e)[0];
|
||||
if (touchTarget = null, touchStartX = 0, touchStartY = 0, lastDeltaX = null, lastDeltaY = null, thresholdYMet = !1, touch) {
|
||||
var currentTouchTarget = touch.target;
|
||||
if (dom.parentWithTag(currentTouchTarget, excludeTagNames)) return;
|
||||
touchTarget = currentTouchTarget, touchStartX = touch.clientX, touchStartY = touch.clientY
|
||||
|
||||
var deltaX;
|
||||
var deltaY;
|
||||
|
||||
var clientX;
|
||||
var clientY;
|
||||
|
||||
if (touch) {
|
||||
clientX = touch.clientX || 0;
|
||||
clientY = touch.clientY || 0;
|
||||
deltaX = clientX - (touchStartX || 0);
|
||||
deltaY = clientY - (touchStartY || 0);
|
||||
} else {
|
||||
deltaX = 0;
|
||||
deltaY = 0;
|
||||
}
|
||||
},
|
||||
touchEnd = function(e) {
|
||||
var isTouchMove = "touchmove" === e.type;
|
||||
if (touchTarget) {
|
||||
var deltaX, deltaY, clientX, clientY, touch = getTouches(e)[0];
|
||||
touch ? (clientX = touch.clientX || 0, clientY = touch.clientY || 0, deltaX = clientX - (touchStartX || 0), deltaY = clientY - (touchStartY || 0)) : (deltaX = 0, deltaY = 0);
|
||||
var currentDeltaX = null == lastDeltaX ? deltaX : deltaX - lastDeltaX,
|
||||
currentDeltaY = null == lastDeltaY ? deltaY : deltaY - lastDeltaY;
|
||||
lastDeltaX = deltaX, lastDeltaY = deltaY, deltaX > swipeXThreshold && Math.abs(deltaY) < 30 ? events.trigger(self, "swiperight", [touchTarget]) : deltaX < 0 - swipeXThreshold && Math.abs(deltaY) < 30 ? events.trigger(self, "swipeleft", [touchTarget]) : (deltaY < 0 - swipeYThreshold || thresholdYMet) && Math.abs(deltaX) < 30 ? (thresholdYMet = !0, events.trigger(self, "swipeup", [touchTarget, {
|
||||
|
||||
var currentDeltaX = lastDeltaX == null ? deltaX : (deltaX - lastDeltaX);
|
||||
var currentDeltaY = lastDeltaY == null ? deltaY : (deltaY - lastDeltaY);
|
||||
|
||||
lastDeltaX = deltaX;
|
||||
lastDeltaY = deltaY;
|
||||
|
||||
if (deltaX > swipeXThreshold && Math.abs(deltaY) < swipeXMaxY) {
|
||||
events.trigger(self, 'swiperight', [touchTarget]);
|
||||
}
|
||||
else if (deltaX < (0 - swipeXThreshold) && Math.abs(deltaY) < swipeXMaxY) {
|
||||
events.trigger(self, 'swipeleft', [touchTarget]);
|
||||
}
|
||||
else if ((deltaY < (0 - swipeYThreshold) || thresholdYMet) && Math.abs(deltaX) < swipeXMaxY) {
|
||||
|
||||
thresholdYMet = true;
|
||||
|
||||
events.trigger(self, 'swipeup', [touchTarget, {
|
||||
deltaY: deltaY,
|
||||
deltaX: deltaX,
|
||||
clientX: clientX,
|
||||
clientY: clientY,
|
||||
currentDeltaX: currentDeltaX,
|
||||
currentDeltaY: currentDeltaY
|
||||
}])) : (deltaY > swipeYThreshold || thresholdYMet) && Math.abs(deltaX) < 30 && (thresholdYMet = !0, events.trigger(self, "swipedown", [touchTarget, {
|
||||
}]);
|
||||
}
|
||||
else if ((deltaY > swipeYThreshold || thresholdYMet) && Math.abs(deltaX) < swipeXMaxY) {
|
||||
thresholdYMet = true;
|
||||
|
||||
events.trigger(self, 'swipedown', [touchTarget, {
|
||||
deltaY: deltaY,
|
||||
deltaX: deltaX,
|
||||
clientX: clientX,
|
||||
clientY: clientY,
|
||||
currentDeltaX: currentDeltaX,
|
||||
currentDeltaY: currentDeltaY
|
||||
}])), isTouchMove && options.preventDefaultOnMove && e.preventDefault()
|
||||
}]);
|
||||
}
|
||||
isTouchMove || (touchTarget = null, touchStartX = 0, touchStartY = 0, lastDeltaX = null, lastDeltaY = null, thresholdYMet = !1)
|
||||
};
|
||||
this.touchStart = touchStart, this.touchEnd = touchEnd, dom.addEventListener(elem, "touchstart", touchStart, {
|
||||
passive: !0
|
||||
}), options.triggerOnMove && dom.addEventListener(elem, "touchmove", touchEnd, {
|
||||
passive: !options.preventDefaultOnMove
|
||||
}), dom.addEventListener(elem, "touchend", touchEnd, {
|
||||
passive: !0
|
||||
}), dom.addEventListener(elem, "touchcancel", touchEnd, {
|
||||
passive: !0
|
||||
})
|
||||
}
|
||||
return TouchHelper.prototype.destroy = function() {
|
||||
var elem = this.elem;
|
||||
if (elem) {
|
||||
var touchStart = this.touchStart,
|
||||
touchEnd = this.touchEnd;
|
||||
dom.removeEventListener(elem, "touchstart", touchStart, {
|
||||
passive: !0
|
||||
}), dom.removeEventListener(elem, "touchmove", touchEnd, {
|
||||
passive: !0
|
||||
}), dom.removeEventListener(elem, "touchend", touchEnd, {
|
||||
passive: !0
|
||||
}), dom.removeEventListener(elem, "touchcancel", touchEnd, {
|
||||
passive: !0
|
||||
})
|
||||
|
||||
if (isTouchMove && options.preventDefaultOnMove) {
|
||||
e.preventDefault();
|
||||
}
|
||||
}
|
||||
|
||||
if (!isTouchMove) {
|
||||
touchTarget = null;
|
||||
touchStartX = 0;
|
||||
touchStartY = 0;
|
||||
lastDeltaX = null;
|
||||
lastDeltaY = null;
|
||||
thresholdYMet = false;
|
||||
}
|
||||
};
|
||||
|
||||
this.touchStart = touchStart;
|
||||
this.touchEnd = touchEnd;
|
||||
|
||||
dom.addEventListener(elem, 'touchstart', touchStart, {
|
||||
passive: true
|
||||
});
|
||||
if (options.triggerOnMove) {
|
||||
dom.addEventListener(elem, 'touchmove', touchEnd, {
|
||||
passive: !options.preventDefaultOnMove
|
||||
});
|
||||
}
|
||||
this.touchStart = null, this.touchEnd = null, this.elem = null
|
||||
}, TouchHelper
|
||||
dom.addEventListener(elem, 'touchend', touchEnd, {
|
||||
passive: true
|
||||
});
|
||||
dom.addEventListener(elem, 'touchcancel', touchEnd, {
|
||||
passive: true
|
||||
});
|
||||
}
|
||||
|
||||
TouchHelper.prototype.destroy = function () {
|
||||
|
||||
var elem = this.elem;
|
||||
|
||||
if (elem) {
|
||||
var touchStart = this.touchStart;
|
||||
var touchEnd = this.touchEnd;
|
||||
|
||||
dom.removeEventListener(elem, 'touchstart', touchStart, {
|
||||
passive: true
|
||||
});
|
||||
dom.removeEventListener(elem, 'touchmove', touchEnd, {
|
||||
passive: true
|
||||
});
|
||||
dom.removeEventListener(elem, 'touchend', touchEnd, {
|
||||
passive: true
|
||||
});
|
||||
dom.removeEventListener(elem, 'touchcancel', touchEnd, {
|
||||
passive: true
|
||||
});
|
||||
}
|
||||
|
||||
this.touchStart = null;
|
||||
this.touchEnd = null;
|
||||
|
||||
this.elem = null;
|
||||
};
|
||||
|
||||
return TouchHelper;
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue