API reference › @evolu/common › Schedule › mapSchedule
function mapSchedule<A, B>(
f: (a: A) => B,
): <Input>(schedule: Schedule<A, Input>) => Schedule<B, Input>;
Defined in: packages/common/src/Schedule.ts:1402
Transforms the output of a schedule.
The delay (second tuple element) remains unchanged.
Mapping schedule output
import {
assertOk,
exponential,
mapSchedule,
testCreateDeps,
type Millis,
} from "@evolu/common";
const schedule = mapSchedule((delay: Millis) => ({
delay,
doubled: delay * 2,
}))(exponential("100ms"));
const step = schedule(testCreateDeps());
assertOk(step(undefined), [{ delay: 100, doubled: 200 }, 100]);