"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.omitEventHandlers = omitEventHandlers; /** * Removes event handlers from the given object. * A field is considered an event handler if it is a function with a name beginning with `on`. * * @param object Object to remove event handlers from. * @returns Object with event handlers removed. */ function omitEventHandlers(object) { if (object === undefined) { return {}; } const result = {}; Object.keys(object).filter(prop => !(prop.match(/^on[A-Z]/) && typeof object[prop] === 'function')).forEach(prop => { result[prop] = object[prop]; }); return result; }