UNPKG

yyuap-template

Version:

template project which is based on tinper

273 lines (244 loc) 12.8 kB
(function (global, factory) { if (typeof define === "function" && define.amd) { define(['module', 'exports', 'react', '../../view/TextWithLabel/TextWithLabel', '../../view/SelectComponent/SelectComponent', '../../view/CheckboxComponent/CheckboxComponent', '../../view/RadioBoxComponent/RadioBoxComponent', '../../view/Datecomponent/Datecomponent', '../../view/Reference/Reference', '../../view/TextArea/TextArea', '../Table/Table', 'bee-layout', '../../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/RadioBoxComponent/RadioBoxComponent'), require('../../view/Datecomponent/Datecomponent'), require('../../view/Reference/Reference'), require('../../view/TextArea/TextArea'), require('../Table/Table'), require('bee-layout'), require('../../view/multText/MultText')); } else { var mod = { exports: {} }; factory(mod, mod.exports, global.react, global.TextWithLabel, global.SelectComponent, global.CheckboxComponent, global.RadioBoxComponent, global.Datecomponent, global.Reference, global.TextArea, global.Table, global.beeLayout, global.MultText); global.ColumnPanel = mod.exports; } })(this, function (module, exports, _react, _TextWithLabel, _SelectComponent, _CheckboxComponent, _RadioBoxComponent, _Datecomponent, _Reference, _TextArea, _Table, _beeLayout, _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 _RadioBoxComponent2 = _interopRequireDefault(_RadioBoxComponent); var _Datecomponent2 = _interopRequireDefault(_Datecomponent); var _Reference2 = _interopRequireDefault(_Reference); var _TextArea2 = _interopRequireDefault(_TextArea); 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; } /* { "componentKey": "ColumnPanel", "title": "", "layoutDetail": [], "order": 0, "index": 0, "size": "2", "required": false, "columnkind": "", "cssextend": "", "subFormId": "1519543105838", "isDisplay": true, "isLabelDisplay": true, "isbusinessObj": true }, */ var layoutType = { Text: _TextWithLabel2.default, Email: _TextWithLabel2.default, Phone: _TextWithLabel2.default, Mobile: _TextWithLabel2.default, NumberComponent: _TextWithLabel2.default, Reference: _Reference2.default, Select: _SelectComponent2.default, CheckBox: _CheckboxComponent2.default, RadioBox: _RadioBoxComponent2.default, Table: _Table2.default, TextArea: _TextArea2.default, DateComponent: _Datecomponent2.default, MultText: _MultText2.default }; var ColumnPanel = function (_Component) { _inherits(ColumnPanel, _Component); function ColumnPanel(props) { _classCallCheck(this, ColumnPanel); var _this = _possibleConstructorReturn(this, (ColumnPanel.__proto__ || Object.getPrototypeOf(ColumnPanel)).call(this, props)); _this.state = {}; return _this; } _createClass(ColumnPanel, [{ key: 'generateColumnPanel', value: function generateColumnPanel() { var _this2 = this; var viewContent = []; if (this.props.viewModel.size > 1 && this.props.viewModel.size < 4) { var count = this.props.viewModel.size; this.props.viewModel.layoutDetail.map(function (layout, index) { if (layout.componentKey === 'ColumnPanel') { viewContent.push(_react2.default.createElement( _beeLayout.Col, { key: index, md: 12 / count, xs: 12 / count, sm: 12 / count }, _react2.default.createElement(ColumnPanel, { viewModel: layout, dataModel: _this2.props.dataModel, columnkind: _this2.props.columnkind, config: _this2.props.config, allExpand: _this2.props.allExpand, labelDisp: false, headFormExpand: _this2.props.headFormExpand, isEdit: _this2.props.isEdit, form: _this2.props.form, handleValue: _this2.props.handleValue, handleComponentCallback: _this2.props.handleComponentCallback, handleIsEdit: _this2.props.handleIsEdit }) )); } }); return _react2.default.createElement( _beeLayout.Row, null, viewContent ); } else if (this.props.viewModel.size != 0) { var self = this; this.props.viewModel.layoutDetail.map(function (layout, index) { if (layoutType[layout.componentKey]) { viewContent.push(_react2.default.createElement(layoutType[layout.componentKey], { viewModel: layout, key: index, isEdit: self.props.isEdit, config: self.props.config, labelDisp: false, columnkind: self.props.columnkind, form: self.props.form, handleValue: self.props.handleValue, dataModel: self.props.dataModel, handleComponentCallback: self.props.handleComponentCallback })); } else if (layout.componentKey === 'ColumnPanel') { viewContent.push(_react2.default.createElement(ColumnPanel, { viewModel: layout, key: index, columnkind: self.props.viewModel.columnkind, dataModel: self.props.dataModel, config: self.props.config, allExpand: self.props.allExpand, labelDisp: true, headFormExpand: self.props.headFormExpand, isEdit: self.props.isEdit, form: self.props.form, handleValue: self.props.handleValue, handleComponentCallback: self.props.handleComponentCallback, handleIsEdit: self.props.handleIsEdit })); } }); return viewContent; } // this.props.viewModel.layoutDetail.map((layout,index) => { // if (layout.componentKey === 'ColumnPanel') { // viewContent.push( // <div key={index} className={`uit-columnpanel-base uit-columnpanel-col-${12 / this.props.viewModel.size}`}> // <ColumnPanel // viewModel={layout} // dataModel={this.props.dataModel} // config={this.props.config} // allExpand={this.props.allExpand} // headFormExpand={this.props.headFormExpand} // isEdit={this.props.isEdit} // form = {this.props.form} // handleComponentCallback = {this.props.handleComponentCallback} // handleIsEdit = {this.props.handleIsEdit} // /> // </div> // ) // } else { // if(layoutType[layout.componentKey]) { // viewContent.push( // <div key={index} className={`uit-columnpanel-base uit-columnpanel-col-${12 / this.props.viewModel.size}`}> // {React.createElement( // layoutType[layout.componentKey], // { // viewModel:layout, // key:index, // isEdit:this.props.isEdit, // form : this.props.form, // dataModel : this.props.dataModel, // handleComponentCallback:this.props.handleComponentCallback // }, // )} // </div> // ) // } // } // }); // return viewContent; } }, { key: 'render', value: function render() { var size = this.props.viewModel.size; var isOneColumn = true; if (size > 1 && size < 4) { isOneColumn = false; } else { isOneColumn = true; } return _react2.default.createElement( 'div', { className: 'uit-form' }, this.generateColumnPanel() ); } }]); return ColumnPanel; }(_react.Component); exports.default = ColumnPanel; module.exports = exports['default']; });