'use client' import { usePathname } from 'next/navigation' import { Doc, allDocs } from "@/.contentlayer/generated"; import Link from "next/link"; import { cn } from '@/lib/utils'; export default function DocsSideNav() { const sortedArr = allDocs.sort((a, b) => a.sortNum - b.sortNum) const path = decodeURI(usePathname()) const categorizedDocs = sortedArr.reduce((acc: { [key: Doc['_raw']['sourceFileDir']]: Doc[] }, doc) => { const currCatContent = acc[doc._raw.sourceFileDir] return { ...acc, [doc._raw.sourceFileDir]: [...(currCatContent ? currCatContent : []), doc] } }, {}) return (
{Object.entries(categorizedDocs).map(([cat, docs], i) => { return (

{cat}

{docs.map((doc, j) => { const isActive = path === `/docs/${doc._raw.flattenedPath}` return {doc.title} })}
) })}
) }