26 lines
848 B
TypeScript
26 lines
848 B
TypeScript
"use client";
|
|
import Link from "next/link";
|
|
import clsx from "clsx"; // Utility to merge class names
|
|
|
|
import { ISidebarLink } from "@/app/features/dashboard/sidebar/SidebarLink.interfaces"; // Keep this import
|
|
import { resolveIcon } from "@/app/utils/iconMap";
|
|
import "./PageLinks.scss"; // Keep this import
|
|
|
|
// Define the props interface for your PageLinks component
|
|
// It now extends ISidebarLink and includes isShowIcon
|
|
interface IPageLinksProps extends ISidebarLink {
|
|
isShowIcon?: boolean;
|
|
}
|
|
|
|
// PageLinks component
|
|
export default function PageLinks({ title, path, icon }: IPageLinksProps) {
|
|
const Icon = resolveIcon(icon);
|
|
console.log("Icon", Icon);
|
|
return (
|
|
<Link href={path} className={clsx("page-link", "page-link__container")}>
|
|
{Icon && <Icon />}
|
|
<span className="page-link__text">{title}</span>
|
|
</Link>
|
|
);
|
|
}
|