import React, { useState } from "react";
import {
  useDocumentDetails,
  useDocumentVersionList,
  useVerifyDocument,
} from "../../hooks/useDocument";
import { getDocuementsStatus, useDocumentContext } from "./Documents";
import { formatUTCToLocalTime } from "../../utils/dateUtils";
import Avatar from "../common/Avatar";
import {
  DOWNLOAD_DOCUMENT,
  ITEMS_PER_PAGE,
  VERIFY_DOCUMENT,
} from "../../utils/constants";
import Pagination from "../common/Pagination";
import VersionListSkeleton from "./VersionListSkeleton";
import DocumentDetailsSkeleton from "./DocumentDetailsSkeleton ";
import { useHasUserPermission } from "../../hooks/useHasUserPermission";
const ViewDocument = () => {
  const { viewDoc, setViewDoc, setOpenDocument } = useDocumentContext();
  const [currentPage, setCurrentPage] = useState(1);
  const canVerifyDocument = useHasUserPermission(VERIFY_DOCUMENT);
  const canDownloadDocument = useHasUserPermission(DOWNLOAD_DOCUMENT);
  const { data, isLoading, isError, error } = useDocumentDetails(
    viewDoc?.document
  );
  const {
    data: versionList,
    isError: isVersionError,
    isLoading: versionLoding,
    error: versionError,
  } = useDocumentVersionList(
    data?.parentAttachmentId,
    ITEMS_PER_PAGE,
    currentPage
  );
  const paginate = (page) => {
    if (page >= 1 && page <= (versionList?.totalPages ?? 1)) {
      setCurrentPage(page);
    }
  };
  const { mutate: VerifyDoc, isPending } = useVerifyDocument();
  const VerifyDocument = () => {
    VerifyDoc({ documentId: viewDoc?.document, isVerify: true });
  };
  if (isLoading) return 
{error?.response?.data?.message || error?.message}
{error?.response?.status}
Document Details
Documents
{versionLoding &&