( hook: (...props: Args) => R, errorMessage: string, defaultReturn?: SafeContextHook<R>, )
| 320 | type SafeContextHook<T> = T | undefined; |
| 321 | |
| 322 | export const safeContextHookExport = <Args extends unknown[], R>( |
| 323 | hook: (...props: Args) => R, |
| 324 | errorMessage: string, |
| 325 | defaultReturn?: SafeContextHook<R>, |
| 326 | ): ((...props: Args) => SafeContextHook<R>) => { |
| 327 | return function useSafeContextHook(...props: Args): SafeContextHook<R> { |
| 328 | try { |
| 329 | return hook(...props) as SafeContextHook<R>; |
| 330 | } catch (error) { |
| 331 | if (error instanceof Error && errorMessage === error.message) { |
| 332 | return defaultReturn; |
| 333 | } |
| 334 | |
| 335 | throw error; |
| 336 | } |
| 337 | }; |
| 338 | }; |
| 339 | |
| 340 | export const mergeContextExtra = <TData>({ |
| 341 | event, |
no outgoing calls
no test coverage detected