Files
tiptap/packages/core/src/utilities/deleteProps.ts
Philipp Kühn e07a5b625d refactor: Use named exports instead of default exports (#2238)
* use named exports instead of default exports

* fix tests

Co-authored-by: Philipp Kühn <philippkuehn@MacBook-Pro-von-Philipp.local>
2021-12-06 12:00:09 +01:00

21 lines
509 B
TypeScript

/**
* Remove a property or an array of properties from an object
* @param obj Object
* @param key Key to remove
*/
export function deleteProps(obj: Record<string, any>, propOrProps: string | string[]): Record<string, any> {
const props = typeof propOrProps === 'string'
? [propOrProps]
: propOrProps
return Object
.keys(obj)
.reduce((newObj: Record<string, any>, prop) => {
if (!props.includes(prop)) {
newObj[prop] = obj[prop]
}
return newObj
}, {})
}