From a40f0faa046f48a005927ccce79aa815c047cd76 Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期三, 09 四月 2025 14:02:28 +0800
Subject: [PATCH] AI场景详情对话框优化
---
src/components/SceneIntroDialog.tsx | 78 ++++++++++++++++++++-------------------
1 files changed, 40 insertions(+), 38 deletions(-)
diff --git a/src/components/SceneIntroDialog.tsx b/src/components/SceneIntroDialog.tsx
index b4720d2..05f80c6 100644
--- a/src/components/SceneIntroDialog.tsx
+++ b/src/components/SceneIntroDialog.tsx
@@ -118,12 +118,44 @@
</Dialog.Title>
<button
onClick={onClose}
- className="text-gray-300 hover:text-white transition-colors"
+ className="group relative p-2 rounded-full hover:bg-white/5 transition-colors duration-300 cursor-pointer"
>
- <svg xmlns="http://www.w3.org/2000/svg" className="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
+ <svg
+ xmlns="http://www.w3.org/2000/svg"
+ className="h-6 w-6 text-gray-400 group-hover:text-[#6ADBFF] transition-colors duration-300"
+ fill="none"
+ viewBox="0 0 24 24"
+ stroke="currentColor"
+ >
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M6 18L18 6M6 6l12 12" />
</svg>
</button>
+ </div>
+
+ <motion.div
+ className="mb-6 flex justify-center"
+ initial={{ opacity: 0, y: 20 }}
+ animate={{ opacity: 1, y: 0 }}
+ transition={{ duration: 0.5, delay: 0.3 }}
+ >
+ <button
+ onClick={onStartChat}
+ className="group relative w-64 cursor-pointer"
+ >
+ <div className="absolute -inset-0.5 rounded-lg bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB] opacity-60 blur group-hover:opacity-100 transition-all duration-300"></div>
+ <div className="relative px-6 py-3 rounded-lg bg-[#131C41] text-white group-hover:text-[#6ADBFF] transition-colors duration-300 flex items-center justify-center gap-2">
+ <span className="text-lg">寮�濮嬩娇鐢�</span>
+ <svg xmlns="http://www.w3.org/2000/svg" className="h-5 w-5 transform group-hover:translate-x-1 transition-transform duration-300" fill="none" viewBox="0 0 24 24" stroke="currentColor">
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 7l5 5m0 0l-5 5m5-5H6" />
+ </svg>
+ </div>
+ </button>
+ </motion.div>
+
+ <div className="relative mb-8 flex items-center">
+ <div className="flex-grow h-[1px] bg-gradient-to-r from-transparent via-[#6ADBFF]/30 to-transparent"></div>
+ <span className="mx-4 text-sm text-gray-400">鍦烘櫙淇℃伅</span>
+ <div className="flex-grow h-[1px] bg-gradient-to-r from-[#6ADBFF]/30 via-[#6ADBFF]/30 to-transparent"></div>
</div>
<div className="space-y-6">
@@ -178,51 +210,21 @@
</p>
</motion.div>
- {/* 鏁版嵁璇存槑 */}
+ {/* 鏁版嵁璇存槑 - 娣诲姞鎮诞鍔ㄧ敾鏁堟灉 */}
<motion.div
- className="bg-[#1A2547] rounded-lg p-6"
+ className="bg-[#1A2547] rounded-lg p-6 transform transition-all duration-300 hover:scale-[1.02] hover:shadow-[0_0_20px_rgba(106,219,255,0.15)] relative group"
initial={{ opacity: 0, x: -20 }}
animate={{ opacity: 1, x: 0 }}
transition={{ duration: 0.5, delay: 0.6 }}
>
- <h3 className="text-lg font-semibold text-[#6ADBFF] mb-4 flex items-center">
- <div className="w-1 h-4 bg-[#6ADBFF] mr-2"></div>
+ <div className="absolute inset-0 rounded-lg bg-gradient-to-r from-[#6ADBFF]/5 to-[#5E72EB]/5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"></div>
+ <h3 className="text-lg font-semibold text-[#6ADBFF] mb-4 flex items-center relative">
+ <div className="w-1 h-4 bg-[#6ADBFF] mr-2 group-hover:h-5 transition-all duration-300"></div>
鏁版嵁璇存槑
</h3>
- <p className="text-gray-300 leading-relaxed">
+ <p className="text-gray-300 leading-relaxed relative">
{scene.dataDescription || '鏈満鏅墍浣跨敤鐨勬暟鎹潎涓烘ā鎷熸暟鎹紝浠呯敤浜庢紨绀虹洰鐨勩�傚湪瀹為檯搴旂敤涓紝灏嗘牴鎹偍鐨勫叿浣撻渶姹備娇鐢ㄧ湡瀹炴暟鎹繘琛屽垎鏋愬拰澶勭悊銆�'}
</p>
- </motion.div>
-
- {/* 鎸夐挳缁� */}
- <motion.div
- className="sticky bottom-0 bg-gradient-to-br from-[#131C41] to-[#0A1033] pt-4"
- initial={{ opacity: 0, y: 20 }}
- animate={{ opacity: 1, y: 0 }}
- transition={{ duration: 0.5, delay: 0.7 }}
- >
- <div className="flex justify-end gap-4">
- <button
- onClick={onClose}
- className="px-4 py-2 text-sm font-medium text-gray-300 hover:text-white transition-colors relative overflow-hidden group"
- >
- <span className="relative z-10">鍏抽棴</span>
- <span className="absolute bottom-0 left-0 right-0 h-[1px] bg-gray-300/30 transform scale-x-0 group-hover:scale-x-100 transition-transform duration-300 origin-left"></span>
- </button>
-
- <button
- onClick={onStartChat}
- className="group relative"
- >
- <div className="absolute -inset-0.5 rounded-lg bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB] opacity-60 blur group-hover:opacity-100 transition-all duration-300"></div>
- <div className="relative px-6 py-2 rounded-lg bg-[#131C41] text-white group-hover:text-[#6ADBFF] transition-colors duration-300 flex items-center gap-2">
- <span>寮�濮嬩娇鐢�</span>
- <svg xmlns="http://www.w3.org/2000/svg" className="h-4 w-4 transform group-hover:translate-x-1 transition-transform duration-300" fill="none" viewBox="0 0 24 24" stroke="currentColor">
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 7l5 5m0 0l-5 5m5-5H6" />
- </svg>
- </div>
- </button>
- </div>
</motion.div>
</div>
</div>
--
Gitblit v1.9.3