/** * @icos-react/chat-mobile * * 移动端智能问答组件库 * - 纯 React + Less,无 antd 依赖 * - 针对 750px 移动端设计稿 * - 适配 Taro H5(需在 esnextModules 中声明) * * 在 mobile-app 的 config/index.ts 中添加: * ```ts * h5: { * esnextModules: ["@taroify", "taro-ui", "@icos-react/chat-mobile"], * } * ``` */ // 主组件 export { ChatSheet } from './components/ChatSheet'; export { ChatTriggerBar } from './components/ChatTriggerBar'; export { AssistantPreview } from './components/AssistantPreview'; // 子组件(按需引入) export { WelcomePage } from './components/WelcomePage'; export { MessageList } from './components/MessageList'; export { MessageBubble } from './components/MessageBubble'; export { InputBar } from './components/InputBar'; export { QuickActionBar } from './components/QuickActionBar'; // Hooks export { useChatMessages } from './hooks/useChatMessages'; export { useChatSession } from './hooks/useChatSession'; export { useTouch } from './hooks/useTouch'; export { useVirtualKeyboard } from './hooks/useVirtualKeyboard'; export { useVoiceRecorder, convertPcmToWav } from './hooks/useVoiceRecorder'; export type { OnPcmDataAvailable } from './hooks/useVoiceRecorder'; // 服务层 export { getAuthToken, sendChatRequest, fetchSessionId, consumeStream, createUserMessage, createAssistantMessage, } from './services/chatService'; export { recognizeSpeech, sendStreamPackage, generateUUID } from './services/asrService'; export type { OnRecognitionResult, StreamPackageParams } from './services/asrService'; // 类型 export type { ChatMessage, MessageRole, MessageStatus, QuickAction, ApiConfig, ChatSheetProps, ChatTriggerBarProps, AssistantPreviewProps, MessageActionCallbacks, SuggestedQuestion, EventAction, ParaSource, } from './types';