Commit Graph

99 Commits

Author SHA1 Message Date
4c19b68156 fix(gitea) : propagate API errors instead of silently returning empty results
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:58:55 +01:00
f978df6a4b fix(frontend) : explicit import for ConfirmDeleteDocumentModal
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:53:39 +01:00
98e832afa5 fix(frontend) : use dedicated confirm modal component for document deletion
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:48:10 +01:00
cbfbb16c59 feat(frontend) : replace confirm() with themed modal for document deletion
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:33:44 +01:00
9908f34580 fix(frontend) : refresh documents locally after upload/delete and improve progress UX
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:21:04 +01:00
7bf632c1da feat(bookstack) : integrate TaskBookStackLinks into TaskModal
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:39 +01:00
66a75c6b6a feat(bookstack) : add TaskBookStackLinks component
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:37 +01:00
f53b2f3d1f feat(bookstack) : add shelf select to ProjectDrawer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:34 +01:00
c9a3c7c5f8 feat(bookstack) : add BookStack tab to admin page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:30 +01:00
5777e8386f feat(bookstack) : add AdminBookStackTab component
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:27 +01:00
06f2a9e1ea feat(bookstack) : add i18n translations for BookStack
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:24 +01:00
b5fa9e7d06 feat(bookstack) : add frontend BookStack service
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:20 +01:00
73ecbbc95b feat(bookstack) : add frontend BookStack DTOs
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:15:12 +01:00
5327155a80 fix(frontend) : add missing useTaskDocumentService imports
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:12:29 +01:00
245a8a932e feat(frontend) : integrate documents into TaskModal
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:09:20 +01:00
48ef434f8b feat(frontend) : add document upload, list and preview components
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:08:10 +01:00
e53862d71f feat(frontend) : add TaskDocument DTO, service and i18n translations
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 18:07:00 +01:00
25b648a1b1 fix(frontend) : align time-tracking filters with view mode toggle
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 08:34:07 +01:00
f888a29e0a refactor(frontend) : make page headers and filters sticky across all pages
Wrap title + filters in a sticky container (top-8 sm:top-12, z-20, bg-white)
on all pages for consistent scroll behavior. Also fix SidebarTimer icon
visibility when sidebar is collapsed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 09:21:45 +01:00
802659434f fix(frontend) : fix time-tracking page scroll with fixed header and filters
Restructure time-tracking page layout so the page title and filters
stay fixed while only the calendar grid body scrolls internally.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 09:10:04 +01:00
25aef9b2d5 feat : add dashboard with Chart.js charts and filters
Implement the dashboard page with real data from the API:
- KPI cards (hours, active tasks, total tasks, projects)
- Charts: hours by day (line), hours by project (doughnut),
  tasks by status (doughnut), tasks by priority (bar),
  tasks by project (horizontal stacked bar)
- Filters: period (week/month), project, user
- Add chart.js and vue-chartjs dependencies
- Add dashboard sidebar icon and translations

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 09:05:35 +01:00
0733ac16cd feat : add project archiving feature
Allow projects to be archived/unarchived from the ProjectDrawer, with a
toggle filter on the projects page to show/hide archived projects.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 08:58:29 +01:00
Matthieu
c0b16ef6dc refactor(frontend) : redesign TaskGitSection with tabs and collapsible commits, add scrollable modal
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 16:44:30 +01:00
Matthieu
c89f9c5596 fix : load Gitea URL on modal open instead of onMounted
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:19:54 +01:00
Matthieu
c7a0dafae8 feat : integrate TaskGitSection into TaskModal
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:04:29 +01:00
Matthieu
6eeacd2cb0 feat : add TaskGitSection component
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:03:51 +01:00
Matthieu
027e31e139 feat : add Gitea repo selector to ProjectDrawer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:02:57 +01:00
Matthieu
f8c94cb177 feat : add Gitea tab to admin page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:02:00 +01:00
Matthieu
5b204a3464 feat : add AdminGiteaTab component
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:01:39 +01:00
Matthieu
92baf8ac0e feat : add Gitea i18n keys
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:01:05 +01:00
Matthieu
2073339d4f feat : add gitea fields to Project DTO
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:00:35 +01:00
Matthieu
e278286146 feat : add Gitea frontend service
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:00:17 +01:00
Matthieu
a6c5e54619 feat : add Gitea TypeScript DTOs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 13:59:56 +01:00
Matthieu
cb5aa4584c feat(frontend) : add tag, assignee and status filters on project page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:06:48 +01:00
Matthieu
1d0f9a28c3 feat(frontend) : add kanban drag & drop and improve filter selects on my-tasks
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:06:44 +01:00
Matthieu
d3ea09319c feat(frontend) : show project code and task number badge in TaskModal header
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:06:39 +01:00
Matthieu
7540c99501 feat : add my-tasks page with Kanban and List views
Add a /my-tasks page displaying all non-archived tasks across projects
with server-side filtering (assignee, project, group, priority, effort,
tags, status) and two view modes (Kanban columns by status, List view).
Includes sidebar navigation link and i18n translations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 11:34:16 +01:00
Matthieu
bf9faee5f4 feat(frontend) : add current time indicator line on calendar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 11:06:09 +01:00
Matthieu
7d1d81688e refactor(frontend) : replace TaskDrawer with TaskModal for ticket create/edit
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 11:06:04 +01:00
Matthieu
9a9e5093f5 feat : add archive/unarchive to TaskGroupDrawer and fix isFinal serialization
Fix TaskStatus getter naming (isFinal -> getIsFinal) so Symfony serializer
properly exposes the isFinal field. Add archive/unarchive buttons and
non-final tasks info message to TaskGroupDrawer. Remove obsolete TaskType
entity and repository.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 10:50:41 +01:00
Matthieu
7e7e373231 fix(frontend) : fix dropdown z-index and dev config
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 08:20:43 +01:00
Matthieu
517511177c feat : add project code and task auto-numbering
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 08:20:31 +01:00
Matthieu
56275a9ebe refactor : rename TaskType to TaskTag across the stack
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 08:20:21 +01:00
Matthieu
dbae1f7536 feat(frontend) : add isFinal toggle to TaskStatusDrawer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:08:19 +01:00
Matthieu
d5d6452cf2 feat(frontend) : add group archive/unarchive to ProjectGroupTab
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:07:21 +01:00
Matthieu
e6bbe66d42 feat(frontend) : add actions slot to DataTable component
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:06:28 +01:00
Matthieu
0c4363d32b feat(frontend) : add Archives sidebar link for projects
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:05:39 +01:00
Matthieu
81d0433653 feat(frontend) : create project archives page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:05:12 +01:00
Matthieu
5057ef45c8 feat(frontend) : filter archived tasks and groups from kanban view
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:04:15 +01:00
Matthieu
c097849dad feat(frontend) : add archive/unarchive buttons and delete confirmation to TaskDrawer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 18:03:27 +01:00