Skip to main content

Signature

runAll<T>(tasks, options?): Promise<RunAllItemResult<T>[]>

Options

  • Inherits all run options
  • concurrency: simultaneous limit
  • mode: settle or fail-fast

Example

import { runAll, isSuccess } from "trybox";

const tasks = [
  () => fetch("/a").then((r) => r.text()),
  () => fetch("/b").then((r) => r.text()),
];

const results = await runAll<string>(tasks, {
  concurrency: 2,
  mode: "settle",
});

const ok = results.filter(isSuccess);
const ko = results.filter((r) => r.status === "error");

Result per Item

  • ok: { status: "ok", ok: true, data, error: null }
  • error: { status: "error", ok: false, data: null, error }
  • skipped: tasks not started due to cancellation or fail-fast