Evercatch - v0.10.0
    Preparing search index...

    Variable fromReadonly

    from: <F extends (...args: any[]) => Promise<any>, E extends unknown = Error>(
        fn: F,
        mapErr?: (err: unknown) => E,
    ) => ResultAsyncFn<F, E> = fromAsyncThrowable

    Type declaration

      • <F extends (...args: any[]) => Promise<any>, E extends unknown = Error>(
            fn: F,
            mapErr?: (err: unknown) => E,
        ): ResultAsyncFn<F, E>
      • Wraps an async function to return a ResultAsync instead of throwing errors.

        Type Parameters

        • F extends (...args: any[]) => Promise<any>

          The async function type.

        • E extends unknown = Error

          The type of the error.

        Parameters

        • fn: F

          The async function to wrap.

        • mapErr: (err: unknown) => E = defaultErrorMapper

          A function to map errors to a specific type.

        Returns ResultAsyncFn<F, E>

        An async function that returns a ResultAsync.

        const safeFetch = fromAsyncThrowable(fetch);

        const [error, response] = await safeFetch("https://api.example.com/data");
        if (error) {
        console.error(error.message);
        } else {
        const data = await response.json();
        console.log(data);
        }