new ui with AdminLTE
This commit is contained in:
1 parent
98e14b92ab
commit
6afaad0d33
1784 files changed
+582732
-6
No files matched your search
@@ -0,0 +1,20 @@
|
||||
Copyright (c) 2019 Adam Shaw
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
@@ -0,0 +1,323 @@
|
||||
// Generated by dts-bundle v0.7.3-fork.1
|
||||
// Dependencies for this module:
|
||||
// ../../../../../@fullcalendar/core
|
||||
|
||||
declare module '@fullcalendar/interaction' {
|
||||
import FeaturefulElementDragging from '@fullcalendar/interaction/dnd/FeaturefulElementDragging';
|
||||
const _default: import("@fullcalendar/core").PluginDef;
|
||||
export default _default;
|
||||
export { FeaturefulElementDragging };
|
||||
export { default as PointerDragging } from '@fullcalendar/interaction/dnd/PointerDragging';
|
||||
export { default as Draggable } from '@fullcalendar/interaction/interactions-external/ExternalDraggable';
|
||||
export { default as ThirdPartyDraggable } from '@fullcalendar/interaction/interactions-external/ThirdPartyDraggable';
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/dnd/FeaturefulElementDragging' {
|
||||
import { PointerDragEvent, ElementDragging } from '@fullcalendar/core';
|
||||
import PointerDragging from '@fullcalendar/interaction/dnd/PointerDragging';
|
||||
import ElementMirror from '@fullcalendar/interaction/dnd/ElementMirror';
|
||||
import AutoScroller from '@fullcalendar/interaction/dnd/AutoScroller';
|
||||
export { FeaturefulElementDragging as default, FeaturefulElementDragging };
|
||||
class FeaturefulElementDragging extends ElementDragging {
|
||||
pointer: PointerDragging;
|
||||
mirror: ElementMirror;
|
||||
autoScroller: AutoScroller;
|
||||
delay: number | null;
|
||||
minDistance: number;
|
||||
touchScrollAllowed: boolean;
|
||||
mirrorNeedsRevert: boolean;
|
||||
isInteracting: boolean;
|
||||
isDragging: boolean;
|
||||
isDelayEnded: boolean;
|
||||
isDistanceSurpassed: boolean;
|
||||
delayTimeoutId: number | null;
|
||||
constructor(containerEl: HTMLElement);
|
||||
destroy(): void;
|
||||
onPointerDown: (ev: PointerDragEvent) => void;
|
||||
onPointerMove: (ev: PointerDragEvent) => void;
|
||||
onPointerUp: (ev: PointerDragEvent) => void;
|
||||
startDelay(ev: PointerDragEvent): void;
|
||||
handleDelayEnd(ev: PointerDragEvent): void;
|
||||
handleDistanceSurpassed(ev: PointerDragEvent): void;
|
||||
tryStartDrag(ev: PointerDragEvent): void;
|
||||
tryStopDrag(ev: PointerDragEvent): void;
|
||||
stopDrag(ev: PointerDragEvent): void;
|
||||
setIgnoreMove(bool: boolean): void;
|
||||
setMirrorIsVisible(bool: boolean): void;
|
||||
setMirrorNeedsRevert(bool: boolean): void;
|
||||
setAutoScrollEnabled(bool: boolean): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/dnd/PointerDragging' {
|
||||
import { EmitterMixin, PointerDragEvent } from '@fullcalendar/core';
|
||||
export { PointerDragging as default, PointerDragging };
|
||||
class PointerDragging {
|
||||
containerEl: EventTarget;
|
||||
subjectEl: HTMLElement | null;
|
||||
downEl: HTMLElement | null;
|
||||
emitter: EmitterMixin;
|
||||
selector: string;
|
||||
handleSelector: string;
|
||||
shouldIgnoreMove: boolean;
|
||||
shouldWatchScroll: boolean;
|
||||
isDragging: boolean;
|
||||
isTouchDragging: boolean;
|
||||
wasTouchScroll: boolean;
|
||||
origPageX: number;
|
||||
origPageY: number;
|
||||
prevPageX: number;
|
||||
prevPageY: number;
|
||||
prevScrollX: number;
|
||||
prevScrollY: number;
|
||||
constructor(containerEl: EventTarget);
|
||||
destroy(): void;
|
||||
tryStart(ev: UIEvent): boolean;
|
||||
cleanup(): void;
|
||||
querySubjectEl(ev: UIEvent): HTMLElement;
|
||||
handleMouseDown: (ev: MouseEvent) => void;
|
||||
handleMouseMove: (ev: MouseEvent) => void;
|
||||
handleMouseUp: (ev: MouseEvent) => void;
|
||||
shouldIgnoreMouse(): number | boolean;
|
||||
handleTouchStart: (ev: TouchEvent) => void;
|
||||
handleTouchMove: (ev: TouchEvent) => void;
|
||||
handleTouchEnd: (ev: TouchEvent) => void;
|
||||
handleTouchScroll: () => void;
|
||||
cancelTouchScroll(): void;
|
||||
initScrollWatch(ev: PointerDragEvent): void;
|
||||
recordCoords(ev: PointerDragEvent): void;
|
||||
handleScroll: (ev: UIEvent) => void;
|
||||
destroyScrollWatch(): void;
|
||||
createEventFromMouse(ev: MouseEvent, isFirst?: boolean): PointerDragEvent;
|
||||
createEventFromTouch(ev: TouchEvent, isFirst?: boolean): PointerDragEvent;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/interactions-external/ExternalDraggable' {
|
||||
import { PointerDragEvent } from '@fullcalendar/core';
|
||||
import FeaturefulElementDragging from '@fullcalendar/interaction/dnd/FeaturefulElementDragging';
|
||||
import { DragMetaGenerator } from '@fullcalendar/interaction/interactions-external/ExternalElementDragging';
|
||||
export interface ExternalDraggableSettings {
|
||||
eventData?: DragMetaGenerator;
|
||||
itemSelector?: string;
|
||||
minDistance?: number;
|
||||
longPressDelay?: number;
|
||||
appendTo?: HTMLElement;
|
||||
}
|
||||
export { ExternalDraggable as default, ExternalDraggable };
|
||||
class ExternalDraggable {
|
||||
dragging: FeaturefulElementDragging;
|
||||
settings: ExternalDraggableSettings;
|
||||
constructor(el: HTMLElement, settings?: ExternalDraggableSettings);
|
||||
handlePointerDown: (ev: PointerDragEvent) => void;
|
||||
handleDragStart: (ev: PointerDragEvent) => void;
|
||||
destroy(): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/interactions-external/ThirdPartyDraggable' {
|
||||
import { DragMetaGenerator } from '@fullcalendar/interaction/interactions-external/ExternalElementDragging';
|
||||
import InferredElementDragging from '@fullcalendar/interaction/interactions-external/InferredElementDragging';
|
||||
export interface ThirdPartyDraggableSettings {
|
||||
eventData?: DragMetaGenerator;
|
||||
itemSelector?: string;
|
||||
mirrorSelector?: string;
|
||||
}
|
||||
export { ThirdPartyDraggable as default, ThirdPartyDraggable };
|
||||
class ThirdPartyDraggable {
|
||||
dragging: InferredElementDragging;
|
||||
constructor(containerOrSettings?: EventTarget | ThirdPartyDraggableSettings, settings?: ThirdPartyDraggableSettings);
|
||||
destroy(): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/dnd/ElementMirror' {
|
||||
import { Rect } from '@fullcalendar/core';
|
||||
export { ElementMirror as default, ElementMirror };
|
||||
class ElementMirror {
|
||||
isVisible: boolean;
|
||||
origScreenX?: number;
|
||||
origScreenY?: number;
|
||||
deltaX?: number;
|
||||
deltaY?: number;
|
||||
sourceEl: HTMLElement | null;
|
||||
mirrorEl: HTMLElement | null;
|
||||
sourceElRect: Rect | null;
|
||||
parentNode: HTMLElement;
|
||||
zIndex: number;
|
||||
revertDuration: number;
|
||||
start(sourceEl: HTMLElement, pageX: number, pageY: number): void;
|
||||
handleMove(pageX: number, pageY: number): void;
|
||||
setIsVisible(bool: boolean): void;
|
||||
stop(needsRevertAnimation: boolean, callback: () => void): void;
|
||||
doRevertAnimation(callback: () => void, revertDuration: number): void;
|
||||
cleanup(): void;
|
||||
updateElPosition(): void;
|
||||
getMirrorEl(): HTMLElement;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/dnd/AutoScroller' {
|
||||
import { ScrollGeomCache } from '@fullcalendar/interaction/scroll-geom-cache';
|
||||
export { AutoScroller as default, AutoScroller };
|
||||
class AutoScroller {
|
||||
isEnabled: boolean;
|
||||
scrollQuery: (Window | string)[];
|
||||
edgeThreshold: number;
|
||||
maxVelocity: number;
|
||||
pointerScreenX: number | null;
|
||||
pointerScreenY: number | null;
|
||||
isAnimating: boolean;
|
||||
scrollCaches: ScrollGeomCache[] | null;
|
||||
msSinceRequest?: number;
|
||||
everMovedUp: boolean;
|
||||
everMovedDown: boolean;
|
||||
everMovedLeft: boolean;
|
||||
everMovedRight: boolean;
|
||||
start(pageX: number, pageY: number): void;
|
||||
handleMove(pageX: number, pageY: number): void;
|
||||
stop(): void;
|
||||
requestAnimation(now: number): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/interactions-external/ExternalElementDragging' {
|
||||
import { Hit, PointerDragEvent, EventTuple, DatePointApi, Calendar, EventInteractionState, DragMetaInput, DragMeta, View, ElementDragging } from '@fullcalendar/core';
|
||||
import HitDragging from '@fullcalendar/interaction/interactions/HitDragging';
|
||||
export type DragMetaGenerator = DragMetaInput | ((el: HTMLElement) => DragMetaInput);
|
||||
export interface ExternalDropApi extends DatePointApi {
|
||||
draggedEl: HTMLElement;
|
||||
jsEvent: UIEvent;
|
||||
view: View;
|
||||
}
|
||||
export { ExternalElementDragging as default, ExternalElementDragging };
|
||||
class ExternalElementDragging {
|
||||
hitDragging: HitDragging;
|
||||
receivingCalendar: Calendar | null;
|
||||
droppableEvent: EventTuple | null;
|
||||
suppliedDragMeta: DragMetaGenerator | null;
|
||||
dragMeta: DragMeta | null;
|
||||
constructor(dragging: ElementDragging, suppliedDragMeta?: DragMetaGenerator);
|
||||
handleDragStart: (ev: PointerDragEvent) => void;
|
||||
buildDragMeta(subjectEl: HTMLElement): DragMeta;
|
||||
handleHitUpdate: (hit: Hit, isFinal: boolean, ev: PointerDragEvent) => void;
|
||||
handleDragEnd: (pev: PointerDragEvent) => void;
|
||||
displayDrag(nextCalendar: Calendar | null, state: EventInteractionState): void;
|
||||
clearDrag(): void;
|
||||
canDropElOnCalendar(el: HTMLElement, receivingCalendar: Calendar): boolean;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/interactions-external/InferredElementDragging' {
|
||||
import { PointerDragEvent, ElementDragging } from '@fullcalendar/core';
|
||||
import PointerDragging from '@fullcalendar/interaction/dnd/PointerDragging';
|
||||
export { InferredElementDragging as default, InferredElementDragging };
|
||||
class InferredElementDragging extends ElementDragging {
|
||||
pointer: PointerDragging;
|
||||
shouldIgnoreMove: boolean;
|
||||
mirrorSelector: string;
|
||||
currentMirrorEl: HTMLElement | null;
|
||||
constructor(containerEl: HTMLElement);
|
||||
destroy(): void;
|
||||
handlePointerDown: (ev: PointerDragEvent) => void;
|
||||
handlePointerMove: (ev: PointerDragEvent) => void;
|
||||
handlePointerUp: (ev: PointerDragEvent) => void;
|
||||
setIgnoreMove(bool: boolean): void;
|
||||
setMirrorIsVisible(bool: boolean): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/scroll-geom-cache' {
|
||||
import { Rect, ScrollController } from '@fullcalendar/core';
|
||||
export abstract class ScrollGeomCache extends ScrollController {
|
||||
clientRect: Rect;
|
||||
origScrollTop: number;
|
||||
origScrollLeft: number;
|
||||
protected scrollController: ScrollController;
|
||||
protected doesListening: boolean;
|
||||
protected scrollTop: number;
|
||||
protected scrollLeft: number;
|
||||
protected scrollWidth: number;
|
||||
protected scrollHeight: number;
|
||||
protected clientWidth: number;
|
||||
protected clientHeight: number;
|
||||
constructor(scrollController: ScrollController, doesListening: boolean);
|
||||
abstract getEventTarget(): EventTarget;
|
||||
abstract computeClientRect(): Rect;
|
||||
destroy(): void;
|
||||
handleScroll: () => void;
|
||||
getScrollTop(): number;
|
||||
getScrollLeft(): number;
|
||||
setScrollTop(top: number): void;
|
||||
setScrollLeft(top: number): void;
|
||||
getClientWidth(): number;
|
||||
getClientHeight(): number;
|
||||
getScrollWidth(): number;
|
||||
getScrollHeight(): number;
|
||||
handleScrollChange(): void;
|
||||
}
|
||||
export class ElementScrollGeomCache extends ScrollGeomCache {
|
||||
constructor(el: HTMLElement, doesListening: boolean);
|
||||
getEventTarget(): EventTarget;
|
||||
computeClientRect(): {
|
||||
left: number;
|
||||
right: number;
|
||||
top: number;
|
||||
bottom: number;
|
||||
};
|
||||
}
|
||||
export class WindowScrollGeomCache extends ScrollGeomCache {
|
||||
constructor(doesListening: boolean);
|
||||
getEventTarget(): EventTarget;
|
||||
computeClientRect(): Rect;
|
||||
handleScrollChange(): void;
|
||||
}
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/interactions/HitDragging' {
|
||||
import { EmitterMixin, PointerDragEvent, Point, Hit, InteractionSettingsStore, ElementDragging } from '@fullcalendar/core';
|
||||
import OffsetTracker from '@fullcalendar/interaction/OffsetTracker';
|
||||
export { HitDragging as default, HitDragging };
|
||||
class HitDragging {
|
||||
droppableStore: InteractionSettingsStore;
|
||||
dragging: ElementDragging;
|
||||
emitter: EmitterMixin;
|
||||
useSubjectCenter: boolean;
|
||||
requireInitial: boolean;
|
||||
offsetTrackers: {
|
||||
[componentUid: string]: OffsetTracker;
|
||||
};
|
||||
initialHit: Hit | null;
|
||||
movingHit: Hit | null;
|
||||
finalHit: Hit | null;
|
||||
coordAdjust?: Point;
|
||||
constructor(dragging: ElementDragging, droppableStore: InteractionSettingsStore);
|
||||
handlePointerDown: (ev: PointerDragEvent) => void;
|
||||
processFirstCoord(ev: PointerDragEvent): void;
|
||||
handleDragStart: (ev: PointerDragEvent) => void;
|
||||
handleDragMove: (ev: PointerDragEvent) => void;
|
||||
handlePointerUp: (ev: PointerDragEvent) => void;
|
||||
handleDragEnd: (ev: PointerDragEvent) => void;
|
||||
handleMove(ev: PointerDragEvent, forceHandle?: boolean): void;
|
||||
prepareHits(): void;
|
||||
releaseHits(): void;
|
||||
queryHitForOffset(offsetLeft: number, offsetTop: number): Hit | null;
|
||||
}
|
||||
export function isHitsEqual(hit0: Hit | null, hit1: Hit | null): boolean;
|
||||
}
|
||||
|
||||
declare module '@fullcalendar/interaction/OffsetTracker' {
|
||||
import { Rect } from '@fullcalendar/core';
|
||||
import { ElementScrollGeomCache } from '@fullcalendar/interaction/scroll-geom-cache';
|
||||
export { OffsetTracker as default, OffsetTracker };
|
||||
class OffsetTracker {
|
||||
scrollCaches: ElementScrollGeomCache[];
|
||||
origRect: Rect;
|
||||
constructor(el: HTMLElement);
|
||||
destroy(): void;
|
||||
computeLeft(): number;
|
||||
computeTop(): number;
|
||||
isWithinClipping(pageX: number, pageY: number): boolean;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
FullCalendar Interaction Plugin v4.3.0
|
||||
Docs & License: https://fullcalendar.io/
|
||||
(c) 2019 Adam Shaw
|
||||
*/
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@fullcalendar/core")):"function"==typeof define&&define.amd?define(["exports","@fullcalendar/core"],t):t((e=e||self).FullCalendarInteraction={},e.FullCalendar)}(this,function(e,t){"use strict";var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function r(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return(i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};t.config.touchMouseIgnoreWait=500;var o=0,a=0,l=!1,s=function(){function e(e){var n=this;this.subjectEl=null,this.downEl=null,this.selector="",this.handleSelector="",this.shouldIgnoreMove=!1,this.shouldWatchScroll=!0,this.isDragging=!1,this.isTouchDragging=!1,this.wasTouchScroll=!1,this.handleMouseDown=function(e){if(!n.shouldIgnoreMouse()&&function(e){return 0===e.button&&!e.ctrlKey}(e)&&n.tryStart(e)){var t=n.createEventFromMouse(e,!0);n.emitter.trigger("pointerdown",t),n.initScrollWatch(t),n.shouldIgnoreMove||document.addEventListener("mousemove",n.handleMouseMove),document.addEventListener("mouseup",n.handleMouseUp)}},this.handleMouseMove=function(e){var t=n.createEventFromMouse(e);n.recordCoords(t),n.emitter.trigger("pointermove",t)},this.handleMouseUp=function(e){document.removeEventListener("mousemove",n.handleMouseMove),document.removeEventListener("mouseup",n.handleMouseUp),n.emitter.trigger("pointerup",n.createEventFromMouse(e)),n.cleanup()},this.handleTouchStart=function(e){if(n.tryStart(e)){n.isTouchDragging=!0;var t=n.createEventFromTouch(e,!0);n.emitter.trigger("pointerdown",t),n.initScrollWatch(t);var r=e.target;n.shouldIgnoreMove||r.addEventListener("touchmove",n.handleTouchMove),r.addEventListener("touchend",n.handleTouchEnd),r.addEventListener("touchcancel",n.handleTouchEnd),window.addEventListener("scroll",n.handleTouchScroll,!0)}},this.handleTouchMove=function(e){var t=n.createEventFromTouch(e);n.recordCoords(t),n.emitter.trigger("pointermove",t)},this.handleTouchEnd=function(e){if(n.isDragging){var r=e.target;r.removeEventListener("touchmove",n.handleTouchMove),r.removeEventListener("touchend",n.handleTouchEnd),r.removeEventListener("touchcancel",n.handleTouchEnd),window.removeEventListener("scroll",n.handleTouchScroll,!0),n.emitter.trigger("pointerup",n.createEventFromTouch(e)),n.cleanup(),n.isTouchDragging=!1,o++,setTimeout(function(){o--},t.config.touchMouseIgnoreWait)}},this.handleTouchScroll=function(){n.wasTouchScroll=!0},this.handleScroll=function(e){if(!n.shouldIgnoreMove){var t=window.pageXOffset-n.prevScrollX+n.prevPageX,r=window.pageYOffset-n.prevScrollY+n.prevPageY;n.emitter.trigger("pointermove",{origEvent:e,isTouch:n.isTouchDragging,subjectEl:n.subjectEl,pageX:t,pageY:r,deltaX:t-n.origPageX,deltaY:r-n.origPageY})}},this.containerEl=e,this.emitter=new t.EmitterMixin,e.addEventListener("mousedown",this.handleMouseDown),e.addEventListener("touchstart",this.handleTouchStart,{passive:!0}),a++||window.addEventListener("touchmove",c,{passive:!1})}return e.prototype.destroy=function(){this.containerEl.removeEventListener("mousedown",this.handleMouseDown),this.containerEl.removeEventListener("touchstart",this.handleTouchStart,{passive:!0}),--a||window.removeEventListener("touchmove",c,{passive:!1})},e.prototype.tryStart=function(e){var n=this.querySubjectEl(e),r=e.target;return!(!n||this.handleSelector&&!t.elementClosest(r,this.handleSelector))&&(this.subjectEl=n,this.downEl=r,this.isDragging=!0,this.wasTouchScroll=!1,!0)},e.prototype.cleanup=function(){l=!1,this.isDragging=!1,this.subjectEl=null,this.downEl=null,this.destroyScrollWatch()},e.prototype.querySubjectEl=function(e){return this.selector?t.elementClosest(e.target,this.selector):this.containerEl},e.prototype.shouldIgnoreMouse=function(){return o||this.isTouchDragging},e.prototype.cancelTouchScroll=function(){this.isDragging&&(l=!0)},e.prototype.initScrollWatch=function(e){this.shouldWatchScroll&&(this.recordCoords(e),window.addEventListener("scroll",this.handleScroll,!0))},e.prototype.recordCoords=function(e){this.shouldWatchScroll&&(this.prevPageX=e.pageX,this.prevPageY=e.pageY,this.prevScrollX=window.pageXOffset,this.prevScrollY=window.pageYOffset)},e.prototype.destroyScrollWatch=function(){this.shouldWatchScroll&&window.removeEventListener("scroll",this.handleScroll,!0)},e.prototype.createEventFromMouse=function(e,t){var n=0,r=0;return t?(this.origPageX=e.pageX,this.origPageY=e.pageY):(n=e.pageX-this.origPageX,r=e.pageY-this.origPageY),{origEvent:e,isTouch:!1,subjectEl:this.subjectEl,pageX:e.pageX,pageY:e.pageY,deltaX:n,deltaY:r}},e.prototype.createEventFromTouch=function(e,t){var n,r,i=e.touches,o=0,a=0;return i&&i.length?(n=i[0].paLine truncated
|
||||
Reference in new issue
Block a user