Skip to content

History / Frontend Architecture Overview

Revisions

  • docs: document file-based router migration (frontend routing rewrite) Rewrite the frontend routing documentation for the TanStack Router file-based system (PR #1447) and record the migration with reasoning: - architecture/frontend/Routing.md: full rewrite — request flow, router bootstrap + defaults, single Register + staticData typing, auth/status gate, role tiers, beforeLoad flag gates (fail-closed trade-off documented), 404 split, redirect-after-login, route-owned search state (#1238), loaders, navigation conventions, nav projection, Vite codegen, add-a-route and add-a-flag walkthroughs; 4 validated mermaid diagrams - codes/frontend/routes: RouteGuards rewritten for pathless layouts + beforeLoad (HOC guidance removed); RoutesIndex rewritten as the verified 29-route catalog - changes/refactors: new dated migration entry with self-contained reasoning for every design decision - stale old-router references corrected across Feature-Flags, Authentication, Roles, Frontend Structure/Overview, ReportingUnitBlockDetails, Formula pages, LayoutSideNav, and index/log files; the deleted search-params sync hook converted to a removal record - block details accuracy: the route keeps its dedicated reporting-unit-block-details-enabled flag (beforeLoad, same pattern as RU details); its lack of role restriction predates the migration (#1254 dropped the D9-era ADMIN gate on 2026-10-13) — preserved 1:1, not changed by the migration

    @paulushcgcj paulushcgcj committed Oct 23, 2026
  • docs: update block details docs for route restructure Rename the block details route to /reporting-units/$ruId/$blockId, document the new ReportingUnitBlocksList section on the reporting unit details page, and trim the standalone block details page doc to match the restructured implementation (decision D8).

    @paulushcgcj paulushcgcj committed Oct 1, 2026
  • docs: add reporting unit block details page docs Documents ReportingUnitBlockDetailsPage, BlockDetailsSummary, BlockDetailsSkeleton, useDelayedFlag, and useReportingUnitDetailsQuery; updates routing, architecture overview, and frontend testing pages (issue #1369, slices 1/2/4/5).

    @paulushcgcj paulushcgcj committed Oct 1, 2026
  • Refactor markdown links to standard format across documentation - Converted wikilinks ([[Target|Display]]) to standard markdown links ([Display](Target)) in various markdown files. - Updated references in ConditionalField.md, FileUploadInput.md, FormulaInput.md, ReadonlyInput.md, Layout components, Waste components, context-and-hook documentation, core components, and Cypress documentation. - Ensured consistency in link formatting for better readability and navigation.

    @paulushcgcj paulushcgcj committed Jun 16, 2026
  • Refactor documentation links to use wiki-style formatting for improved navigation consistency across components and services. Update references in various markdown files including Components, Form, Layout, Waste, context-and-hook, and testing documentation. Ensure all related components and services are correctly linked for better accessibility and clarity.

    @paulushcgcj paulushcgcj committed Jun 16, 2026
  • docs: update documentation for routing, components, and new tags; add column definitions for MyClientListing and WasteSearchTable

    @paulushcgcj paulushcgcj committed May 19, 2026
  • feat: Migrate from react-router-dom to TanStack Router v1 - Replaced `react-router-dom` with `@tanstack/react-router` v1, transitioning to a static route tree with composable HOC guards. - Deleted legacy routing components: `AppRoutes.tsx`, `ProtectedRoute.tsx`, `DashboardRedirect.tsx`. - Introduced new routing structure with `routeTree.tsx` for router singleton and guard application, and `AppRouter.tsx` as a thin wrapper for `RouterProvider`. - Updated `routePaths.tsx` to use `component: ComponentType` and added `guards?: RouteGuard[]` to `RouteDescription`. - Simplified `redirectStorage.ts` to a single session storage key for post-login redirects. - Updated architecture documentation to reflect changes in routing, error handling, and component structure. - Ensured all unit tests across 14 modules were migrated to the new routing structure and passed without TypeScript errors.

    @paulushcgcj paulushcgcj committed May 11, 2026
  • docs: update architecture documentation with user bookmarking feature and related changes

    @paulushcgcj paulushcgcj committed Apr 23, 2026
  • docs: add Feature Flags documentation and update architecture references

    @paulushcgcj paulushcgcj committed Apr 20, 2026
  • docs: update architecture documentation with global API middleware and notification improvements

    @paulushcgcj paulushcgcj committed Apr 16, 2026
  • docs: enhance notification events documentation and update architecture overview

    @paulushcgcj paulushcgcj committed Apr 15, 2026
  • docs: centralize query hooks and improve token handling in architecture documentation

    @paulushcgcj paulushcgcj committed Apr 14, 2026
  • docs: Enhance runtime configuration and feature flags documentation with validation rules and usage examples

    @paulushcgcj paulushcgcj committed Apr 10, 2026
  • feat: Add detailed error documentation for NR Waste Plus application - Introduced new error codes and descriptions for common issues: - G405: Method Not Allowed - G408: Request Timeout - G409: Conflict - G410: Gone - G413: Payload Too Large - G415: Unsupported Media Type - G422: Unprocessable Entity - G429: Too Many Requests - G500: Internal Server Error - G501: Not Implemented - G502: Bad Gateway - G503: Service Unavailable - G504: Gateway Timeout - P403: Insufficient Permissions - R600: Data Cannot Be Retrieved - U404: User Not Registered - Created an overarching error handling guide to assist users in understanding and resolving application errors.

    @paulushcgcj paulushcgcj committed Apr 10, 2026