From a430284aa21e3ae1f0d5654e55b2ad2852519cc2 Mon Sep 17 00:00:00 2001
From: wwf <yearningwang@iqtogether.com>
Date: 星期三, 04 六月 2025 15:17:49 +0800
Subject: [PATCH] 初始化

---
 app/components/base/chat/chat-with-history/header-in-mobile.tsx |  170 +++++++++++++-------------------------------------------
 1 files changed, 40 insertions(+), 130 deletions(-)

diff --git a/app/components/base/chat/chat-with-history/header-in-mobile.tsx b/app/components/base/chat/chat-with-history/header-in-mobile.tsx
index ec8da7b..4178940 100644
--- a/app/components/base/chat/chat-with-history/header-in-mobile.tsx
+++ b/app/components/base/chat/chat-with-history/header-in-mobile.tsx
@@ -1,150 +1,60 @@
-import { useCallback, useState } from 'react'
-import { useTranslation } from 'react-i18next'
-import {
-  RiMenuLine,
-} from '@remixicon/react'
+import { useState } from 'react'
 import { useChatWithHistoryContext } from './context'
-import Operation from './header/operation'
 import Sidebar from './sidebar'
-import MobileOperationDropdown from './header/mobile-operation-dropdown'
 import AppIcon from '@/app/components/base/app-icon'
-import ActionButton from '@/app/components/base/action-button'
-import { Message3Fill } from '@/app/components/base/icons/src/public/other'
-import InputsFormContent from '@/app/components/base/chat/chat-with-history/inputs-form/content'
-import Confirm from '@/app/components/base/confirm'
-import RenameModal from '@/app/components/base/chat/chat-with-history/sidebar/rename-modal'
-import type { ConversationItem } from '@/models/share'
+import {
+  Edit05,
+  Menu01,
+} from '@/app/components/base/icons/src/vender/line/general'
 
 const HeaderInMobile = () => {
   const {
     appData,
-    currentConversationId,
-    currentConversationItem,
-    pinnedConversationList,
     handleNewConversation,
-    handlePinConversation,
-    handleUnpinConversation,
-    handleDeleteConversation,
-    handleRenameConversation,
-    conversationRenaming,
-    inputsForms,
   } = useChatWithHistoryContext()
-  const { t } = useTranslation()
-  const isPin = pinnedConversationList.some(item => item.id === currentConversationId)
-  const [showConfirm, setShowConfirm] = useState<ConversationItem | null>(null)
-  const [showRename, setShowRename] = useState<ConversationItem | null>(null)
-  const handleOperate = useCallback((type: string) => {
-    if (type === 'pin')
-      handlePinConversation(currentConversationId)
-
-    if (type === 'unpin')
-      handleUnpinConversation(currentConversationId)
-
-    if (type === 'delete')
-      setShowConfirm(currentConversationItem as any)
-
-    if (type === 'rename')
-      setShowRename(currentConversationItem as any)
-  }, [currentConversationId, currentConversationItem, handlePinConversation, handleUnpinConversation])
-  const handleCancelConfirm = useCallback(() => {
-    setShowConfirm(null)
-  }, [])
-  const handleDelete = useCallback(() => {
-    if (showConfirm)
-      handleDeleteConversation(showConfirm.id, { onSuccess: handleCancelConfirm })
-  }, [showConfirm, handleDeleteConversation, handleCancelConfirm])
-  const handleCancelRename = useCallback(() => {
-    setShowRename(null)
-  }, [])
-  const handleRename = useCallback((newName: string) => {
-    if (showRename)
-      handleRenameConversation(showRename.id, newName, { onSuccess: handleCancelRename })
-  }, [showRename, handleRenameConversation, handleCancelRename])
   const [showSidebar, setShowSidebar] = useState(false)
-  const [showChatSettings, setShowChatSettings] = useState(false)
 
   return (
     <>
-      <div className='flex shrink-0 items-center gap-1 bg-mask-top2bottom-gray-50-to-transparent px-2 py-3'>
-        <ActionButton size='l' className='shrink-0' onClick={() => setShowSidebar(true)}>
-          <RiMenuLine className='h-[18px] w-[18px]' />
-        </ActionButton>
-        <div className='flex grow items-center justify-center'>
-          {!currentConversationId && (
-            <>
-              <AppIcon
-                className='mr-2'
-                size='tiny'
-                icon={appData?.site.icon}
-                iconType={appData?.site.icon_type}
-                imageUrl={appData?.site.icon_url}
-                background={appData?.site.icon_background}
-              />
-              <div className='system-md-semibold truncate text-text-secondary'>
-                {appData?.site.title}
-              </div>
-            </>
-          )}
-          {currentConversationId && (
-            <Operation
-              title={currentConversationItem?.name || ''}
-              isPinned={!!isPin}
-              togglePin={() => handleOperate(isPin ? 'unpin' : 'pin')}
-              isShowDelete
-              isShowRenameConversation
-              onRenameConversation={() => handleOperate('rename')}
-              onDelete={() => handleOperate('delete')}
-            />
-          )}
+      <div className='shrink-0 flex items-center px-3 h-[44px] border-b-[0.5px] border-b-gray-200'>
+        <div
+          className='shrink-0 flex items-center justify-center w-8 h-8 rounded-lg'
+          onClick={() => setShowSidebar(true)}
+        >
+          <Menu01 className='w-4 h-4 text-gray-700' />
         </div>
-        <MobileOperationDropdown
-          handleResetChat={handleNewConversation}
-          handleViewChatSettings={() => setShowChatSettings(true)}
-          hideViewChatSettings={inputsForms.length < 1}
-        />
+        <div className='grow flex justify-center items-center px-3'>
+          <AppIcon
+            className='mr-2'
+            size='tiny'
+            icon={appData?.site.icon}
+            iconType={appData?.site.icon_type}
+            imageUrl={appData?.site.icon_url}
+            background={appData?.site.icon_background}
+          />
+          <div className='py-1 text-base font-semibold text-gray-800 truncate'>
+            {appData?.site.title}
+          </div>
+        </div>
+        <div
+          className='shrink-0 flex items-center justify-center w-8 h-8 rounded-lg'
+          onClick={handleNewConversation}
+        >
+          <Edit05 className='w-4 h-4 text-gray-700' />
+        </div>
       </div>
-      {showSidebar && (
-        <div className='fixed inset-0 z-50 flex bg-background-overlay p-1'
-          onClick={() => setShowSidebar(false)}
-        >
-          <div className='flex h-full w-[calc(100vw_-_40px)] rounded-xl bg-components-panel-bg shadow-lg backdrop-blur-sm' onClick={e => e.stopPropagation()}>
-            <Sidebar />
-          </div>
-        </div>
-      )}
-      {showChatSettings && (
-        <div className='fixed inset-0 z-50 flex justify-end bg-background-overlay p-1'
-          onClick={() => setShowChatSettings(false)}
-        >
-          <div className='flex h-full w-[calc(100vw_-_40px)] flex-col rounded-xl bg-components-panel-bg shadow-lg backdrop-blur-sm' onClick={e => e.stopPropagation()}>
-            <div className='flex items-center gap-3 rounded-t-2xl border-b border-divider-subtle px-4 py-3'>
-              <Message3Fill className='h-6 w-6 shrink-0' />
-              <div className='system-xl-semibold grow text-text-secondary'>{t('share.chat.chatSettingsTitle')}</div>
-            </div>
-            <div className='p-4'>
-              <InputsFormContent />
+      {
+        showSidebar && (
+          <div className='fixed inset-0 z-50'
+            style={{ backgroundColor: 'rgba(35, 56, 118, 0.2)' }}
+            onClick={() => setShowSidebar(false)}
+          >
+            <div className='inline-block h-full bg-white' onClick={e => e.stopPropagation()}>
+              <Sidebar />
             </div>
           </div>
-        </div>
-      )}
-      {!!showConfirm && (
-        <Confirm
-          title={t('share.chat.deleteConversation.title')}
-          content={t('share.chat.deleteConversation.content') || ''}
-          isShow
-          onCancel={handleCancelConfirm}
-          onConfirm={handleDelete}
-        />
-      )}
-      {showRename && (
-        <RenameModal
-          isShow
-          onClose={handleCancelRename}
-          saveLoading={conversationRenaming}
-          name={showRename?.name || ''}
-          onSave={handleRename}
-        />
-      )}
+        )
+      }
     </>
   )
 }

--
Gitblit v1.8.0