const { h } = require('preact') const prettyBytes = require('@uppy/utils/lib/prettyBytes') const truncateString = require('../../../utils/truncateString') const renderAcquirerIcon = (acquirer, props) => {acquirer.icon()} const renderFileSource = (props) => ( props.file.source && props.file.source !== props.id &&
{props.acquirers.map(acquirer => { if (acquirer.id === props.file.source) { return renderAcquirerIcon(acquirer, props) } })}
) const renderFileName = (props) => { // Take up at most 2 lines on any screen let maxNameLength // For very small mobile screens if (props.containerWidth <= 352) { maxNameLength = 35 // For regular mobile screens } else if (props.containerWidth <= 576) { maxNameLength = 60 // For desktops } else { maxNameLength = 30 } return (
{truncateString(props.file.meta.name, maxNameLength)}
) } const renderFileSize = (props) => ( props.file.data.size &&
{prettyBytes(props.file.data.size)}
) module.exports = function FileInfo (props) { return (
{renderFileName(props)}
{renderFileSize(props)} {renderFileSource(props)}
) }