UNPKG

@eluvio/elv-js-helpers

Version:

A collection of Javascript helper functions used by several Eluvio libraries.

35 lines (31 loc) 862 B
'use strict' const isResult = require('./isResult') const either = require('../Functional/either') const F = require('../Functional/F') const T = require('../Functional/T') /** * Returns `true` if passed a [Crocks Ok](https://crocks.dev/docs/crocks/Result.html#ok) instance. * Returns `false` if passed anything else * * @function * @category Boolean * @sig a -> Boolean * @param {*} x - The value to test * @returns {Boolean} * @example * * 'use strict' * const isOk = require('@eluvio/elv-js-helpers/Boolean/isOk') * * const Err = require('@eluvio/elv-js-helpers/ADT/Err') * const Ok = require('@eluvio/elv-js-helpers/ADT/Ok') * * isOk(Err(['invalid query'])) //=> false * * isOk(Ok(42)) //=> true * * isOk('foo') //=> false * */ const isOk = x => isResult(x) && either(F, T, x) module.exports = isOk