major refactor of the dashboard and react-openapi integration #1
Reference in New Issue
Block a user
No description provided.
Delete Branch "period-selection"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
This MR introduces a major refactor of the dashboard and react-openapi integration, focusing on configurability, separation of concerns, and improved extensibility.
Key Changes
1. OpenAPI / Admin Refactor
Extracted
ConfigContextinto a dedicated provider.Introduced
AppProviderto encapsulate:Removed internal
QueryClientProviderfromAdminfor better composability.Adminnow supports both:2. Resource System Improvements
Added
hiddenflag toResourceConfigand overrides.Admin UI now filters out hidden resources.
Added
useResourceByNamehelper for dynamic resource access.Improved
useResource:3. API Client Enhancements
Added custom
paramsSerializer:[]4. Dashboard Architecture Overhaul
Replaced hardcoded dashboard with config-driven system:
ConfigurableDashboardNew state model:
mode(expense/income)periodType(rolling/calendar)comparisonselectedPeriodId5. Component Refactor (View / Logic Split)
Split major components into:
.tsx(logic/controller).view.tsx(presentation).models.ts(types)Applied to:
6. HistoryChart Redesign
Fully rebuilt using report-driven data
Supports:
Introduced:
7. Reporting Integration
Dashboard now powered by:
useReportprepareReportRemoves need for multiple manual API calls
8. UI / UX Improvements
9. Cleanup & Removals
Removed legacy components:
HistoryChartProgressCardSimplified Header layout spacing
Behavior Changes
[].Risks / Considerations
Follow-ups
@ts-ignoreinGenericForm.