dareway-rui
Version:
249 lines (212 loc) • 11.2 kB
JavaScript
;
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault');
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.default = _default;
var _regenerator = _interopRequireDefault(require('@babel/runtime/regenerator'));
var _CurrentUser = _interopRequireDefault(require('../../../user/CurrentUser'));
var _utils = require('../utils');
var _rui = require('../../../core/rui');
function _default() {
return {
SideBarAPI_addBarItem:
/*#__PURE__*/
_regenerator.default.mark(function SideBarAPI_addBarItem(_ref, RUI) {
var payload,
itemName,
itemTitle,
biz,
vmPath,
params,
iconId,
_payload$closeable,
closeable,
functionId,
_ref2,
barItems,
_ref3,
connectedView,
connectedModel;
return _regenerator.default.wrap(function SideBarAPI_addBarItem$(_context) {
while (1) {
switch ((_context.prev = _context.next)) {
case 0:
payload = _ref.payload;
(itemName = payload.itemName),
(itemTitle = payload.itemTitle),
(biz = payload.biz),
(vmPath = payload.vmPath),
(params = payload.params),
(iconId = payload.iconId),
(_payload$closeable = payload.closeable),
(closeable = _payload$closeable === void 0 ? false : _payload$closeable),
(functionId = payload.functionId); // 若配置了functionId,但当前登录用户不具备相应权限,则不予渲染;
if (!(functionId && !_CurrentUser.default.hasFunction(functionId))) {
_context.next = 4;
break;
}
return _context.abrupt('return');
case 4:
if (!(!itemName || !iconId || !vmPath)) {
_context.next = 6;
break;
}
throw new Error(
'SideBar.addBarItem(itemName, itemTitle,iconId, ...) \u5165\u53C2 itemName\u3001iconId\u3001vmPath \u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5!'
);
case 6:
_context.next = 8;
return RUI.getState();
case 8:
_ref2 = _context.sent;
barItems = _ref2.barItems;
(0, _utils.checkBarItemNotExist)(
barItems,
itemName,
'SideBar.addBarItem(itemName, ...)\uFF0CSideBar \u4E2D\u5DF2\u5B58\u5728\u540D\u4E3A \u3010'.concat(
itemName,
'\u3011\u7684 SideBarItem\uFF0C\u4E0D\u80FD\u91CD\u590D\u521B\u5EFA\uFF0C\u8BF7\u68C0\u67E5\uFF01'
)
); // 模块加载;
_context.next = 13;
return _rui.RUICore.loadCustomViewModel(biz, vmPath);
case 13:
_ref3 = _context.sent;
connectedView = _ref3.connectedView;
connectedModel = _ref3.connectedModel;
_context.next = 18;
return RUI.invoke('SideBarAPI_addBarItemSuccess', {
itemName: itemName,
itemTitle: itemTitle,
biz: biz,
vmPath: vmPath,
closeable: closeable,
params: params,
iconId: iconId,
component: connectedView,
connectedModel: connectedModel,
isLoaded: false
});
case 18:
case 'end':
return _context.stop();
}
}
}, SideBarAPI_addBarItem);
}),
SideBarAPI_selectBarItem:
/*#__PURE__*/
_regenerator.default.mark(function SideBarAPI_selectBarItem(_ref4, RUI) {
var payload, itemName, _ref5, barItems;
return _regenerator.default.wrap(function SideBarAPI_selectBarItem$(_context2) {
while (1) {
switch ((_context2.prev = _context2.next)) {
case 0:
payload = _ref4.payload;
itemName = payload;
if (itemName) {
_context2.next = 4;
break;
}
throw new Error(
'SideBar.selectBarItem(itemName) \u5165\u53C2 itemName \u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5!'
);
case 4:
_context2.next = 6;
return RUI.getState();
case 6:
_ref5 = _context2.sent;
barItems = _ref5.barItems;
(0, _utils.checkBarItemExist)(
barItems,
itemName,
'SideBar.selectBarItem(itemName)\uFF0CSideBar \u4E2D\u4E0D\u5B58\u5728\u540D\u4E3A\u3010'.concat(
itemName,
'\u3011\u7684 SideBarItem\uFF0C\u8BF7\u68C0\u67E5\uFF01'
)
);
_context2.next = 11;
return RUI.invoke('SideBarAPI_selectBarItemSuccess', payload);
case 11:
case 'end':
return _context2.stop();
}
}
}, SideBarAPI_selectBarItem);
}),
SideBarAPI_containsBarItem:
/*#__PURE__*/
_regenerator.default.mark(function SideBarAPI_containsBarItem(_ref6, RUI) {
var payload, _ref7, barItems;
return _regenerator.default.wrap(function SideBarAPI_containsBarItem$(_context3) {
while (1) {
switch ((_context3.prev = _context3.next)) {
case 0:
payload = _ref6.payload;
if (payload) {
_context3.next = 3;
break;
}
throw new Error(
'SideBar.containsBarItem(itemName) \u5165\u53C2 itemName \u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5!'
);
case 3:
_context3.next = 5;
return RUI.getState();
case 5:
_ref7 = _context3.sent;
barItems = _ref7.barItems;
return _context3.abrupt('return', (0, _utils.isBarItemExist)(barItems, payload));
case 8:
case 'end':
return _context3.stop();
}
}
}, SideBarAPI_containsBarItem);
}),
SideBarAPI_removeBarItem:
/*#__PURE__*/
_regenerator.default.mark(function SideBarAPI_removeBarItem(_ref8, RUI) {
var payload, itemName, _ref9, barItems;
return _regenerator.default.wrap(function SideBarAPI_removeBarItem$(_context4) {
while (1) {
switch ((_context4.prev = _context4.next)) {
case 0:
payload = _ref8.payload;
itemName = payload;
if (itemName) {
_context4.next = 4;
break;
}
throw new Error(
'SideBar.removeBarItem(itemName) \u5165\u53C2 itemName \u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5!'
);
case 4:
_context4.next = 6;
return RUI.getState();
case 6:
_ref9 = _context4.sent;
barItems = _ref9.barItems;
(0, _utils.checkBarItemExist)(
barItems,
itemName,
'SideBar.removeBarItem(itemName)\uFF0CSideBar \u4E2D\u4E0D\u5B58\u5728\u540D\u4E3A\u3010'.concat(
itemName,
'\u3011\u7684 SideBarItem\uFF0C\u8BF7\u68C0\u67E5\uFF01'
)
); // 移除 barItem
// 1. 若移除的是活动 barItem,则自动激活第一个;
// 2. 若基础的是非活动 barItem,则直接移除;
_context4.next = 11;
return RUI.invoke('SideBarAPI_removeBarItemSuccess', payload);
case 11:
case 'end':
return _context4.stop();
}
}
}, SideBarAPI_removeBarItem);
})
};
}
//@ sourceMappingURL=effects.js.map