import React from 'react'; import axios from 'axios'; import './Downloader.scss'; export default class Downloader extends React.Component { constructor(props) { super(props); this.state = { fileType: "mp3", url: "", message: "", dataLoaded: false, downloadLink: "", downLoadFileName: "", dataLoading: false, }; } sendRequest() { if (this.state.url === "") { this.setState({ message: "Invalid URL", }); return; } this.setState({ message: "", url: "", dataLoaded: false, dataLoading: true, }); axios.get(`/ytdownloader`, { params: { fileType: this.state.fileType, url: this.state.url, } }).then((res) => { this.setState({ dataLoaded: true, dataLoading: false, downloadLink: `/public/youtube/${res.data.fileName}`, downLoadFileName: res.data.fileName, }); }).catch(() => { this.setState({ message: "Internal error.", dataLoading: false, }); }); } render() { return (