import classNames from 'classnames'; import { as, Avatar, Text, Tooltip, TooltipProvider, toRem } from 'folds'; import React, { ComponentProps, ReactNode, RefCallback } from 'react'; import * as css from './Sidebar.css'; export const SidebarItem = as<'div', css.SidebarItemVariants>( ({ as: AsSidebarAvatarBox = 'div', className, active, ...props }, ref) => ( ) ); export const SidebarItemBadge = as<'div', css.SidebarItemBadgeVariants>( ({ as: AsSidebarBadgeBox = 'div', className, hasCount, ...props }, ref) => ( ) ); export function SidebarItemTooltip({ tooltip, children, }: { tooltip?: ReactNode | string; children: (triggerRef: RefCallback) => ReactNode; }) { if (!tooltip) { return children(() => undefined); } return ( {tooltip} } > {children} ); } export const SidebarAvatar = as<'div', css.SidebarAvatarVariants & ComponentProps>( ({ className, size, outlined, radii, ...props }, ref) => ( ) ); export const SidebarFolder = as<'div', css.SidebarFolderVariants>( ({ as: AsSidebarFolder = 'div', className, state, ...props }, ref) => ( ) ); export const SidebarFolderDropTarget = as<'div', css.SidebarFolderDropTargetVariants>( ({ as: AsSidebarFolderDropTarget = 'div', className, position, ...props }, ref) => ( ) );