import { useQuery } from '@tanstack/react-query'; import { api, type ApiResponse } from '../lib/api'; /** * بخش‌های زمانیِ یک نوبت. * * تا ۲۰۲۶-۰۸-۰۸ این فایل موتورِ صفحهٔ «نوبت منبع‌محور» هم بود — جستجوی وقت، رزرو * موقت و ثبت نهایی. آن صفحه حذف شد و آن سه هوک با خودش رفتند. فقط خواندنِ * بخش‌های نوبت ماند، چون کارت جزئیات نوبت و AppointmentSegmentsCard به آن وابسته‌اند. */ export interface AppointmentSegmentRow { sequence: number; name: string; starts_at: number; ends_at: number; duration_minutes: number; patient_present: boolean; } /** فهرست خالی یعنی نوبت اسلاتی است، نه اینکه چیزی خراب باشد. */ export function useAppointmentSegments(uuid: string | undefined) { const query = useQuery({ queryKey: ['appointment-segments', uuid], queryFn: () => api.get>(`/api/v1/appointment/${uuid}/segments`), enabled: !!uuid, }); const rows = query.data?.data; return { segments: Array.isArray(rows) ? rows : [], loading: query.isLoading }; }