import React from "react" import ChevronUp from "../../icons/chevron-up.svg" import { traversePaths } from "../../utils" import { IFileOrFolder } from "../ResourcesSidebar/index" import * as SC from "./styles" interface IResourceBreadcrumbProps { relativePath: any } function capitalize(str: string): string { const split = str.split(" ") const reconstruct = [] for (const substr of split) { reconstruct.push(`${substr.charAt(0).toUpperCase()}${substr.substring(1)}`) } return reconstruct.join(" ") } function Link({ item }: { item: IFileOrFolder }) { return {capitalize(item.title)} } function flatten([ currNode, ...previousNodes ]: IFileOrFolder[]): IFileOrFolder[] { if (currNode.type === "file") { return [...previousNodes, currNode] } return flatten([...currNode.children, ...previousNodes, currNode]) } export function ResourceBreadcrumb({ relativePath }: IResourceBreadcrumbProps) { const paths = relativePath.split("/") const breadcrumbItems = flatten([traversePaths(paths)]) return ( {breadcrumbItems.map(item => { if (item.type === "folder") { return ( ) } return {item.title} })} ) }