UNPKG

saij

Version:
89 lines (74 loc) 4.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.stopPropagation = stopPropagation; exports.preventDefault = preventDefault; exports.default = void 0; /** * @module saij/core/Event */ /** * @classdesc * Stripped down implementation of the W3C DOM Level 2 Event interface. * See https://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-interface. * * This implementation only provides `type` and `target` properties, and * `stopPropagation` and `preventDefault` methods. It is meant as base class * for higher level events defined in the library, and works with * {@link module:saij/core/Target~Target}. */ class Event { /** * @param {string} type Type. */ constructor(type) { /** * @type {boolean} */ this.propagationStopped = false; /** * The event type. * @type {string} * @api */ this.type = type; /** * The event target. * @type {Object} * @api */ this.target = null; } /** * Stop event propagation. * @function * @api */ preventDefault() { this.propagationStopped = true; } /** * Stop event propagation. * @function * @api */ stopPropagation() { this.propagationStopped = true; } } var _default = Event; /** * @param {Event|module:saij/core/Event} evt Event */ exports.default = _default; function stopPropagation(evt) { evt.stopPropagation(); } /** * @param {Event|module:saij/core/Event} evt Event */ function preventDefault(evt) { evt.preventDefault(); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zYWlqL2NvcmUvRXZlbnQuanMiXSwibmFtZXMiOlsiRXZlbnQiLCJjb25zdHJ1Y3RvciIsInR5cGUiLCJwcm9wYWdhdGlvblN0b3BwZWQiLCJ0YXJnZXQiLCJwcmV2ZW50RGVmYXVsdCIsInN0b3BQcm9wYWdhdGlvbiIsImV2dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7QUFJQTs7Ozs7Ozs7OztBQVVBLE1BQU1BLEtBQU4sQ0FBWTtBQUVWOzs7QUFHQUMsRUFBQUEsV0FBVyxDQUFDQyxJQUFELEVBQU87QUFFaEI7OztBQUdBLFNBQUtDLGtCQUFMLEdBQTBCLEtBQTFCO0FBRUE7Ozs7OztBQUtBLFNBQUtELElBQUwsR0FBWUEsSUFBWjtBQUVBOzs7Ozs7QUFLQSxTQUFLRSxNQUFMLEdBQWMsSUFBZDtBQUNEO0FBRUQ7Ozs7Ozs7QUFLQUMsRUFBQUEsY0FBYyxHQUFHO0FBQ2YsU0FBS0Ysa0JBQUwsR0FBMEIsSUFBMUI7QUFDRDtBQUVEOzs7Ozs7O0FBS0FHLEVBQUFBLGVBQWUsR0FBRztBQUNoQixTQUFLSCxrQkFBTCxHQUEwQixJQUExQjtBQUNEOztBQTNDUzs7ZUE4Q0dILEs7QUFHZjs7Ozs7O0FBR08sU0FBU00sZUFBVCxDQUF5QkMsR0FBekIsRUFBOEI7QUFDbkNBLEVBQUFBLEdBQUcsQ0FBQ0QsZUFBSjtBQUNEO0FBR0Q7Ozs7O0FBR08sU0FBU0QsY0FBVCxDQUF3QkUsR0FBeEIsRUFBNkI7QUFDbENBLEVBQUFBLEdBQUcsQ0FBQ0YsY0FBSjtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIHNhaWovY29yZS9FdmVudFxuICovXG5cbi8qKlxuICogQGNsYXNzZGVzY1xuICogU3RyaXBwZWQgZG93biBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVzNDIERPTSBMZXZlbCAyIEV2ZW50IGludGVyZmFjZS5cbiAqIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTItRXZlbnRzL2V2ZW50cy5odG1sI0V2ZW50cy1pbnRlcmZhY2UuXG4gKlxuICogVGhpcyBpbXBsZW1lbnRhdGlvbiBvbmx5IHByb3ZpZGVzIGB0eXBlYCBhbmQgYHRhcmdldGAgcHJvcGVydGllcywgYW5kXG4gKiBgc3RvcFByb3BhZ2F0aW9uYCBhbmQgYHByZXZlbnREZWZhdWx0YCBtZXRob2RzLiBJdCBpcyBtZWFudCBhcyBiYXNlIGNsYXNzXG4gKiBmb3IgaGlnaGVyIGxldmVsIGV2ZW50cyBkZWZpbmVkIGluIHRoZSBsaWJyYXJ5LCBhbmQgd29ya3Mgd2l0aFxuICoge0BsaW5rIG1vZHVsZTpzYWlqL2NvcmUvVGFyZ2V0flRhcmdldH0uXG4gKi9cbmNsYXNzIEV2ZW50IHtcblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgVHlwZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHR5cGUpIHtcblxuICAgIC8qKlxuICAgICAqIEB0eXBlIHtib29sZWFufVxuICAgICAqL1xuICAgIHRoaXMucHJvcGFnYXRpb25TdG9wcGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXZlbnQgdHlwZS5cbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgICAqIEBhcGlcbiAgICAgKi9cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGV2ZW50IHRhcmdldC5cbiAgICAgKiBAdHlwZSB7T2JqZWN0fVxuICAgICAqIEBhcGlcbiAgICAgKi9cbiAgICB0aGlzLnRhcmdldCA9IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogU3RvcCBldmVudCBwcm9wYWdhdGlvbi5cbiAgICogQGZ1bmN0aW9uXG4gICAqIEBhcGlcbiAgICovXG4gIHByZXZlbnREZWZhdWx0KCkge1xuICAgIHRoaXMucHJvcGFnYXRpb25TdG9wcGVkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdG9wIGV2ZW50IHByb3BhZ2F0aW9uLlxuICAgKiBAZnVuY3Rpb25cbiAgICogQGFwaVxuICAgKi9cbiAgc3RvcFByb3BhZ2F0aW9uKCkge1xuICAgIHRoaXMucHJvcGFnYXRpb25TdG9wcGVkID0gdHJ1ZTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBFdmVudDtcblxuXG4vKipcbiAqIEBwYXJhbSB7RXZlbnR8bW9kdWxlOnNhaWovY29yZS9FdmVudH0gZXZ0IEV2ZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdG9wUHJvcGFnYXRpb24oZXZ0KSB7XG4gIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cblxuXG4vKipcbiAqIEBwYXJhbSB7RXZlbnR8bW9kdWxlOnNhaWovY29yZS9FdmVudH0gZXZ0IEV2ZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmV2ZW50RGVmYXVsdChldnQpIHtcbiAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG59XG4iXX0=