UNPKG

ts-retry

Version:

A little retry tool to execute a function until the function is successful. Can also bind a timeout to a function. This lib is usable in typescript, in javascript, in node, in SPA tools (rest, Vue, Svelte...) and browser (available in ESM and common js fo

24 lines (23 loc) 1.29 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.retryAsyncUntilResponse = void 0; const retry_1 = require("../../retry"); const options_1 = require("../options"); const until = (lastResult) => lastResult.ok; const getOptions = (0, options_1.retryUntilOptionsToRetryOptionsHof)(until); function retryAsyncUntilResponse(fn, retryOptions) { return __awaiter(this, void 0, void 0, function* () { const options = getOptions(retryOptions); return yield (0, retry_1.retryAsync)(fn, options); }); } exports.retryAsyncUntilResponse = retryAsyncUntilResponse;