customise organisation issue types

This commit is contained in:
2026-01-25 00:51:49 +00:00
parent d5a0829bad
commit f11c9fa826
17 changed files with 629 additions and 15 deletions

View File

@@ -3,9 +3,11 @@ import type {
IssueRecord,
IssueResponse,
IssuesReplaceStatusRequest,
IssuesReplaceTypeRequest,
IssueUpdateRequest,
StatusCountResponse,
SuccessResponse,
TypeCountResponse,
} from "@sprint/shared";
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
import { queryKeys } from "@/lib/query/keys";
@@ -76,3 +78,23 @@ export function useReplaceIssueStatus() {
},
});
}
export function useIssueTypeCount(organisationId?: number | null, type?: string | null) {
return useQuery<TypeCountResponse>({
queryKey: queryKeys.issues.typeCount(organisationId ?? 0, type ?? ""),
queryFn: () => issue.typeCount(organisationId ?? 0, type ?? ""),
enabled: Boolean(organisationId && type),
});
}
export function useReplaceIssueType() {
const queryClient = useQueryClient();
return useMutation<unknown, Error, IssuesReplaceTypeRequest>({
mutationKey: ["issues", "replace-type"],
mutationFn: issue.replaceType,
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: queryKeys.issues.all });
},
});
}