[ST] - 기본 페이지에서 대시보드 도움말을 불러오기 위해 메뉴코드 전달
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
export const STATISTICS_ROUTE = "/statistics";
|
||||
export const STATISTICS_TAB_QUERY_KEY = "tab";
|
||||
/** 기본 화면(대시보드) 도움말 매칭용. URL에는 넣지 않음 */
|
||||
export const STATISTICS_DASHBOARD_TAB_ID = "Dashboard";
|
||||
|
||||
export function buildStatisticsTabUrl(tabId: string): string {
|
||||
return `${STATISTICS_ROUTE}?${STATISTICS_TAB_QUERY_KEY}=${encodeURIComponent(tabId)}`;
|
||||
|
||||
@@ -1,13 +1,20 @@
|
||||
import { PageTitle } from "@common/components";
|
||||
|
||||
import { findMenuItemByUrlPath } from "@/shared/lib/stats-cd-input-navigation";
|
||||
import { STATISTICS_DASHBOARD_TAB_ID } from "@/shared/lib/statistics-tab-url";
|
||||
|
||||
import { TabBar } from "./tab-bar";
|
||||
|
||||
import { useTabStore } from "@/store/tab-store";
|
||||
|
||||
function StatisticsPageLayout({ children }: { children: React.ReactNode }) {
|
||||
const { activeTabId, tabs } = useTabStore();
|
||||
const { activeTabId, tabs, menuList } = useTabStore();
|
||||
|
||||
const pageTitle = tabs.find((t) => t.id === activeTabId);
|
||||
const dashboardMenu =
|
||||
!pageTitle && menuList
|
||||
? findMenuItemByUrlPath(menuList, STATISTICS_DASHBOARD_TAB_ID)
|
||||
: null;
|
||||
|
||||
const menuPaths = pageTitle?.path?.split(">").map((path) => path.trim());
|
||||
|
||||
@@ -16,7 +23,7 @@ function StatisticsPageLayout({ children }: { children: React.ReactNode }) {
|
||||
<TabBar />
|
||||
<PageTitle
|
||||
title={pageTitle?.label ?? ""}
|
||||
menuCd={pageTitle?.menuItem?.menuCd}
|
||||
menuCd={pageTitle?.menuItem?.menuCd ?? dashboardMenu?.menuCd}
|
||||
menuPaths={menuPaths ?? []}
|
||||
/>
|
||||
{children}
|
||||
|
||||
Reference in New Issue
Block a user