From 78e3fdeb8eeeebae4fb153d9bf48252ce4a143e0 Mon Sep 17 00:00:00 2001 From: Cemonix Date: Tue, 2 Sep 2025 21:59:03 +0200 Subject: [PATCH 01/10] feat: Implement task assignment and loading functionality in workspace store --- frontend/src/stores/workspaceStore.ts | 20 +++ frontend/src/views/AnnotationWorkspace.vue | 143 ++++++++------------- 2 files changed, 75 insertions(+), 88 deletions(-) diff --git a/frontend/src/stores/workspaceStore.ts b/frontend/src/stores/workspaceStore.ts index 87d83ceb..b2a8f7a8 100644 --- a/frontend/src/stores/workspaceStore.ts +++ b/frontend/src/stores/workspaceStore.ts @@ -1135,6 +1135,26 @@ export const useWorkspaceStore = defineStore("workspace", { return result.navigation; }, + /** + * Assign a task to the current user and set its status to IN_PROGRESS + * This is used when auto-transitioning to the next task after completion + */ + async assignAndStartNextTask(projectId: number, taskId: number): Promise { + try { + // First assign the task to current user + await taskService.assignTaskToCurrentUser(projectId, taskId); + + // Then change status to IN_PROGRESS if not already + await taskService.changeTaskStatus(projectId, taskId, { + targetStatus: TaskStatus.IN_PROGRESS + }); + + logger.info(`Successfully assigned and started task ${taskId} for project ${projectId}`); + } catch (error) { + logger.error(`Failed to assign and start task ${taskId}:`, error); + throw error; + } + }, }, }); diff --git a/frontend/src/views/AnnotationWorkspace.vue b/frontend/src/views/AnnotationWorkspace.vue index d94169d7..9892452a 100644 --- a/frontend/src/views/AnnotationWorkspace.vue +++ b/frontend/src/views/AnnotationWorkspace.vue @@ -50,21 +50,19 @@ This task is completed - - - + + \ No newline at end of file From 90b39cf9c9d4fc3f7092254c43bd53c8eed9bec6 Mon Sep 17 00:00:00 2001 From: Cemonix Date: Tue, 2 Sep 2025 21:59:36 +0200 Subject: [PATCH 07/10] feat: Implement InvitationsSection component for managing team member invitations --- .../project/settings/InvitationsSection.vue | 734 ++++++++++++++++++ 1 file changed, 734 insertions(+) create mode 100644 frontend/src/components/project/settings/InvitationsSection.vue diff --git a/frontend/src/components/project/settings/InvitationsSection.vue b/frontend/src/components/project/settings/InvitationsSection.vue new file mode 100644 index 00000000..2923a7c8 --- /dev/null +++ b/frontend/src/components/project/settings/InvitationsSection.vue @@ -0,0 +1,734 @@ + + + + + \ No newline at end of file From f9c9a5801a37ea76ad034413298a88a6301e111c Mon Sep 17 00:00:00 2001 From: Cemonix Date: Tue, 2 Sep 2025 21:59:40 +0200 Subject: [PATCH 08/10] feat: Add DangerZoneSection component for managing project archival, restoration, ownership transfer, and deletion --- .../project/settings/DangerZoneSection.vue | 661 ++++++++++++++++++ 1 file changed, 661 insertions(+) create mode 100644 frontend/src/components/project/settings/DangerZoneSection.vue diff --git a/frontend/src/components/project/settings/DangerZoneSection.vue b/frontend/src/components/project/settings/DangerZoneSection.vue new file mode 100644 index 00000000..f995c7fb --- /dev/null +++ b/frontend/src/components/project/settings/DangerZoneSection.vue @@ -0,0 +1,661 @@ + + + + + \ No newline at end of file From f10f41c4a09d773e00bcbcea0e8ff44d3e3f2f5c Mon Sep 17 00:00:00 2001 From: Cemonix Date: Tue, 2 Sep 2025 21:59:43 +0200 Subject: [PATCH 09/10] feat: Revamp MembersSection for improved member management and bulk actions --- .../project/settings/MembersSection.vue | 792 ++++++++++++------ 1 file changed, 516 insertions(+), 276 deletions(-) diff --git a/frontend/src/components/project/settings/MembersSection.vue b/frontend/src/components/project/settings/MembersSection.vue index bafa0b20..cfbf1212 100644 --- a/frontend/src/components/project/settings/MembersSection.vue +++ b/frontend/src/components/project/settings/MembersSection.vue @@ -1,35 +1,64 @@ -