# All files / modules/utils/src fire-event.ts

0% Statements 0/9
0% Branches 0/10
0% Functions 0/1
0% Lines 0/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19

     /**
     * fire the given event with options on the element
     * @example
     * fireEvent(el, 'click');
     * fireEvent(el, 'keypress', {key: 'Enter'});
     */
    export function fireEvent(el: HTMLElement, type: string, options: any = {}): boolean {
      var event;
      if (type === 'click' || type.match(/^mouse/)) {
        event = new MouseEvent(type, options);
      } else if (type.match(/^key/)) {
        event = new KeyboardEvent(type, options);
      } else if (type.match(/^touch/)) {
        event = new TouchEvent(type, options);
      }

      return el.dispatchEvent(event);
    }