Simulates browser behaviour of dom event groups
To have an abstraction layer for testing applications with dom events.
import { click } from '@plusnew/simulate-dom-events';
const checkboxElement = <input type="checkbox" onclick={() => console.log('click fired')} onchange={() => console.log('change fired!')}/> as HTMLInputElement;
click(checkboxElement);
// The mousedown, mouseup, click, input and change event will dispatch synchronously with the correct values
// In case in the click event a prevendDefault() is called, the input and change event will not occur