oysterprotocol/webinterface

View on GitHub
src/redux/epics/utils.tsx

Summary

Maintainability
A
0 mins
Test Coverage
import { Observable } from "rxjs";

import Backend from "../../services/backend";

export const execObservableIfBackendAvailable = (
  hosts,
  availableObsFn,
  unavailableObsFn
) =>
  Observable.fromPromise(Backend.checkStatus(hosts)).mergeMap(
    (available: any) => {
      return available ? availableObsFn() : unavailableObsFn();
    }
  );