@vnmfify/core
Version:
```shell npm i @vnmfify/core -S ```
37 lines (30 loc) • 954 B
JavaScript
import _map from "lodash/map";
import _forEach from "lodash/forEach";
import _first from "lodash/first";
import _isArray from "lodash/isArray";
import { Children as ReactChildren } from "react";
import { isObjectElement } from "./validate";
function isObjectChildren(children) {
if (!_isArray(children)) {
return false;
}
var node = _first(children);
return isObjectElement(node);
}
function forEachChildren(children, fn) {
var objectified = isObjectChildren(children);
var forEach = objectified ? _forEach : ReactChildren.forEach;
return forEach(children, fn);
}
function mapChildren(children, fn) {
var objectified = isObjectChildren(children);
var map = objectified ? _map : ReactChildren.map;
return map(children, fn);
}
var Children = {
toArray: ReactChildren.toArray,
forEach: forEachChildren,
map: mapChildren
};
export default Children;
//# sourceMappingURL=children.js.map