fp-ts-std
Version:
The missing pseudo-standard library for fp-ts.
13 lines (12 loc) • 634 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.randomExtract = void 0;
const IO = require("fp-ts/IO");
const Rand = require("fp-ts/Random");
const RA = require("fp-ts/ReadonlyArray");
const function_1 = require("fp-ts/function");
const Array_1 = require("./Array");
const Number_1 = require("./Number");
const Option_1 = require("./Option");
const randomExtract = (xs) => (0, function_1.pipe)(Rand.randomInt(0, (0, function_1.pipe)(xs, RA.size, Number_1.decrement)), IO.map((0, function_1.flow)(i => (0, Array_1.extractAt)(i)(xs), Option_1.unsafeUnwrap)));
exports.randomExtract = randomExtract;
;