diff --git a/TODO.md b/TODO.md index 587317f..d109378 100644 --- a/TODO.md +++ b/TODO.md @@ -109,13 +109,14 @@ src/services/ - [x] Corriger 13 imports externes (actions, API routes, pages) - [x] Corriger 3 imports internes entre services -### Phase 2: Analytics & Métriques -- [ ] **Déplacer `analytics.ts`** → `analytics/analytics.ts` - - [ ] Corriger imports dans hooks/components analytics -- [ ] **Déplacer `metrics.ts`** → `analytics/metrics.ts` - - [ ] Corriger import dans `actions/metrics.ts` -- [ ] **Déplacer `manager-summary.ts`** → `analytics/manager-summary.ts` - - [ ] Corriger imports dans components dashboard +### Phase 2: Analytics & Métriques ✅ +- [x] **Déplacer `analytics.ts`** → `analytics/analytics.ts` + - [x] Corriger 2 imports externes (actions, components) +- [x] **Déplacer `metrics.ts`** → `analytics/metrics.ts` + - [x] Corriger 7 imports externes (actions, hooks, components) +- [x] **Déplacer `manager-summary.ts`** → `analytics/manager-summary.ts` + - [x] Corriger 3 imports externes (components, pages) + - [x] Corriger imports database vers ../core/database ### Phase 3: Data Management - [ ] **Déplacer `backup.ts`** → `data-management/backup.ts` diff --git a/src/actions/analytics.ts b/src/actions/analytics.ts index dc1e957..fd19127 100644 --- a/src/actions/analytics.ts +++ b/src/actions/analytics.ts @@ -1,6 +1,6 @@ 'use server'; -import { AnalyticsService, ProductivityMetrics, TimeRange } from '@/services/analytics'; +import { AnalyticsService, ProductivityMetrics, TimeRange } from '@/services/analytics/analytics'; export async function getProductivityMetrics(timeRange?: TimeRange): Promise<{ success: boolean; diff --git a/src/actions/metrics.ts b/src/actions/metrics.ts index f6168b9..c3dc186 100644 --- a/src/actions/metrics.ts +++ b/src/actions/metrics.ts @@ -1,6 +1,6 @@ 'use server'; -import { MetricsService, WeeklyMetricsOverview, VelocityTrend } from '@/services/metrics'; +import { MetricsService, WeeklyMetricsOverview, VelocityTrend } from '@/services/analytics/metrics'; import { getToday } from '@/lib/date-utils'; /** diff --git a/src/app/weekly-manager/WeeklyManagerPageClient.tsx b/src/app/weekly-manager/WeeklyManagerPageClient.tsx index a640399..3c066f2 100644 --- a/src/app/weekly-manager/WeeklyManagerPageClient.tsx +++ b/src/app/weekly-manager/WeeklyManagerPageClient.tsx @@ -2,7 +2,7 @@ import { TasksProvider } from '@/contexts/TasksContext'; import ManagerWeeklySummary from '@/components/dashboard/ManagerWeeklySummary'; -import { ManagerSummary } from '@/services/manager-summary'; +import { ManagerSummary } from '@/services/analytics/manager-summary'; import { Task, Tag } from '@/lib/types'; interface WeeklyManagerPageClientProps { diff --git a/src/app/weekly-manager/page.tsx b/src/app/weekly-manager/page.tsx index c549987..b9ddd57 100644 --- a/src/app/weekly-manager/page.tsx +++ b/src/app/weekly-manager/page.tsx @@ -1,5 +1,5 @@ import { Header } from '@/components/ui/Header'; -import { ManagerSummaryService } from '@/services/manager-summary'; +import { ManagerSummaryService } from '@/services/analytics/manager-summary'; import { tasksService } from '@/services/tasks'; import { tagsService } from '@/services/tags'; import { WeeklyManagerPageClient } from './WeeklyManagerPageClient'; diff --git a/src/components/dashboard/ManagerWeeklySummary.tsx b/src/components/dashboard/ManagerWeeklySummary.tsx index 127dda6..440c890 100644 --- a/src/components/dashboard/ManagerWeeklySummary.tsx +++ b/src/components/dashboard/ManagerWeeklySummary.tsx @@ -1,7 +1,7 @@ 'use client'; import { useState } from 'react'; -import { ManagerSummary } from '@/services/manager-summary'; +import { ManagerSummary } from '@/services/analytics/manager-summary'; import { Card, CardHeader, CardContent } from '@/components/ui/Card'; import { Button } from '@/components/ui/Button'; import { TagDisplay } from '@/components/ui/TagDisplay'; diff --git a/src/components/dashboard/ProductivityAnalytics.tsx b/src/components/dashboard/ProductivityAnalytics.tsx index 6fc15bb..6a962d4 100644 --- a/src/components/dashboard/ProductivityAnalytics.tsx +++ b/src/components/dashboard/ProductivityAnalytics.tsx @@ -1,7 +1,7 @@ 'use client'; import { useState, useEffect, useTransition } from 'react'; -import { ProductivityMetrics } from '@/services/analytics'; +import { ProductivityMetrics } from '@/services/analytics/analytics'; import { getProductivityMetrics } from '@/actions/analytics'; import { CompletionTrendChart } from '@/components/charts/CompletionTrendChart'; import { VelocityChart } from '@/components/charts/VelocityChart'; diff --git a/src/components/dashboard/charts/CompletionRateChart.tsx b/src/components/dashboard/charts/CompletionRateChart.tsx index ad45f95..1d2b299 100644 --- a/src/components/dashboard/charts/CompletionRateChart.tsx +++ b/src/components/dashboard/charts/CompletionRateChart.tsx @@ -1,7 +1,7 @@ 'use client'; import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer } from 'recharts'; -import { DailyMetrics } from '@/services/metrics'; +import { DailyMetrics } from '@/services/analytics/metrics'; import { parseDate, formatDateShort } from '@/lib/date-utils'; interface CompletionRateChartProps { diff --git a/src/components/dashboard/charts/DailyStatusChart.tsx b/src/components/dashboard/charts/DailyStatusChart.tsx index 5ac38cc..a52ac1e 100644 --- a/src/components/dashboard/charts/DailyStatusChart.tsx +++ b/src/components/dashboard/charts/DailyStatusChart.tsx @@ -1,7 +1,7 @@ 'use client'; import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts'; -import { DailyMetrics } from '@/services/metrics'; +import { DailyMetrics } from '@/services/analytics/metrics'; import { parseDate, formatDateShort } from '@/lib/date-utils'; interface DailyStatusChartProps { diff --git a/src/components/dashboard/charts/ProductivityInsights.tsx b/src/components/dashboard/charts/ProductivityInsights.tsx index 909b0a3..159cd66 100644 --- a/src/components/dashboard/charts/ProductivityInsights.tsx +++ b/src/components/dashboard/charts/ProductivityInsights.tsx @@ -1,6 +1,6 @@ 'use client'; -import { DailyMetrics } from '@/services/metrics'; +import { DailyMetrics } from '@/services/analytics/metrics'; interface ProductivityInsightsProps { data: DailyMetrics[]; diff --git a/src/components/dashboard/charts/VelocityTrendChart.tsx b/src/components/dashboard/charts/VelocityTrendChart.tsx index cf2ce65..9b8e17f 100644 --- a/src/components/dashboard/charts/VelocityTrendChart.tsx +++ b/src/components/dashboard/charts/VelocityTrendChart.tsx @@ -1,7 +1,7 @@ 'use client'; import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts'; -import { VelocityTrend } from '@/services/metrics'; +import { VelocityTrend } from '@/services/analytics/metrics'; interface VelocityTrendChartProps { data: VelocityTrend[]; diff --git a/src/components/dashboard/charts/WeeklyActivityHeatmap.tsx b/src/components/dashboard/charts/WeeklyActivityHeatmap.tsx index 79f79af..8fdb863 100644 --- a/src/components/dashboard/charts/WeeklyActivityHeatmap.tsx +++ b/src/components/dashboard/charts/WeeklyActivityHeatmap.tsx @@ -1,6 +1,6 @@ 'use client'; -import { DailyMetrics } from '@/services/metrics'; +import { DailyMetrics } from '@/services/analytics/metrics'; import { parseDate, isToday } from '@/lib/date-utils'; interface WeeklyActivityHeatmapProps { diff --git a/src/hooks/use-metrics.ts b/src/hooks/use-metrics.ts index 9698ed2..72a0770 100644 --- a/src/hooks/use-metrics.ts +++ b/src/hooks/use-metrics.ts @@ -1,6 +1,6 @@ import { useState, useEffect, useTransition, useCallback } from 'react'; import { getWeeklyMetrics, getVelocityTrends } from '@/actions/metrics'; -import { WeeklyMetricsOverview, VelocityTrend } from '@/services/metrics'; +import { WeeklyMetricsOverview, VelocityTrend } from '@/services/analytics/metrics'; // Export des types pour les composants export type WeeklyMetrics = WeeklyMetricsOverview; diff --git a/src/services/analytics.ts b/src/services/analytics/analytics.ts similarity index 99% rename from src/services/analytics.ts rename to src/services/analytics/analytics.ts index 4ff5e7a..c7b312d 100644 --- a/src/services/analytics.ts +++ b/src/services/analytics/analytics.ts @@ -1,5 +1,5 @@ import { Task, TaskStatus, TaskPriority, TaskSource } from '@/lib/types'; -import { prisma } from './core/database'; +import { prisma } from '../core/database'; import { getToday, parseDate, subtractDays } from '@/lib/date-utils'; export interface ProductivityMetrics { diff --git a/src/services/manager-summary.ts b/src/services/analytics/manager-summary.ts similarity index 99% rename from src/services/manager-summary.ts rename to src/services/analytics/manager-summary.ts index aee776c..7580662 100644 --- a/src/services/manager-summary.ts +++ b/src/services/analytics/manager-summary.ts @@ -1,4 +1,4 @@ -import { prisma } from './core/database'; +import { prisma } from '../core/database'; import { startOfWeek, endOfWeek } from 'date-fns'; import { getToday } from '@/lib/date-utils'; diff --git a/src/services/metrics.ts b/src/services/analytics/metrics.ts similarity index 99% rename from src/services/metrics.ts rename to src/services/analytics/metrics.ts index 702aea5..ca352c0 100644 --- a/src/services/metrics.ts +++ b/src/services/analytics/metrics.ts @@ -1,4 +1,4 @@ -import { prisma } from './core/database'; +import { prisma } from '../core/database'; import { startOfWeek, endOfWeek, eachDayOfInterval, format, startOfDay, endOfDay } from 'date-fns'; import { fr } from 'date-fns/locale'; import { formatDateForAPI, getDayName, getToday, subtractDays } from '@/lib/date-utils';