2023-09-22 10:43:58 -07:00

25 lines
522 B
TypeScript

import {withElementFromPoint} from './environment';
export function triggerEvent(
element: HTMLElement,
type: string,
data: {[key: string]: any} = {},
) {
const event = document.createEvent('Event');
event.initEvent(type, true, true);
for (const key in data) {
if (Object.prototype.hasOwnProperty.call(data, key)) {
Object.defineProperty(event, key, {
value: data[key],
});
}
}
withElementFromPoint(element, () => {
element.dispatchEvent(event);
});
return event;
}