- Add disease detail page component with data fetching and error handling - Create shared types for diseases and classifications - Implement API routes for diseases, classifications, and dashboard summary - Develop reusable components for risk badge and disease card - Build catalog page with search and filter functionality - Update dashboard page with data-backed summary and manual classification form - Register new routes in the web application - Ensure type safety and consistency across shared modules
24 lines
579 B
TypeScript
24 lines
579 B
TypeScript
import type { DiseaseCatalogItem, DiseaseSlug, RiskLevel } from './diseases';
|
|
|
|
export type ManualClassificationRequest = {
|
|
diseaseSlug: DiseaseSlug;
|
|
observation: string;
|
|
location: string;
|
|
};
|
|
|
|
export type ManualClassificationRecord = {
|
|
id: string;
|
|
diseaseSlug: DiseaseSlug;
|
|
observation: string;
|
|
location: string;
|
|
createdAt: string;
|
|
disease: DiseaseCatalogItem;
|
|
};
|
|
|
|
export type DashboardSummary = {
|
|
diseaseCount: number;
|
|
classificationCount: number;
|
|
latestClassification: ManualClassificationRecord | null;
|
|
riskDistribution: Record<RiskLevel, number>;
|
|
};
|