@revolist/revogrid
Version:
Virtual reactive data grid spreadsheet component - RevoGrid.
41 lines (40 loc) • 1.71 kB
JavaScript
/*!
* Built by Revolist OU ❤️
*/
/**
* Dispatches a custom event to a specified target element.
*
* @param target - The target element to dispatch the event to.
* @param eventName - The name of the custom event.
* @param detail - Optional. The detail of the custom event.
* @returns The custom event that was dispatched.
*/
export function dispatch(target, eventName, detail) {
// Create a new CustomEvent with the specified event name and detail.
const event = new CustomEvent(eventName, {
detail,
cancelable: true, // Indicates whether the event can be canceled.
bubbles: true, // Indicates whether the event bubbles up through the DOM.
});
// Dispatch the event on the target element.
target === null || target === void 0 ? void 0 : target.dispatchEvent(event);
// Return the custom event that was dispatched.
return event;
}
/**
* Dispatches a custom event based on an existing event object and prevents the default behavior of the original event.
*
* @param e - The original event object containing the target and preventDefault method.
* @param eventName - The name of the custom event.
* @param detail - Optional. The detail of the custom event.
* @returns The custom event that was dispatched.
*/
export function dispatchByEvent(e, // The original event object containing the target and preventDefault method.
eventName, // The name of the custom event.
detail) {
// Prevent the default behavior of the original event.
e.preventDefault();
// Dispatch the custom event to the target element specified in the original event object.
return dispatch(e.target, eventName, detail);
}
//# sourceMappingURL=dispatcher.js.map