|
|
"use strict"; |
|
|
Object.defineProperty(exports, "__esModule", { value: true }); |
|
|
exports.array = array; |
|
|
const ArrayArbitrary_1 = require("./_internals/ArrayArbitrary"); |
|
|
const MaxLengthFromMinLength_1 = require("./_internals/helpers/MaxLengthFromMinLength"); |
|
|
function array(arb, constraints = {}) { |
|
|
const size = constraints.size; |
|
|
const minLength = constraints.minLength || 0; |
|
|
const maxLengthOrUnset = constraints.maxLength; |
|
|
const depthIdentifier = constraints.depthIdentifier; |
|
|
const maxLength = maxLengthOrUnset !== undefined ? maxLengthOrUnset : MaxLengthFromMinLength_1.MaxLengthUpperBound; |
|
|
const specifiedMaxLength = maxLengthOrUnset !== undefined; |
|
|
const maxGeneratedLength = (0, MaxLengthFromMinLength_1.maxGeneratedLengthFromSizeForArbitrary)(size, minLength, maxLength, specifiedMaxLength); |
|
|
const customSlices = constraints.experimentalCustomSlices || []; |
|
|
return new ArrayArbitrary_1.ArrayArbitrary(arb, minLength, maxGeneratedLength, maxLength, depthIdentifier, undefined, customSlices); |
|
|
} |
|
|
|