32 lines
811 B
TypeScript
32 lines
811 B
TypeScript
|
|
import type { Ref } from 'vue';
|
||
|
|
import type { BubbleListProps } from '@/components/xt-chat/xt-bubble/types';
|
||
|
|
|
||
|
|
// 定义角色常量
|
||
|
|
export const QUESTION_ROLE = 'question';
|
||
|
|
export const ANSWER_ROLE = 'text';
|
||
|
|
export const FILE_ROLE = 'file';
|
||
|
|
export const THOUGHT_ROLE = 'thought';
|
||
|
|
|
||
|
|
export const ROLE_STYLE = {
|
||
|
|
width: '600px',
|
||
|
|
margin: '0 auto',
|
||
|
|
};
|
||
|
|
|
||
|
|
export const ANSWER_STYLE = {
|
||
|
|
...ROLE_STYLE,
|
||
|
|
paddingLeft: '12px',
|
||
|
|
borderLeft: '1px solid #E6E6E8',
|
||
|
|
position: 'relative',
|
||
|
|
left: '6px',
|
||
|
|
};
|
||
|
|
|
||
|
|
export interface UseChatHandlerReturn {
|
||
|
|
roles: BubbleListProps['roles'];
|
||
|
|
currentTaskId: Ref<string | null>;
|
||
|
|
handleMessage: (parsedData: { event: string; data: any }) => void;
|
||
|
|
generateLoading: Ref<boolean>;
|
||
|
|
conversationList: Ref<any[]>;
|
||
|
|
showRightView: Ref<boolean>;
|
||
|
|
rightViewContent: Ref<string>;
|
||
|
|
}
|