SafetyScreen-ui/node_modules/@interactjs/pointer-events/PointerEvent.js

74 lines
2.0 KiB
JavaScript

import * as pointerUtils from "../utils/pointerUtils.js";
import { BaseEvent } from "../core/BaseEvent.js";
export default class PointerEvent extends BaseEvent {
/** */
constructor(type, pointer, event, eventTarget, interaction, timeStamp) {
super(interaction);
this.type = void 0;
this.originalEvent = void 0;
this.pointerId = void 0;
this.pointerType = void 0;
this.double = void 0;
this.pageX = void 0;
this.pageY = void 0;
this.clientX = void 0;
this.clientY = void 0;
this.dt = void 0;
this.eventable = void 0;
pointerUtils.pointerExtend(this, event);
if (event !== pointer) {
pointerUtils.pointerExtend(this, pointer);
}
this.timeStamp = timeStamp;
this.originalEvent = event;
this.type = type;
this.pointerId = pointerUtils.getPointerId(pointer);
this.pointerType = pointerUtils.getPointerType(pointer);
this.target = eventTarget;
this.currentTarget = null;
if (type === 'tap') {
const pointerIndex = interaction.getPointerIndex(pointer);
this.dt = this.timeStamp - interaction.pointers[pointerIndex].downTime;
const interval = this.timeStamp - interaction.tapTime;
this.double = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === this.target && interval < 500);
} else if (type === 'doubletap') {
this.dt = pointer.timeStamp - interaction.tapTime;
}
}
_subtractOrigin({
x: originX,
y: originY
}) {
this.pageX -= originX;
this.pageY -= originY;
this.clientX -= originX;
this.clientY -= originY;
return this;
}
_addOrigin({
x: originX,
y: originY
}) {
this.pageX += originX;
this.pageY += originY;
this.clientX += originX;
this.clientY += originY;
return this;
}
/**
* Prevent the default behaviour of the original Event
*/
preventDefault() {
this.originalEvent.preventDefault();
}
}
export { PointerEvent };
//# sourceMappingURL=PointerEvent.js.map