let adminId: number;
let input: JsonRequest;
const res = await Effect.unit.pipe(
Effect.flatMap(() => validateInput(request)),
Effect.tap((x) => Effect.sync(() => (input = x))),
Effect.flatMap(() => authenticateAdmin(input)),
Effect.tap((res) => Effect.sync(() => (adminId = res))),
Effect.flatMap(() => validateTitle(input)),
Effect.flatMap(() => checkSkips(input)),
Effect.flatMap(() => addSkip(input, adminId)),
Effect.map(() => ({ ok: true as const, err: null })),
Effect.catchAll((err) =>
Effect.succeed({ ok: false as const, err: err._tag }),
),
Effect.runPromise,
);
let adminId: number;
let input: JsonRequest;
const res = await Effect.unit.pipe(
Effect.flatMap(() => validateInput(request)),
Effect.tap((x) => Effect.sync(() => (input = x))),
Effect.flatMap(() => authenticateAdmin(input)),
Effect.tap((res) => Effect.sync(() => (adminId = res))),
Effect.flatMap(() => validateTitle(input)),
Effect.flatMap(() => checkSkips(input)),
Effect.flatMap(() => addSkip(input, adminId)),
Effect.map(() => ({ ok: true as const, err: null })),
Effect.catchAll((err) =>
Effect.succeed({ ok: false as const, err: err._tag }),
),
Effect.runPromise,
);