MCPcopy
hub / github.com/d3george/slash-admin / NavRootItem

Function NavRootItem

src/components/nav/mini/nav-root-item.tsx:9–56  ·  view source on GitHub ↗
(item: NavItemProps)

Source from the content-addressed store, hash-verified

7import type { NavItemProps } from "../types";
8
9export const NavRootItem = (item: NavItemProps) => {
10 const { t } = useLocale();
11 const content = (
12 <>
13 {/* Caption */}
14 {item.caption && (
15 <TooltipProvider>
16 <Tooltip>
17 <TooltipTrigger>
18 <Icon icon="solar:info-circle-linear" size={16} className="absolute left-1 top-2" />
19 </TooltipTrigger>
20 <TooltipContent side="right">{t(item.caption)}</TooltipContent>
21 </Tooltip>
22 </TooltipProvider>
23 )}
24
25 {/* Icon */}
26 <span style={navItemStyles.icon}>
27 {item.icon && typeof item.icon === "string" ? <Icon icon={item.icon} /> : item.icon}
28 </span>
29
30 {/* Arrow */}
31 {item.hasChild && (
32 <Icon icon="eva:arrow-ios-forward-fill" className="absolute right-1 top-2" style={navItemStyles.arrow} />
33 )}
34
35 {/* Title */}
36 <span style={navItemStyles.title} className="text-center! text-xs! mt-1">
37 {t(item.title)}
38 </span>
39 </>
40 );
41
42 const itemClassName = cn(
43 navItemClasses.base,
44 navItemClasses.hover,
45 "relative flex-col min-h-12 px-1 pt-2 pb-1.5",
46 item.active && item.depth === 1 && navItemClasses.active,
47 item.active && item.depth !== 1 && "bg-action-hover!",
48 item.disabled && navItemClasses.disabled,
49 );
50
51 return (
52 <NavItemRenderer item={item} className={itemClassName}>
53 {content}
54 </NavItemRenderer>
55 );
56};

Callers

nothing calls this directly

Calls 2

cnFunction · 0.90
useLocaleFunction · 0.85

Tested by

no test coverage detected