UNPKG

react-native-button

Version:
32 lines (24 loc) 740 B
import React, { Children } from 'react'; export default function coalesceNonElementChildren(children, coalesceNodes) { var coalescedChildren = []; var contiguousNonElements = []; Children.forEach(children, (child) => { if (!React.isValidElement(child)) { contiguousNonElements.push(child); return; } if (contiguousNonElements.length) { coalescedChildren.push( coalesceNodes(contiguousNonElements, coalescedChildren.length) ); contiguousNonElements = []; } coalescedChildren.push(child); }); if (contiguousNonElements.length) { coalescedChildren.push( coalesceNodes(contiguousNonElements, coalescedChildren.length) ); } return coalescedChildren; }