The predicate whether the operation is done.
The found value while operations.
const padLeft = until((x: string) => 4 <= x.length)((x) => "0" + x);
expect(padLeft("")).toStrictEqual("0000");
expect(padLeft("1")).toStrictEqual("0001");
expect(padLeft("13")).toStrictEqual("0013");
expect(padLeft("131")).toStrictEqual("0131");
expect(padLeft("1316")).toStrictEqual("1316");
expect(padLeft("1316534")).toStrictEqual("1316534");
Repeats the
succoperation untilpredreturnstrue.