UNPKG

jsdom-se

Version:

jsdom fork for silent errors - A JavaScript implementation of the DOM and HTML standards

87 lines (74 loc) 1.88 kB
"use strict"; const conversions = require("webidl-conversions"); const utils = require("../events/utils.js"); const Impl = require(".//Users/diego/Projects/diego/jsdom-se/lib/jsdom/living/events/TouchEvent-impl.js"); const UIEvent = require("./UIEvent.js"); const impl = utils.implSymbols["TouchEvent"]; function TouchEvent() { throw new TypeError("Illegal constructor"); } Object.defineProperty(TouchEvent.prototype, "touches", { get() { return this[impl].touches }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "targetTouches", { get() { return this[impl].targetTouches }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "changedTouches", { get() { return this[impl].changedTouches }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "altKey", { get() { return this[impl].altKey }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "metaKey", { get() { return this[impl].metaKey }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "ctrlKey", { get() { return this[impl].ctrlKey }, enumerable: true, configurable: true }); Object.defineProperty(TouchEvent.prototype, "shiftKey", { get() { return this[impl].shiftKey }, enumerable: true, configurable: true }); module.exports = { create(constructorArgs, privateData) { let obj = Object.create(TouchEvent.prototype); this.setup(obj, constructorArgs, privateData); return obj; }, setup(obj, constructorArgs, privateData) { if (!privateData) privateData = {}; privateData.wrapper = obj; UIEvent.setup(obj, constructorArgs, privateData); }, interface: TouchEvent, expose: { Window: { TouchEvent: TouchEvent } } };