import React from 'react';
import { isNil } from 'lodash';
import { Text } from '../../primitives';
export const BreadCrumbSeparator = (
children: JSX.Element[] | JSX.Element | any,
separator: string | JSX.Element | JSX.Element[] | any,
props: any,
spacing: number | undefined
) => {
if (Array.isArray(children)) {
if (children.length === 1) {
return children;
}
const separatorElement = separator ? (
typeof separator === 'string' ? (
{separator}
) : (
React.cloneElement(separator, {
mx: !isNil(spacing) ? spacing : 2,
})
)
) : (
{'/'}
);
let result: any = [];
if (children && children.length > 1) {
result = children.reduce(
(r: any[], a: any) => r.concat(a, separatorElement),
[separatorElement]
);
}
result = result.slice(1, -1);
return result.map((child: any) => {
return React.cloneElement(child, props);
});
} else {
return children;
}
};