import clsx from 'clsx' import { Popover } from './Popover' export function ClassicTabBar({ tabs, active, onChange, rightSlot, }: { tabs: { id: string; label: string }[] active: string onChange: (id: string) => void rightSlot?: React.ReactNode }) { return (
{tabs.map((t) => ( ))} {rightSlot &&
{rightSlot}
}
) } export function ClassicRibbonGroup({ caption, children, onLauncher, }: { caption: string children: React.ReactNode onLauncher?: () => void }) { return (
{children}
{caption} {onLauncher && ( )}
) } export function ClassicButton({ icon: Icon, label, onClick, disabled, active, size = 'large', title, }: { icon: React.ComponentType<{ size?: number }> label: string onClick?: () => void disabled?: boolean active?: boolean size?: 'large' | 'small' title?: string }) { if (size === 'small') { return ( ) } return ( ) } export function ClassicDropdown({ button, children, open, onOpenChange, align = 'left', widthClass = 'w-56', }: { button: React.ReactNode children: React.ReactNode open: boolean onOpenChange: (v: boolean) => void align?: 'left' | 'right' widthClass?: string }) { return ( {children} ) } export function ClassicMenuItem({ children, onClick, disabled, }: { children: React.ReactNode onClick?: () => void disabled?: boolean }) { return ( ) } export function ClassicRibbonBody({ children }: { children: React.ReactNode }) { return (
{children}
) }