ts-data-forge
Version:
[](https://www.npmjs.com/package/ts-data-forge) [](https://www.npmjs.com/package/ts-data-forge) [ • 736 B
JavaScript
import { err } from './ternary-result-err.mjs';
import { ok } from './ternary-result-ok.mjs';
/**
* Converts a Promise into a Promise that resolves to a `TernaryResult`.
*
* @example
*
* ```ts
* const resolved = await TernaryResult.fromPromise(Promise.resolve('ok'));
*
* const rejected = await TernaryResult.fromPromise(
* Promise.reject(new Error('fail')),
* );
*
* assert.deepStrictEqual(resolved, TernaryResult.ok('ok'));
*
* assert.isTrue(TernaryResult.isErr(rejected));
* ```
*/
const fromPromise = (promise) =>
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
promise.then((value) => ok(value)).catch(err);
export { fromPromise };
//# sourceMappingURL=ternary-result-from-promise.mjs.map