dareway-rui
Version:
959 lines (824 loc) • 99.4 kB
JavaScript
'use strict';
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault');
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.default = void 0;
var _toConsumableArray2 = _interopRequireDefault(require('@babel/runtime/helpers/toConsumableArray'));
var _objectSpread2 = _interopRequireDefault(require('@babel/runtime/helpers/objectSpread'));
var _regenerator = _interopRequireDefault(require('@babel/runtime/regenerator'));
var _typeof2 = _interopRequireDefault(require('@babel/runtime/helpers/typeof'));
var _extends2 = _interopRequireDefault(require('@babel/runtime/helpers/extends'));
var _classCallCheck2 = _interopRequireDefault(require('@babel/runtime/helpers/classCallCheck'));
var _createClass2 = _interopRequireDefault(require('@babel/runtime/helpers/createClass'));
var _possibleConstructorReturn2 = _interopRequireDefault(require('@babel/runtime/helpers/possibleConstructorReturn'));
var _getPrototypeOf2 = _interopRequireDefault(require('@babel/runtime/helpers/getPrototypeOf'));
var _assertThisInitialized2 = _interopRequireDefault(require('@babel/runtime/helpers/assertThisInitialized'));
var _inherits2 = _interopRequireDefault(require('@babel/runtime/helpers/inherits'));
var _defineProperty2 = _interopRequireDefault(require('@babel/runtime/helpers/defineProperty'));
var _react = _interopRequireDefault(require('react'));
var _reactRedux = require('react-redux');
var _propTypes = _interopRequireDefault(require('prop-types'));
var _isPlainObject = _interopRequireDefault(require('is-plain-object'));
var _classnames = _interopRequireDefault(require('classnames'));
var _core = require('../../core');
var _Res = _interopRequireDefault(require('../res/Res'));
var _LaneSwitcher = _interopRequireDefault(require('./LaneSwitcher'));
var _util = require('../../util');
var _beacon = require('../../taglib/beacon');
var _LaneContainerAPI = _interopRequireDefault(require('./LaneContainerAPI'));
var _LaneAPI = _interopRequireDefault(require('./LaneAPI'));
var _utils = require('./utils');
var _LaneContext = _interopRequireDefault(require('./LaneContext'));
require('./LaneContainer.css');
var _ModelNamespaceContext = _interopRequireDefault(require('../../core/rui/ModelNamespaceContext'));
var _getLaneContainer = _interopRequireDefault(require('./getLaneContainer'));
/////////////////////////////////////////////////////////////////////////////
// View
//
var LaneContainerView =
/*#__PURE__*/
(function(_React$Component) {
(0, _inherits2.default)(LaneContainerView, _React$Component);
function LaneContainerView(props) {
var _this;
(0, _classCallCheck2.default)(this, LaneContainerView);
_this = (0, _possibleConstructorReturn2.default)(
this,
(0, _getPrototypeOf2.default)(LaneContainerView).call(this, props)
);
(0, _defineProperty2.default)(
(0, _assertThisInitialized2.default)(_this),
'handleChangeActiveLane',
function(laneID) {
_this.props.dispatch({
type: '__draco__lane__/activeLane',
payload: {
laneID: laneID
}
});
}
);
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleSysInfoClick', function(
event
) {
_this.props.dispatch({
type: '__draco__lane__/handleSysInfoClick'
});
event.stopPropagation();
event.preventDefault();
});
return _this;
}
(0, _createClass2.default)(LaneContainerView, [
{
key: 'render',
value: function render() {
var _this2 = this;
var _this$props$__draco__ = this.props.__draco__tag__state__,
lanes = _this$props$__draco__.lanes,
currentActiveLaneId = _this$props$__draco__.currentActiveLaneId,
mainLaneId = _this$props$__draco__.mainLaneId;
var showLaneSwitcher = this.props.showLaneSwitcher;
return _react.default.createElement(
'div',
{
name: 'laneContainer',
className: 'rui-lanecontainer'
},
showLaneSwitcher &&
_react.default.createElement(_LaneSwitcher.default, {
lanes: lanes,
currentActiveLaneId: currentActiveLaneId,
handleChangeActiveLane: this.handleChangeActiveLane,
handleSysInfoClick: this.handleSysInfoClick,
mainLaneId: mainLaneId
}),
lanes.map(function(lane) {
if (lane.laneID == mainLaneId) {
return _react.default.createElement(
'div',
{
name: 'mainLane',
key: lane.laneID,
className: 'rui-laneContainer-mainLane'
},
_react.default.createElement(
_LaneContext.default.Provider,
{
value: lane.laneID
},
lane.beacons.map(function(_ref) {
var id = _ref.id,
Content = _ref.component,
params = _ref.params,
vmPath = _ref.vmPath;
return _react.default.createElement(_beacon.Beacon, {
name: 'mainBeacon',
key: id,
isMainBeacon: true,
beaconID: id,
laneID: lane.laneID,
params: params,
component: Content,
vmPath: vmPath
});
}),
lane.res.map(function(_ref2, key) {
var Content = _ref2.component,
_ref2$width = _ref2.width,
width = _ref2$width === void 0 ? 1024 : _ref2$width,
_ref2$height = _ref2.height,
height = _ref2$height === void 0 ? 600 : _ref2$height,
title = _ref2.title,
params = _ref2.params,
isCloseable = _ref2.isCloseable,
vmPath = _ref2.vmPath;
return _react.default.createElement(
_Res.default,
(0, _extends2.default)(
{
key: key
},
_this2.props,
{
title: title,
width: width,
height: height,
laneID: lane.laneID,
component: Content,
params: params,
isCloseable: isCloseable,
vmPath: vmPath
}
)
);
})
)
);
} else {
var laneClsName = (0, _classnames.default)('rui-laneContainer-lane', {
'rui-laneContainer-lane-hidden': lane.laneID != currentActiveLaneId
});
return _react.default.createElement(
'div',
{
name: 'lane',
key: lane.laneID,
className: laneClsName
},
_react.default.createElement(
_LaneContext.default.Provider,
{
value: lane.laneID
},
lane.beacons.map(function(_ref3) {
var id = _ref3.id,
width = _ref3.width,
height = _ref3.height,
title = _ref3.title,
params = _ref3.params,
component = _ref3.component,
isCloseable = _ref3.isCloseable,
vmPath = _ref3.vmPath;
return _react.default.createElement(_beacon.Beacon, {
key: id,
laneID: lane.laneID,
beaconID: id,
title: title,
width: width,
height: height,
component: component,
params: params,
isCloseable: isCloseable,
vmPath: vmPath
});
}),
lane.res.map(function(_ref4, key) {
var Content = _ref4.component,
_ref4$width = _ref4.width,
width = _ref4$width === void 0 ? 1024 : _ref4$width,
_ref4$height = _ref4.height,
height = _ref4$height === void 0 ? 600 : _ref4$height,
title = _ref4.title,
params = _ref4.params,
isCloseable = _ref4.isCloseable,
vmPath = _ref4.vmPath;
return _react.default.createElement(
_Res.default,
(0, _extends2.default)(
{
key: key
},
_this2.props,
{
title: title,
width: width,
height: height,
laneID: lane.laneID,
component: Content,
params: params,
isCloseable: isCloseable,
vmPath: vmPath
}
)
);
})
)
);
}
})
);
}
}
]);
return LaneContainerView;
})(_react.default.Component); ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Model Factory
//
(0, _defineProperty2.default)(LaneContainerView, 'propTypes', {
showLaneSwitcher: _propTypes.default.bool
});
(0, _defineProperty2.default)(LaneContainerView, 'defaultProps', {
showLaneSwitcher: true
});
function modelFactory(namespace) {
return {
namespace: namespace,
state: {
/**lanes的结构:
[
{
laneID,
laneKeySet,
labelValue,
iconId,
beacons:[
{
laneID,
id,
title,
biz,
vmPath,
width,
height,
params,
isCloseable,
closeButtonConfig:{
fnName,
modelNamespace,
}
component,
connectedModel,
__framework__resolve,
},
beaconObj,
],
res:[
{
biz,
vmPath,
width,
height,
title,
params,
component: connectedView,
connectedModel,
__framework__resolve,
},
resObj
]
},
laneObj]
*/
lanes: [],
mainLaneId: null,
currentActiveLaneId: null,
__draco__tag__api__factory__: function __draco__tag__api__factory__(namespace) {
return new _LaneContainerAPI.default(namespace);
}
},
effects: {
////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// laneContainer-API
///
addLane:
/*#__PURE__*/
_regenerator.default.mark(function addLane(_ref5, RUI) {
var payload, laneKeySet, labelValue, iconId, _ref6, lanes, i, laneKeySetExist, laneID;
return _regenerator.default.wrap(function addLane$(_context) {
while (1) {
switch ((_context.prev = _context.next)) {
case 0:
payload = _ref5.payload;
(laneKeySet = payload.laneKeySet),
(labelValue = payload.labelValue),
(iconId = payload.iconId);
if ((0, _isPlainObject.default)(laneKeySet)) {
_context.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u51FD\u6570\u8C03\u7528\uFF1A.addLane('
.concat(laneKeySet, ', ')
.concat(labelValue, ', ')
.concat(
iconId,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 laneKeySet \u4E3A\u7B80\u5355\u5BF9\u8C61\u7C7B\u578B\uFF08\u4F8B\u5982\uFF1A{xm: "\u5F20\u4E09"}\uFF09\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(laneKeySet), '\uFF0C\u503C\u4E3A ')
.concat(laneKeySet, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
if (!(typeof labelValue == 'string' && !labelValue)) {
_context.next = 6;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u51FD\u6570\u8C03\u7528\uFF1A.addLane('
.concat(laneKeySet, ', ')
.concat(labelValue, ', ')
.concat(
iconId,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 labelValue \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(labelValue), '\uFF0C\u503C\u4E3A ')
.concat(labelValue, '\n \u8BF7\u68C0\u67E5!')
);
case 6:
_context.next = 8;
return RUI.getState();
case 8:
_ref6 = _context.sent;
lanes = _ref6.lanes;
i = 0;
case 11:
if (!(i < lanes.length)) {
_context.next = 18;
break;
}
laneKeySetExist = lanes[i].laneKeySet;
if (!(0, _utils.isLaneKeySetSame)(laneKeySet, laneKeySetExist)) {
_context.next = 15;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 laneKeySet\uFF08'.concat(
JSON.stringify(laneKeySet),
'\uFF09 \u5728 LaneContainer \u4E2D\u9700\u4FDD\u6301\u552F\u4E00 \n \u8BF7\u68C0\u67E5!'
)
);
case 15:
i++;
_context.next = 11;
break;
case 18:
// 分配LaneID
laneID = 'lane_'.concat((0, _util.uuid)());
_context.next = 21;
return RUI.invoke('addLaneSuccess', {
iconId: iconId,
laneID: laneID,
laneKeySet: laneKeySet,
labelValue: labelValue
});
case 21:
return _context.abrupt(
'return',
new _LaneAPI.default('__draco__lane__', laneID, laneKeySet)
);
case 22:
case 'end':
return _context.stop();
}
}
}, addLane);
}),
setMainLane:
/*#__PURE__*/
_regenerator.default.mark(function setMainLane(_ref7, RUI) {
var payload, laneKeySet, labelValue, iconId, mainLaneId, _ref8, lanes, i, laneKeySetExist, laneID;
return _regenerator.default.wrap(function setMainLane$(_context2) {
while (1) {
switch ((_context2.prev = _context2.next)) {
case 0:
payload = _ref7.payload;
(laneKeySet = payload.laneKeySet),
(labelValue = payload.labelValue),
(iconId = payload.iconId),
(mainLaneId = payload.mainLaneId);
if ((0, _isPlainObject.default)(laneKeySet)) {
_context2.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u51FD\u6570\u8C03\u7528\uFF1A.addLane('
.concat(laneKeySet, ', ')
.concat(labelValue, ', ')
.concat(
iconId,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 laneKeySet \u4E3A\u7B80\u5355\u5BF9\u8C61\u7C7B\u578B\uFF08\u4F8B\u5982\uFF1A{xm: "\u5F20\u4E09"}\uFF09\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(laneKeySet), '\uFF0C\u503C\u4E3A ')
.concat(laneKeySet, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
if (!(typeof labelValue == 'string' && !labelValue)) {
_context2.next = 6;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u51FD\u6570\u8C03\u7528\uFF1A.addLane('
.concat(laneKeySet, ', ')
.concat(labelValue, ', ')
.concat(
iconId,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 labelValue \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(labelValue), '\uFF0C\u503C\u4E3A ')
.concat(labelValue, '\n \u8BF7\u68C0\u67E5!')
);
case 6:
_context2.next = 8;
return RUI.getState();
case 8:
_ref8 = _context2.sent;
lanes = _ref8.lanes;
i = 0;
case 11:
if (!(i < lanes.length)) {
_context2.next = 18;
break;
}
laneKeySetExist = lanes[i].laneKeySet;
if (!(0, _utils.isLaneKeySetSame)(laneKeySet, laneKeySetExist)) {
_context2.next = 15;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.addLane(laneKeySet, labelValue, iconId)\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5165\u53C2 laneKeySet\uFF08'.concat(
JSON.stringify(laneKeySet),
'\uFF09 \u5728 LaneContainer \u4E2D\u9700\u4FDD\u6301\u552F\u4E00 \n \u8BF7\u68C0\u67E5!'
)
);
case 15:
i++;
_context2.next = 11;
break;
case 18:
// 分配LaneID
laneID = 'mainlane_'.concat((0, _util.uuid)());
_context2.next = 21;
return RUI.invoke('addLaneSuccess', {
iconId: iconId,
laneID: laneID,
laneKeySet: laneKeySet,
labelValue: labelValue
});
case 21:
_context2.next = 23;
return RUI.invoke('setMainLaneIdSuccess', laneID);
case 23:
return _context2.abrupt(
'return',
new _LaneAPI.default('__draco__lane__', laneID, laneKeySet)
);
case 24:
case 'end':
return _context2.stop();
}
}
}, setMainLane);
}),
activeLane:
/*#__PURE__*/
_regenerator.default.mark(function activeLane(_ref9, RUI) {
var payload, laneID, _ref10, lanes, currentActiveLaneId, laneExist, i;
return _regenerator.default.wrap(function activeLane$(_context3) {
while (1) {
switch ((_context3.prev = _context3.next)) {
case 0:
payload = _ref9.payload;
laneID = payload.laneID;
if (!(typeof laneID == 'string' && !laneID)) {
_context3.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.activeLane(laneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.activeLane('
.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 laneID \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(laneID), '\uFF0C\u503C\u4E3A ')
.concat(laneID, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
_context3.next = 6;
return RUI.getState();
case 6:
_ref10 = _context3.sent;
lanes = _ref10.lanes;
currentActiveLaneId = _ref10.currentActiveLaneId;
laneExist = false;
i = 0;
case 11:
if (!(i < lanes.length)) {
_context3.next = 18;
break;
}
if (!(lanes[i].laneID === laneID)) {
_context3.next = 15;
break;
}
laneExist = true;
return _context3.abrupt('break', 18);
case 15:
i++;
_context3.next = 11;
break;
case 18:
if (laneExist) {
_context3.next = 20;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.activeLane(laneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.activeLane('
.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1ALaneContainer \u4E2D\u4E0D\u5B58\u5728 laneID \u4E3A '
)
.concat(laneID, ' \u7684 Lane\n \u8BF7\u68C0\u67E5!')
);
case 20:
if (!(currentActiveLaneId === laneID)) {
_context3.next = 22;
break;
}
return _context3.abrupt('return');
case 22:
_context3.next = 24;
return RUI.invoke('activeLaneSuccess', {
laneID: laneID
});
case 24:
case 'end':
return _context3.stop();
}
}
}, activeLane);
}),
removeActiveLane:
/*#__PURE__*/
_regenerator.default.mark(function removeActiveLane(_ref11, RUI) {
var payload, jumpToLaneID, _ref12, lanes, currentActiveLaneId, mainLaneId, laneExist, i;
return _regenerator.default.wrap(function removeActiveLane$(_context4) {
while (1) {
switch ((_context4.prev = _context4.next)) {
case 0:
payload = _ref11.payload;
jumpToLaneID = payload.jumpToLaneID;
if (!(typeof jumpToLaneID == 'string' && !jumpToLaneID)) {
_context4.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeActiveLane('
.concat(
jumpToLaneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 jumpToLaneID \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(jumpToLaneID), '\uFF0C\u503C\u4E3A ')
.concat(jumpToLaneID, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
_context4.next = 6;
return RUI.getState();
case 6:
_ref12 = _context4.sent;
lanes = _ref12.lanes;
currentActiveLaneId = _ref12.currentActiveLaneId;
mainLaneId = _ref12.mainLaneId;
// 检查待跳转的 Lane 是否存在
laneExist = false;
i = 0;
case 12:
if (!(i < lanes.length)) {
_context4.next = 19;
break;
}
if (!(lanes[i].laneID === jumpToLaneID)) {
_context4.next = 16;
break;
}
laneExist = true;
return _context4.abrupt('break', 19);
case 16:
i++;
_context4.next = 12;
break;
case 19:
if (laneExist) {
_context4.next = 21;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeActiveLane('
.concat(
jumpToLaneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u8981\u8DF3\u8F6C\u7684\u76EE\u6807\u822A\u9053\u3010'
)
.concat(jumpToLaneID, '\u3011\u4E0D\u5B58\u5728\n \u8BF7\u68C0\u67E5!')
);
case 21:
if (currentActiveLaneId) {
_context4.next = 23;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeActiveLane('.concat(
jumpToLaneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1ALaneContainer \u4E2D\u6B64\u65F6\u4E0D\u5B58\u5728\u6D3B\u52A8\u822A\u9053\n \u8BF7\u68C0\u67E5!'
)
);
case 23:
if (!(mainLaneId === currentActiveLaneId)) {
_context4.next = 25;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeActiveLane('.concat(
jumpToLaneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5373\u5C06\u5220\u9664\u7684\u662F\u4E3B\u822A\u9053\uFF0C\u4E3B\u822A\u9053\u4E0D\u53EF\u79FB\u9664\n \u8BF7\u68C0\u67E5!'
)
);
case 25:
_context4.next = 27;
return RUI.invoke('removeActiveLaneSuccess', {
jumpToLaneID: jumpToLaneID
});
case 27:
case 'end':
return _context4.stop();
}
}
}, removeActiveLane);
}),
removeInActiveLane:
/*#__PURE__*/
_regenerator.default.mark(function removeInActiveLane(_ref13, RUI) {
var payload, laneID, _ref14, lanes, currentActiveLaneId, mainLaneId, laneExist, i;
return _regenerator.default.wrap(function removeInActiveLane$(_context5) {
while (1) {
switch ((_context5.prev = _context5.next)) {
case 0:
payload = _ref13.payload;
laneID = payload.laneID; // 入参 laneID 必须为非空字符串类型
if (!(typeof laneID == 'string' && !laneID)) {
_context5.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeInActiveLane(laneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeInActiveLane('
.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 laneID \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(laneID), '\uFF0C\u503C\u4E3A ')
.concat(laneID, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
_context5.next = 6;
return RUI.getState();
case 6:
_ref14 = _context5.sent;
lanes = _ref14.lanes;
currentActiveLaneId = _ref14.currentActiveLaneId;
mainLaneId = _ref14.mainLaneId;
// 检查待移除的 Lane 是否存在
laneExist = false;
i = 0;
case 12:
if (!(i < lanes.length)) {
_context5.next = 19;
break;
}
if (!(lanes[i].laneID === laneID)) {
_context5.next = 16;
break;
}
laneExist = true;
return _context5.abrupt('break', 19);
case 16:
i++;
_context5.next = 12;
break;
case 19:
if (laneExist) {
_context5.next = 21;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeInActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeInActiveLane('
.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5F85\u79FB\u9664\u7684\u975E\u6D3B\u52A8\u822A\u9053\u3010'
)
.concat(laneID, '\u3011\u4E0D\u5B58\u5728\n \u8BF7\u68C0\u67E5!')
);
case 21:
if (!(mainLaneId === laneID)) {
_context5.next = 23;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeInActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeInActiveLane('.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5373\u5C06\u5220\u9664\u7684\u662F\u4E3B\u822A\u9053\uFF0C\u4E3B\u822A\u9053\u4E0D\u53EF\u79FB\u9664\n \u8BF7\u68C0\u67E5!'
)
);
case 23:
if (!(currentActiveLaneId === laneID)) {
_context5.next = 25;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.removeInActiveLane(jumpToLaneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.removeInActiveLane('.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u5373\u5C06\u5220\u9664\u7684\u662F\u5F53\u524D\u6D3B\u52A8\u822A\u9053\uFF0C\u4E0D\u53EF\u79FB\u9664\n \u8BF7\u68C0\u67E5!'
)
);
case 25:
_context5.next = 27;
return RUI.invoke('removeInActiveLaneSuccess', {
laneID: laneID
});
case 27:
case 'end':
return _context5.stop();
}
}
}, removeInActiveLane);
}),
isLaneExist:
/*#__PURE__*/
_regenerator.default.mark(function isLaneExist(_ref15, RUI) {
var payload, laneID, _ref16, lanes, laneExist, i;
return _regenerator.default.wrap(function isLaneExist$(_context6) {
while (1) {
switch ((_context6.prev = _context6.next)) {
case 0:
payload = _ref15.payload;
laneID = payload.laneID; // 入参 laneID 必须为非空字符串类型
if (!(typeof laneID == 'string' && !laneID)) {
_context6.next = 4;
break;
}
throw new Error(
'\u51FD\u6570\u5B9A\u4E49\uFF1A.isLaneExist(laneID)\n \u51FD\u6570\u8C03\u7528\uFF1A.isLaneExist('
.concat(
laneID,
')\n \u5F02\u5E38\u4FE1\u606F\uFF1A\u671F\u671B\u5165\u53C2 laneID \u4E3A\u975E\u7A7A string \u7C7B\u578B\uFF1B\u5B9E\u9645\u4F20\u5165\u7C7B\u578B\u4E3A '
)
.concat((0, _typeof2.default)(laneID), '\uFF0C\u503C\u4E3A ')
.concat(laneID, '\n \u8BF7\u68C0\u67E5!')
);
case 4:
_context6.next = 6;
return RUI.getState();
case 6:
_ref16 = _context6.sent;
lanes = _ref16.lanes;
laneExist = false;
i = 0;
case 10:
if (!(i < lanes.length)) {
_context6.next = 17;
break;
}
if (!(lanes[i].laneID === laneID)) {
_context6.next = 14;
break;
}
laneExist = true;
return _context6.abrupt('break', 17);
case 14:
i++;
_context6.next = 10;
break;
case 17:
return _context6.abrupt('return', laneExist);
case 18:
case 'end':
return _context6.stop();
}
}
}, isLaneExist);
}),
getCurrentLane:
/*#__PURE__*/
_regenerator.default.mark(function getCurrentLane(_ref17, RUI) {
var payload, _ref18, currentActiveLaneId, lanes, i;
return _regenerator.default.wrap(function getCurrentLane$(_context7) {
while (1) {
switch ((_context7.prev = _context7.