// MUI Icons imports
import HomeOutlinedIcon from "@mui/icons-material/HomeOutlined";
import HomeIcon from "@mui/icons-material/Home";
import LocalHospitalOutlinedIcon from "@mui/icons-material/LocalHospitalOutlined";
import LocalHospitalIcon from "@mui/icons-material/LocalHospital";
import PeopleOutlineIcon from "@mui/icons-material/PeopleOutline";
import PeopleIcon from "@mui/icons-material/People";
import SettingsOutlinedIcon from "@mui/icons-material/SettingsOutlined";
import SettingsIcon from "@mui/icons-material/Settings";
import ArticleIcon from "@mui/icons-material/Article";
import ArticleOutlinedIcon from "@mui/icons-material/ArticleOutlined";
import PaymentIcon from "@mui/icons-material/Payment";
import PaymentOutlinedIcon from "@mui/icons-material/PaymentOutlined";
import { USER_ROLES } from "../../../constants";

// Define the sidebar configuration with proper permission fields
export const SIDEBAR_CONFIG = [
  {
    text: "Dashboard",
    path: "",
    icon: HomeOutlinedIcon,
    activeIcon: HomeIcon,
    // Dashboard is accessible to all roles
    roles: [USER_ROLES.SUPER_ADMIN, USER_ROLES.CLINIC_ADMIN],
  },
  {
    text: "Clinics",
    path: "clinics",
    icon: LocalHospitalOutlinedIcon,
    activeIcon: LocalHospitalIcon,
    // Only super admin can access clinics list
    roles: [USER_ROLES.SUPER_ADMIN],
  },
  {
    text: "Admin Staff Management",
    path: "admin",
    icon: PeopleOutlineIcon,
    activeIcon: PeopleIcon,
    // Only super admin can access admin staff management
    roles: [USER_ROLES.SUPER_ADMIN],
  },
  {
    text: "Master Data Management",
    path: "masterData",
    icon: SettingsOutlinedIcon,
    activeIcon: SettingsIcon,
    // Only super admin can access admin staff management
    roles: [USER_ROLES.SUPER_ADMIN],
  },
  {
    text: "Payment Management",
    path: "payment-management",
    icon: PaymentOutlinedIcon,
    activeIcon: PaymentIcon,
    // Only super admin can access payment management
    roles: [USER_ROLES.SUPER_ADMIN],
  },
  {
    text: "Signup Charges",
    path: "signup-charges",
    icon: PaymentOutlinedIcon,
    activeIcon: PaymentIcon,
    // Only super admin can access payment management
    roles: [USER_ROLES.SUPER_ADMIN],
  },
  {
    text: "Doctor/Nurse Management",
    path: "doctor",
    requireSaprateApp: false,
    icon: PeopleOutlineIcon,
    activeIcon: PeopleIcon,
    // Clinic admin can access user management
    roles: [USER_ROLES.CLINIC_ADMIN],
  },
  {
    text: "Clinic Setup",
    path: "clinicSetup",
    requireSaprateApp: false,
    icon: SettingsOutlinedIcon,
    activeIcon: SettingsIcon,
    // Clinic admin can access clinic setup
    roles: [USER_ROLES.CLINIC_ADMIN],
  },
  {
    text: "Call Transcripts",
    path: "transcripts",
    requireSaprateApp: false,
    icon: ArticleOutlinedIcon,
    activeIcon: ArticleIcon,
    // Clinic admin can access call transcripts
    roles: [USER_ROLES.CLINIC_ADMIN],
  },
  {
    text: "Clinic Documents",
    path: "docs",
    requireSaprateApp: false,
    icon: ArticleOutlinedIcon,
    activeIcon: ArticleIcon,
    // Clinic admin can access call transcripts
    roles: [USER_ROLES.CLINIC_ADMIN],
  },
];
