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 The easiest way to send someone a file. 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 })} } } }
The easiest way to send someone a file.
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