From 1b652ef680d0dece7b35eccb8d5f4b1ca4d97be6 Mon Sep 17 00:00:00 2001 From: Matthieu Date: Sat, 20 Jun 2026 16:16:49 +0200 Subject: [PATCH] feat(time-tracking) : extract time-tracking front into Nuxt module layer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Companion to the backend module migration (LST-64). The Nuxt layer is auto-detected from frontend/modules/* — no nuxt.config change needed. - Move page, timer store, time-entries service + DTO and the 6 time-tracking components into frontend/modules/time-tracking/. - Rewrite explicit service/DTO imports to ~/modules/time-tracking/* (store and components stay auto-imported); update the dashboard (index.vue) consumer. - Route /time-tracking preserved; i18n keys kept in the global locale file. nuxt build passes; /time-tracking routed. --- .../time-tracking/components}/TimeEntryBlock.vue | 2 +- .../time-tracking/components}/TimeEntryContextMenu.vue | 2 +- .../time-tracking/components}/TimeEntryDrawer.vue | 4 ++-- .../time-tracking/components}/TimeEntryList.vue | 2 +- .../time-tracking/components}/TimeTrackingCalendar.vue | 2 +- .../components}/TimeTrackingExportDrawer.vue | 0 frontend/modules/time-tracking/nuxt.config.ts | 1 + .../{ => modules/time-tracking}/pages/time-tracking.vue | 4 ++-- .../time-tracking}/services/dto/time-entry.ts | 8 ++++---- .../{ => modules/time-tracking}/services/time-entries.ts | 0 frontend/{ => modules/time-tracking}/stores/timer.ts | 4 ++-- frontend/pages/index.vue | 4 ++-- 12 files changed, 17 insertions(+), 16 deletions(-) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeEntryBlock.vue (99%) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeEntryContextMenu.vue (96%) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeEntryDrawer.vue (98%) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeEntryList.vue (98%) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeTrackingCalendar.vue (99%) rename frontend/{components/time-tracking => modules/time-tracking/components}/TimeTrackingExportDrawer.vue (100%) create mode 100644 frontend/modules/time-tracking/nuxt.config.ts rename frontend/{ => modules/time-tracking}/pages/time-tracking.vue (98%) rename frontend/{ => modules/time-tracking}/services/dto/time-entry.ts (69%) rename frontend/{ => modules/time-tracking}/services/time-entries.ts (100%) rename frontend/{ => modules/time-tracking}/stores/timer.ts (95%) diff --git a/frontend/components/time-tracking/TimeEntryBlock.vue b/frontend/modules/time-tracking/components/TimeEntryBlock.vue similarity index 99% rename from frontend/components/time-tracking/TimeEntryBlock.vue rename to frontend/modules/time-tracking/components/TimeEntryBlock.vue index ffdb7d7..560ccd3 100644 --- a/frontend/components/time-tracking/TimeEntryBlock.vue +++ b/frontend/modules/time-tracking/components/TimeEntryBlock.vue @@ -64,7 +64,7 @@