'use client' import colors from "@/con/colors" import stateNav from "@/state/state-nav" import { ActionIcon, Button, Container, Flex, Image, Stack, Tooltip } from "@mantine/core" import { useHover } from "@mantine/hooks" import { IconSearch, IconUser } from "@tabler/icons-react" import { useTransitionRouter } from 'next-view-transitions' import { useSnapshot } from "valtio" import { MenuItem } from "../../../../types/menu-item" import { NavbarSearch } from "./NavBarSearch" import { NavbarSubMenu } from "./NavbarSubMenu" import { useRouter } from "next/navigation" // contoh state auth (dummy aja dulu, bisa diganti sesuai sistem auth kamu) const stateAuth = { role: "admin", // coba ubah ke "user" buat test } export function NavbarMainMenu({ listNavbar }: { listNavbar: MenuItem[] }) { const { item, isSearch } = useSnapshot(stateNav) const router = useTransitionRouter() const next = useRouter() return ( { router.push("/darmasaba") stateNav.clear() }} > Darmasaba Logo {listNavbar.map((item, k) => ( ))} { stateNav.item = null stateNav.isSearch = !stateNav.isSearch }} radius="xl" > {/* hanya tampil kalau role = admin */} {stateAuth.role === "admin" && ( { next.push("/admin/landing-page/profile/program-inovasi") }} color={colors["blue-button"]} radius="xl" variant="light" > )} {item && } {isSearch && } ) } function MenuItemCom({ item }: { item: MenuItem }) { const { ref, hovered } = useHover() const router = useTransitionRouter() return ( ) }