1 | 'use strict';
|
2 |
|
3 | exports.__esModule = true;
|
4 |
|
5 | var _extends2 = require('babel-runtime/helpers/extends');
|
6 |
|
7 | var _extends3 = _interopRequireDefault(_extends2);
|
8 |
|
9 | var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
|
10 |
|
11 | var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
|
12 |
|
13 | var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
14 |
|
15 | var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
16 |
|
17 | var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
18 |
|
19 | var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
20 |
|
21 | var _inherits2 = require('babel-runtime/helpers/inherits');
|
22 |
|
23 | var _inherits3 = _interopRequireDefault(_inherits2);
|
24 |
|
25 | var _class, _temp2;
|
26 |
|
27 | var _react = require('react');
|
28 |
|
29 | var _react2 = _interopRequireDefault(_react);
|
30 |
|
31 | var _propTypes = require('prop-types');
|
32 |
|
33 | var _propTypes2 = _interopRequireDefault(_propTypes);
|
34 |
|
35 | var _classnames = require('classnames');
|
36 |
|
37 | var _classnames2 = _interopRequireDefault(_classnames);
|
38 |
|
39 | var _icon = require('../icon');
|
40 |
|
41 | var _icon2 = _interopRequireDefault(_icon);
|
42 |
|
43 | var _util = require('../util');
|
44 |
|
45 | var _zhCn = require('../locale/zh-cn.js');
|
46 |
|
47 | var _zhCn2 = _interopRequireDefault(_zhCn);
|
48 |
|
49 | var _upload = require('./upload');
|
50 |
|
51 | var _upload2 = _interopRequireDefault(_upload);
|
52 |
|
53 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
54 |
|
55 |
|
56 |
|
57 |
|
58 |
|
59 | var Dragger = (_temp2 = _class = function (_React$Component) {
|
60 | (0, _inherits3.default)(Dragger, _React$Component);
|
61 |
|
62 | function Dragger() {
|
63 | var _temp, _this, _ret;
|
64 |
|
65 | (0, _classCallCheck3.default)(this, Dragger);
|
66 |
|
67 | for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
|
68 | args[_key] = arguments[_key];
|
69 | }
|
70 |
|
71 | return _ret = (_temp = (_this = (0, _possibleConstructorReturn3.default)(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {
|
72 | dragOver: false
|
73 | }, _this.onDragOver = function (e) {
|
74 | if (!_this.state.dragOver) {
|
75 | _this.setState({
|
76 | dragOver: true
|
77 | });
|
78 | }
|
79 |
|
80 | _this.props.onDragOver(e);
|
81 | }, _this.onDragLeave = function (e) {
|
82 | _this.setState({
|
83 | dragOver: false
|
84 | });
|
85 | _this.props.onDragLeave(e);
|
86 | }, _this.onDrop = function (e) {
|
87 | _this.setState({
|
88 | dragOver: false
|
89 | });
|
90 | _this.props.onDrop(e);
|
91 | }, _this.saveUploaderRef = function (ref) {
|
92 |
|
93 | if (ref && typeof ref.getInstance === 'function') {
|
94 | _this.uploaderRef = ref.getInstance();
|
95 | } else {
|
96 | _this.uploaderRef = ref;
|
97 | }
|
98 | }, _temp), (0, _possibleConstructorReturn3.default)(_this, _ret);
|
99 | }
|
100 |
|
101 |
|
102 | Dragger.prototype.abort = function abort(file) {
|
103 |
|
104 | this.uploaderRef.abort(file);
|
105 | };
|
106 |
|
107 |
|
108 |
|
109 | Dragger.prototype.startUpload = function startUpload() {
|
110 |
|
111 | this.uploaderRef.startUpload();
|
112 | };
|
113 |
|
114 | Dragger.prototype.render = function render() {
|
115 | var _classNames;
|
116 |
|
117 | var _props = this.props,
|
118 | className = _props.className,
|
119 | style = _props.style,
|
120 | shape = _props.shape,
|
121 | locale = _props.locale,
|
122 | prefix = _props.prefix,
|
123 | listType = _props.listType,
|
124 | others = (0, _objectWithoutProperties3.default)(_props, ['className', 'style', 'shape', 'locale', 'prefix', 'listType']);
|
125 |
|
126 | var prefixCls = prefix + 'upload-drag';
|
127 | var cls = (0, _classnames2.default)((_classNames = {}, _classNames['' + prefixCls] = true, _classNames[prefixCls + '-over'] = this.state.dragOver, _classNames[className] = !!className, _classNames));
|
128 |
|
129 | var children = this.props.children || _react2.default.createElement(
|
130 | 'div',
|
131 | { className: cls },
|
132 | _react2.default.createElement(
|
133 | 'p',
|
134 | { className: prefixCls + '-icon' },
|
135 | _react2.default.createElement(_icon2.default, { size: 'large', className: prefixCls + '-upload-icon' })
|
136 | ),
|
137 | _react2.default.createElement(
|
138 | 'p',
|
139 | { className: prefixCls + '-text' },
|
140 | locale.drag.text
|
141 | ),
|
142 | _react2.default.createElement(
|
143 | 'p',
|
144 | { className: prefixCls + '-hint' },
|
145 | locale.drag.hint
|
146 | )
|
147 | );
|
148 |
|
149 | return _react2.default.createElement(
|
150 | _upload2.default,
|
151 | (0, _extends3.default)({}, others, {
|
152 | prefix: prefix,
|
153 | shape: shape,
|
154 | listType: listType,
|
155 | dragable: true,
|
156 | style: style,
|
157 | onDragOver: this.onDragOver,
|
158 | onDragLeave: this.onDragLeave,
|
159 | onDrop: this.onDrop,
|
160 | ref: this.saveUploaderRef
|
161 | }),
|
162 | children
|
163 | );
|
164 | };
|
165 |
|
166 | return Dragger;
|
167 | }(_react2.default.Component), _class.propTypes = {
|
168 | |
169 |
|
170 |
|
171 | prefix: _propTypes2.default.string,
|
172 | locale: _propTypes2.default.object,
|
173 | shape: _propTypes2.default.string,
|
174 | onDragOver: _propTypes2.default.func,
|
175 | onDragLeave: _propTypes2.default.func,
|
176 | onDrop: _propTypes2.default.func,
|
177 | limit: _propTypes2.default.number,
|
178 | className: _propTypes2.default.string,
|
179 | style: _propTypes2.default.object,
|
180 | defaultValue: _propTypes2.default.array,
|
181 | children: _propTypes2.default.node,
|
182 | listType: _propTypes2.default.string,
|
183 | timeout: _propTypes2.default.number
|
184 | }, _class.defaultProps = {
|
185 | prefix: 'next-',
|
186 | onDragOver: _util.func.noop,
|
187 | onDragLeave: _util.func.noop,
|
188 | onDrop: _util.func.noop,
|
189 | locale: _zhCn2.default.Upload
|
190 | }, _temp2);
|
191 | Dragger.displayName = 'Dragger';
|
192 | exports.default = Dragger;
|
193 | module.exports = exports['default']; |
\ | No newline at end of file |