text: "use strict";
  
  exports.__esModule = true;
  exports.stopImmediatePropagation = stopImmediatePropagation;
  exports.isImmediatePropagationStopped = isImmediatePropagationStopped;
  exports.stopPropagation = stopPropagation;
  exports.pageX = pageX;
  exports.pageY = pageY;
  exports.isRightClick = isRightClick;
  exports.isLeftClick = isLeftClick;
  
  var _element = require("./element");
  
  /**
   * Prevent other listeners of the same event from being called.
   *
   * @param {Event} event
   */
  function stopImmediatePropagation(event) {
    event.isImmediatePropagationEnabled = false;
    event.cancelBubble = true;
  }
  /**
   * Check if event was stopped by `stopImmediatePropagation`.
   *
   * @param event {Event}
   * @returns {Boolean}
   */
  
  
  function isImmediatePropagationStopped(event) {
    return event.isImmediatePropagationEnabled === false;
  }
  /**
   * Prevent further propagation of the current event (prevent bubbling).
   *
   * @param event {Event}
   */
  
  
  function stopPropagation(event) {
    // ie8
    // http://msdn.microsoft.com/en-us/library/ie/ff975462(v=vs.85).aspx
    if (typeof event.stopPropagation === 'function') {
      event.stopPropagation();
    } else {
      event.cancelBubble = true;
    }
  }
  /**
   * Get horizontal coordinate of the event object relative to the whole document.
   *
   * @param {Event} event
   * @returns {Number}
   */
  
  
  function pageX(event) {
    if (event.pageX) {
      return event.pageX;
    }
  
    var rootWindow = event.target.ownerDocument.defaultView;
    return event.clientX + (0, _element.getWindowScrollLeft)(rootWindow);
  }
  /**
   * Get vertical coordinate of the event object relative to the whole document.
   *
   * @param {Event} event
   * @returns {Number}
   */
  
  
  function pageY(event) {
    if (event.pageY) {
      return event.pageY;
    }
  
    var frame = event.target.ownerDocument.defaultView;
    var offset = (0, _element.getWindowScrollTop)(frame);
    frame = (0, _element.getParentWindow)(frame);
  
    while (frame) {
      offset -= (0, _element.getWindowScrollTop)(frame);
      frame = (0, _element.getParentWindow)(frame);
    }
  
    return event.clientY + offset;
  }
  /**
   * Check if provided event was triggered by clicking the right mouse button.
   *
   * @param {Event} event DOM Event.
   * @returns {Boolean}
   */
  
  
  function isRightClick(event) {
    return event.button === 2;
  }
  /**
   * Check if provided event was triggered by clicking the left mouse button.
   *
   * @param {Event} event DOM Event.
   * @returns {Boolean}
   */
  
  
  function isLeftClick(event) {
    return event.button === 0;
  }