UNPKG

press-next

Version:

Vue3 组件库,支持 Composition API

78 lines (72 loc) 2.13 kB
export interface MessageItem { label: string; value: string; } export interface ButtonItem { buttonText: string; // 按钮文本 id?: string | number; // 按钮id bgColor?: string; // 按钮颜色 type?: 'primary' | 'default'; // 按钮类型 icon?: string; // 按钮图标 } export interface CtrlsContent { ctrlsBtns: ButtonItem[]; } export interface QuestionItem { id: string | number; text: string; } export function getMockData() { // 快速问题数据 const quickQuestions: QuestionItem[] = [ { id: 1, text: '赛制区别解释' }, { id: 2, text: '大型赛事一般选择什么赛制?' }, { id: 3, text: '参赛人数少于100人一般选择什么赛制?' }, { id: 4, text: '大型赛事推荐' }, ]; // 简化的AI办赛消息数据(用于演示插槽功能) const items: MessageItem[] = [ { label: '比赛赛制', value: '小组循环积分赛很多字会截断的放心吧' }, { label: '比赛类型', value: '团队赛(四人)' }, { label: '比赛模式', value: '极速对决' }, { label: '比赛地图', value: '海岛地图' }, { label: '比赛局数', value: '5局' }, { label: '报名截止', value: '6月12日21点' }, { label: '开赛时间', value: '7月12日21点' }, ]; // 按钮组数据 const ctrlsBtns: ButtonItem[] = [ { id: 1, buttonText: '一键创建', type: 'primary', bgColor: 'linear-gradient(280deg, #966FFB -12.57%, #6736F3 105.32%)', }, { id: 2, buttonText: '补充比赛设置', type: 'default', bgColor: 'rgba(211, 212, 252, 0.48)', }, ]; // 控制按钮内容配置 const content: CtrlsContent = { ctrlsBtns, }; // 组件属性配置 const componentProps = { icon: '', content, bgColor: 'rgba(211, 212, 252, 0.48)', items, title: '好的,我重新为您整理线下办赛步骤:', question: { quickQuestions }, ctrlsMore: '更多比赛', containerClass: 'ai-match-container', }; return componentProps; } const DEMO_DATA = { ...getMockData(), }; export default DEMO_DATA;