front/src/utils/image-data-url.ts
zzh 6a7f8f1bcb feat: 用户扩展、Nana双Tab、仓库与客服入口优化
扩展用户管理字段与组织编码生成,顶部改为仓库下拉;Nana 分 AI 与专属顾问 Tab,仓库页移除客服字段,并完善扫描语音与订单相关页面。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 11:23:54 +08:00

31 lines
843 B
TypeScript

export const DEFAULT_MAX_IMAGE_BYTES = 2 * 1024 * 1024
export function readFileAsDataUrl(
file: File,
maxBytes = DEFAULT_MAX_IMAGE_BYTES,
tooLargeMessage = 'Image is too large',
): Promise<string> {
if (file.size > maxBytes) {
return Promise.reject(new Error(tooLargeMessage))
}
return new Promise((resolve, reject) => {
const reader = new FileReader()
reader.onload = () => resolve(String(reader.result || ''))
reader.onerror = () => reject(reader.error || new Error('read failed'))
reader.readAsDataURL(file)
})
}
export function urlToUploadFileList(url?: string | null, prefix = 'img') {
if (!url || String(url).trim() === '') return []
const value = String(url)
return [
{
uid: `${prefix}-${value.slice(0, 24)}`,
name: 'image',
url: value,
status: 'done',
},
]
}