- KT-NEGOWIZ /chat 을 현재 아키텍처(Vite·React Router·feature 구조)로 이식 - 사이드 ItemSection(+이미지 확대), 헤더 잔여시간, 채팅(메시지/템플릿/입력), 메뉴 섹션 - 메시지 템플릿: 협상 성공률·협상요약·투찰요약·재협상/재견적 폼 - zustand 스토어 + mock 데이터(정적 쇼케이스, 제출 시 로컬 append) - Next.js·KT 의존 제거(next/image·navigation, 로고·서비스명·연락처, 팝업 보류) - ChatPage 배선: ChatContainer / ItemSection / RemainingTime + auth SidebarFooter 재사용 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
22 lines
784 B
TypeScript
22 lines
784 B
TypeScript
import { useState } from 'react'
|
|
import { MDInformation } from '@/features/chat/components/menu/MDInformation'
|
|
import { NegoStep } from '@/features/chat/components/menu/NegoStep'
|
|
import { Guide } from '@/features/chat/components/menu/Guide'
|
|
import { Contact } from '@/features/chat/components/menu/Contact'
|
|
|
|
export function MenuSection() {
|
|
const [isMDOpen, setIsMDOpen] = useState(true)
|
|
const [isStepOpen, setIsStepOpen] = useState(true)
|
|
|
|
return (
|
|
<div className="flex flex-col w-[360px] h-full pt-[64px] pr-[24px]">
|
|
<div className="flex flex-col flex-1 gap-[28px]">
|
|
<MDInformation isOpen={isMDOpen} setIsOpen={setIsMDOpen} />
|
|
<NegoStep isOpen={isStepOpen} setIsOpen={setIsStepOpen} />
|
|
<Guide />
|
|
</div>
|
|
<Contact />
|
|
</div>
|
|
)
|
|
}
|