Skip to content

Commit

Permalink
fix(mapper): replace task id with index on activities panel (#2002)
Browse files Browse the repository at this point in the history
* feat(tasks): add state of task id & index map

* fix(activities): use task index instead of task id on activities card

* fix(+page): generate and store key-value pairs of task id-index
  • Loading branch information
NSUWAL123 authored Dec 20, 2024
1 parent f81c533 commit 2b9ca09
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 4 deletions.
3 changes: 2 additions & 1 deletion src/mapper/src/lib/components/more/activities.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
let { taskEvents, zoomToTask }: Props = $props();
const taskStore = getTaskStore();
const taskIdIndexMap: Record<number, number> = taskStore.taskIdIndexMap;
</script>

<div class="overflow-y-scroll overflow-x-hidden flex flex-col gap-2 pb-2">
Expand Down Expand Up @@ -38,7 +39,7 @@
<div class="flex flex-col gap-1 flex-1">
<p class="font-semibold capitalize">{event?.username}</p>
<div class="flex items-center justify-between">
<p class="text-[#484848] text-sm">#{event?.task_id}</p>
<p class="text-[#484848] text-sm">#{taskIdIndexMap[event?.task_id]}</p>
<div class="flex items-center gap-2">
<hot-icon name="clock-history" class="!text-[1rem] text-red-600 cursor-pointer duration-200"></hot-icon>
<p class="text-[#484848] text-sm">
Expand Down
10 changes: 10 additions & 0 deletions src/mapper/src/routes/[projectId]/+page.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,16 @@
}
});
$effect(() => {
let taskIdIndexMap: Record<number, number> = {};
if (data?.project?.tasks && data?.project?.tasks?.length > 0) {
data?.project?.tasks?.forEach((task: ProjectTask) => {
taskIdIndexMap[task.id] = task.project_task_index;
});
}
taskStore.setTaskIdIndexMap(taskIdIndexMap);
});
function zoomToTask(taskId: number) {
const taskObj = data.project.tasks.find((task: ProjectTask) => task.id === taskId);
Expand Down
14 changes: 11 additions & 3 deletions src/mapper/src/store/tasks.svelte.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ let selectedTaskIndex: number | null = $state(null);
let selectedTask: any = $state(null);
let selectedTaskState: string = $state('');
let selectedTaskGeom: GeoJSON | null = $state(null);
let taskIdIndexMap: Record<number, number> = $state({});

function getTaskEventStream(projectId: number): ShapeStream | undefined {
if (!projectId) {
Expand Down Expand Up @@ -92,15 +93,20 @@ function getTaskStore() {
selectedTaskGeom = featcol.features.find((x) => x?.properties?.fid === taskId)?.geometry || null;
}

function setTaskIdIndexMap(idIndexMappedRecord: Record<number, number>) {
taskIdIndexMap = idIndexMappedRecord;
}

return {
// The task areas / status colours displayed on the map
appendTaskStatesToFeatcol: appendTaskStatesToFeatcol,
subscribeToEvents: subscribeToTaskEvents,
setSelectedTaskId: setSelectedTaskId,
setTaskIdIndexMap: setTaskIdIndexMap,
get featcol() {
return featcol;
},

// The latest event to display in notifications bar
subscribeToEvents: subscribeToTaskEvents,
get latestEvent() {
return latestEvent;
},
Expand All @@ -109,7 +115,6 @@ function getTaskStore() {
},

// The selected task to display mapping dialog
setSelectedTaskId: setSelectedTaskId,
get selectedTaskId() {
return selectedTaskId;
},
Expand All @@ -125,6 +130,9 @@ function getTaskStore() {
get selectedTaskGeom() {
return selectedTaskGeom;
},
get taskIdIndexMap() {
return taskIdIndexMap;
},
};
}

Expand Down

0 comments on commit 2b9ca09

Please sign in to comment.