* feat: integrate main layout, toolbar, and rail from redesign into main ide-react folder * feat: remove additional files no longer used after ide redesign GitOrigin-RevId: 8fd77f63cb9c67be91995a9dde13b0fe2376d80f
34 lines
943 B
TypeScript
34 lines
943 B
TypeScript
import { DropdownMenu } from '@/shared/components/dropdown/dropdown-menu'
|
|
import { RailTabKey } from '@/features/ide-react/context/rail-context'
|
|
import { RailElement } from '@/features/ide-react/util/rail-types'
|
|
import RailTab from './rail-tab'
|
|
import { shouldIncludeElement } from '@/features/ide-react/util/rail-utils'
|
|
|
|
export default function RailOverflowDropdown({
|
|
tabs,
|
|
isOpen,
|
|
selectedTab,
|
|
}: {
|
|
tabs: RailElement[]
|
|
isOpen: boolean
|
|
selectedTab: RailTabKey
|
|
}) {
|
|
return (
|
|
<DropdownMenu className="ide-rail-overflow-dropdown">
|
|
{tabs
|
|
.filter(shouldIncludeElement)
|
|
.map(({ icon, key, indicator, title, disabled }) => (
|
|
<RailTab
|
|
open={isOpen && selectedTab === key}
|
|
key={key}
|
|
eventKey={key}
|
|
icon={icon}
|
|
indicator={indicator}
|
|
title={title}
|
|
disabled={disabled}
|
|
/>
|
|
))}
|
|
</DropdownMenu>
|
|
)
|
|
}
|