@rainbow-oh/yee-c 0.9.2 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Button/demo/icon.js +1 -1
- package/dist/cjs/Input/style/index.less +1 -0
- package/dist/cjs/Table/demo/resizable.d.ts +3 -0
- package/dist/cjs/Table/demo/resizable.js +143 -0
- package/dist/cjs/Table/hooks/useColumnResize.d.ts +30 -0
- package/dist/cjs/Table/hooks/useColumnResize.js +217 -0
- package/dist/cjs/Table/hooks/useColumns.d.ts +3 -1
- package/dist/cjs/Table/hooks/useColumns.js +14 -3
- package/dist/cjs/Table/interface.d.ts +49 -0
- package/dist/cjs/Table/style/index.less +42 -0
- package/dist/cjs/Table/table.js +62 -9
- package/dist/cjs/Table/theader/cell.js +46 -4
- package/dist/cjs/Table/util/index.d.ts +19 -1
- package/dist/cjs/Table/util/index.js +22 -0
- package/dist/cjs/Tabs/demo/overflow-center.d.ts +3 -0
- package/dist/cjs/Tabs/demo/overflow-center.js +54 -0
- package/dist/cjs/Tabs/hooks/useNavListMove.d.ts +2 -1
- package/dist/cjs/Tabs/hooks/useNavListMove.js +51 -16
- package/dist/cjs/Tabs/hooks/useTabScroll.d.ts +1 -0
- package/dist/cjs/Tabs/hooks/useTabScroll.js +5 -1
- package/dist/cjs/Tabs/interface.d.ts +10 -1
- package/dist/cjs/Tabs/style/index.less +5 -0
- package/dist/cjs/Tabs/tab-header/index.d.ts +1 -0
- package/dist/cjs/Tabs/tab-header/index.js +11 -3
- package/dist/cjs/Tabs/tabs.js +4 -1
- package/dist/cjs/Upload/demo/auto-upload.d.ts +3 -0
- package/dist/cjs/Upload/demo/auto-upload.js +65 -0
- package/dist/cjs/Upload/demo/basic.js +5 -10
- package/dist/cjs/Upload/demo/controlled.js +4 -4
- package/dist/cjs/Upload/demo/pictureWall.js +14 -13
- package/dist/cjs/Upload/dragger.d.ts +2 -1
- package/dist/cjs/Upload/dragger.js +32 -21
- package/dist/cjs/Upload/index.d.ts +1 -1
- package/dist/cjs/Upload/interface.d.ts +67 -120
- package/dist/cjs/Upload/style/index.less +40 -13
- package/dist/cjs/Upload/upload.d.ts +2 -2
- package/dist/cjs/Upload/upload.js +435 -185
- package/dist/cjs/Upload/uploaded-list/index.d.ts +2 -1
- package/dist/cjs/Upload/uploaded-list/index.js +6 -3
- package/dist/cjs/Upload/uploaded-list/uploaded-item.d.ts +6 -3
- package/dist/cjs/Upload/uploaded-list/uploaded-item.js +127 -138
- package/dist/cjs/locale/interface.d.ts +1 -0
- package/dist/cjs/locale/lang/en_US.js +2 -1
- package/dist/cjs/locale/lang/ja_JP.js +2 -1
- package/dist/cjs/locale/lang/zh_CN.js +2 -1
- package/dist/cjs/locale/lang/zh_TW.js +2 -1
- package/dist/cjs/style/size.css +2 -1
- package/dist/cjs/style/themes.css +1 -1
- package/dist/cjs/style/variables.css +3 -2
- package/dist/cjs/utils/ax/core.d.ts +3 -1
- package/dist/cjs/utils/ax/core.js +24 -37
- package/dist/cjs/utils/ax/index.d.ts +3 -1
- package/dist/cjs/utils/folder-scanner.d.ts +1 -1
- package/dist/cjs/utils/folder-scanner.js +43 -34
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Button/demo/icon.js +7 -4
- package/dist/esm/Input/style/index.less +1 -0
- package/dist/esm/Table/demo/resizable.d.ts +3 -0
- package/dist/esm/Table/demo/resizable.js +110 -0
- package/dist/esm/Table/hooks/useColumnResize.d.ts +30 -0
- package/dist/esm/Table/hooks/useColumnResize.js +206 -0
- package/dist/esm/Table/hooks/useColumns.d.ts +3 -1
- package/dist/esm/Table/hooks/useColumns.js +9 -4
- package/dist/esm/Table/interface.d.ts +49 -0
- package/dist/esm/Table/style/index.less +42 -0
- package/dist/esm/Table/table.js +83 -13
- package/dist/esm/Table/theader/cell.js +38 -3
- package/dist/esm/Table/util/index.d.ts +19 -1
- package/dist/esm/Table/util/index.js +37 -0
- package/dist/esm/Tabs/demo/overflow-center.d.ts +3 -0
- package/dist/esm/Tabs/demo/overflow-center.js +61 -0
- package/dist/esm/Tabs/hooks/useNavListMove.d.ts +2 -1
- package/dist/esm/Tabs/hooks/useNavListMove.js +62 -25
- package/dist/esm/Tabs/hooks/useTabScroll.d.ts +1 -0
- package/dist/esm/Tabs/hooks/useTabScroll.js +9 -0
- package/dist/esm/Tabs/interface.d.ts +10 -1
- package/dist/esm/Tabs/style/index.less +5 -0
- package/dist/esm/Tabs/tab-header/index.d.ts +1 -0
- package/dist/esm/Tabs/tab-header/index.js +15 -3
- package/dist/esm/Tabs/tabs.js +4 -2
- package/dist/esm/Upload/demo/auto-upload.d.ts +3 -0
- package/dist/esm/Upload/demo/auto-upload.js +42 -0
- package/dist/esm/Upload/demo/basic.js +5 -11
- package/dist/esm/Upload/demo/controlled.js +8 -6
- package/dist/esm/Upload/demo/pictureWall.js +17 -14
- package/dist/esm/Upload/dragger.d.ts +2 -1
- package/dist/esm/Upload/dragger.js +10 -5
- package/dist/esm/Upload/index.d.ts +1 -1
- package/dist/esm/Upload/interface.d.ts +67 -120
- package/dist/esm/Upload/style/index.less +40 -13
- package/dist/esm/Upload/upload.d.ts +2 -2
- package/dist/esm/Upload/upload.js +573 -271
- package/dist/esm/Upload/uploaded-list/index.d.ts +2 -1
- package/dist/esm/Upload/uploaded-list/index.js +9 -4
- package/dist/esm/Upload/uploaded-list/uploaded-item.d.ts +6 -3
- package/dist/esm/Upload/uploaded-list/uploaded-item.js +145 -150
- package/dist/esm/locale/interface.d.ts +1 -0
- package/dist/esm/locale/lang/en_US.js +2 -1
- package/dist/esm/locale/lang/ja_JP.js +2 -1
- package/dist/esm/locale/lang/zh_CN.js +2 -1
- package/dist/esm/locale/lang/zh_TW.js +2 -1
- package/dist/esm/style/size.css +2 -1
- package/dist/esm/style/themes.css +1 -1
- package/dist/esm/style/variables.css +3 -2
- package/dist/esm/utils/ax/core.d.ts +3 -1
- package/dist/esm/utils/ax/core.js +32 -40
- package/dist/esm/utils/ax/index.d.ts +3 -1
- package/dist/esm/utils/folder-scanner.d.ts +1 -1
- package/dist/esm/utils/folder-scanner.js +76 -75
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/umd/yee-c.min.css +2 -2
- package/dist/umd/yee-c.min.js +1 -1
- package/package.json +1 -1
- package/src/Button/demo/icon.tsx +5 -3
- package/src/Input/style/index.less +1 -0
- package/src/Table/demo/resizable.tsx +106 -0
- package/src/Table/hooks/useColumnResize.ts +224 -0
- package/src/Table/hooks/useColumns.ts +18 -3
- package/src/Table/index.en-US.md +7 -0
- package/src/Table/index.zh-CN.md +7 -0
- package/src/Table/interface.ts +52 -0
- package/src/Table/style/index.less +42 -0
- package/src/Table/table-resize.test.tsx +234 -0
- package/src/Table/table.tsx +90 -13
- package/src/Table/theader/cell.tsx +52 -2
- package/src/Table/util/index.ts +44 -1
- package/src/Tabs/demo/overflow-center.tsx +35 -0
- package/src/Tabs/hooks/useNavListMove.ts +60 -18
- package/src/Tabs/hooks/useTabScroll.ts +7 -1
- package/src/Tabs/index.en-US.md +33 -31
- package/src/Tabs/index.zh-CN.md +33 -31
- package/src/Tabs/interface.ts +10 -1
- package/src/Tabs/style/index.less +5 -0
- package/src/Tabs/tab-header/index.tsx +14 -3
- package/src/Tabs/tabs.tsx +2 -0
- package/src/Upload/demo/auto-upload.tsx +35 -0
- package/src/Upload/demo/basic.tsx +7 -11
- package/src/Upload/demo/controlled.tsx +12 -8
- package/src/Upload/demo/directory.tsx +3 -4
- package/src/Upload/demo/drag.tsx +5 -12
- package/src/Upload/demo/multiple.tsx +3 -4
- package/src/Upload/demo/pictureWall.tsx +22 -21
- package/src/Upload/dragger.tsx +47 -34
- package/src/Upload/index.en-US.md +63 -43
- package/src/Upload/index.ts +8 -1
- package/src/Upload/index.zh-CN.md +62 -42
- package/src/Upload/interface.ts +68 -120
- package/src/Upload/style/index.less +40 -13
- package/src/Upload/upload.tsx +546 -215
- package/src/Upload/uploaded-list/index.tsx +9 -5
- package/src/Upload/uploaded-list/uploaded-item.tsx +199 -228
- package/src/locale/interface.ts +1 -0
- package/src/locale/lang/en_US.ts +1 -0
- package/src/locale/lang/ja_JP.ts +1 -0
- package/src/locale/lang/zh_CN.ts +1 -0
- package/src/locale/lang/zh_TW.ts +1 -0
- package/src/style/size.css +2 -1
- package/src/utils/ax/core.ts +28 -41
- package/src/utils/folder-scanner.ts +51 -37
- package/src/version.ts +1 -1
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
var _excluded = ["prefixCls", "name", "action", "children", "data", "headers", "defaultFileList", "fileList", "withCredentials", "className", "style", "disabled", "listType", "type", "directory", "multiple", "accept", "showUploadList", "progress", "maxFileSize", "maxCount", "customRequest", "onChange", "beforeUpload", "onPreview", "onRemove", "itemRender"];
|
|
1
|
+
var _excluded = ["prefixCls", "name", "action", "children", "data", "headers", "defaultFileList", "fileList", "withCredentials", "className", "style", "disabled", "listType", "type", "directory", "multiple", "accept", "showUploadList", "progress", "autoUpload", "maxFileSize", "maxCount", "customRequest", "onChange", "beforeUpload", "onPreview", "onRemove", "itemRender"];
|
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
3
3
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
4
4
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
5
5
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
6
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
7
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
8
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
9
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
10
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
11
6
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
7
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
8
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
9
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
15
10
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
11
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
12
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
13
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
14
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
16
15
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
17
16
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
18
17
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -21,33 +20,104 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
|
21
20
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
22
21
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
23
22
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
23
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
24
24
|
import clsx from 'clsx';
|
|
25
25
|
import { Plus } from 'lucide-react';
|
|
26
|
-
import React, { forwardRef, useContext, useRef, useState } from 'react';
|
|
26
|
+
import React, { forwardRef, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';
|
|
27
27
|
import { v4 as uuidv4 } from 'uuid';
|
|
28
28
|
import Button from "../Button";
|
|
29
29
|
import { GlobalContext } from "../Config-Provider";
|
|
30
|
-
import mergeContextToProps from "../utils/mergeContextToProps";
|
|
31
|
-
import UploadList from "./uploaded-list/index";
|
|
32
30
|
import useMergedState from "../hooks/useMergedState";
|
|
33
31
|
import ax from "../utils/ax";
|
|
34
32
|
import folderScanner from "../utils/folder-scanner";
|
|
33
|
+
import mergeContextToProps from "../utils/mergeContextToProps";
|
|
35
34
|
import "./style/index.less";
|
|
35
|
+
import UploadList from "./uploaded-list/index";
|
|
36
|
+
var getFileExtension = function getFileExtension(fileName) {
|
|
37
|
+
var dotIndex = fileName.lastIndexOf('.');
|
|
38
|
+
return dotIndex > -1 ? fileName.slice(dotIndex + 1).toLowerCase() : '';
|
|
39
|
+
};
|
|
36
40
|
var wrapFile = function wrapFile(file) {
|
|
37
41
|
return {
|
|
38
42
|
uid: uuidv4(),
|
|
39
43
|
name: file.name,
|
|
40
44
|
size: file.size,
|
|
41
|
-
type:
|
|
45
|
+
type: file.type || getFileExtension(file.name),
|
|
42
46
|
percent: 0,
|
|
43
47
|
status: 'ready',
|
|
44
48
|
raw: file
|
|
45
49
|
};
|
|
46
50
|
};
|
|
51
|
+
var isSameFile = function isSameFile(left, right) {
|
|
52
|
+
if (left.uid && right.uid) {
|
|
53
|
+
return left.uid === right.uid;
|
|
54
|
+
}
|
|
55
|
+
return left === right;
|
|
56
|
+
};
|
|
57
|
+
var matchesAccept = function matchesAccept(file, accept) {
|
|
58
|
+
if (!accept) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
var fileName = file.name.toLowerCase();
|
|
62
|
+
var mimeType = file.type.toLowerCase();
|
|
63
|
+
return accept.split(',').map(function (item) {
|
|
64
|
+
return item.trim().toLowerCase();
|
|
65
|
+
}).filter(Boolean).some(function (rule) {
|
|
66
|
+
if (rule.startsWith('.')) {
|
|
67
|
+
return fileName.endsWith(rule);
|
|
68
|
+
}
|
|
69
|
+
if (rule.endsWith('/*')) {
|
|
70
|
+
return mimeType.startsWith(rule.slice(0, -1));
|
|
71
|
+
}
|
|
72
|
+
return mimeType === rule;
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
var describeErrorDetail = function describeErrorDetail(detail) {
|
|
76
|
+
if (typeof detail === 'string' && detail) {
|
|
77
|
+
return detail;
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
var _JSON$stringify;
|
|
81
|
+
var text = (_JSON$stringify = JSON.stringify(detail)) !== null && _JSON$stringify !== void 0 ? _JSON$stringify : '';
|
|
82
|
+
return text.length > 200 ? "".concat(text.slice(0, 200), "\u2026") : text;
|
|
83
|
+
} catch (_unused) {
|
|
84
|
+
return String(detail);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
var toError = function toError(error) {
|
|
88
|
+
if (error instanceof Error) {
|
|
89
|
+
return error;
|
|
90
|
+
}
|
|
91
|
+
if (_typeof(error) === 'object' && error !== null && 'error' in error) {
|
|
92
|
+
var detail = error.error;
|
|
93
|
+
if (detail instanceof Error) {
|
|
94
|
+
return detail;
|
|
95
|
+
}
|
|
96
|
+
if (detail !== null && detail !== undefined) {
|
|
97
|
+
// e.g. ax rejects { status: 'error', error: xhr.response }
|
|
98
|
+
var message = describeErrorDetail(detail);
|
|
99
|
+
if (message) {
|
|
100
|
+
return new Error(message);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return new Error(typeof error === 'string' ? error : 'Upload failed');
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
// ax rejects aborts as { status: 'abort', error: event }
|
|
108
|
+
var isAbortRejection = function isAbortRejection(error) {
|
|
109
|
+
return _typeof(error) === 'object' && error !== null && error.status === 'abort';
|
|
110
|
+
};
|
|
111
|
+
var getAbort = function getAbort(request) {
|
|
112
|
+
if (typeof request === 'function') {
|
|
113
|
+
return request;
|
|
114
|
+
}
|
|
115
|
+
return request === null || request === void 0 ? void 0 : request.abort;
|
|
116
|
+
};
|
|
47
117
|
var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
48
118
|
var _useContext = useContext(GlobalContext),
|
|
49
|
-
|
|
50
|
-
var props = mergeContextToProps(baseprops,
|
|
119
|
+
uploadConfig = _useContext.upload;
|
|
120
|
+
var props = mergeContextToProps(baseprops, uploadConfig);
|
|
51
121
|
var _props$prefixCls = props.prefixCls,
|
|
52
122
|
prefixCls = _props$prefixCls === void 0 ? 'yee-upload' : _props$prefixCls,
|
|
53
123
|
_props$name = props.name,
|
|
@@ -72,6 +142,8 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
72
142
|
showUploadList = _props$showUploadList === void 0 ? true : _props$showUploadList,
|
|
73
143
|
_props$progress = props.progress,
|
|
74
144
|
progress = _props$progress === void 0 ? true : _props$progress,
|
|
145
|
+
_props$autoUpload = props.autoUpload,
|
|
146
|
+
autoUpload = _props$autoUpload === void 0 ? true : _props$autoUpload,
|
|
75
147
|
maxFileSize = props.maxFileSize,
|
|
76
148
|
maxCount = props.maxCount,
|
|
77
149
|
customRequest = props.customRequest,
|
|
@@ -82,6 +154,10 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
82
154
|
itemRender = props.itemRender,
|
|
83
155
|
rest = _objectWithoutProperties(props, _excluded);
|
|
84
156
|
var inputRef = useRef(null);
|
|
157
|
+
var rootRef = useRef(null);
|
|
158
|
+
var activeRequestsRef = useRef(new Map());
|
|
159
|
+
var pendingPreparationsRef = useRef(new Map());
|
|
160
|
+
var mountedRef = useRef(true);
|
|
85
161
|
var _useState = useState(null),
|
|
86
162
|
_useState2 = _slicedToArray(_useState, 2),
|
|
87
163
|
dragState = _useState2[0],
|
|
@@ -93,333 +169,556 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
93
169
|
_useMergedState2 = _slicedToArray(_useMergedState, 2),
|
|
94
170
|
mergedFileList = _useMergedState2[0],
|
|
95
171
|
setMergedFileList = _useMergedState2[1];
|
|
96
|
-
var
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
if (item.uid === file.uid) {
|
|
108
|
-
return file;
|
|
109
|
-
}
|
|
110
|
-
return item;
|
|
172
|
+
var fileListRef = useRef(mergedFileList);
|
|
173
|
+
fileListRef.current = mergedFileList;
|
|
174
|
+
useEffect(function () {
|
|
175
|
+
return function () {
|
|
176
|
+
mountedRef.current = false;
|
|
177
|
+
pendingPreparationsRef.current.clear();
|
|
178
|
+
var activeRequests = Array.from(activeRequestsRef.current.values());
|
|
179
|
+
activeRequestsRef.current.clear();
|
|
180
|
+
activeRequests.forEach(function (_ref) {
|
|
181
|
+
var abort = _ref.abort;
|
|
182
|
+
return abort === null || abort === void 0 ? void 0 : abort();
|
|
111
183
|
});
|
|
184
|
+
};
|
|
185
|
+
}, []);
|
|
186
|
+
var setFileList = function setFileList(nextFileList) {
|
|
187
|
+
fileListRef.current = nextFileList;
|
|
188
|
+
setMergedFileList(nextFileList);
|
|
189
|
+
};
|
|
190
|
+
var emitChange = function emitChange(file, nextFileList, event) {
|
|
191
|
+
setFileList(nextFileList);
|
|
192
|
+
onChange === null || onChange === void 0 || onChange({
|
|
193
|
+
file: file,
|
|
194
|
+
fileList: nextFileList,
|
|
195
|
+
event: event
|
|
196
|
+
});
|
|
197
|
+
};
|
|
198
|
+
var appendFile = function appendFile(file, event) {
|
|
199
|
+
var nextFileList = [].concat(_toConsumableArray(fileListRef.current), [file]);
|
|
200
|
+
emitChange(file, nextFileList, event);
|
|
201
|
+
return file;
|
|
202
|
+
};
|
|
203
|
+
var replaceFile = function replaceFile(target, replacement, event) {
|
|
204
|
+
var index = fileListRef.current.findIndex(function (item) {
|
|
205
|
+
return isSameFile(item, target);
|
|
206
|
+
});
|
|
207
|
+
if (index < 0) {
|
|
208
|
+
return undefined;
|
|
209
|
+
}
|
|
210
|
+
var nextFileList = _toConsumableArray(fileListRef.current);
|
|
211
|
+
nextFileList[index] = replacement;
|
|
212
|
+
emitChange(replacement, nextFileList, event);
|
|
213
|
+
return replacement;
|
|
214
|
+
};
|
|
215
|
+
var updateFile = function updateFile(target, patch, event) {
|
|
216
|
+
var current = fileListRef.current.find(function (item) {
|
|
217
|
+
return isSameFile(item, target);
|
|
112
218
|
});
|
|
219
|
+
if (!current) {
|
|
220
|
+
return undefined;
|
|
221
|
+
}
|
|
222
|
+
return replaceFile(target, _objectSpread(_objectSpread({}, current), patch), event);
|
|
223
|
+
};
|
|
224
|
+
var abortRequest = function abortRequest(file) {
|
|
225
|
+
if (!file.uid) {
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
var activeRequest = activeRequestsRef.current.get(file.uid);
|
|
229
|
+
if (activeRequest) {
|
|
230
|
+
var _activeRequest$abort;
|
|
231
|
+
activeRequestsRef.current.delete(file.uid);
|
|
232
|
+
(_activeRequest$abort = activeRequest.abort) === null || _activeRequest$abort === void 0 || _activeRequest$abort.call(activeRequest);
|
|
233
|
+
}
|
|
113
234
|
};
|
|
114
|
-
var postFile = function postFile(
|
|
115
|
-
var
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
Object.keys(extraData).forEach(function (key) {
|
|
120
|
-
formData.append(key, extraData[key]);
|
|
235
|
+
var postFile = function postFile(sourceFile) {
|
|
236
|
+
var file = sourceFile;
|
|
237
|
+
if (!file.uid) {
|
|
238
|
+
var withUid = _objectSpread(_objectSpread({}, file), {}, {
|
|
239
|
+
uid: uuidv4()
|
|
121
240
|
});
|
|
241
|
+
file = replaceFile(file, withUid) || withUid;
|
|
242
|
+
}
|
|
243
|
+
var requestKey = file.uid;
|
|
244
|
+
abortRequest(file);
|
|
245
|
+
var token = Symbol(requestKey);
|
|
246
|
+
activeRequestsRef.current.set(requestKey, {
|
|
247
|
+
token: token
|
|
248
|
+
});
|
|
249
|
+
var isActive = function isActive() {
|
|
250
|
+
var _activeRequestsRef$cu;
|
|
251
|
+
return ((_activeRequestsRef$cu = activeRequestsRef.current.get(requestKey)) === null || _activeRequestsRef$cu === void 0 ? void 0 : _activeRequestsRef$cu.token) === token;
|
|
252
|
+
};
|
|
253
|
+
var finish = function finish() {
|
|
254
|
+
if (isActive()) {
|
|
255
|
+
activeRequestsRef.current.delete(requestKey);
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
var updateIfActive = function updateIfActive(patch, event) {
|
|
259
|
+
if (!isActive()) {
|
|
260
|
+
return undefined;
|
|
261
|
+
}
|
|
262
|
+
return updateFile(file, patch, event);
|
|
263
|
+
};
|
|
264
|
+
var fail = function fail(error) {
|
|
265
|
+
// Requests aborted outside of remove/retry/unmount (e.g. by the browser)
|
|
266
|
+
// go back to 'ready' instead of showing an error
|
|
267
|
+
if (isAbortRejection(error)) {
|
|
268
|
+
updateIfActive({
|
|
269
|
+
status: 'ready',
|
|
270
|
+
percent: 0
|
|
271
|
+
});
|
|
272
|
+
finish();
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
var normalizedError = toError(error);
|
|
276
|
+
updateIfActive({
|
|
277
|
+
status: 'error',
|
|
278
|
+
error: normalizedError
|
|
279
|
+
}, error);
|
|
280
|
+
finish();
|
|
281
|
+
};
|
|
282
|
+
updateIfActive({
|
|
283
|
+
status: 'uploading',
|
|
284
|
+
percent: 0,
|
|
285
|
+
error: undefined
|
|
286
|
+
});
|
|
287
|
+
if (!file.raw) {
|
|
288
|
+
fail(new Error("File ".concat(file.name, " has no source file to upload")));
|
|
289
|
+
return;
|
|
122
290
|
}
|
|
123
|
-
var url = typeof action === 'function' ? action() : action;
|
|
124
|
-
|
|
125
|
-
// Use custom upload
|
|
126
291
|
if (customRequest) {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
});
|
|
154
|
-
},
|
|
155
|
-
onSuccess: function onSuccess(response) {
|
|
156
|
-
var current = _objectSpread(_objectSpread({}, file), {}, {
|
|
157
|
-
status: 'success',
|
|
158
|
-
response: response
|
|
159
|
-
});
|
|
160
|
-
updateFileList(current);
|
|
161
|
-
onChange === null || onChange === void 0 || onChange({
|
|
162
|
-
file: current,
|
|
163
|
-
fileList: mergedFileList,
|
|
164
|
-
event: response
|
|
165
|
-
});
|
|
292
|
+
try {
|
|
293
|
+
var request = customRequest({
|
|
294
|
+
file: file.raw,
|
|
295
|
+
onProgress: function onProgress(percent) {
|
|
296
|
+
var normalizedPercent = Math.min(100, Math.max(0, percent));
|
|
297
|
+
updateIfActive({
|
|
298
|
+
status: 'uploading',
|
|
299
|
+
percent: normalizedPercent
|
|
300
|
+
}, {
|
|
301
|
+
percent: normalizedPercent
|
|
302
|
+
});
|
|
303
|
+
},
|
|
304
|
+
onError: fail,
|
|
305
|
+
onSuccess: function onSuccess(response) {
|
|
306
|
+
updateIfActive({
|
|
307
|
+
status: 'success',
|
|
308
|
+
percent: 100,
|
|
309
|
+
response: response,
|
|
310
|
+
error: undefined
|
|
311
|
+
}, response);
|
|
312
|
+
finish();
|
|
313
|
+
}
|
|
314
|
+
});
|
|
315
|
+
var activeRequest = activeRequestsRef.current.get(requestKey);
|
|
316
|
+
if ((activeRequest === null || activeRequest === void 0 ? void 0 : activeRequest.token) === token) {
|
|
317
|
+
activeRequest.abort = getAbort(request);
|
|
166
318
|
}
|
|
167
|
-
})
|
|
319
|
+
} catch (error) {
|
|
320
|
+
fail(error);
|
|
321
|
+
}
|
|
168
322
|
return;
|
|
169
323
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
var
|
|
179
|
-
|
|
180
|
-
|
|
324
|
+
try {
|
|
325
|
+
var url = typeof action === 'function' ? action() : action;
|
|
326
|
+
if (!url) {
|
|
327
|
+
throw new Error('Upload action is required when customRequest is not set');
|
|
328
|
+
}
|
|
329
|
+
var formData = new FormData();
|
|
330
|
+
formData.append(name, file.raw);
|
|
331
|
+
if (data) {
|
|
332
|
+
var extraData = typeof data === 'function' ? data(file.raw) : data;
|
|
333
|
+
Object.keys(extraData).forEach(function (key) {
|
|
334
|
+
formData.append(key, extraData[key]);
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
var _request = ax.post(url, formData, {
|
|
338
|
+
withCredentials: withCredentials,
|
|
339
|
+
headers: _objectSpread({}, headers),
|
|
340
|
+
onUploadProgress: function onUploadProgress(event) {
|
|
341
|
+
var percentage = event.total ? Math.round(event.loaded / event.total * 100) : 0;
|
|
342
|
+
updateIfActive({
|
|
181
343
|
status: 'uploading',
|
|
182
344
|
percent: percentage
|
|
183
|
-
});
|
|
184
|
-
} else {
|
|
185
|
-
current = _objectSpread(_objectSpread({}, file), {}, {
|
|
186
|
-
status: 'success',
|
|
187
|
-
percent: 100
|
|
188
|
-
});
|
|
345
|
+
}, event);
|
|
189
346
|
}
|
|
190
|
-
updateFileList(current);
|
|
191
|
-
onChange === null || onChange === void 0 || onChange({
|
|
192
|
-
file: current,
|
|
193
|
-
fileList: mergedFileList,
|
|
194
|
-
event: e
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
}).then(function (res) {
|
|
198
|
-
var current = _objectSpread(_objectSpread({}, file), {}, {
|
|
199
|
-
status: 'success',
|
|
200
|
-
response: res
|
|
201
|
-
});
|
|
202
|
-
updateFileList(current);
|
|
203
|
-
onChange === null || onChange === void 0 || onChange({
|
|
204
|
-
file: current,
|
|
205
|
-
fileList: mergedFileList,
|
|
206
|
-
event: res
|
|
207
|
-
});
|
|
208
|
-
}).catch(function (err) {
|
|
209
|
-
var current = _objectSpread(_objectSpread({}, file), {}, {
|
|
210
|
-
status: 'error',
|
|
211
|
-
error: err
|
|
212
347
|
});
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
348
|
+
var _activeRequest = activeRequestsRef.current.get(requestKey);
|
|
349
|
+
if ((_activeRequest === null || _activeRequest === void 0 ? void 0 : _activeRequest.token) === token) {
|
|
350
|
+
_activeRequest.abort = _request.abort;
|
|
351
|
+
}
|
|
352
|
+
_request.then(function (response) {
|
|
353
|
+
updateIfActive({
|
|
354
|
+
status: 'success',
|
|
355
|
+
percent: 100,
|
|
356
|
+
response: response,
|
|
357
|
+
error: undefined
|
|
358
|
+
}, response);
|
|
359
|
+
finish();
|
|
360
|
+
}).catch(fail);
|
|
361
|
+
} catch (error) {
|
|
362
|
+
fail(error);
|
|
363
|
+
}
|
|
226
364
|
};
|
|
227
365
|
var isValidFile = function isValidFile(file) {
|
|
228
|
-
// Check file size
|
|
229
366
|
if (maxFileSize && file.size > maxFileSize) {
|
|
230
367
|
console.warn("File ".concat(file.name, " exceeds maximum size limit"));
|
|
231
368
|
return false;
|
|
232
369
|
}
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
if (maxCount && mergedFileList.length >= maxCount) {
|
|
236
|
-
console.warn("Maximum file count (".concat(maxCount, ") exceeded"));
|
|
370
|
+
if (!matchesAccept(file, accept)) {
|
|
371
|
+
console.warn("File ".concat(file.name, " does not match accepted file types"));
|
|
237
372
|
return false;
|
|
238
373
|
}
|
|
239
374
|
return true;
|
|
240
375
|
};
|
|
241
|
-
var
|
|
242
|
-
var
|
|
376
|
+
var prepareFile = /*#__PURE__*/function () {
|
|
377
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(file, wrapped, postFiles, preparationToken, event) {
|
|
378
|
+
var preparationKey, isActive, finish, result, nextFile;
|
|
379
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
380
|
+
while (1) switch (_context.prev = _context.next) {
|
|
381
|
+
case 0:
|
|
382
|
+
preparationKey = wrapped.uid;
|
|
383
|
+
isActive = function isActive() {
|
|
384
|
+
return mountedRef.current && pendingPreparationsRef.current.get(preparationKey) === preparationToken && fileListRef.current.some(function (item) {
|
|
385
|
+
return isSameFile(item, wrapped);
|
|
386
|
+
});
|
|
387
|
+
};
|
|
388
|
+
finish = function finish() {
|
|
389
|
+
if (pendingPreparationsRef.current.get(preparationKey) === preparationToken) {
|
|
390
|
+
pendingPreparationsRef.current.delete(preparationKey);
|
|
391
|
+
}
|
|
392
|
+
};
|
|
393
|
+
_context.prev = 3;
|
|
394
|
+
if (!beforeUpload) {
|
|
395
|
+
_context.next = 10;
|
|
396
|
+
break;
|
|
397
|
+
}
|
|
398
|
+
_context.next = 7;
|
|
399
|
+
return Promise.resolve(beforeUpload(file, postFiles));
|
|
400
|
+
case 7:
|
|
401
|
+
_context.t0 = _context.sent;
|
|
402
|
+
_context.next = 11;
|
|
403
|
+
break;
|
|
404
|
+
case 10:
|
|
405
|
+
_context.t0 = true;
|
|
406
|
+
case 11:
|
|
407
|
+
result = _context.t0;
|
|
408
|
+
if (isActive()) {
|
|
409
|
+
_context.next = 15;
|
|
410
|
+
break;
|
|
411
|
+
}
|
|
412
|
+
finish();
|
|
413
|
+
return _context.abrupt("return");
|
|
414
|
+
case 15:
|
|
415
|
+
if (!(result === false)) {
|
|
416
|
+
_context.next = 19;
|
|
417
|
+
break;
|
|
418
|
+
}
|
|
419
|
+
// beforeUpload rejected the file: drop it from the list
|
|
420
|
+
setFileList(fileListRef.current.filter(function (item) {
|
|
421
|
+
return !isSameFile(item, wrapped);
|
|
422
|
+
}));
|
|
423
|
+
finish();
|
|
424
|
+
return _context.abrupt("return");
|
|
425
|
+
case 19:
|
|
426
|
+
nextFile = wrapped;
|
|
427
|
+
if (!(result instanceof File)) {
|
|
428
|
+
_context.next = 25;
|
|
429
|
+
break;
|
|
430
|
+
}
|
|
431
|
+
nextFile = _objectSpread(_objectSpread({}, wrapFile(result)), {}, {
|
|
432
|
+
uid: wrapped.uid
|
|
433
|
+
});
|
|
434
|
+
if (replaceFile(wrapped, nextFile, event)) {
|
|
435
|
+
_context.next = 25;
|
|
436
|
+
break;
|
|
437
|
+
}
|
|
438
|
+
finish();
|
|
439
|
+
return _context.abrupt("return");
|
|
440
|
+
case 25:
|
|
441
|
+
finish();
|
|
442
|
+
postFile(nextFile);
|
|
443
|
+
_context.next = 33;
|
|
444
|
+
break;
|
|
445
|
+
case 29:
|
|
446
|
+
_context.prev = 29;
|
|
447
|
+
_context.t1 = _context["catch"](3);
|
|
448
|
+
if (isActive()) {
|
|
449
|
+
updateFile(wrapped, {
|
|
450
|
+
status: 'error',
|
|
451
|
+
error: toError(_context.t1)
|
|
452
|
+
}, _context.t1);
|
|
453
|
+
}
|
|
454
|
+
finish();
|
|
455
|
+
case 33:
|
|
456
|
+
case "end":
|
|
457
|
+
return _context.stop();
|
|
458
|
+
}
|
|
459
|
+
}, _callee, null, [[3, 29]]);
|
|
460
|
+
}));
|
|
461
|
+
return function prepareFile(_x, _x2, _x3, _x4, _x5) {
|
|
462
|
+
return _ref2.apply(this, arguments);
|
|
463
|
+
};
|
|
464
|
+
}();
|
|
465
|
+
var uploadFiles = function uploadFiles(files, event) {
|
|
466
|
+
var selectedFiles = Array.from(files);
|
|
467
|
+
var filesAllowedByMultiple = multiple || directory ? selectedFiles : selectedFiles.slice(0, 1);
|
|
468
|
+
var validFiles = filesAllowedByMultiple.filter(isValidFile);
|
|
469
|
+
var remainingCount = typeof maxCount === 'number' ? Math.max(0, maxCount - fileListRef.current.length) : validFiles.length;
|
|
470
|
+
var postFiles = validFiles.slice(0, remainingCount);
|
|
471
|
+
if (postFiles.length < validFiles.length) {
|
|
472
|
+
console.warn("Maximum file count (".concat(maxCount, ") exceeded"));
|
|
473
|
+
}
|
|
243
474
|
postFiles.forEach(function (file) {
|
|
244
|
-
|
|
475
|
+
var wrapped = appendFile(wrapFile(file), event);
|
|
476
|
+
|
|
477
|
+
// Manual mode: files only join the list and wait for upload()
|
|
478
|
+
if (!autoUpload) {
|
|
245
479
|
return;
|
|
246
480
|
}
|
|
247
|
-
var
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
481
|
+
var preparationToken = Symbol(wrapped.uid);
|
|
482
|
+
pendingPreparationsRef.current.set(wrapped.uid, preparationToken);
|
|
483
|
+
void prepareFile(file, wrapped, postFiles, preparationToken, event);
|
|
484
|
+
});
|
|
485
|
+
};
|
|
486
|
+
|
|
487
|
+
// Instance method: upload files waiting in the list (status 'ready')
|
|
488
|
+
var upload = function upload(file) {
|
|
489
|
+
var requested = file === undefined ? fileListRef.current : Array.isArray(file) ? file : [file];
|
|
490
|
+
var readyFiles = requested.filter(function (item) {
|
|
491
|
+
return item.status === 'ready';
|
|
492
|
+
});
|
|
493
|
+
readyFiles.forEach(function (item) {
|
|
494
|
+
var target = item;
|
|
495
|
+
if (!target.uid) {
|
|
496
|
+
var _replaceFile;
|
|
497
|
+
target = (_replaceFile = replaceFile(item, _objectSpread(_objectSpread({}, item), {}, {
|
|
498
|
+
uid: uuidv4()
|
|
499
|
+
}))) !== null && _replaceFile !== void 0 ? _replaceFile : item;
|
|
500
|
+
}
|
|
501
|
+
if (!target.raw) {
|
|
502
|
+
updateFile(target, {
|
|
503
|
+
status: 'error',
|
|
504
|
+
error: new Error("File ".concat(target.name, " has no source file to upload"))
|
|
505
|
+
});
|
|
506
|
+
return;
|
|
267
507
|
}
|
|
508
|
+
var preparationToken = Symbol(target.uid);
|
|
509
|
+
pendingPreparationsRef.current.set(target.uid, preparationToken);
|
|
510
|
+
void prepareFile(target.raw, target, readyFiles.map(function (ready) {
|
|
511
|
+
return ready.raw;
|
|
512
|
+
}).filter(function (raw) {
|
|
513
|
+
return raw instanceof File;
|
|
514
|
+
}), preparationToken);
|
|
268
515
|
});
|
|
269
516
|
};
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
517
|
+
|
|
518
|
+
// Expose the root element plus the upload() method on the ref
|
|
519
|
+
useImperativeHandle(ref, function () {
|
|
520
|
+
var _rootRef$current;
|
|
521
|
+
return Object.assign((_rootRef$current = rootRef.current) !== null && _rootRef$current !== void 0 ? _rootRef$current : document.createElement('div'), {
|
|
522
|
+
upload: upload
|
|
523
|
+
});
|
|
524
|
+
}, [upload]);
|
|
525
|
+
var handleChange = function handleChange(event) {
|
|
526
|
+
var files = event.target.files;
|
|
527
|
+
if (!files) {
|
|
528
|
+
return;
|
|
276
529
|
}
|
|
530
|
+
uploadFiles(files, event);
|
|
531
|
+
event.target.value = '';
|
|
277
532
|
};
|
|
278
|
-
var
|
|
533
|
+
var handleDragOver = function handleDragOver(event) {
|
|
534
|
+
event.preventDefault();
|
|
279
535
|
if (!disabled) {
|
|
280
|
-
|
|
281
|
-
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.click();
|
|
536
|
+
setDragState('dragover');
|
|
282
537
|
}
|
|
283
538
|
};
|
|
284
|
-
var
|
|
285
|
-
|
|
286
|
-
if (disabled) return;
|
|
287
|
-
setDragState('dragover');
|
|
288
|
-
};
|
|
289
|
-
var handleDragLeave = function handleDragLeave(e) {
|
|
290
|
-
e.preventDefault();
|
|
539
|
+
var handleDragLeave = function handleDragLeave(event) {
|
|
540
|
+
event.preventDefault();
|
|
291
541
|
setDragState(null);
|
|
292
542
|
};
|
|
293
543
|
var handleDrop = /*#__PURE__*/function () {
|
|
294
|
-
var
|
|
295
|
-
var
|
|
296
|
-
return _regeneratorRuntime().wrap(function
|
|
297
|
-
while (1) switch (
|
|
544
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(event) {
|
|
545
|
+
var entries, nestedFiles;
|
|
546
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
547
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
298
548
|
case 0:
|
|
299
|
-
|
|
549
|
+
event.preventDefault();
|
|
300
550
|
if (!disabled) {
|
|
301
|
-
|
|
551
|
+
_context2.next = 3;
|
|
302
552
|
break;
|
|
303
553
|
}
|
|
304
|
-
return
|
|
554
|
+
return _context2.abrupt("return");
|
|
305
555
|
case 3:
|
|
306
556
|
setDragState('drop');
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
557
|
+
_context2.prev = 4;
|
|
558
|
+
entries = Array.from(event.dataTransfer.items).map(function (item) {
|
|
559
|
+
var _item$webkitGetAsEntr;
|
|
560
|
+
return (_item$webkitGetAsEntr = item.webkitGetAsEntry) === null || _item$webkitGetAsEntr === void 0 ? void 0 : _item$webkitGetAsEntr.call(item);
|
|
561
|
+
}).filter(function (entry) {
|
|
562
|
+
return entry !== null && entry !== undefined;
|
|
563
|
+
});
|
|
564
|
+
if (!entries.some(function (entry) {
|
|
565
|
+
return entry.isDirectory;
|
|
566
|
+
})) {
|
|
567
|
+
_context2.next = 13;
|
|
310
568
|
break;
|
|
311
569
|
}
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
folderFiles = _context.sent;
|
|
321
|
-
uploadFiles(folderFiles, e);
|
|
322
|
-
_context.next = 15;
|
|
570
|
+
_context2.next = 9;
|
|
571
|
+
return Promise.all(entries.map(function (entry) {
|
|
572
|
+
return folderScanner(entry, []);
|
|
573
|
+
}));
|
|
574
|
+
case 9:
|
|
575
|
+
nestedFiles = _context2.sent;
|
|
576
|
+
uploadFiles(nestedFiles.flat(), event);
|
|
577
|
+
_context2.next = 14;
|
|
323
578
|
break;
|
|
579
|
+
case 13:
|
|
580
|
+
uploadFiles(event.dataTransfer.files, event);
|
|
324
581
|
case 14:
|
|
325
|
-
|
|
326
|
-
uploadFiles(files, e);
|
|
327
|
-
}
|
|
328
|
-
case 15:
|
|
329
|
-
_context.next = 18;
|
|
582
|
+
_context2.next = 19;
|
|
330
583
|
break;
|
|
331
|
-
case
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
case
|
|
584
|
+
case 16:
|
|
585
|
+
_context2.prev = 16;
|
|
586
|
+
_context2.t0 = _context2["catch"](4);
|
|
587
|
+
console.warn('Failed to scan dropped files', _context2.t0);
|
|
588
|
+
case 19:
|
|
589
|
+
_context2.prev = 19;
|
|
590
|
+
setDragState(null);
|
|
591
|
+
return _context2.finish(19);
|
|
592
|
+
case 22:
|
|
336
593
|
case "end":
|
|
337
|
-
return
|
|
594
|
+
return _context2.stop();
|
|
338
595
|
}
|
|
339
|
-
},
|
|
596
|
+
}, _callee2, null, [[4, 16, 19, 22]]);
|
|
340
597
|
}));
|
|
341
|
-
return function handleDrop(
|
|
342
|
-
return
|
|
598
|
+
return function handleDrop(_x6) {
|
|
599
|
+
return _ref3.apply(this, arguments);
|
|
343
600
|
};
|
|
344
601
|
}();
|
|
345
|
-
var renderUploadTrigger = function renderUploadTrigger() {
|
|
346
|
-
return /*#__PURE__*/React.createElement("span", {
|
|
347
|
-
className: clsx("".concat(prefixCls, "-input"), _defineProperty({}, "".concat(prefixCls, "-input-disabled"), disabled)),
|
|
348
|
-
onClick: handleClick
|
|
349
|
-
}, /*#__PURE__*/React.createElement("input", _extends({
|
|
350
|
-
type: "file",
|
|
351
|
-
disabled: disabled
|
|
352
|
-
}, acceptDirectory, {
|
|
353
|
-
multiple: multiple,
|
|
354
|
-
accept: accept,
|
|
355
|
-
onChange: handleChange,
|
|
356
|
-
style: {
|
|
357
|
-
display: 'none'
|
|
358
|
-
},
|
|
359
|
-
ref: inputRef
|
|
360
|
-
})), children ? children : listType === 'picture-wall' ? /*#__PURE__*/React.createElement("div", {
|
|
361
|
-
className: "".concat(prefixCls, "-picture-wall-trigger")
|
|
362
|
-
}, /*#__PURE__*/React.createElement(Plus, null)) : /*#__PURE__*/React.createElement(Button, {
|
|
363
|
-
disabled: disabled
|
|
364
|
-
}, "Upload"));
|
|
365
|
-
};
|
|
366
602
|
var handleRemove = /*#__PURE__*/function () {
|
|
367
|
-
var
|
|
368
|
-
var
|
|
369
|
-
return _regeneratorRuntime().wrap(function
|
|
370
|
-
while (1) switch (
|
|
603
|
+
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(file) {
|
|
604
|
+
var shouldRemove;
|
|
605
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
606
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
371
607
|
case 0:
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
608
|
+
if (file.uid) {
|
|
609
|
+
pendingPreparationsRef.current.delete(file.uid);
|
|
610
|
+
}
|
|
611
|
+
_context3.prev = 1;
|
|
612
|
+
if (!onRemove) {
|
|
613
|
+
_context3.next = 8;
|
|
375
614
|
break;
|
|
376
615
|
}
|
|
377
|
-
|
|
378
|
-
return
|
|
379
|
-
case
|
|
380
|
-
|
|
381
|
-
|
|
616
|
+
_context3.next = 5;
|
|
617
|
+
return Promise.resolve(onRemove(file));
|
|
618
|
+
case 5:
|
|
619
|
+
_context3.t0 = _context3.sent;
|
|
620
|
+
_context3.next = 9;
|
|
382
621
|
break;
|
|
383
|
-
case 7:
|
|
384
|
-
_context2.t0 = promise !== false;
|
|
385
622
|
case 8:
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
});
|
|
623
|
+
_context3.t0 = true;
|
|
624
|
+
case 9:
|
|
625
|
+
shouldRemove = _context3.t0;
|
|
626
|
+
if (!(shouldRemove === false)) {
|
|
627
|
+
_context3.next = 12;
|
|
628
|
+
break;
|
|
393
629
|
}
|
|
394
|
-
|
|
630
|
+
return _context3.abrupt("return");
|
|
631
|
+
case 12:
|
|
632
|
+
abortRequest(file);
|
|
633
|
+
setFileList(fileListRef.current.filter(function (item) {
|
|
634
|
+
return !isSameFile(item, file);
|
|
635
|
+
}));
|
|
636
|
+
_context3.next = 19;
|
|
637
|
+
break;
|
|
638
|
+
case 16:
|
|
639
|
+
_context3.prev = 16;
|
|
640
|
+
_context3.t1 = _context3["catch"](1);
|
|
641
|
+
console.warn("Failed to remove file ".concat(file.name), _context3.t1);
|
|
642
|
+
case 19:
|
|
395
643
|
case "end":
|
|
396
|
-
return
|
|
644
|
+
return _context3.stop();
|
|
397
645
|
}
|
|
398
|
-
},
|
|
646
|
+
}, _callee3, null, [[1, 16]]);
|
|
399
647
|
}));
|
|
400
|
-
return function handleRemove(
|
|
401
|
-
return
|
|
648
|
+
return function handleRemove(_x7) {
|
|
649
|
+
return _ref4.apply(this, arguments);
|
|
402
650
|
};
|
|
403
651
|
}();
|
|
404
652
|
var handleReUpload = function handleReUpload(file) {
|
|
405
|
-
|
|
653
|
+
if (file.uid) {
|
|
654
|
+
pendingPreparationsRef.current.delete(file.uid);
|
|
655
|
+
}
|
|
656
|
+
abortRequest(file);
|
|
657
|
+
var nextFile = updateFile(file, {
|
|
658
|
+
uid: file.uid || uuidv4(),
|
|
406
659
|
status: 'ready',
|
|
407
|
-
percent: 0
|
|
660
|
+
percent: 0,
|
|
661
|
+
error: undefined,
|
|
662
|
+
response: undefined
|
|
408
663
|
});
|
|
409
|
-
|
|
410
|
-
|
|
664
|
+
if (nextFile) {
|
|
665
|
+
postFile(nextFile);
|
|
666
|
+
}
|
|
411
667
|
};
|
|
412
668
|
var handlePreview = function handlePreview(file) {
|
|
413
669
|
if (onPreview) {
|
|
414
670
|
onPreview(file);
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
window.open(url);
|
|
419
|
-
|
|
420
|
-
return URL.revokeObjectURL(url);
|
|
421
|
-
}, 100);
|
|
671
|
+
return;
|
|
672
|
+
}
|
|
673
|
+
if (file.url) {
|
|
674
|
+
window.open(file.url, '_blank', 'noopener,noreferrer');
|
|
675
|
+
return;
|
|
422
676
|
}
|
|
677
|
+
if (!file.raw) {
|
|
678
|
+
return;
|
|
679
|
+
}
|
|
680
|
+
var url = URL.createObjectURL(file.raw);
|
|
681
|
+
var previewWindow = window.open(url, '_blank');
|
|
682
|
+
if (!previewWindow) {
|
|
683
|
+
URL.revokeObjectURL(url);
|
|
684
|
+
return;
|
|
685
|
+
}
|
|
686
|
+
var cleanup = function cleanup() {
|
|
687
|
+
return URL.revokeObjectURL(url);
|
|
688
|
+
};
|
|
689
|
+
previewWindow.addEventListener('load', cleanup, {
|
|
690
|
+
once: true
|
|
691
|
+
});
|
|
692
|
+
window.setTimeout(cleanup, 60000);
|
|
693
|
+
};
|
|
694
|
+
var renderUploadTrigger = function renderUploadTrigger() {
|
|
695
|
+
var acceptDirectory = directory ? {
|
|
696
|
+
webkitdirectory: '',
|
|
697
|
+
directory: ''
|
|
698
|
+
} : {};
|
|
699
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
700
|
+
className: clsx("".concat(prefixCls, "-input"), _defineProperty({}, "".concat(prefixCls, "-input-disabled"), disabled)),
|
|
701
|
+
onClick: function onClick(event) {
|
|
702
|
+
if (!disabled && event.target !== inputRef.current) {
|
|
703
|
+
var _inputRef$current;
|
|
704
|
+
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.click();
|
|
705
|
+
}
|
|
706
|
+
}
|
|
707
|
+
}, /*#__PURE__*/React.createElement("input", _extends({
|
|
708
|
+
type: "file",
|
|
709
|
+
"aria-label": "Upload file",
|
|
710
|
+
className: "".concat(prefixCls, "-native-input"),
|
|
711
|
+
disabled: disabled
|
|
712
|
+
}, acceptDirectory, {
|
|
713
|
+
multiple: Boolean(multiple || directory),
|
|
714
|
+
accept: accept,
|
|
715
|
+
onChange: handleChange,
|
|
716
|
+
ref: inputRef
|
|
717
|
+
})), children ? children : listType === 'picture-wall' ? /*#__PURE__*/React.createElement("span", {
|
|
718
|
+
className: "".concat(prefixCls, "-picture-wall-trigger")
|
|
719
|
+
}, /*#__PURE__*/React.createElement(Plus, null)) : /*#__PURE__*/React.createElement(Button, {
|
|
720
|
+
disabled: disabled
|
|
721
|
+
}, "Upload"));
|
|
423
722
|
};
|
|
424
723
|
var renderUploadList = function renderUploadList(extraProps) {
|
|
425
724
|
if (!showUploadList) {
|
|
@@ -434,17 +733,20 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
434
733
|
itemRender: itemRender,
|
|
435
734
|
onRemove: handleRemove,
|
|
436
735
|
onReUpload: handleReUpload,
|
|
437
|
-
onPreview: handlePreview
|
|
736
|
+
onPreview: handlePreview,
|
|
737
|
+
isPreviewable: function isPreviewable(file) {
|
|
738
|
+
return Boolean(onPreview || file.url || file.raw);
|
|
739
|
+
}
|
|
438
740
|
}, extraProps));
|
|
439
741
|
};
|
|
440
742
|
if (type === 'drag') {
|
|
441
743
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
442
|
-
ref:
|
|
744
|
+
ref: rootRef
|
|
443
745
|
}, rest, {
|
|
444
746
|
className: clsx(prefixCls, "".concat(prefixCls, "-drag"), _defineProperty(_defineProperty({}, "".concat(prefixCls, "-drag-hover"), dragState === 'dragover'), "".concat(prefixCls, "-disabled"), disabled), className),
|
|
445
747
|
style: style
|
|
446
748
|
}), /*#__PURE__*/React.createElement("div", {
|
|
447
|
-
className:
|
|
749
|
+
className: "".concat(prefixCls, "-drag-container"),
|
|
448
750
|
onDrop: handleDrop,
|
|
449
751
|
onDragOver: handleDragOver,
|
|
450
752
|
onDragLeave: handleDragLeave
|
|
@@ -454,7 +756,7 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
454
756
|
}
|
|
455
757
|
if (listType === 'picture-wall') {
|
|
456
758
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
457
|
-
ref:
|
|
759
|
+
ref: rootRef
|
|
458
760
|
}, rest, {
|
|
459
761
|
className: clsx(prefixCls, "".concat(prefixCls, "-picture-wall"), className),
|
|
460
762
|
style: style
|
|
@@ -463,7 +765,7 @@ var Upload = /*#__PURE__*/forwardRef(function (baseprops, ref) {
|
|
|
463
765
|
}));
|
|
464
766
|
}
|
|
465
767
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
466
|
-
ref:
|
|
768
|
+
ref: rootRef
|
|
467
769
|
}, rest, {
|
|
468
770
|
className: clsx(prefixCls, _defineProperty(_defineProperty({}, "".concat(prefixCls, "-picture-list"), listType === 'picture-list'), "".concat(prefixCls, "-disabled"), disabled), className),
|
|
469
771
|
style: style
|