codeql-action/node_modules/@mswjs/interceptors/src/utils/isPropertyAccessible.ts
2025-01-27 17:21:38 +00:00

19 lines
500 B
TypeScript

/**
* A function that validates if property access is possible on an object
* without throwing. It returns `true` if the property access is possible
* and `false` otherwise.
*
* Environments like miniflare will throw on property access on certain objects
* like Request and Response, for unimplemented properties.
*/
export function isPropertyAccessible<Obj extends Record<string, any>>(
obj: Obj,
key: keyof Obj
) {
try {
obj[key]
return true
} catch {
return false
}
}