import get from 'lodash.get' import orderBy from 'lodash.orderby' import Link from 'next/link' import { useContext } from 'react' import { NavigationContext } from 'shared/context/navigation-context.mjs' import { useNavigation } from 'site/hooks/use-navigation.mjs' // Helper method to filter out the real children const order = (obj) => orderBy(obj, ['o', 't'], ['asc', 'asc']) const currentChildren = (current) => Object.values(order(current)).filter((entry) => typeof entry === 'object') const getRoot = { dev: (root, nav) => { if (!root) return nav if (root.indexOf('/') === -1) return nav[root] return get(nav, root.split('/')) }, org: (root, nav) => { // Fixme: make this work for org if (!root) return nav if (root.indexOf('/') === -1) return get(nav, root) return get(nav, root.split('/')) }, } /* * This is a recursive function, so it needs to be lean */ const RenderTree = ({ tree }) => (