From c96108bd84050feb01b47db3f5cae96670fda435 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 30 十月 2024 12:54:24 +0800
Subject: [PATCH] 2024-10-30

---
 src/menu/components/form/dragtitle/card.jsx |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/src/menu/components/form/dragtitle/card.jsx b/src/menu/components/form/dragtitle/card.jsx
index f0ff624..7413512 100644
--- a/src/menu/components/form/dragtitle/card.jsx
+++ b/src/menu/components/form/dragtitle/card.jsx
@@ -9,9 +9,10 @@
 import './index.scss'
 
 const NormalForm = asyncIconComponent(() => import('@/components/normalform'))
+const PasteForms = asyncIconComponent(() => import('@/menu/components/share/pasteforms'))
 const CopyComponent = asyncIconComponent(() => import('@/menu/components/share/copycomponent'))
 
-const Card = ({ id, card, active, moveCard, findCard, closeCard, selectCard, updateGroup }) => {
+const Card = ({ id, card, sort, labelSize, active, moveCard, findCard, closeCard, selectCard, updateGroup, pasteForm }) => {
   const originalIndex = findCard(id).index
   const [{ isDragging }, drag] = useDrag({
     item: { type: 'form', id, originalIndex },
@@ -33,7 +34,7 @@
       }
     }
   })
-  const opacity = isDragging ? 0 : 1
+  const opacity = isDragging ? 0.5 : 1
 
   const close = () => {
     closeCard(id)
@@ -50,6 +51,16 @@
   const updateSetting = (res) => {
     let _card = fromJS(card).toJS()
     
+    let buttons = res.buttons
+
+    delete res.buttons
+
+    if (buttons) {
+      res.prevEnable = buttons.includes('prevEnable') ? 'true' : 'false'
+      res.subEnable = buttons.includes('subEnable') ? 'true' : 'false'
+      res.nextEnable = buttons.includes('nextEnable') ? 'true' : 'false'
+    }
+
     if (res.prevEnable) {
       _card.prevButton.enable = res.prevEnable
       delete res.prevEnable
@@ -68,6 +79,10 @@
     updateGroup(_card)
   }
 
+  let style = {fontSize: labelSize}
+  let s = labelSize * 1.5 + 'px'
+  let sortStyle = {width: s, height: s, lineHeight: s, borderRadius: s}
+
   return (
     <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={
       <div className="mk-popover-control">
@@ -75,12 +90,13 @@
           <EditOutlined style={{color: '#1890ff'}} title="缂栬緫"/>
         </NormalForm>
         <CopyComponent type="formgroup" card={card}/>
+        <PasteForms config={card} update={(res) => pasteForm(res, id)} />
         <CloseOutlined className="close" type="close" onClick={close} />
       </div>
     } trigger="hover">
       <div className={'page-card ' + (active ? 'active' : '')} onClick={select} style={{ opacity: opacity}}>
-        <div ref={node => drag(drop(node))}>
-          <span className="form-sort">{card.sort}</span>
+        <div ref={node => drag(drop(node))} style={style}>
+          <span className="form-sort" style={sortStyle}>{sort}</span>
           {card.setting.title}
         </div>
       </div>

--
Gitblit v1.8.0