16b05476a1
CI / docker (push) Failing after 1m54s
引入用户端对话/生图与管理端 Provider 配置,统一 invoke 编排、Gateway、请求日志与模型管理;前端按设计规范拆分布局,Go module 更名为 github.com/rose_cat707/Atlas;生图长任务 SSE 推送;管理端登录防爆破;协议与服务类型联动;Replicate 模型同步修复;用户端创作台 UI 重构;管理端创作历史替代请求日志。 Co-authored-by: Cursor <cursoragent@cursor.com>
43 lines
1.0 KiB
TypeScript
43 lines
1.0 KiB
TypeScript
import { serviceTypeLabel } from '@/constants/providerCompat'
|
|
import { parseImageUrl } from '@/utils/output'
|
|
|
|
export interface GenerationRow {
|
|
service_type: string
|
|
input_json: string
|
|
output_json: string
|
|
}
|
|
|
|
export function summarizeGeneration(g: GenerationRow): string {
|
|
if (g.service_type === 'chat') {
|
|
try {
|
|
return JSON.parse(g.input_json).content ?? g.input_json
|
|
} catch {
|
|
return g.input_json
|
|
}
|
|
}
|
|
try {
|
|
const input = JSON.parse(g.input_json)
|
|
if (input.prompt) return input.prompt
|
|
} catch { /* ignore */ }
|
|
try {
|
|
const out = JSON.parse(g.output_json)
|
|
const url = parseImageUrl(out)
|
|
if (url) return url
|
|
return out.content ?? g.output_json.slice(0, 80)
|
|
} catch {
|
|
return g.output_json.slice(0, 80)
|
|
}
|
|
}
|
|
|
|
export function formatGenerationType(type: string): string {
|
|
return serviceTypeLabel(type)
|
|
}
|
|
|
|
export function previewImageFromGeneration(g: GenerationRow): string {
|
|
try {
|
|
return parseImageUrl(JSON.parse(g.output_json))
|
|
} catch {
|
|
return ''
|
|
}
|
|
}
|