![JAR search and dependency download from the Maven repository](/logo.png)
components.widgets.Table.cells.FileUploadCell.FileUploadCell.jsx Maven / Gradle / Ivy
import React from 'react'
import PropTypes from 'prop-types'
import { compose } from 'recompose'
import { withTranslation } from 'react-i18next'
import { Button } from 'reactstrap'
import classNames from 'classnames'
import FileUploader from '../../../../controls/FileUploader/FileUploader'
import withFileUploader from '../../../../controls/FileUploader/withFileUploader'
import { DefaultCell } from '../DefaultCell'
function FileUploadCellComponent(props) {
const { multi, files, t, showSize, label, uploadIcon, deleteIcon, className, disabled } = props
const isButtonVisible = !!(multi || files.length === 0)
return (
{isButtonVisible && (
)
}
)
}
FileUploadCellComponent.propTypes = {
uploadUrl: PropTypes.string,
deleteUrl: PropTypes.string,
valueFieldId: PropTypes.string,
labelFieldId: PropTypes.string,
messageFieldId: PropTypes.string,
urlFieldId: PropTypes.string,
requestParam: PropTypes.string,
className: PropTypes.string,
showSize: PropTypes.bool,
multi: PropTypes.bool,
ajax: PropTypes.bool,
accept: PropTypes.string,
label: PropTypes.string,
uploadIcon: PropTypes.string,
deleteIcon: PropTypes.string,
files: PropTypes.array,
disabled: PropTypes.bool,
t: PropTypes.func,
}
const FileUploadCell = compose(
withFileUploader,
withTranslation(),
)(FileUploadCellComponent)
export { FileUploadCell }
© 2015 - 2025 Weber Informatics LLC | Privacy Policy