From 50b49c1b760489c3430fc382656d57c5fbbab07c Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 29 四月 2024 16:07:24 +0800
Subject: [PATCH] 2024-04-29

---
 src/tabviews/custom/components/group/normal-group/index.jsx |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/src/tabviews/custom/components/group/normal-group/index.jsx b/src/tabviews/custom/components/group/normal-group/index.jsx
index 5a87122..3868f59 100644
--- a/src/tabviews/custom/components/group/normal-group/index.jsx
+++ b/src/tabviews/custom/components/group/normal-group/index.jsx
@@ -1,5 +1,6 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
+import { DoubleLeftOutlined, DoubleRightOutlined } from '@ant-design/icons'
 
 import asyncComponent from '@/utils/asyncComponent'
 import './index.scss'
@@ -8,23 +9,32 @@
 
 class NormalGroup extends Component {
   static propTpyes = {
-    config: PropTypes.object,        // 缁勪欢閰嶇疆淇℃伅
+    config: PropTypes.object
   }
 
-  state = {}
+  state = {
+    visible: true,
+    mergeAble: this.props.config.setting.mergeAble === 'true'
+  }
 
   render() {
-    const { config } = this.props
+    const { config, style } = this.props
+    const { visible, mergeAble } = this.state
 
-    if (config.components.length === 0) return (<div style={config.style}></div>)
+    if (config.components.length === 0) return (<div className={'ant-col ant-col-' + config.width} style={style}><div style={config.style}></div></div>)
     
     return (
-      <div className={'normal-group-wrap ' + (config.setting.layout || '')} id={'anchor' + config.uuid} style={config.style}>
-        {config.setting && config.setting.title ? <div className="group-header" style={config.headerStyle}>
-          <span className="title">{config.setting.title}</span>
-        </div> : null}
-        <TabTransfer config={config}/>
-        {/* <Row className="component-wrap">{this.getComponents()}</Row> */}
+      <div className={`ant-col ant-col-${config.width} ${mergeAble ? ' mk-merge-able mk-ctrl-' + (config.setting.ctrlNumber || 1) : ''} ${visible ? '' : ' close'}`} style={style}>
+        <div className={'normal-group-wrap ' + (config.setting.layout || '')} id={'anchor' + config.uuid} style={config.style}>
+          <div className="mk-control">
+            <DoubleLeftOutlined onClick={() => this.setState({visible: false})}/>
+            <DoubleRightOutlined onClick={() => this.setState({visible: true})}/>
+          </div>
+          {config.setting && config.setting.title ? <div className="group-header" style={config.headerStyle}>
+            <span className="title">{config.setting.title}</span>
+          </div> : null}
+          <TabTransfer config={config}/>
+        </div>
       </div>
     )
   }

--
Gitblit v1.8.0