UNPKG

ts-data-forge

Version:

[![npm version](https://img.shields.io/npm/v/ts-data-forge.svg)](https://www.npmjs.com/package/ts-data-forge) [![npm downloads](https://img.shields.io/npm/dm/ts-data-forge.svg)](https://www.npmjs.com/package/ts-data-forge) [![License](https://img.shields.

25 lines (22 loc) 771 B
import { isErr } from './result-is-err.mjs'; function flatMap(...args) { switch (args.length) { case 2: { // Direct version: first argument is result const [result, flatMapFn] = args; return flatMapImpl(result, flatMapFn); } case 1: { // Curried version const [flatMapFn] = args; return (result) => flatMapImpl(result, flatMapFn); } } } const flatMapImpl = (result, flatMapFn) => isErr(result) ? // eslint-disable-next-line total-functions/no-unsafe-type-assertion result : // eslint-disable-next-line total-functions/no-unsafe-type-assertion flatMapFn(result.value); export { flatMap }; //# sourceMappingURL=result-flat-map.mjs.map