Function maybePromiseHandler

  • If the given value is a promise, the handler is called when is resolved, otherwise the handler is called directly with the value.

    Example

    const double = maybePromiseHandler((value: number) => value * 2);

    double(2); // 4
    double(Promise.resolve(2)); // Promise<4>

    Returns

    Curried function with handler in context.

    Type Parameters

    • Value

    • Output

    Parameters

    • handler: ((maybePromise: Value) => Output)

      Handler function to be called with the value.

        • (maybePromise: Value): Output
        • Parameters

          • maybePromise: Value

          Returns Output

    Returns (<MaybePromiseValue>(maybePromise: MaybePromiseValue) => MaybePromiseValue extends Promise<Value> ? Promise<Output> : Output)

      • <MaybePromiseValue>(maybePromise: MaybePromiseValue): MaybePromiseValue extends Promise<Value> ? Promise<Output> : Output
      • Type Parameters

        • MaybePromiseValue

        Parameters

        • maybePromise: MaybePromiseValue

        Returns MaybePromiseValue extends Promise<Value> ? Promise<Output> : Output