Commit Graph

63 Commits

Author SHA1 Message Date
Matthieu
b76fd589cc docs : update archiving spec with edge cases and implementation details
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 17:33:29 +01:00
Matthieu
20a5dca6d5 docs : add task archiving feature design spec
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 17:31:20 +01:00
Matthieu
60b5aad0a4 feat(frontend) : allow multiple type selection in time entry drawer and remove group creation from kanban
Replace single-select dropdown with multi-select colored badges for types in TimeEntryDrawer, matching TaskDrawer pattern. Remove the "Ajouter un groupe" button and associated code from the kanban page.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 15:14:25 +01:00
Matthieu
3e6f4ecc7a fix(frontend) : fix z-index overlay hiding drawers and add pathPrefix config
Lower the white overlay div from z-50 to z-30 so it still masks scrolling
content but no longer covers drawers/modals teleported to body.
Add components pathPrefix: false to resolve auto-imported components
without folder prefix.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 12:12:48 +01:00
Matthieu
dac493b76d refactor(frontend) : remove per-project statuses page and sidebar link 2026-03-12 11:52:30 +01:00
Matthieu
37a6cb5558 refactor(frontend) : load global statuses in kanban page 2026-03-12 11:52:15 +01:00
Matthieu
cf84883530 feat(admin) : add statuts tab to admin page 2026-03-12 11:52:07 +01:00
Matthieu
ae8654d9ca feat(admin) : add task reassignment logic to AdminStatusTab 2026-03-12 11:51:15 +01:00
Matthieu
9d5008a21d refactor(frontend) : remove projectId from TaskStatusDrawer 2026-03-12 11:50:07 +01:00
Matthieu
cbe3408b72 refactor(frontend) : remove project from TaskStatus DTO and service 2026-03-12 11:49:56 +01:00
Matthieu
16c9b845a6 fix(fixtures) : create global statuses instead of per-project 2026-03-12 11:49:03 +01:00
Matthieu
df29214509 feat(backend) : add migration to remove project_id from task_status 2026-03-12 11:48:43 +01:00
Matthieu
5b8b4716df refactor(backend) : remove project relationship from TaskStatus entity 2026-03-12 11:47:53 +01:00
Matthieu
f06842729d refactor(frontend) : remove clients sidebar link 2026-03-12 11:46:51 +01:00
Matthieu
1f74509475 feat(admin) : move clients into admin page, remove standalone page 2026-03-12 11:46:43 +01:00
Matthieu
0bf01cfb27 feat(admin) : add AdminClientTab component 2026-03-12 11:46:19 +01:00
Matthieu
2ffdaafd08 style(frontend) : update timer and delete action colors 2026-03-11 18:05:45 +01:00
Matthieu
33f2bcc393 fix(time-tracking) : keep calendar header sticky below page header 2026-03-11 18:04:57 +01:00
Matthieu
f9d4de3e33 style(frontend) : apply UI corrections from design review
- Page titles in blue primary (#222783)
- Double main content margins (px-16 py-24)
- Remove blue border above sidebar timer
- Remove project color dot, use project color on title text
- All delete buttons/icons orange (#E2953C)
- Fix collapsed sidebar logo (object-cover object-left)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 11:16:50 +01:00
c886506791 fix(time-tracking) : return empty collection instead of 404 for active timer endpoint
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 00:00:33 +01:00
1efa0fa9ca refactor(frontend) : reorganize components into subdirectories and fix imports
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:59:24 +01:00
d28f385918 docs(claude) : update project structure and add missing commands
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:53:53 +01:00
ae3eeed7d9 refactor(time-tracking) : use MalioSelect for filters and drawer, improve calendar cards
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:47:49 +01:00
7ee1be63b3 feat(time-tracking) : show real-time timer in browser tab title
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:30:10 +01:00
c15a10b36f feat(time-tracking) : add list view for time entries
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:29:58 +01:00
049275fd96 feat(time-tracking) : add calendar overlap columns, responsive cards, project filter, and auto-scroll
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:20:07 +01:00
a9ba2f3815 feat(time-tracking) : improve TimeEntryDrawer with date/time fields, duration label, and delete
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:20:02 +01:00
7484ce3e45 feat(time-tracking) : add pending complete entry flow and redesign sidebar timer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:19:58 +01:00
d4c5660ba6 feat(tasks) : add delete button to TaskDrawer and toggle timer from TaskCard
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:19:53 +01:00
576922200c fix(backend) : fix TimeEntry API route order and config reference typo
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:19:41 +01:00
74116506db feat(time-tracking) : add calendar page, timer sidebar, and all UI components
- SidebarTimer widget with play/stop button
- TimeEntryBlock with drag-to-move and resize
- TimeEntryDrawer for create/edit entries
- TimeEntryContextMenu for copy/paste/delete
- TimeTrackingCalendar grid with week/day view
- Time tracking page with filters and navigation
- Sidebar link and timer integration in layout
- TaskCard play button connected to timer store

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:22:48 +01:00
cf021d6136 feat(time-tracking) : add TimeEntry DTO, service, timer store, and i18n keys
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:22:40 +01:00
1e07eb1d64 feat(time-tracking) : add ActiveTimeEntryProvider, fixtures, and serialization groups
- ActiveTimeEntryProvider returns active timer for current user
- TimeEntry fixtures with 10 sample entries for the SIRH project
- Add time_entry:read group to Project, User, and TaskType for embedded serialization

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:22:34 +01:00
fa0adfde88 refactor(frontend) : extract reusable DataTable component from repeated table markup
Replace inline table HTML in 8 files with a shared DataTable component
supporting columns definition, scoped slots for custom cells, and
built-in delete action.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:19:25 +01:00
e9ca888971 feat(time-tracking) : add TimeEntry entity and migration
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:10:27 +01:00
2299d66a9f docs : add time tracking implementation plan
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 22:05:46 +01:00
66bb94fc98 feat(backend) : add project relation to TaskStatus entity with migration and fixtures
Add ManyToOne project field on TaskStatus, SearchFilter for API filtering,
migration to add the column, and update fixtures to create statuses per project.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:58:41 +01:00
50ae9ef549 feat(projects) : add per-project task statuses and split project detail into sub-pages
Move project detail from [id].vue to [id]/ directory with Kanban, Groups
and Statuses sub-pages. Add project filter on task statuses service and
drawer. Remove global statuses tab from admin.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:58:35 +01:00
95450e3b5f feat(layout) : add collapsible sidebar with icon-only compact mode
Introduces SidebarLink component, UI store with localStorage persistence,
and smooth CSS transitions between expanded (w-64) and compact (w-16) modes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:36:28 +01:00
bb332aa7e8 docs : add TODO with pending features (task groups page, ticket archiving)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 07:47:51 +01:00
fd6d0afb24 style(projects) : replace color bar with circle avatar on project cards
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 07:44:17 +01:00
71e6e83c82 feat(clients) : add client deletion from list page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 07:44:10 +01:00
2f746ebce4 chore : add nuxt.config.ts.new with dev proxy config
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:48:08 +01:00
91da21d16b revert : restore original nuxt.config.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:45:19 +01:00
8c56ee6dd7 chore : update project documentation and config
Update CLAUDE.md structure, add implementation plans, fix
config/reference.php and MeProvider comment.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:49 +01:00
81797e10c0 feat : add User CRUD with admin management
Add User API operations (GET, POST, PATCH, DELETE) with password
hashing processor, frontend service, drawer and admin tab.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:49 +01:00
c7b1e62037 feat : add admin page for task configuration
Add admin page with tabs for managing task statuses, efforts,
priorities and types, with CRUD drawers and color picker.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:48 +01:00
ac11690ad4 feat : add task management with kanban and backlog
Add kanban board with drag-and-drop, backlog section, task/group
drawers, DTOs, services, and i18n translations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:48 +01:00
0a7856b37c feat : add task data fixtures
Add fixtures for TaskStatus, TaskEffort, TaskPriority, TaskType,
TaskGroup and sample Task entries.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:48 +01:00
1d50e5dcb3 feat : add Task entities, repositories and migration
Add Task, TaskStatus, TaskEffort, TaskPriority, TaskType, TaskGroup
entities with Doctrine mappings and API Platform CRUD operations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:40:48 +01:00