@uiw-admin/components
Version:
78 lines (77 loc) • 2.89 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireDefault(require("react"));
var _uiw = require("uiw");
var _jsxRuntime = require("react/jsx-runtime");
var _excluded = ["uploadType", "value", "readonly", "maxNumber"];
var Upload = function Upload(_ref) {
var uploadType = _ref.uploadType,
value = _ref.value,
_ref$readonly = _ref.readonly,
readonly = _ref$readonly === void 0 ? false : _ref$readonly,
maxNumber = _ref.maxNumber,
others = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
var _React$useState = _react["default"].useState(false),
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
visible = _React$useState2[0],
setVisible = _React$useState2[1];
var _React$useState3 = _react["default"].useState(''),
_React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
src = _React$useState4[0],
setSrc = _React$useState4[1];
var renderBtn = function renderBtn() {
if (readonly) return null;
if (uploadType === 'card') return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uiw.Icon, {
type: "plus"
});
if (uploadType === 'picture' || uploadType === 'text') return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uiw.Button, {
type: "primary",
children: "\u65B0\u589E"
});
return null;
};
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react["default"].Fragment, {
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uiw.FileInput, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({
uploadType: uploadType,
readonly: readonly,
value: value,
maxNumber: maxNumber,
onPreview: function onPreview(file) {
setSrc(file === null || file === void 0 ? void 0 : file.dataURL);
setVisible(true);
}
}, others), {}, {
children: renderBtn()
})), /*#__PURE__*/(0, _jsxRuntime.jsx)(_uiw.Modal, {
isOpen: visible,
onClosed: function onClosed() {
return setVisible(false);
},
width: 600,
confirmButtonProps: {
style: {
display: 'none'
}
},
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
crossOrigin: "anonymous",
src: src,
alt: "",
style: {
width: '100%',
height: '100%'
}
})
})]
});
};
var _default = Upload;
exports["default"] = _default;
module.exports = exports.default;