From a05c60b0a735c70b985e4f069e0d39e305965e6f Mon Sep 17 00:00:00 2001 From: Nishit Suwal <81785002+NSUWAL123@users.noreply.github.com> Date: Wed, 13 Nov 2024 22:05:03 +0545 Subject: [PATCH] feat(mapper): map new feature in odk btn (#1879) * fix(dialog-task-actions): add keyboard listener event * feat(icon): icon add * fix(+page): change dialogTaskActions prop type * feat(dialog-task-actions): mapNewFeature btn add to open ODK --- .../lib/components/dialog-task-actions.svelte | 91 +++++++++++++++++-- .../src/routes/[projectId]/+page.svelte | 4 +- src/mapper/static/assets/icons/new-window.svg | 1 + 3 files changed, 87 insertions(+), 9 deletions(-) create mode 100644 src/mapper/static/assets/icons/new-window.svg diff --git a/src/mapper/src/lib/components/dialog-task-actions.svelte b/src/mapper/src/lib/components/dialog-task-actions.svelte index 577c47d6c0..cf5813cef3 100644 --- a/src/mapper/src/lib/components/dialog-task-actions.svelte +++ b/src/mapper/src/lib/components/dialog-task-actions.svelte @@ -1,16 +1,37 @@ {#if taskStore.selectedTaskId && selectedTab === 'map' && isTaskActionModalOpen && (taskStore.selectedTaskState === 'UNLOCKED_TO_MAP' || taskStore.selectedTaskState === 'LOCKED_FOR_MAPPING')} @@ -18,14 +39,42 @@
-
-

Task #{taskStore.selectedTaskId}

+
toggleTaskActionModal(false)} + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + toggleTaskActionModal(false); + } + }} + role="button" + tabindex="0" >
+
+

Task #{taskStore.selectedTaskId}

+
{ + mapNewFeature(); + }} + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + mapNewFeature(); + } + }} + role="button" + tabindex="0" + class="flex items-center gap-1 cursor-pointer group" + > + +

map new feature

+
+
{#if taskStore.selectedTaskState === 'UNLOCKED_TO_MAP'}

Do you want to start mapping task #{taskStore.selectedTaskId}?

@@ -36,6 +85,13 @@ class="secondary" onclick={() => toggleTaskActionModal(false)} outline + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + toggleTaskActionModal(false); + } + }} + role="button" + tabindex="0" > CANCEL @@ -43,7 +99,14 @@ variant="default" size="small" class="primary" - onclick={() => mapTask(projectId, taskStore.selectedTaskId)} + onclick={() => mapTask(projectData?.id, taskStore.selectedTaskId)} + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + mapTask(projectData?.id, taskStore.selectedTaskId); + } + }} + role="button" + tabindex="0" > @@ -54,11 +117,18 @@

Task #{taskStore.selectedTaskId} has been locked. Is the task completely mapped?

resetTask(projectId, taskStore.selectedTaskId)} + onclick={() => resetTask(projectData?.id, taskStore.selectedTaskId)} variant="default" outline size="small" class="secondary" + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + resetTask(projectData?.id, taskStore.selectedTaskId); + } + }} + role="button" + tabindex="0" > CANCEL MAPPING finishTask(projectId, taskStore.selectedTaskId)} + onclick={() => finishTask(projectData?.id, taskStore.selectedTaskId)} variant="default" size="small" class="green" + onkeydown={(e: KeyboardEvent) => { + if (e.key === 'Enter') { + finishTask(projectData?.id, taskStore.selectedTaskId); + } + }} + role="button" + tabindex="0" > COMPLETE MAPPING diff --git a/src/mapper/src/routes/[projectId]/+page.svelte b/src/mapper/src/routes/[projectId]/+page.svelte index 0de4ec3319..6ae5ac7bed 100644 --- a/src/mapper/src/routes/[projectId]/+page.svelte +++ b/src/mapper/src/routes/[projectId]/+page.svelte @@ -143,7 +143,7 @@ isTaskActionModalOpen = value; }} {selectedTab} - projectId={data.projectId} + projectData={data?.project} /> {#if selectedTab !== 'map'} @@ -202,7 +202,7 @@ class="z-9999 fixed bottom-0 left-0 right-0" placement="bottom" no-scroll-controls - onsl-tab-show={(e: CustomEvent<{ name: string }>) => { + onsl-tab-show={(e: CustomEvent<{ name: string }>) => { selectedTab = e.detail.name; if ( e.detail.name !== 'qrcode' && diff --git a/src/mapper/static/assets/icons/new-window.svg b/src/mapper/static/assets/icons/new-window.svg new file mode 100644 index 0000000000..9fbfa97cb7 --- /dev/null +++ b/src/mapper/static/assets/icons/new-window.svg @@ -0,0 +1 @@ + \ No newline at end of file