// Offline verification data only; the resource bridge here never reads product files. const now = Date.now() const svgImage = (color, label) => `data:image/svg+xml;base64,${Buffer.from(`${label}`).toString('base64')}` const content = [ '## 图表、图片与文件交互', '', '```mermaid', 'flowchart LR', ' A[输入] --> B[处理]', ' B --> C[输出]', '```', '', '点击文件 `src/example.ts#L4-L7` 或目录 `src` 查看内容。', '', '```ts:4:7:src/example.ts', 'export const result = input.map(transform)', '```', '', '![蓝色示例](images/blue.svg)', '', '![绿色示例](images/green.svg)', '', '以下验证错误图表仍可查看源码:', '', '```mermaid', 'flowchart LR', ' A[unclosed', '```' ].join('\n') export const dialogueMediaFixture = { sessions: [{ id: 'dialogue-media', title: '图表、图片与文件交互', createdAt: now, updatedAt: now }], messages: { 'dialogue-media': [ { id: 'media-user', role: 'user', content: '验证图表缩放和下载、图片预览、文件行号跳转。', status: 'done', createdAt: now }, { id: 'media-assistant', role: 'assistant', content, parts: [{ type: 'text', text: content }], tools: [], status: 'done', createdAt: now } ] }, images: { 'images/blue.svg': svgImage('#3567be', 'Image A'), 'images/green.svg': svgImage('#277c64', 'Image B') }, files: { 'src/example.ts': Array.from({ length: 32 }, (_, i) => `// example line ${i + 1}`).join('\n') } }