fx-form-widget
Version:
91 lines (90 loc) • 3.08 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _dropdown = _interopRequireDefault(require("antd/lib/dropdown"));
var _button = _interopRequireDefault(require("antd/lib/button"));
var _message2 = _interopRequireDefault(require("antd/lib/message"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _theme2 = _interopRequireDefault(require("antd/lib/theme"));
var _react = _interopRequireDefault(require("react"));
var _icons = require("@ant-design/icons");
var useToken = _theme2["default"].useToken;
var DropdownAction = function DropdownAction(_ref) {
var variant = _ref.variant,
addRoute = _ref.addRoute,
handleRefresh = _ref.handleRefresh;
var _useToken = useToken(),
token = _useToken.token;
var items = [];
if (addRoute) {
items.push({
key: 'add',
label: '新增',
icon: /*#__PURE__*/_react["default"].createElement(_icons.PlusOutlined, null)
});
}
if (handleRefresh) {
items.push({
key: 'refresh',
label: '刷新',
icon: /*#__PURE__*/_react["default"].createElement(_icons.ReloadOutlined, null)
});
}
var handleMenuClick = /*#__PURE__*/function () {
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(e) {
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!(e.key === 'add')) {
_context.next = 4;
break;
}
window.open("" + window.location.origin + addRoute);
_context.next = 8;
break;
case 4:
if (!(e.key === 'refresh')) {
_context.next = 8;
break;
}
_context.next = 7;
return handleRefresh();
case 7:
_message2["default"].success('刷新成功');
case 8:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleMenuClick(_x) {
return _ref2.apply(this, arguments);
};
}();
var style = variant === 'filled' ? {
width: 30,
border: 'none',
borderLeft: '1px solid #eee',
borderTopLeftRadius: 0,
borderBottomLeftRadius: 0,
background: token.colorFillTertiary
} : {
width: 30,
borderLeft: 0,
borderTopLeftRadius: 0,
borderBottomLeftRadius: 0
};
return /*#__PURE__*/_react["default"].createElement(_dropdown["default"], {
placement: "bottomRight",
menu: {
items: items,
onClick: handleMenuClick
}
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
style: style,
icon: /*#__PURE__*/_react["default"].createElement(_icons.EllipsisOutlined, null)
}));
};
var _default = exports["default"] = DropdownAction;