refactor(ticket): make details lot-based and remove class-detail flow

This commit is contained in:
2026-07-31 12:49:38 +05:30
parent 44d3be5d27
commit 2caeae7c91
20 changed files with 84 additions and 460 deletions

View File

@@ -1,6 +1,6 @@
'use client';
import { useCallback, useEffect, useMemo, useRef } from 'react';
import { useCallback, useMemo } from 'react';
import { useQueryClient } from '@tanstack/react-query';
import { API_ROUTES } from '@/constants/apiRoutes';
@@ -18,15 +18,9 @@ function isHeartbeatEvent(event: { type?: string } | null | undefined) {
export function useTicketDetailEvents(
ticketId: string | undefined,
defectClass: string | undefined,
enabled = true,
): void {
const queryClient = useQueryClient();
const defectClassRef = useRef(defectClass);
useEffect(() => {
defectClassRef.current = defectClass;
}, [defectClass]);
const refetchTicket = useCallback(() => {
if (!ticketId) return;
@@ -38,11 +32,6 @@ export function useTicketDetailEvents(
queryClient.refetchQueries({
queryKey: ticketKeys.timeline(ticketId),
});
if (defectClassRef.current) {
queryClient.refetchQueries({
queryKey: ticketKeys.classDetail(ticketId, defectClassRef.current),
});
}
queryClient.invalidateQueries({
queryKey: ticketKeys.defectClasses(ticketId),
});