mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-09-22 13:39:35 +00:00
Helper omit function
This commit is contained in:
@@ -13,6 +13,22 @@ export const pick = <T extends object, TKeys extends keyof T>(obj: T, keys: TKey
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Omit a list of properties from an object
|
||||||
|
* into a new object
|
||||||
|
*/
|
||||||
|
export const omit = <T extends object, TKeys extends keyof T>(obj: T, keys: TKeys[]): Omit<T, TKeys> => {
|
||||||
|
if (!obj) return {} as Omit<T, TKeys>;
|
||||||
|
return (Object.keys(obj) as TKeys[]).reduce(
|
||||||
|
(acc, key) => {
|
||||||
|
if (!keys.includes(key)) {
|
||||||
|
(acc as T)[key] = obj[key];
|
||||||
|
}
|
||||||
|
return acc;
|
||||||
|
},
|
||||||
|
{} as Omit<T, TKeys>
|
||||||
|
);
|
||||||
|
};
|
||||||
/**
|
/**
|
||||||
* Removes (shakes out) undefined entries from an
|
* Removes (shakes out) undefined entries from an
|
||||||
* object. Optional second argument shakes out values
|
* object. Optional second argument shakes out values
|
||||||
|
|||||||
Reference in New Issue
Block a user