From c4842d1d6edd9eeeb01545affb76e3d8eee48f2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Tore=20Gjerde?= Date: Thu, 27 Nov 2025 15:11:16 +0100 Subject: [PATCH] Make signee list form work in Summary2 in different task. --- src/layout/SigneeList/SigneeListSummary.tsx | 10 ++++++++-- src/layout/SigneeList/api.ts | 10 +++++++--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/layout/SigneeList/SigneeListSummary.tsx b/src/layout/SigneeList/SigneeListSummary.tsx index 1e4baabf2f..ea87b04ab2 100644 --- a/src/layout/SigneeList/SigneeListSummary.tsx +++ b/src/layout/SigneeList/SigneeListSummary.tsx @@ -9,6 +9,7 @@ import { nb } from 'date-fns/locale/nb'; import { FatalError } from 'src/app-components/error/FatalError/FatalError'; import { Label } from 'src/app-components/Label/Label'; import { LoadingWrapper } from 'src/app-components/loading/LoadingWrapper/LoadingWrapper'; +import { useTaskOverrides } from 'src/core/contexts/TaskOverrides'; import { Lang } from 'src/features/language/Lang'; import { type SigneeState, useSigneeList } from 'src/layout/SigneeList/api'; import classes from 'src/layout/SigneeList/SigneeListSummary.module.css'; @@ -22,8 +23,13 @@ interface SigneeListSummaryProps extends Summary2Props { } export function SigneeListSummary({ targetBaseComponentId, titleOverride }: SigneeListSummaryProps) { - const { instanceOwnerPartyId, instanceGuid, taskId } = useParams(); - const { data, isLoading, error } = useSigneeList(instanceOwnerPartyId, instanceGuid, taskId); + const { instanceOwnerPartyId, instanceGuid, taskId: taskIdFromQuery } = useParams(); + const { taskId: taskIdFromTaskOverrides } = useTaskOverrides(); + const { data, isLoading, error } = useSigneeList( + instanceOwnerPartyId, + instanceGuid, + taskIdFromTaskOverrides ?? taskIdFromQuery, + ); const originalTitle = useItemWhenType(targetBaseComponentId, 'SigneeList').textResourceBindings?.title; const title = titleOverride === undefined ? originalTitle : titleOverride; diff --git a/src/layout/SigneeList/api.ts b/src/layout/SigneeList/api.ts index 9c94bfd1ee..7da04cb8dd 100644 --- a/src/layout/SigneeList/api.ts +++ b/src/layout/SigneeList/api.ts @@ -36,14 +36,18 @@ export const signingQueries = { signeeList: (partyId: string | undefined, instanceGuid: string | undefined, taskId: string | undefined) => queryOptions({ queryKey: [...signingQueries.all, 'signeeList', partyId, instanceGuid, taskId], - queryFn: partyId && instanceGuid && taskId ? () => fetchSigneeList(partyId, instanceGuid) : skipToken, + queryFn: partyId && instanceGuid && taskId ? () => fetchSigneeList(partyId, instanceGuid, taskId) : skipToken, refetchInterval: 1000 * 60, // 1 minute refetchOnMount: 'always', }), }; -export async function fetchSigneeList(partyId: string, instanceGuid: string): Promise { - const url = `${appPath}/instances/${partyId}/${instanceGuid}/signing`; +export async function fetchSigneeList(partyId: string, instanceGuid: string, taskId?: string): Promise { + let url = `${appPath}/instances/${partyId}/${instanceGuid}/signing`; + + if (taskId) { + url = url.concat(`?taskId=${taskId}`); + } const response = await httpGet(url); const parsed = z.object({ signeeStates: z.array(signeeStateSchema) }).parse(response);