feat: update dashboard components and analytics for 7-day summaries
- Modified `ManagerWeeklySummary`, `MetricsTab`, and `ProductivityAnalytics` to reflect a focus on the last 7 days instead of the current week. - Enhanced `ManagerSummaryService` and `MetricsService` to calculate metrics over a sliding 7-day window, improving data relevance. - Added a new utility function `formatDistanceToNow` for better date formatting in French. - Updated comments and documentation to clarify changes in timeframes.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
* Regroupe toutes les fonctions de formatage, manipulation et validation de dates
|
||||
*/
|
||||
|
||||
import { format, startOfDay, endOfDay, isValid } from 'date-fns';
|
||||
import { format, startOfDay, endOfDay, isValid, formatDistanceToNow as formatDistanceToNowFns } from 'date-fns';
|
||||
import { fr } from 'date-fns/locale';
|
||||
|
||||
// Re-export des utilitaires workday existants
|
||||
@@ -244,3 +244,17 @@ export function generateDateTitle(date: Date, emoji: string = '📅'): string {
|
||||
|
||||
return `${emoji} ${formatDateShort(date)}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Formate la distance depuis maintenant en français
|
||||
*/
|
||||
export function formatDistanceToNow(date: Date, options?: { addSuffix?: boolean }): string {
|
||||
if (!isValid(date)) {
|
||||
throw new Error('Date invalide fournie à formatDistanceToNow');
|
||||
}
|
||||
|
||||
return formatDistanceToNowFns(date, {
|
||||
locale: fr,
|
||||
addSuffix: options?.addSuffix ?? true
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user