@zohodesk/dot
Version:
In this Library, we Provide Some Basic Components to Build Your Application
76 lines (75 loc) • 2.47 kB
JavaScript
import React from 'react';
import { defaultProps } from "./props/defaultProps";
import { propTypes } from "./props/propTypes";
import { Icon } from '@zohodesk/icons';
import { Container, Box } from '@zohodesk/components/lib/Layout';
import Image from "../Image/Image";
import style from "./Upload.module.css";
export default class Upload extends React.Component {
render() {
let {
isPreview,
tooltip,
dataId,
dataSelectorId,
progressValue,
onClick,
iconName,
fileSize,
imgSrc,
isPreviewType,
onRemove,
size,
getRef,
palette
} = this.props;
return /*#__PURE__*/React.createElement(Container, {
isInline: true,
className: `${style.container} ${style[palette]} ${style[size]} ${isPreview ? style.preview : ''}
`,
dataId: dataId,
"data-title": tooltip,
isCover: false,
eleRef: getRef,
dataSelectorId: dataSelectorId
}, /*#__PURE__*/React.createElement(React.Fragment, null, isPreview ? /*#__PURE__*/React.createElement("div", {
"data-id": `${dataId}_attachLoading`,
"data-test-id": `${dataId}_attachLoading`,
className: style.loader,
style: {
width: `${progressValue}%`
}
}) : null, isPreviewType ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Image, {
src: imgSrc,
className: `${style.uploadimage} `,
alt: "Uploaded Image",
dataId: `${dataId}_fileName`
}), /*#__PURE__*/React.createElement("div", {
className: style.overlay,
onClick: onClick
})) : /*#__PURE__*/React.createElement(Box, {
className: style.attachInfo,
onClick: onClick,
dataId: `${dataId}_openNewTab`
}, /*#__PURE__*/React.createElement(Icon, {
name: iconName,
iconClass: style.fileIcon
}), /*#__PURE__*/React.createElement("div", {
className: style.attachsize
}, fileSize))), typeof onRemove !== 'undefined' && onRemove != null ? /*#__PURE__*/React.createElement("span", {
className: style.uploadclose,
onClick: onRemove,
"data-id": `${dataId}_deleteUpload`,
"data-test-id": `${dataId}_deleteUpload`
}, /*#__PURE__*/React.createElement(Icon, {
name: "ZD-close",
isBold: true
})) : null);
}
}
Upload.propTypes = propTypes;
Upload.defaultProps = defaultProps; // if (__DOCS__) {
// Upload.docs = {
// componentGroup: 'Upload'
// };
// }