34 lines
1009 B
JavaScript
34 lines
1009 B
JavaScript
import { useQuery } from "@apollo/client";
|
|
import React from "react";
|
|
import { GET_DOCUMENTS_BY_JOB } from "../../graphql/documents.queries";
|
|
import AlertComponent from "../alert/alert.component";
|
|
import LoadingSpinner from "../loading-spinner/loading-spinner.component";
|
|
import JobDocuments from "./jobs-documents-gallery.component";
|
|
|
|
export default function JobsDocumentsContainer({
|
|
jobId,
|
|
billId,
|
|
documentsList,
|
|
billsCallback,
|
|
}) {
|
|
const { loading, error, data, refetch } = useQuery(GET_DOCUMENTS_BY_JOB, {
|
|
variables: { jobId: jobId },
|
|
fetchPolicy: "network-only",
|
|
skip: !!billId,
|
|
});
|
|
|
|
if (loading) return <LoadingSpinner />;
|
|
if (error) return <AlertComponent type="error" message={error.message} />;
|
|
|
|
return (
|
|
<JobDocuments
|
|
data={(data && data.documents) || documentsList || []}
|
|
totalSize={data && data.documents_aggregate.aggregate.sum.size}
|
|
billId={billId}
|
|
jobId={jobId}
|
|
refetch={refetch}
|
|
billsCallback={billsCallback}
|
|
/>
|
|
);
|
|
}
|