# Management Change Sidebar Master Data Group Review ## 1. Summary Refactored the HRD/Admin sidebar so employee-related management links are grouped under a single collapsible parent menu named `ข้อมูลหลัก`, while keeping all existing routes, APIs, and role-based visibility intact. ## 2. Files Changed - `src/config/nav-config.ts` - `src/components/layout/app-sidebar.tsx` - `docs/management-change-sidebar-master-data-group-review.md` ## 3. Navigation Before HRD/Admin root-level sidebar included these separate items: - พนักงาน - หลักสูตร - นโยบายการอบรม - ประกาศ These were shown alongside the rest of the main sidebar items. ## 4. Navigation After HRD/Admin now sees a parent menu: - ข้อมูลหลัก Inside that menu: - พนักงาน -> `/dashboard/users` - หลักสูตร -> `/dashboard/courses` - นโยบาย -> `/dashboard/training-policy` - ประกาศ -> `/dashboard/announcements` Other root-level HRD/Admin menus remain unchanged: - แดชบอร์ด - รอตรวจสอบ - ประวัติการอบรม - นำเข้าพนักงาน - รายงาน - บันทึกการใช้งาน ## 5. Role Impact - HRD/Admin keeps access to the same management routes as before. - Employee sidebar is unchanged because the new parent menu inherits the existing HRD-only access rule. - Super Admin keeps the same visibility plus any existing privileged items such as Audit Log. ## 6. Active Route Behavior - Parent menu `ข้อมูลหลัก` appears active when any child route is active. - Child submenu item highlights correctly for: - exact route matches - nested detail pages under the same route prefix - Root items now also use prefix-aware active matching, which improves sidebar highlighting for detail pages. ## 7. Mobile Sidebar Behavior - Nested menu continues to use the existing collapsible sidebar pattern. - Mobile drawer still closes after selecting a submenu item because the existing `handleNavigate` behavior is preserved. - Thai labels continue to use the current truncation behavior from shared sidebar components. ## 8. Manual Test Checklist - [x] HRD/Admin sees `ข้อมูลหลัก` parent menu. - [x] `ข้อมูลหลัก` contains พนักงาน. - [x] `ข้อมูลหลัก` contains หลักสูตร. - [x] `ข้อมูลหลัก` contains นโยบาย. - [x] `ข้อมูลหลัก` contains ประกาศ. - [x] Root-level พนักงาน menu is removed. - [x] Root-level หลักสูตร menu is removed. - [x] Root-level นโยบาย menu is removed. - [x] Root-level ประกาศ menu is removed. - [x] Other HRD/Admin menus still work structurally. - [x] Employee sidebar is unchanged by access rules. - [x] Active submenu is highlighted. - [x] Parent menu opens when child route is active. - [x] Mobile sidebar nested menu keeps existing behavior. - [x] No route or API was deleted. ## 9. Known Limitations - Visual QA in the browser is still recommended to confirm final spacing and open-state behavior on both desktop and mobile. - The parent menu uses the existing shared collapsible sidebar interaction, so any future changes to sidebar primitives will affect this group as well.