import { useRouter } from 'next/router' import { Badge, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuTrigger, IconChevronDown, } from 'ui' import { REFERENCES } from './Navigation/NavigationMenu/NavigationMenu.constants' const RevVersionDropdown = () => { const { asPath, push } = useRouter() const pathSegments = asPath.split('/') const library = pathSegments.length >= 3 ? pathSegments[2] : undefined const libraryMeta = REFERENCES?.[library] ?? undefined const versions = libraryMeta?.versions ?? [] const currentVersion = versions.includes(pathSegments[pathSegments.indexOf(library) + 1]) ? pathSegments[pathSegments.indexOf(library) + 1] : versions[0] const onSelectVersion = (version: string) => { if (!library) return if (version === versions[0]) { push(`/reference/${library}/start`) } else { push(`/reference/${library}/${version}/start`) } } if (!versions || versions.length === 0) { return <> } return (
{/* version */} {currentVersion}.0
Stable releases {versions.map((version, index) => ( onSelectVersion(version)} className="justify-between flex" > Version {version}.0 {index === 0 && Latest} ))}
) } export default RevVersionDropdown