MPA Developer Spec ( Pseudo Code )
Updated Routing Structure (React Router v6+)
App.tsx
<Routes>
<Route element={<Layout />}>
<Route path=”/vessels” element={<VesselList />} />
<Route path=”/vessels/:vesselId/tasks” element={<MaintenanceView />} />
<Route path=”/vessels/:vesselId/equipment/*” element={<EquipmentRouter />} />
<Route path=”/vessels/:vesselId/documents/*” element={<DocumentRouter />} />
<Route path=”/vessels/:vesselId/checklists/*” element={<ChecklistRouter />} />
<Route path=”/vessels/:vesselId/logs/*” element={<LogRouter />} />
<Route path=”/all/tasks” element={<AllTasksPage />} />
<Route path=”/all/documents” element={<AllDocumentsPage />} />
<Route path=”/all/checklists” element={<AllChecklistsPage />} />
<Route path=”/all/logs” element={<AllLogsPage />} />
</Route>
</Routes>
Remove:
/vessel/:vesselid/*
Module Pages Read vesselId from URL
const { vesselId } = useParams();
Global “All” Table Selectors
Tasks
const selectAllTasks = createSelector(
[state => state.maintenance.tasks],
tasks => tasks || []
);
Documents