import { useEffect, useMemo, useRef, useState } from "react" // import { useDispatch, useSelector } from "react-redux" import { Upload, message } from "antd" import { CloseCircleFilled, InboxOutlined, SearchOutlined } from "@ant-design/icons" import { DraggableAssetCard } from "../components/cards.js" import { filterObjectListStartingWith } from "../utils/filter" import { getFileType } from "../utils/file.js" import { SearchComponent } from "../components/inputs.js" import { useFileUploadContext } from "../contexts/fileUploadContext.js" // import { update } from "../redux/assetSlice.js" const { Dragger } = Upload const fileTypes = ["JPG", "PNG", "GIF"] const props = { name: 'file', multiple: true, showUploadList: false, customRequest(options){ const { onSuccess, onError, file, onProgress } = options onSuccess("Ok") }, // onDrop(e) { // console.log('Dropped files', e.dataTransfer.files) // }, }; /** * DND for file uploads * */ function UploadsContainer() { // const dispatch = useDispatch() // const selector = useSelector(state => state.assets) const fileUploadRef = useRef() const [dragEnter, setDragEnter] = useState(false) const [searchValue, setSearchValue] = useState("") // const [uploadData, setUploadData] = useState(assets) // contains all the uploaded data const {uploadedAssets, setUploadedAssets} = useFileUploadContext() const [uploadResults, setUploadResults] = useState(uploadedAssets) // sets search results // useEffect(() => { // setUploadResults(uploadData) // }, [uploadData]) useEffect(() => { setUploadResults(uploadedAssets) }, [uploadedAssets]) useEffect(() => { if (searchValue.length > 0) { const searchData = filterObjectListStartingWith(uploadedAssets, "name", searchValue) setUploadResults(searchData) } else { setUploadResults(uploadedAssets) } }, [searchValue]) function onSearch(event) { setSearchValue(event.target.value) } function handleDelete(file){ // remove the file from the asset on delete setUploadedAssets(prev => prev.filter(val => val.uid !== file.uid)) } return (
Click or drag file to this area to upload