dareway-rui
Version:
343 lines (301 loc) • 17.2 kB
JavaScript
'use strict';
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault');
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.default = void 0;
var _objectSpread2 = _interopRequireDefault(require('@babel/runtime/helpers/objectSpread'));
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 _propTypes = _interopRequireDefault(require('prop-types'));
var _UTPContext = _interopRequireDefault(require('../../workflow/UTPContext'));
var _BeaconContext = _interopRequireDefault(require('../beacon/BeaconContext'));
var _VMPathContext = _interopRequireDefault(require('./../vmPath/VMPathContext'));
var _LaneContext = _interopRequireDefault(require('../../taglib/lane/LaneContext'));
var PanelView =
/*#__PURE__*/
(function(_React$Component) {
(0, _inherits2.default)(PanelView, _React$Component);
function PanelView(props) {
var _this;
(0, _classCallCheck2.default)(this, PanelView);
_this = (0, _possibleConstructorReturn2.default)(
this,
(0, _getPrototypeOf2.default)(PanelView).call(this, props)
);
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleVmPath', function(
e,
vmPath,
laneID
) {
if (!vmPath) {
return;
}
_this.props.showVMPath(e, vmPath, laneID);
e.stopPropagation();
e.preventDefault();
});
_this.state = {
error: null,
errorInfo: null
};
return _this;
}
(0, _createClass2.default)(PanelView, [
{
key: 'componentDidCatch',
value: function componentDidCatch(error, errorInfo) {
this.setState({
error: error,
errorInfo: errorInfo
});
}
},
{
key: 'render',
value: function render() {
var _this2 = this;
if (this.state.errorInfo) {
return _react.default.createElement(
'div',
null,
_react.default.createElement('h2', null, 'Exception'),
this.state.error &&
this.state.error.message &&
_react.default.createElement('h2', null, this.state.error.message),
_react.default.createElement(
'details',
{
style: {
whiteSpace: 'pre-wrap'
}
},
this.state.error && this.state.error.toString(),
_react.default.createElement('br', null),
this.state.errorInfo.componentStack
)
);
}
var _this$props = this.props,
backgroundColor = _this$props.backgroundColor,
name = _this$props.name,
width = _this$props.width,
height = _this$props.height,
leftBorder = _this$props.leftBorder,
rightBorder = _this$props.rightBorder,
topBorder = _this$props.topBorder,
bottomBorder = _this$props.bottomBorder,
minHeight = _this$props.minHeight,
minWidth = _this$props.minWidth,
borderWidth = _this$props.borderWidth,
borderColor = _this$props.borderColor,
borderRadiusWidth = _this$props.borderRadiusWidth; // 标签属性
var _this$props2 = this.props,
UserRefreshContent = _this$props2.userRefreshConnectedView,
_this$props2$userRefr = _this$props2.userRefreshParams,
userRefreshParams = _this$props2$userRefr === void 0 ? {} : _this$props2$userRefr,
userRefreshVmPath = _this$props2.userRefreshVmPath,
hidden = _this$props2.hidden,
showVMPath = _this$props2.showVMPath,
children = _this$props2.children; // 标签属性(可变)
var style = {};
if (backgroundColor) {
style = (0, _objectSpread2.default)({}, style, {
backgroundColor: backgroundColor
});
}
if (height) {
if (typeof height === 'number') {
style = (0, _objectSpread2.default)({}, style, {
height: height,
flex: '0 0 '.concat(height, 'px')
});
} else if (typeof height === 'string' && height == 'auto') {
style = (0, _objectSpread2.default)({}, style, {
flex: '0 0 auto'
});
} else {
throw new Error(
'【Panel】标签的height可配置值的类型为【number/string】,其中string类型只允许配置【auto】值!'
);
}
}
if (width) {
if (typeof width === 'number') {
style = (0, _objectSpread2.default)({}, style, {
width: width,
flexGrow: 0,
flexShrink: 0
});
} else if (typeof width === 'string' && width == 'auto') {
style = (0, _objectSpread2.default)({}, style, {
flex: '0 0 auto'
});
} else {
throw new Error(
'【Panel】标签的width可配置值的类型为【number/string】,其中string类型只允许配置【auto】值!'
);
}
}
if (minHeight) {
style = (0, _objectSpread2.default)({}, style, {
minHeight: minHeight
});
}
if (minWidth) {
style = (0, _objectSpread2.default)({}, style, {
minWidth: minWidth
});
}
if (leftBorder) {
style = (0, _objectSpread2.default)({}, style, {
borderLeft: ''.concat(borderWidth, 'px ').concat(borderColor, ' solid')
});
}
if (rightBorder) {
style = (0, _objectSpread2.default)({}, style, {
borderRight: ''.concat(borderWidth, 'px ').concat(borderColor, ' solid')
});
}
if (bottomBorder) {
style = (0, _objectSpread2.default)({}, style, {
borderBottom: ''.concat(borderWidth, 'px ').concat(borderColor, ' solid')
});
}
if (topBorder) {
style = (0, _objectSpread2.default)({}, style, {
borderTop: ''.concat(borderWidth, 'px ').concat(borderColor, ' solid')
});
}
if (borderRadiusWidth) {
style = (0, _objectSpread2.default)({}, style, {
borderRadius: ''.concat(borderRadiusWidth, 'px')
});
}
if (hidden) {
style = (0, _objectSpread2.default)({}, style, {
display: 'none'
});
}
if (UserRefreshContent) {
return _react.default.createElement(_LaneContext.default.Consumer, null, function(__laneID__) {
return _react.default.createElement(
'div',
{
className: 'dw-panel',
style: style,
onContextMenu: function onContextMenu(e) {
return showVMPath(e, userRefreshVmPath);
}
},
_react.default.createElement(
_VMPathContext.default.Provider,
{
value: userRefreshVmPath
},
userRefreshParams && userRefreshParams.UTPApi
? _react.default.createElement(
_UTPContext.default.Provider,
{
value: userRefreshParams.UTPApi
},
_react.default.createElement(
_BeaconContext.default.Consumer,
null,
function(_ref) {
var __context__beaconID = _ref.__context__beaconID,
__context__laneID = _ref.__context__laneID;
if (__context__beaconID && __context__laneID) {
return _react.default.createElement(UserRefreshContent, {
__RUI__VIEW__PRIVATE__PROPS__: {
beaconID: __context__beaconID,
laneID: __context__laneID,
__user__custom__params__: userRefreshParams
}
});
} else {
return _react.default.createElement(UserRefreshContent, {
__RUI__VIEW__PRIVATE__PROPS__: {
laneID: __laneID__,
__user__custom__params__: userRefreshParams
}
});
}
}
)
)
: _react.default.createElement(_UTPContext.default.Consumer, null, function(
UTPApi
) {
return _react.default.createElement(
_BeaconContext.default.Consumer,
null,
function(_ref2) {
var __context__beaconID = _ref2.__context__beaconID,
__context__laneID = _ref2.__context__laneID;
if (__context__beaconID && __context__laneID) {
return _react.default.createElement(UserRefreshContent, {
__RUI__VIEW__PRIVATE__PROPS__: {
beaconID: __context__beaconID,
laneID: __context__laneID,
__user__custom__params__: (0, _objectSpread2.default)(
{},
userRefreshParams,
{
UTPApi: UTPApi
}
)
}
});
} else {
return _react.default.createElement(UserRefreshContent, {
__RUI__VIEW__PRIVATE__PROPS__: {
laneID: __laneID__,
__user__custom__params__: (0, _objectSpread2.default)(
{},
userRefreshParams,
{
UTPApi: UTPApi
}
)
}
});
}
}
);
})
)
);
});
} else {
return _react.default.createElement(_LaneContext.default.Consumer, null, function(__laneID__) {
return _react.default.createElement(_VMPathContext.default.Consumer, null, function(
vmPath
) {
return _react.default.createElement(
'div',
{
className: 'dw-panel',
style: style,
onContextMenu: function onContextMenu(e) {
_this2.handleVmPath(e, vmPath, __laneID__);
}
},
children
);
});
});
}
}
}
]);
return PanelView;
})(_react.default.Component);
exports.default = PanelView;
//@ sourceMappingURL=View.js.map