import React from 'react'; import lbry from 'lbry'; import lbryuri from 'lbryuri'; import {Icon,} from 'component/common'; import FilePrice from 'component/filePrice' import {Modal} from 'component/modal'; import {FormField} from 'component/form'; import Link from 'component/link'; import {ToolTip} from 'component/tooltip'; import {DropDownMenu, DropDownMenuItem} from 'component/menu'; class FileActionsRow extends React.Component { constructor(props) { super(props) this.state = { deleteChecked: false, } } handleDeleteCheckboxClicked(event) { this.setState({ deleteChecked: event.target.checked, }) } onAffirmPurchase() { this.props.closeModal() this.props.loadVideo() } render() { const { fileInfo, platform, downloading, loading, uri, deleteFile, openInFolder, openInShell, modal, openModal, affirmPurchase, closeModal, downloadClick, } = this.props const { deleteChecked, } = this.state const metadata = fileInfo ? fileInfo.metadata : null if (!fileInfo) { return null; } const openInFolderMessage = platform.startsWith('Mac') ? 'Open in Finder' : 'Open in Folder', showMenu = Object.keys(fileInfo).length != 0; let linkBlock; if (Object.keys(fileInfo).length == 0 && !downloading && !loading) { linkBlock = ; } else if (downloading || loading) { const progress = (fileInfo && fileInfo.written_bytes) ? fileInfo.written_bytes / fileInfo.total_bytes * 100 : 0, label = fileInfo ? progress.toFixed(0) + '% complete' : 'Connecting...', labelWithIcon = {label}; linkBlock = (
{labelWithIcon}
{labelWithIcon}
); } else { linkBlock = openInShell(fileInfo)} />; } const title = metadata ? metadata.title : uri; return (
{fileInfo !== null || fileInfo.isMine ? linkBlock : null} { showMenu ? openInFolder(fileInfo)} label={openInFolderMessage} /> openModal('confirmRemove')} label="Remove..." /> : '' } Are you sure you'd like to buy {title} for credits? You don't have enough LBRY credits to pay for this stream. LBRY was unable to download the stream {uri}. deleteFile(uri, fileInfo, deleteChecked)} onAborted={closeModal}>

Are you sure you'd like to remove {title} from LBRY?

); } } class FileActions extends React.Component { constructor(props) { super(props) this._isMounted = false this._fileInfoSubscribeId = null this.state = { available: true, forceShowActions: false, fileInfo: null, } } onShowFileActionsRowClicked() { this.setState({ forceShowActions: true, }); } render() { const { fileInfo, availability, } = this.props if (fileInfo === null) { return null; } return (
{ fileInfo || this.state.available || this.state.forceShowActions ? :
Content unavailable.
}
); } } export default FileActions