UNPKG

yyuap-template

Version:

template project which is based on tinper

237 lines (208 loc) 11.3 kB
(function (global, factory) { if (typeof define === "function" && define.amd) { define(['module', 'exports', 'react', '../../view/TextWithLabel/TextWithLabel', '../../view/SelectComponent/SelectComponent', '../../view/CheckboxComponent/CheckboxComponent', '../../view/Datecomponent/Datecomponent', '../../view/Reference/Reference', '../ColumnPanel/ColumnPanel', '../Table/Table', 'bee-panel', '../../view/multText/MultText'], factory); } else if (typeof exports !== "undefined") { factory(module, exports, require('react'), require('../../view/TextWithLabel/TextWithLabel'), require('../../view/SelectComponent/SelectComponent'), require('../../view/CheckboxComponent/CheckboxComponent'), require('../../view/Datecomponent/Datecomponent'), require('../../view/Reference/Reference'), require('../ColumnPanel/ColumnPanel'), require('../Table/Table'), require('bee-panel'), require('../../view/multText/MultText')); } else { var mod = { exports: {} }; factory(mod, mod.exports, global.react, global.TextWithLabel, global.SelectComponent, global.CheckboxComponent, global.Datecomponent, global.Reference, global.ColumnPanel, global.Table, global.beePanel, global.MultText); global.GroupTable = mod.exports; } })(this, function (module, exports, _react, _TextWithLabel, _SelectComponent, _CheckboxComponent, _Datecomponent, _Reference, _ColumnPanel, _Table, _beePanel, _MultText) { 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _react2 = _interopRequireDefault(_react); var _TextWithLabel2 = _interopRequireDefault(_TextWithLabel); var _SelectComponent2 = _interopRequireDefault(_SelectComponent); var _CheckboxComponent2 = _interopRequireDefault(_CheckboxComponent); var _Datecomponent2 = _interopRequireDefault(_Datecomponent); var _Reference2 = _interopRequireDefault(_Reference); var _ColumnPanel2 = _interopRequireDefault(_ColumnPanel); var _Table2 = _interopRequireDefault(_Table); var _MultText2 = _interopRequireDefault(_MultText); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } var layoutType = { Text: _TextWithLabel2.default, Email: _TextWithLabel2.default, Phone: _TextWithLabel2.default, Mobile: _TextWithLabel2.default, Reference: _Reference2.default, Select: _SelectComponent2.default, CheckBox: _CheckboxComponent2.default, Table: _Table2.default, DateComponent: _Datecomponent2.default, MultText: _MultText2.default }; var GroupTable = function (_Component) { _inherits(GroupTable, _Component); function GroupTable(props) { _classCallCheck(this, GroupTable); var _this = _possibleConstructorReturn(this, (GroupTable.__proto__ || Object.getPrototypeOf(GroupTable)).call(this, props)); _this.state = { showMore: true }; return _this; } _createClass(GroupTable, [{ key: 'generateColumnpanel', value: function generateColumnpanel() { var _this2 = this; var viewContent = []; this.props.viewModel.layoutDetail.map(function (layout, index) { if (layout.componentKey === 'ColumnPanel') { viewContent.push(_react2.default.createElement( 'div', { key: index, className: 'col-md-' + 12 / _this2.props.viewModel.size }, _react2.default.createElement(_ColumnPanel2.default, { viewModel: layout, dataModel: _this2.props.dataModel, config: _this2.props.config, allExpand: _this2.props.allExpand, headFormExpand: _this2.props.headFormExpand, isEdit: _this2.props.isEdit, form: _this2.props.form, handleValue: _this2.props.handleValue, handleComponentCallback: _this2.props.handleComponentCallback, handleIsEdit: _this2.props.handleIsEdit }) )); } else { if (layoutType[layout.componentKey]) { viewContent.push(_react2.default.createElement(layoutType[layout.componentKey], { viewModel: layout, key: index, isEdit: _this2.props.isEdit, config: _this2.props.config, form: _this2.props.form, dataModel: _this2.props.dataModel, handleValue: _this2.props.handleValue, handleComponentCallback: _this2.props.handleComponentCallback })); } } }); var returnComp; if (this.props.viewModel.title === '更多') { returnComp = _react2.default.createElement( 'div', null, _react2.default.createElement( _beePanel.Panel, { collapsible: true, expanded: this.state.showMore }, viewContent ), _react2.default.createElement( 'div', { title: uiTemplateMultilingual.template("clickShowMore"), style: { backgroundColor: "white", height: "54px", paddingLeft: "5px", lineHeight: "54px", marginTop: "0px", marginRight: "0px", paddingTop: "20px" } }, _react2.default.createElement('div', { style: { borderTop: "1px solid #F1F1F1", marginRight: "60px" } }), _react2.default.createElement( 'span', { onClick: function onClick() { _this2.moreBtnClick(); }, style: { marginLeft: "10px", width: "45px", height: "18px", lineLeight: "54px", cursor: "pointer", float: "right", marginTop: "-29px", fontSize: "11px", color: "#999999" } }, this.state.showMore ? uiTemplateMultilingual.template('collapse') : uiTemplateMultilingual.template('more') ) ) ); } else { var _props$viewModel = this.props.viewModel, title = _props$viewModel.title, mul_language = _props$viewModel.mul_language; returnComp = _react2.default.createElement( 'div', null, _react2.default.createElement( 'div', { id: this.props.viewModel.subFormId, className: 'rightBar', title: this.props.viewModel.title, style: { backgroundColor: "white", borderBottom: "1px solid #efefef", height: "54px", paddingLeft: "5px", lineHeight: "54px", marginTop: "0px", marginRight: "0px" } }, mul_language && mul_language[uiTemplateMultilingual.uiTemplateLanguage] && mul_language[uiTemplateMultilingual.uiTemplateLanguage] !== "" ? mul_language[uiTemplateMultilingual.uiTemplateLanguage] : title ), viewContent ); } return returnComp; } }, { key: 'moreBtnClick', value: function moreBtnClick() { this.setState({ showMore: !this.state.showMore }); } }, { key: 'render', value: function render() { var _props$viewModel2 = this.props.viewModel, componentKey = _props$viewModel2.componentKey, fieldId = _props$viewModel2.fieldId, titleLayout = _props$viewModel2.titleLayout, size = _props$viewModel2.size, length = _props$viewModel2.length, isbusinessObj = _props$viewModel2.isbusinessObj, borderColor = _props$viewModel2.borderColor, required = _props$viewModel2.required, describe = _props$viewModel2.describe, title = _props$viewModel2.title, itemCode = _props$viewModel2.itemCode, isDisplay = _props$viewModel2.isDisplay; return _react2.default.createElement( 'div', null, this.generateColumnpanel() ); } }]); return GroupTable; }(_react.Component); exports.default = GroupTable; module.exports = exports['default']; });