import React, { useState } from 'react'; import { FileUploader } from 'react-drag-drop-files'; import axios from 'axios'; import { Link } from 'react-router-dom'; function ShareFile() { const [file, setFile] = useState(null); const [passcode, setPasscode] = useState(''); const [ttl, setTtl] = useState(''); const [shareableLink, setShareableLink] = useState(''); const [notification, setNotification] = useState(''); const handleFileUpload = (file) => { setFile(file); //setPasscode('1234'); console.log(file); if (file) { const formData = new FormData(); formData.append('file', file); formData.append('ttl', ttl * 24 * 60 * 60); // Send POST request to the backend API using Axios axios .post('http://127.0.0.1:8000/api/files/', formData) .then((response) => { // Handle a successful response from the server, set passcode to "key" in the response body const data = response.data; // If data is an array, take the first item if (Array.isArray(data)) { const passcode = data[0].key; const baseUrl = 'http://localhost:8000/api/files/'; setPasscode(passcode); setShareableLink(baseUrl + passcode); // Copy the passcode to the clipboard navigator.clipboard.writeText(passcode).then(() => { // Show a notification showNotification('Copied to clipboard!'); }); } }) .catch((error) => { // Handle errors here console.error('File upload failed', error); }); } }; const showNotification = (message) => { setNotification(message); // Automatically close the notification after 2 seconds setTimeout(() => { setNotification(''); }, 2000); }; return (