UNPKG

20.5 kBSource Map (JSON)View Raw
1{"version":3,"sources":["upload/Upload.js"],"names":["Upload","props","onStart","file","fileList","state","nextFileList","targetItem","status","push","onChange","window","FormData","autoUpdateProgress","onSuccess","response","clearProgressTimer","JSON","parse","e","onProgress","percent","event","onError","error","handleManualRemove","upload","abort","handleRemove","onDragEnd","uploadFiles","result","setState","info","onFileDrop","dragState","type","beforeUpload","concat","item","uid","then","saveUpload","node","renderUploadList","uploadLocale","showUploadList","listType","onPreview","locale","previewFile","dragUploadList","showRemoveIcon","showPreviewIcon","React","createElement","UploadList","items","onRemove","defaultFileList","_","getPercent","curPercent","progressTimer","setInterval","Promise","resolve","ret","removedFileList","nextProps","clearInterval","customizePrefixCls","prefixCls","className","disabled","children","rcUploadProps","uploadList","LocaleReceiver","componentName","defaultLocale","dragCls","some","onDrop","onDragOver","onDragLeave","RcUpload","ref","uploadButtonCls","uploadButton","style","display","Component","displayName","defaultProps","multiple","action","data","accept","T","supportServerRender"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport classNames from 'classnames';\nimport uniqBy from 'lodash/uniqBy';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport defaultLocale from '../locale-provider/default';\nimport UploadList from './UploadList';\nimport { fileToObject, genPercentAdd, getFileItem, removeFileItem, T } from './utils';\nimport RcUpload from '../rc-components/upload';\nimport { getPrefixCls } from '../configure';\nexport default class Upload extends Component {\n constructor(props) {\n super(props);\n this.onStart = (file) => {\n const { fileList } = this.state;\n const nextFileList = [...fileList];\n const targetItem = fileToObject(file);\n targetItem.status = 'uploading';\n nextFileList.push(targetItem);\n this.onChange({\n file: targetItem,\n fileList: nextFileList,\n });\n // fix ie progress\n if (!window.FormData) {\n this.autoUpdateProgress(0, targetItem);\n }\n const { onStart } = this.props;\n if (onStart) {\n onStart(file);\n }\n };\n this.onSuccess = (response, file) => {\n this.clearProgressTimer();\n try {\n if (typeof response === 'string') {\n response = JSON.parse(response);\n }\n }\n catch (e) {\n /* do nothing */\n }\n const { fileList } = this.state;\n const targetItem = getFileItem(file, fileList);\n // removed\n if (targetItem) {\n targetItem.status = 'done';\n targetItem.response = response;\n this.onChange({\n file: { ...targetItem },\n fileList,\n });\n }\n const { onSuccess } = this.props;\n if (onSuccess) {\n onSuccess(response, file);\n }\n };\n this.onProgress = (e, file) => {\n const { fileList } = this.state;\n const targetItem = getFileItem(file, fileList);\n // removed\n if (targetItem) {\n targetItem.percent = e.percent;\n this.onChange({\n event: e,\n file: { ...targetItem },\n fileList,\n });\n }\n const { onProgress } = this.props;\n if (onProgress) {\n onProgress(e, file);\n }\n };\n this.onError = (error, response, file) => {\n this.clearProgressTimer();\n const { fileList } = this.state;\n const targetItem = getFileItem(file, fileList);\n // removed\n if (!targetItem) {\n return;\n }\n targetItem.error = error;\n targetItem.response = response;\n targetItem.status = 'error';\n this.onChange({\n file: { ...targetItem },\n fileList,\n });\n const { onError } = this.props;\n if (onError) {\n onError(error, response, file);\n }\n };\n this.handleManualRemove = (file) => {\n this.upload.abort(file);\n file.status = 'removed'; // eslint-disable-line\n this.handleRemove(file);\n };\n /**\n * 拖拽触发回调\n * @param uploadFiles 拖拽后文件列表\n */\n this.onDragEnd = (uploadFiles) => {\n const { onDragEnd } = this.props;\n if (onDragEnd) {\n const result = onDragEnd(uploadFiles);\n if (result !== false) {\n this.setState({\n fileList: uploadFiles,\n });\n }\n else {\n return false;\n }\n }\n this.setState({\n fileList: uploadFiles,\n });\n };\n this.onChange = (info) => {\n if (!('fileList' in this.props)) {\n this.setState({ fileList: info.fileList });\n }\n const { onChange } = this.props;\n if (onChange) {\n onChange(info);\n }\n };\n this.onFileDrop = (e) => {\n this.setState({\n dragState: e.type,\n });\n };\n this.beforeUpload = (file, uploadFiles) => {\n const { beforeUpload } = this.props;\n if (beforeUpload) {\n const result = beforeUpload(file, uploadFiles);\n if (result === false) {\n const { fileList } = this.state;\n this.onChange({\n file,\n fileList: uniqBy(uploadFiles.concat(fileList), (item) => item.uid),\n });\n return false;\n }\n if (result && result.then) {\n return result;\n }\n }\n return true;\n };\n this.saveUpload = (node) => {\n this.upload = node;\n };\n this.renderUploadList = (uploadLocale) => {\n const { showUploadList, listType, onPreview, locale, previewFile, dragUploadList } = this.props;\n const { fileList } = this.state;\n const { showRemoveIcon, showPreviewIcon } = showUploadList;\n return (React.createElement(UploadList, { listType: listType, items: fileList, onPreview: onPreview, dragUploadList: dragUploadList, onDragEnd: this.onDragEnd, previewFile: previewFile, onRemove: this.handleManualRemove, showRemoveIcon: showRemoveIcon, showPreviewIcon: showPreviewIcon, locale: { ...uploadLocale, ...locale } }));\n };\n this.state = {\n fileList: props.fileList || props.defaultFileList || [],\n dragState: 'drop',\n };\n }\n componentWillUnmount() {\n this.clearProgressTimer();\n }\n autoUpdateProgress(_, file) {\n const getPercent = genPercentAdd();\n let curPercent = 0;\n this.clearProgressTimer();\n this.progressTimer = setInterval(() => {\n curPercent = getPercent(curPercent);\n this.onProgress({\n percent: curPercent,\n }, file);\n }, 200);\n }\n handleRemove(file) {\n const { onRemove } = this.props;\n Promise.resolve(typeof onRemove === 'function' ? onRemove(file) : onRemove).then(ret => {\n // Prevent removing file\n if (ret === false) {\n return;\n }\n const { fileList } = this.state;\n const removedFileList = removeFileItem(file, fileList);\n if (removedFileList) {\n this.onChange({\n file,\n fileList: removedFileList,\n });\n }\n });\n }\n componentWillReceiveProps(nextProps) {\n if ('fileList' in nextProps) {\n this.setState({\n fileList: nextProps.fileList || [],\n });\n }\n }\n clearProgressTimer() {\n clearInterval(this.progressTimer);\n }\n render() {\n const { prefixCls: customizePrefixCls, className, showUploadList, listType, type, disabled, children, dragUploadList, } = this.props;\n const { fileList, dragState } = this.state;\n const prefixCls = getPrefixCls('upload', customizePrefixCls);\n const rcUploadProps = {\n ...this.props,\n onStart: this.onStart,\n onError: this.onError,\n onProgress: this.onProgress,\n onSuccess: this.onSuccess,\n beforeUpload: this.beforeUpload,\n prefixCls,\n };\n delete rcUploadProps.className;\n const uploadList = showUploadList ? (React.createElement(LocaleReceiver, { componentName: \"Upload\", defaultLocale: defaultLocale.Upload }, this.renderUploadList)) : null;\n if (type === 'drag') {\n const dragCls = classNames(prefixCls, {\n [`${prefixCls}-drag`]: true,\n [`${prefixCls}-drag-uploading`]: fileList.some(file => file.status === 'uploading'),\n [`${prefixCls}-drag-hover`]: dragState === 'dragover',\n [`${prefixCls}-disabled`]: disabled,\n });\n return (React.createElement(\"span\", { className: className },\n React.createElement(\"div\", { className: dragCls, onDrop: this.onFileDrop, onDragOver: this.onFileDrop, onDragLeave: this.onFileDrop },\n React.createElement(RcUpload, Object.assign({}, rcUploadProps, { ref: this.saveUpload, className: `${prefixCls}-btn` }),\n React.createElement(\"div\", { className: `${prefixCls}-drag-container` }, children))),\n uploadList));\n }\n const uploadButtonCls = classNames(prefixCls, {\n [`${prefixCls}-select`]: true,\n [`${prefixCls}-select-${listType}`]: true,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-drag-btn`]: dragUploadList,\n });\n const uploadButton = (React.createElement(\"div\", { className: uploadButtonCls, style: { display: children ? '' : 'none' } },\n React.createElement(RcUpload, Object.assign({}, rcUploadProps, { ref: this.saveUpload }))));\n if (listType === 'picture-card') {\n return (React.createElement(\"span\", { className: className },\n uploadList,\n uploadButton));\n }\n return (React.createElement(\"span\", { className: className },\n uploadButton,\n uploadList));\n }\n}\nUpload.displayName = 'Upload';\nUpload.defaultProps = {\n type: 'select',\n multiple: false,\n action: '',\n data: {},\n accept: '',\n beforeUpload: T,\n showUploadList: true,\n listType: 'text',\n className: '',\n disabled: false,\n supportServerRender: true,\n};\n"],"file":"Upload.js"}
\No newline at end of file