import Centered from './Centered' import DropZone from './DropZone' import ProgressBar from './ProgressBar' import React from 'react' import Spinner from './Spinner' import Tempalink from './Tempalink' import UploadActions from '../actions/UploadActions' import UploadStore from '../stores/UploadStore' import socket from 'filepizza-socket' export default class UploadPage extends React.Component { constructor() { this.state = UploadStore.getState() this._onChange = () => { this.setState(UploadStore.getState()) } this._onDownload = (peerID) => { UploadActions.sendToDownloader(peerID) } } componentDidMount() { UploadStore.listen(this._onChange) socket.on('download', this._onDownload) } componentDidUnmount() { UploadStore.unlisten(this._onChange) socket.removeListener('download', this._onDownload) } uploadFile(file) { UploadActions.uploadFile(file) } render() { switch (this.state.status) { case 'ready': return FilePizza Your files, delivered. Drag the file into this window to get started. case 'processing': return FilePizza Processing... case 'uploading': var keys = Object.keys(this.state.peerProgress) keys.reverse() return FilePizza Send someone this link to download. This link will work as long as this page is open. {keys.length > 0 ? Download Progress : null} {keys.map((key) => { return })} } } }
Your files, delivered.
Drag the file into this window to get started.
Processing...
Send someone this link to download.
This link will work as long as this page is open.
Download Progress