refactor(ticket): remove defect-classes endpoint and related hooks

This commit is contained in:
2026-07-31 17:25:53 +05:30
parent 87fa04e1b5
commit 9cd7186357
8 changed files with 0 additions and 85 deletions

View File

@@ -32,9 +32,6 @@ export function useTicketDetailEvents(
queryClient.refetchQueries({
queryKey: ticketKeys.timeline(ticketId),
});
queryClient.invalidateQueries({
queryKey: ticketKeys.defectClasses(ticketId),
});
queryClient.invalidateQueries({ queryKey: ticketKeys.lists() });
}, [queryClient, ticketId]);

View File

@@ -77,14 +77,6 @@ export function useTicketTimelineQuery(ticketId: string | undefined) {
});
}
export function useTicketDefectClassesQuery(ticketId: string | undefined) {
return useQuery({
queryKey: ticketKeys.defectClasses(ticketId ?? ''),
queryFn: () => ticketService.getTicketDefectClasses(ticketId as string),
enabled: Boolean(ticketId),
});
}
export function useTicketAssignmentsQuery(
ticketId: string | undefined,
initialAssignments?: TicketAssignmentSummary[],
@@ -231,9 +223,6 @@ export function useDiscardDetectionMutation(
queryClient.invalidateQueries({
queryKey: ticketKeys.overview(ticketId),
}),
queryClient.invalidateQueries({
queryKey: ticketKeys.defectClasses(ticketId),
}),
queryClient.invalidateQueries({ queryKey: ticketKeys.lists() }),
queryClient.invalidateQueries({
queryKey: ticketKeys.assignments(ticketId),
@@ -274,9 +263,6 @@ export function useReviewDetectionRepairProofMutation({
queryKey: ticketKeys.classDetectionLists(videoId),
})
: Promise.resolve(),
queryClient.invalidateQueries({
queryKey: ticketKeys.defectClasses(ticketId),
}),
queryClient.invalidateQueries({
queryKey: ticketKeys.overview(ticketId),
}),

View File

@@ -32,8 +32,6 @@ export const ticketKeys = {
'review',
proofStatus ?? 'all',
] as const,
defectClasses: (ticketId: string) =>
[...ticketKeys.details(), ticketId, 'defect-classes'] as const,
assignments: (ticketId: string) =>
[...ticketKeys.details(), ticketId, 'assignments'] as const,
extensionRequest: (ticketId: string, assignmentId: number | undefined) =>

View File

@@ -66,7 +66,6 @@ export const API_ROUTES = {
BASE: '/biz/api/v1/tickets',
DETAIL: (id: string) => `/biz/api/v1/tickets/${id}`,
TIMELINE: (id: string) => `/biz/api/v1/tickets/${id}/timeline`,
DEFECT_CLASSES: (id: string) => `/biz/api/v1/tickets/${id}/defect-classes`,
ASSIGNMENTS: (id: string) => `/biz/api/v1/tickets/${id}/assignments`,
REQUEST_EXTENSION: (ticketId: string, assignmentId: number) =>
`/biz/api/v1/tickets/${ticketId}/assignments/${assignmentId}/extension-requests`,

View File

@@ -1,35 +0,0 @@
import type { TicketDefectClassTicketStatus } from '@/types';
export const DEFECT_CLASS_STATUS_CONFIG: Record<
TicketDefectClassTicketStatus,
{
label: string;
badgeClassName: string;
}
> = {
unassigned: {
label: 'Unassigned',
badgeClassName:
'bg-zinc-500/15 text-zinc-600 dark:bg-zinc-500/20 dark:text-zinc-300',
},
assigned: {
label: 'Assigned',
badgeClassName:
'bg-red-500/15 text-red-600 dark:bg-red-500/20 dark:text-red-400',
},
under_review: {
label: 'Under Review',
badgeClassName:
'bg-violet-500/15 text-violet-600 dark:bg-violet-500/20 dark:text-violet-400',
},
approved: {
label: 'Approved',
badgeClassName:
'bg-emerald-500/15 text-emerald-600 dark:bg-emerald-500/20 dark:text-emerald-400',
},
rejected: {
label: 'Rejected',
badgeClassName:
'bg-orange-500/15 text-orange-600 dark:bg-orange-500/20 dark:text-orange-400',
},
};

View File

@@ -13,7 +13,6 @@ import type {
TicketExtensionRequestsResponse,
TicketExtensionRequestsParams,
TicketOverviewDetail,
TicketDefectClassesResponse,
TicketListParams,
TicketListResponse,
TicketTimelineResponse,
@@ -62,15 +61,6 @@ export const ticketService = {
return response.data;
},
getTicketDefectClasses: async (
ticketId: string,
): Promise<TicketDefectClassesResponse> => {
const response = await axiosClient.get<TicketDefectClassesResponse>(
API_ROUTES.TICKETS.DEFECT_CLASSES(ticketId),
);
return response.data;
},
getAssignableUsers: async (
params?: AssignableTicketUsersParams,
): Promise<AssignableTicketUsersResponse> => {

View File

@@ -1,19 +0,0 @@
export type TicketDefectClassTicketStatus =
| 'unassigned'
| 'assigned'
| 'under_review'
| 'approved'
| 'rejected';
export interface TicketDefectClassItem {
class_name: string;
display_name: string;
assignment_status: TicketDefectClassTicketStatus;
}
export interface TicketDefectClassesResponse {
ticket_id: string;
video_id: string;
ticket_status: TicketDefectClassTicketStatus;
defect_classes: TicketDefectClassItem[];
}

View File

@@ -2,6 +2,5 @@ export * from './status';
export * from './list';
export * from './detail';
export * from './actions';
export * from './defect-class';
export * from './events';
export * from './timeline';