import { PictureFilled } from "@ant-design/icons"; import { useQuery } from "@apollo/client"; import { Badge, Popover } from "antd"; import React, { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; import { GET_DOCUMENTS_BY_JOB } from "../../graphql/documents.queries"; import { selectBodyshop } from "../../redux/user/user.selectors"; import AlertComponent from "../alert/alert.component"; import JobDocumentsGalleryExternal from "../jobs-documents-gallery/jobs-documents-gallery.external.component"; import JobDocumentsLocalGalleryExternal from "../jobs-documents-local-gallery/jobs-documents-local-gallery.external.component"; import LoadingSpinner from "../loading-spinner/loading-spinner.component"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, }); const mapDispatchToProps = (dispatch) => ({ //setUserLanguage: language => dispatch(setUserLanguage(language)) }); export default connect(mapStateToProps, mapDispatchToProps)(ChatMediaSelector); export function ChatMediaSelector({ bodyshop, selectedMedia, setSelectedMedia, conversation, }) { const { t } = useTranslation(); const [visible, setVisible] = useState(false); const { loading, error, data } = useQuery(GET_DOCUMENTS_BY_JOB, { fetchPolicy: "network-only", nextFetchPolicy: "network-only", variables: { jobId: conversation.job_conversations[0] && conversation.job_conversations[0].jobid, }, skip: !visible || !conversation.job_conversations || conversation.job_conversations.length === 0, }); const handleVisibleChange = (visible) => { setVisible(visible); }; useEffect(() => { setSelectedMedia([]); }, [setSelectedMedia, conversation]); const content = (