UNPKG

@alilc/lowcode-editor-skeleton

Version:

alibaba lowcode editor skeleton

66 lines (65 loc) 3.43 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = void 0; var _icon = _interopRequireDefault(require("@alifd/next/lib/icon")); var _button = _interopRequireDefault(require("@alifd/next/lib/button")); var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose")); var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor")); var _react = require("react"); var _lowcodeEditorCore = require("@alilc/lowcode-editor-core"); var _fix = require("../../icons/fix"); var _float = require("../../icons/float"); var _class; var PanelOperationRow = exports["default"] = (_class = /*#__PURE__*/function (_Component) { function PanelOperationRow(props) { var _this; _this = _Component.call(this, props) || this; (0, _lowcodeEditorCore.makeObservable)(_this); return _this; } // fix or float (0, _inheritsLoose2["default"])(PanelOperationRow, _Component); var _proto = PanelOperationRow.prototype; _proto.setDisplay = function setDisplay() { var panel = this.props.panel; var current = panel; if (!current) { return; } panel.skeleton.toggleFloatStatus(panel); }; _proto.render = function render() { var _this$props$panel$con, _panel$config$props, _panel$config$props2, _panel$parent; var panel = this.props.panel; var isRightArea = ((_this$props$panel$con = this.props.panel.config) === null || _this$props$panel$con === void 0 ? void 0 : _this$props$panel$con.area) === 'rightArea'; if (isRightArea) { return null; } // can be set fixed by default var canSetFixed = true; if ((panel === null || panel === void 0 ? void 0 : (_panel$config$props = panel.config.props) === null || _panel$config$props === void 0 ? void 0 : _panel$config$props.canSetFixed) === false) { canSetFixed = false; } var hideTitleBar = panel === null || panel === void 0 ? void 0 : (_panel$config$props2 = panel.config.props) === null || _panel$config$props2 === void 0 ? void 0 : _panel$config$props2.hideTitleBar; var areaName = panel === null || panel === void 0 ? void 0 : (_panel$parent = panel.parent) === null || _panel$parent === void 0 ? void 0 : _panel$parent.name; var area = panel.skeleton[areaName]; return /*#__PURE__*/React.createElement(_react.Fragment, null, !hideTitleBar && /*#__PURE__*/React.createElement(_react.Fragment, null, canSetFixed && /*#__PURE__*/ // eslint-disable-next-line react/jsx-no-bind React.createElement(_button["default"], { text: true, className: "lc-pane-icon-fix", onClick: this.setDisplay.bind(this) }, areaName === 'leftFloatArea' ? /*#__PURE__*/React.createElement(_fix.IconFix, null) : /*#__PURE__*/React.createElement(_float.IconFloat, null)), /*#__PURE__*/React.createElement(_button["default"], { text: true, className: "lc-pane-icon-close", onClick: function onClick() { area && area.setVisible(false); } }, /*#__PURE__*/React.createElement(_icon["default"], { type: "close" })))); }; return PanelOperationRow; }(_react.Component), (0, _applyDecoratedDescriptor2["default"])(_class.prototype, "setDisplay", [_lowcodeEditorCore.action], Object.getOwnPropertyDescriptor(_class.prototype, "setDisplay"), _class.prototype), _class);