UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

72 lines (70 loc) 2.08 kB
/** * DevExtreme (cjs/events/hold.js) * Version: 23.2.6 * Build date: Wed May 01 2024 * * Copyright (c) 2012 - 2024 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; exports.default = void 0; var _index = require("./utils/index"); var _emitter = _interopRequireDefault(require("./core/emitter")); var _emitter_registrator = _interopRequireDefault(require("./core/emitter_registrator")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj } } const abs = Math.abs; const HOLD_EVENT_NAME = "dxhold"; const HOLD_TIMEOUT = 750; const TOUCH_BOUNDARY = 5; const HoldEmitter = _emitter.default.inherit({ start: function(e) { this._startEventData = (0, _index.eventData)(e); this._startTimer(e) }, _startTimer: function(e) { const holdTimeout = "timeout" in this ? this.timeout : 750; this._holdTimer = setTimeout(function() { this._requestAccept(e); this._fireEvent("dxhold", e, { target: e.target }); this._forgetAccept() }.bind(this), holdTimeout) }, move: function(e) { if (this._touchWasMoved(e)) { this._cancel(e) } }, _touchWasMoved: function(e) { const delta = (0, _index.eventDelta)(this._startEventData, (0, _index.eventData)(e)); return abs(delta.x) > 5 || abs(delta.y) > 5 }, end: function() { this._stopTimer() }, _stopTimer: function() { clearTimeout(this._holdTimer) }, cancel: function() { this._stopTimer() }, dispose: function() { this._stopTimer() } }); (0, _emitter_registrator.default)({ emitter: HoldEmitter, bubble: true, events: ["dxhold"] }); var _default = { name: "dxhold" }; exports.default = _default; module.exports = exports.default; module.exports.default = exports.default;