Я новичок в fp-ts, поэтому, пожалуйста, помогите мне решить мою проблему: мне нужно регистрировать одну и ту же ошибку несколько раз на разных уровнях, используя асинхронную функцию. Вот мой пример кода:
const myProgram = pipe(
tryCatch(() => someAsyncFunc(), toError),
mapLeft(async (err1) => {
await loggerAsyncFunc();
return err1;
}),
)
const main = pipe(
myProgram,
mapLeft((err2) => {
// err2 is a pending promise :(
})
)();
Я использую mapLeft
для этого, но он не работает. Что мне нужно сделать, чтобы в err2
было значение ошибки (err1) вместо ожидающего обещания?