| import { useState } from 'react' | |
| import { useChatWithHistoryContext } from './context' | |
| import Sidebar from './sidebar' | |
| import AppIcon from '@/app/components/base/app-icon' | |
| import { | |
| Edit05, | |
| Menu01, | |
| } from '@/app/components/base/icons/src/vender/line/general' | |
| const HeaderInMobile = () => { | |
| const { | |
| appData, | |
| handleNewConversation, | |
| } = useChatWithHistoryContext() | |
| const [showSidebar, setShowSidebar] = useState(false) | |
| return ( | |
| <> | |
| <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> | |
| <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' | |
| 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> | |
| ) | |
| } | |
| </> | |
| ) | |
| } | |
| export default HeaderInMobile | |