import { createContext, useEffect, useState, useCallback } from "react" import { MonitorDown, Gauge, Boxes, PackagePlus, Info, ListChecks, ChartLine, Handshake, } from "lucide-react" import { useLocation } from 'react-router-dom'; export function useActiveLink() { const [activeLink, setActiveLink] = useState(''); const location = useLocation(); useEffect(() => { setActiveLink(location.pathname); }, [location]); const handleSetActiveLink = useCallback((path) => { setActiveLink(path); }, []); return { activeLink, handleSetActiveLink }; } export const SubMenuContext = createContext(); export const SubMenuContextProvider = ({children}) => { const { activeLink, handleSetActiveLink } = useActiveLink(); const value = [ { to: "/", title: "Why ARMS?", Icon: ()=> (), }, { to: "/installation", title: "ARMS Install", Icon: ()=> (), }, { to: "#", title: "ARMS Dashboard", Icon: ()=> (), subMenus: [ { id: 1, to: '/integration-status', title: 'Integration Status' }, { id: 2, to: '/progress-status', title: 'Progress Status' }, ] }, { to: "#", title: ["ARMS Poduct", "Service"], Icon: ()=> (), subMenus: [ { id: 1, to: '/product-service-choice', title: '제품관리 : 서비스 선택' }, { id: 2, to: '/product-service-check', title: '제품관리 : 서비스 산출물 조회' }, { id: 3, to: '/product-service-edit', title: '제품관리 : 서비스 산출물 편집/삭제' }, { id: 4, to: '/version-control-choice', title: '버전관리 : 서비스 선택' }, { id: 5, to: '/version-control-check', title: '버전관리 : 서비스 버전 조회' }, { id: 6, to: '/version-control-edit', title: '버전관리 : 서비스 버전 편집/삭제' }, ] }, { to: "#", title: ["ALM", "Jira, github, etc."], Icon: ()=> (), subMenus: [ { id: 1, to: '#', title: '서버관리 : ALM 서버 조회' }, { id: 2, to: '#', title: '서버관리 : ALM 서버 편집/삭제' }, { id: 3, to: '#', title: '상태관리 : ALM 서버 선택' }, { id: 4, to: '#', title: '연결관리 : 연결된 Jira 조회' }, { id: 5, to: '#', title: '연결관리 : 제품 조회/선택' }, { id: 6, to: '#', title: '연결관리 : 제품 버전 조회' }, { id: 7, to: '#', title: '연결관리 : ALM 프로젝트 list' }, ] }, { to: "#", title: "Requirement", Icon: ()=> (), subMenus: [ { id: 1, to: '#', title: '요구관리 : 요구 사항 조회' }, { id: 2, to: '#', title: '요구관리 : 요구 사항 내용' }, { id: 3, to: '#', title: '현황관리 : 제품 버전 선택' }, { id: 4, to: '#', title: '현황관리 : Issue list' }, { id: 5, to: '#', title: '간트차트 : 간트 차트' }, { id: 6, to: '#', title: '칸반보드 : 칸반 보드' }, ] }, { to: "#", title: "Analysis", Icon: ()=> (), subMenus: [ { id: 1, to: '#', title: '일정분석 : Time 분석' }, { id: 2, to: '#', title: '일정분석 : 진행 현황' }, { id: 3, to: '#', title: '범위분석 : Scope 분석' }, { id: 4, to: '#', title: '범위분석 : 범위별 차트' }, { id: 5, to: '#', title: '자원분석 : Resource 분석' }, { id: 6, to: '#', title: '자원분석 : 작업자 현황' }, { id: 7, to: '#', title: '비용분석 : Cost 분석' }, { id: 8, to: '#', title: '비용분석 : 프로젝트 비용 산정' }, ] }, { to: "#", title: "Community", Icon: ()=> (), subMenus: [ { id: 1, to: '#', title: '공지사항' }, { id: 2, to: '#', title: '업데이트 노트' }, { id: 3, to: '#', title: '사용자 매뉴얼' }, { id: 4, to: '#', title: '문의 답변' }, { id: 5, to: '#', title: '관리 도구' }, { id: 6, to: '#', title: '라이선스' }, ] }, ]; return ( {children} ); };