FrontPastel/node_modules/@mui/base/node/utils/omitEventHandlers.js

23 lines
669 B
JavaScript

"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;
}