diff --git a/ts/components/FlyoverPoolCard.vue b/ts/components/FlyoverPoolCard.vue index 84a1a301..5688b911 100644 --- a/ts/components/FlyoverPoolCard.vue +++ b/ts/components/FlyoverPoolCard.vue @@ -1,12 +1,13 @@ diff --git a/ts/components/MapProxiedArcgisTile.vue b/ts/components/MapProxiedArcgisTile.vue index 10e3d4ea..387a1486 100644 --- a/ts/components/MapProxiedArcgisTile.vue +++ b/ts/components/MapProxiedArcgisTile.vue @@ -1,92 +1,271 @@ - diff --git a/ts/components/PlanningColumnDetail.vue b/ts/components/PlanningColumnDetail.vue index 1682d6a5..a11d4908 100644 --- a/ts/components/PlanningColumnDetail.vue +++ b/ts/components/PlanningColumnDetail.vue @@ -52,21 +52,24 @@ -
- - -
+ diff --git a/ts/store/review-task.ts b/ts/store/review-task.ts index 8c217b6d..d4bb68a2 100644 --- a/ts/store/review-task.ts +++ b/ts/store/review-task.ts @@ -1,10 +1,10 @@ import { defineStore } from "pinia"; import { ref } from "vue"; import { SSEManager, SSEMessage } from "@/SSEManager"; -import { ReviewTask } from "@/type/api"; +import { ReviewTask, ReviewTaskListResponse } from "@/type/api"; import { useSessionStore } from "@/store/session"; -export const useReviewTaskStore = defineStore("review-task", () => { +export const useStoreReviewTask = defineStore("review-task", () => { // State const _byID = ref>(new Map()); const loading = ref(false); @@ -23,7 +23,7 @@ export const useReviewTaskStore = defineStore("review-task", () => { function byID(id: number): ReviewTask | undefined { return _byID.value.get(id); } - async function fetchAll(): Promise { + async function fetchAll(): Promise { const session = useSessionStore(); if (session.urls == null) { throw new Error("can't fetch without user URL data"); @@ -41,11 +41,12 @@ export const useReviewTaskStore = defineStore("review-task", () => { if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } - const data = await response.json(); + const data: ReviewTaskListResponse = await response.json(); _byID.value = new Map(); for (const t of data.tasks) { _byID.value.set(t.id, t); } + return data.tasks; } catch (err) { error.value = err instanceof Error ? err.message : "Unknown error"; console.error("Error loading tasks:", err); diff --git a/ts/type/api.ts b/ts/type/api.ts index b0f324cc..7d0706d8 100644 --- a/ts/type/api.ts +++ b/ts/type/api.ts @@ -553,6 +553,10 @@ export interface ReviewTask { pool?: ReviewTaskPool; id: number; } +export interface ReviewTaskListResponse { + tasks: ReviewTask[]; + total: number; +} export interface UploadDTO { created: string; filename: string; diff --git a/ts/view/review/Pool.vue b/ts/view/review/Pool.vue index 86d3f5f4..250f294a 100644 --- a/ts/view/review/Pool.vue +++ b/ts/view/review/Pool.vue @@ -62,11 +62,11 @@ body {