fix(lib/utils): use Reflect.ownKeys and PropertyKey for correctness

This commit is contained in:
PalmDevs 2026-08-02 16:58:03 +07:00
parent c096b80225
commit cb334d0b9c
No known key found for this signature in database
GPG key ID: 6FAE8F8677ACA8BA
2 changed files with 2 additions and 2 deletions

View file

@ -35,7 +35,7 @@ export function cloneDeep<T>(source: T, cache = new WeakMap()): T {
const sourceObj = source as AnyObject const sourceObj = source as AnyObject
const cloneObj = clone as AnyObject const cloneObj = clone as AnyObject
const keys = Object.keys(sourceObj) const keys = Reflect.ownKeys(sourceObj)
for (let i = 0; i < keys.length; i++) { for (let i = 0; i < keys.length; i++) {
const key = keys[i] const key = keys[i]
cloneObj[key] = cloneDeep(sourceObj[key], cache) cloneObj[key] = cloneDeep(sourceObj[key], cache)

View file

@ -1,7 +1,7 @@
export type Nullish = null | undefined export type Nullish = null | undefined
export type If<T, Then, Else> = T extends true ? Then : Else export type If<T, Then, Else> = T extends true ? Then : Else
export type Not<T extends boolean> = T extends true ? false : true export type Not<T extends boolean> = T extends true ? false : true
export type AnyObject = Record<any, any> export type AnyObject = Record<PropertyKey, any>
export type AnyFunction = (...args: any[]) => any export type AnyFunction = (...args: any[]) => any
export type LogicalOr<T1, T2> = T1 extends true export type LogicalOr<T1, T2> = T1 extends true
? true ? true