Files
remark42/frontend/app/utils/exclude.ts
T
2019-04-28 19:27:36 +03:00

9 lines
278 B
TypeScript

/** return shallow clone of object without given props */
export function exclude<T extends object, K extends keyof T>(o: T, ...exclude: K[]): Pick<T, Exclude<keyof T, K>> {
const clone = { ...o };
for (const item of exclude) {
delete clone[item];
}
return clone;
}