You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
13 lines
271 B
TypeScript
13 lines
271 B
TypeScript
|
9 months ago
|
export function deepClone<T>(obj: T) {
|
||
|
|
return JSON.parse(JSON.stringify(obj));
|
||
|
|
}
|
||
|
|
|
||
|
|
export function ensure<T extends object>(
|
||
|
|
obj: T,
|
||
|
|
keys: Array<[keyof T][number]>,
|
||
|
|
) {
|
||
|
|
return keys.every(
|
||
|
|
(k) => obj[k] !== undefined && obj[k] !== null && obj[k] !== "",
|
||
|
|
);
|
||
|
|
}
|