@antdp/antdp-ui
Version:
基于antd封装的组件
77 lines (76 loc) • 2.83 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.imagePreview = exports.getMenusItems = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _react = _interopRequireDefault(require("react"));
var _authorized = require("@antdp/authorized");
var _jsxRuntime = require("react/jsx-runtime");
var getBase64 = function getBase64(file) {
if (!file) return Promise.reject(new Error('no file'));
return new Promise(function (resolve, reject) {
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function () {
return resolve(reader.result);
};
reader.onerror = function (error) {
return reject(error);
};
});
};
var imagePreview = exports.imagePreview = /*#__PURE__*/function () {
var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function _callee(file, callback) {
var newFile, newPreviewImage;
return (0, _regeneratorRuntime2["default"])().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
newFile = file;
if (!(!newFile.url && !newFile.preview)) {
_context.next = 5;
break;
}
_context.next = 4;
return getBase64(file.originFileObj);
case 4:
newFile.preview = _context.sent;
case 5:
newPreviewImage = newFile.url || newFile.preview || '';
callback({
image: newPreviewImage
});
case 7:
case "end":
return _context.stop();
}
}, _callee);
}));
return function imagePreview(_x, _x2) {
return _ref.apply(this, arguments);
};
}();
var getMenusItems = exports.getMenusItems = function getMenusItems() {
var menus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
var _loop = function loop() {
var menus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
return menus.map(function (items) {
var label = items.label,
path = items.path,
menus = items.menus;
var object = (0, _objectSpread2["default"])({}, items);
object.label = path ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_authorized.AuthorizedBtn, {
path: path,
children: label
}) : label;
if (menus) {
object.children = _loop(menus);
}
return object;
});
};
return _loop(menus);
};