chore: prettier everywhere
This commit is contained in:
@@ -7,7 +7,7 @@ export type PeriodFilter = '7d' | '30d' | '3m' | 'current';
|
||||
* Filtre les analytics Jira selon la période sélectionnée
|
||||
*/
|
||||
export function filterAnalyticsByPeriod(
|
||||
analytics: JiraAnalytics,
|
||||
analytics: JiraAnalytics,
|
||||
period: PeriodFilter
|
||||
): JiraAnalytics {
|
||||
const now = getToday();
|
||||
@@ -39,37 +39,50 @@ export function filterAnalyticsByPeriod(
|
||||
function filterCurrentSprintAnalytics(analytics: JiraAnalytics): JiraAnalytics {
|
||||
// Garder seulement le dernier sprint (le plus récent)
|
||||
const currentSprint = analytics.velocityMetrics.sprintHistory.slice(-1);
|
||||
|
||||
|
||||
return {
|
||||
...analytics,
|
||||
velocityMetrics: {
|
||||
...analytics.velocityMetrics,
|
||||
sprintHistory: currentSprint,
|
||||
// Recalculer la vélocité moyenne avec seulement le sprint actuel
|
||||
averageVelocity: currentSprint.length > 0 ? currentSprint[0].completedPoints : 0
|
||||
}
|
||||
averageVelocity:
|
||||
currentSprint.length > 0 ? currentSprint[0].completedPoints : 0,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Filtre les analytics par date de cutoff
|
||||
*/
|
||||
function filterAnalyticsByDate(analytics: JiraAnalytics, cutoffDate: Date): JiraAnalytics {
|
||||
function filterAnalyticsByDate(
|
||||
analytics: JiraAnalytics,
|
||||
cutoffDate: Date
|
||||
): JiraAnalytics {
|
||||
// Filtrer l'historique des sprints
|
||||
const filteredSprintHistory = analytics.velocityMetrics.sprintHistory.filter(sprint => {
|
||||
const sprintEndDate = parseDate(sprint.endDate);
|
||||
return sprintEndDate >= cutoffDate;
|
||||
});
|
||||
const filteredSprintHistory = analytics.velocityMetrics.sprintHistory.filter(
|
||||
(sprint) => {
|
||||
const sprintEndDate = parseDate(sprint.endDate);
|
||||
return sprintEndDate >= cutoffDate;
|
||||
}
|
||||
);
|
||||
|
||||
// Si aucun sprint dans la période, garder au moins le plus récent
|
||||
const sprintHistory = filteredSprintHistory.length > 0
|
||||
? filteredSprintHistory
|
||||
: analytics.velocityMetrics.sprintHistory.slice(-1);
|
||||
const sprintHistory =
|
||||
filteredSprintHistory.length > 0
|
||||
? filteredSprintHistory
|
||||
: analytics.velocityMetrics.sprintHistory.slice(-1);
|
||||
|
||||
// Recalculer la vélocité moyenne
|
||||
const averageVelocity = sprintHistory.length > 0
|
||||
? Math.round(sprintHistory.reduce((sum, sprint) => sum + sprint.completedPoints, 0) / sprintHistory.length)
|
||||
: 0;
|
||||
const averageVelocity =
|
||||
sprintHistory.length > 0
|
||||
? Math.round(
|
||||
sprintHistory.reduce(
|
||||
(sum, sprint) => sum + sprint.completedPoints,
|
||||
0
|
||||
) / sprintHistory.length
|
||||
)
|
||||
: 0;
|
||||
|
||||
// Pour simplifier, on garde les autres métriques inchangées
|
||||
// Dans une vraie implémentation, on devrait re-filtrer toutes les données
|
||||
@@ -78,8 +91,8 @@ function filterAnalyticsByDate(analytics: JiraAnalytics, cutoffDate: Date): Jira
|
||||
velocityMetrics: {
|
||||
...analytics.velocityMetrics,
|
||||
sprintHistory,
|
||||
averageVelocity
|
||||
}
|
||||
averageVelocity,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
@@ -114,31 +127,31 @@ export function getPeriodInfo(period: PeriodFilter): {
|
||||
return {
|
||||
label: 'Derniers 7 jours',
|
||||
description: 'Vue hebdomadaire des métriques',
|
||||
icon: '📅'
|
||||
icon: '📅',
|
||||
};
|
||||
case '30d':
|
||||
return {
|
||||
label: 'Derniers 30 jours',
|
||||
description: 'Vue mensuelle des métriques',
|
||||
icon: '📊'
|
||||
icon: '📊',
|
||||
};
|
||||
case '3m':
|
||||
return {
|
||||
label: 'Derniers 3 mois',
|
||||
description: 'Vue trimestrielle des métriques',
|
||||
icon: '📈'
|
||||
icon: '📈',
|
||||
};
|
||||
case 'current':
|
||||
return {
|
||||
label: 'Sprint actuel',
|
||||
description: 'Focus sur le sprint en cours',
|
||||
icon: '🎯'
|
||||
icon: '🎯',
|
||||
};
|
||||
default:
|
||||
return {
|
||||
label: 'Période inconnue',
|
||||
description: '',
|
||||
icon: '❓'
|
||||
icon: '❓',
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user