Release 25 (ms-react-platform and related repositories)

Overview

This release upgrades key dependencies across the frontend and backend, refactors the Reports and My Tasks pages, enhances export functionality with format selection and robust error handling, improves routing and navigation consistency via centralized URL management, and introduces better UI components and type safety throughout. It also includes important infrastructure and performance updates in telemetry and bundling tools.

New Features

  • Introduced a ReportsContainer component consolidating charts, filters, and table with shared state and dynamic filters for the Reports page.
  • Added export format selection (XLSX or CSV) with a new export hook and strategy pattern for handling export formats and file generation errors.
  • Created a LineChart component to visualize task statistics with segmented line bars and legends, replacing previous pie chart visualizations on the My Tasks page.
  • Added a full-width neutral-colored line segment placeholder for charts when no data is available to display.
  • Centralized frontend navigation via new APP_URLS and AUTH_URLS enums used across UI and auth components, replacing hardcoded route strings for consistent routing.
  • Implemented PreviousRouteContext with a goBack function providing intelligent back navigation supporting internal/external link detection.
  • Added robust typing for task filters and statistics queries improving type safety and clarity in data fetching hooks.
  • New ReportTaskFilters and ReportsSearchFilter components for improved filter inputs and search capability on reports.
  • Extracted reusable EmptyState components for TaskDocuments to show appropriate messaging when no data present.
  • Enhanced form validation: added Yup-based taskInformationValidationSchema with tighter required fields and improved messages.

Improvements / Changes

  • Upgraded Next.js to v14.2.28 and aligned related @next packages accordingly.
  • Upgraded MUI packages (@mui/material, @mui/icons-material, @mui/system, @mui/utils, etc.) to latest patch versions for improved stability and features.
  • Updated @tanstack/react-query to v5.64.1 and related query-core and eslint-plugin-query to compatible versions.
  • Bumped @opentelemetry dependencies to mostly v1.30 and instrumentation packages to v0.56+ for better telemetry support and bug fixes.
  • Upgraded Sentry packages from v8.42 to v8.48 enhancing error monitoring capabilities.
  • Upgraded build tools including rollup from v3.29.5 to v4.52.4 with expanded platform-specific builds for better packaging.
  • Consolidated and tidied imports in multiple components for better consistency and clarity.
  • Refactored DataGrid usage: wrapped in MUI Stack with flex layout and minHeight to improve page scrolling.
  • Replaced duplicate or redundant auth-related URL constants with a single shared APP_URLS module.
  • Adjusted Task table to include conditional assignees column and show task update relative timestamps.
  • Refined loading components with Suspense and Skeleton fallbacks to enhance perceived performance.
  • Simplified getTaskAssignees API call removing try-catch, moving to centralized crud file.
  • Removed deprecated yarnPath configuration and updated Yarn version to 4.5.0.
  • Fixed UI text placeholders and labels for better user clarity.
  • Removed unused or commented code across various modules.

Bug Fixes

  • Fixed routing inconsistencies by replacing hardcoded paths leading to incorrect destinations (e.g., Dashboard → My Tasks).
  • Resolved issue with export error states by integrating Snackbar and Alert for user-friendly error messages.
  • Corrected risk filter logic in dashboard filters to properly match risk levels.
  • Handled server-side rendering safely by guarding usage of window and document in referrer logic.
  • Improved type definitions correcting optional/required fields mismatches in task-related data structures.
  • Fixed minor UI glitches: updated typography variants, replaced Box with Stack where appropriate for layout consistency.

Developer Notes

  • Export functionality now uses a Strategy pattern implemented in ExportService class with XLSX and CSV strategies, enabling extension to new formats.
  • React Hook Form integration enhanced with yupResolver providing schema validation for task information forms.
  • Routing and navigation unified using new APP_URLS and AUTH_URLS enums; developers should update any hardcoded paths accordingly.
  • Telemetry packages upgraded requiring checking compatibility with monitoring integrations.
  • Rollup upgrade to v4 includes additional platform-specific plugins; verify bundler behavior during build.
  • refactor: PreviousRouteProvider context updated to share goBack function rather than previousRoute URL for better navigation handling.

Breaking Changes

  • Removal of legacy authUrls array and direct imports of path strings replaced by APP_URLS and AUTH_URLS enums—update imports and usage accordingly.
  • Export hook no longer uses useMutation directly; consumers must use useExportTasks hook and provide format setting.
  • TaskRisk enums renamed from observation-related to task-specific variants; please update usages of EObservationRiskStatus and EObservationRiskStatusFilterOptions to ETaskRiskStatus and ETaskRiskStatusFilterOptions.
  • DataGrid styling now expects outer Stack wrapper; adjust custom styles if interacting with table container sizing.
  • React and TypeScript typings upgraded to support React 19—verify compatibility in typing-sensitive areas.

Acknowledgements / Contributors

Thanks to all dependency update automation contributors for keeping packages up to date and improving build processes.

This release collectively enhances frontend user experience, backend telemetry, build tooling, and code hygiene, driving more robust and maintainable delivery of FirstMate’s platform features.