@riil-frontend/component-page-config
Version:
page config components,include components list,component attribute panel and page canvas
86 lines (76 loc) • 2.22 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import React, { useState } from 'react';
import { isAvailableArray } from '@riil-frontend/utils';
import DragLayoutCanvas from '../drag-panel';
import PropTypes from 'prop-types';
import './SingleLayoutView.scss';
function SingleLayoutView(props) {
var appPageConfig = props.appPageConfig,
pageProps = props.pageProps,
_onChange = props.onChange,
jumpto = props.jumpto,
request = props.request,
customGetComRequire = props.customGetComRequire,
hideComList = props.hideComList,
comDict = props.comDict;
var _useState = useState(),
parentDOM = _useState[0],
setParentDOM = _useState[1];
var hasData = appPageConfig && isAvailableArray(appPageConfig.configs);
var item = hasData ? appPageConfig.configs[0] : null;
var _jumpto = function _jumpto(url, isTabSelf) {
if (isTabSelf === void 0) {
isTabSelf = false;
}
if (typeof url === 'object' && url.tabKey) {
return;
}
if (isTabSelf) {} else {
jumpto(url);
}
};
return /*#__PURE__*/React.createElement(React.Fragment, null, hasData ? /*#__PURE__*/React.createElement("div", {
className: "uicbb-view-one-page",
ref: function ref(node) {
setParentDOM(node);
}
}, /*#__PURE__*/React.createElement(DragLayoutCanvas, {
hideComList: hideComList,
parentDOM: parentDOM,
pageConfig: item,
isEdit: false,
pageProps: pageProps,
request: request,
jumpto: _jumpto,
onChange: function onChange(widgets, callback) {
_onChange(_extends({}, item, {
widgets: widgets
}), callback);
},
customGetComRequire: customGetComRequire,
comDict: comDict,
appConfig: appPageConfig
})) : null);
}
SingleLayoutView.propTypes = {
/**
* 模板数据
*/
appPageConfig: PropTypes.object,
/**
* 页面参数
*/
pageProps: PropTypes.object,
/**
* 页面配置触发回调
*/
onChange: PropTypes.func,
jumpto: PropTypes.func,
request: PropTypes.any,
customGetComRequire: PropTypes.func,
hideComList: PropTypes.array
};
SingleLayoutView.defaultProps = {
hideComList: []
};
export default SingleLayoutView;