清理: 业务域名注释清零与垫片生产隔离
6 处域名注释改语义化描述,src 下业务域名零残留 垫片 PROD 构建零携带,消息纪年对齐 2026-09,补 ai_list_tools 空返 分离窗口错误文案入 i18n
This commit is contained in:
@@ -42,7 +42,7 @@
|
||||
@select="selectMention"
|
||||
@update:mention-index="mentionIndex = $event"
|
||||
/>
|
||||
<!-- 2026-08-06:📎 图片选择按钮(tauri 原生对话框选图 → file.1216.top 上传 → URL 引用) -->
|
||||
<!-- 2026-08-06:📎 图片选择按钮(tauri 原生对话框选图 → 已配置上传端点则上传换 URL,否则本地 base64 引用) -->
|
||||
<button
|
||||
type="button"
|
||||
class="ai-img-pick-btn"
|
||||
@@ -156,9 +156,9 @@ const inputEl = ref<HTMLTextAreaElement>()
|
||||
// - 限制单次最多 6 张(防超长上下文/超限请求);超过 toast 提示。
|
||||
// - 限制单张 10MB(纯文本 base64 估算 ≥ 13M 字符;超限 toast 提示跳过)。
|
||||
// - 仅接受 image/* MIME;非图片(文本粘贴/文件拖入)走原生行为不拦。
|
||||
// - 2026-08-06:新增"📎 图片"按钮(tauri dialog 选图)→ 优先上传 file.1216.top 拿 URL
|
||||
// (走 url 模式,provider 直传/Anthropic 预拉);上传失败回退 base64(dataUrl)。
|
||||
// pendingImages 元素 url/dataUrl 二选一:url=file.1216.top 公开地址,dataUrl=base64。
|
||||
// - 2026-08-06:新增"📎 图片"按钮(tauri dialog 选图)→ 已配置上传端点则上传拿 URL
|
||||
// (走 url 模式,provider 直传/Anthropic 预拉);未配置或上传失败回退 base64(dataUrl)。
|
||||
// pendingImages 元素 url/dataUrl 二选一:url=上传服务返回的公开地址,dataUrl=base64。
|
||||
const MAX_PENDING_IMAGES = 6
|
||||
const MAX_IMAGE_BYTES = 10 * 1024 * 1024 // 10MB(解码后字节上限)
|
||||
const pendingImages = ref<{ id: string; dataUrl?: string; url?: string; mediaType: string }[]>([])
|
||||
@@ -173,7 +173,7 @@ function readImageFile(file: File): Promise<string> {
|
||||
})
|
||||
}
|
||||
|
||||
/** 把 image File 加入 pendingImages;超限/超大小跳过并 toast。优先上传 file.1216.top 拿 URL,失败回退 base64。 */
|
||||
/** 把 image File 加入 pendingImages;超限/超大小跳过并 toast。已配置端点则上传拿 URL,否则回退 base64。 */
|
||||
async function addImageFile(file: File): Promise<void> {
|
||||
if (!file.type.startsWith('image/')) return
|
||||
if (file.size > MAX_IMAGE_BYTES) {
|
||||
@@ -186,8 +186,8 @@ async function addImageFile(file: File): Promise<void> {
|
||||
}
|
||||
const id = `img-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`
|
||||
try {
|
||||
// 优先上传 file.1216.top → URL 引用(公开可达,OpenAI 直传 / Anthropic 桌面预拉)。
|
||||
// 失败回退 base64(dataUrl),不阻断图片输入。
|
||||
// 已配置上传端点则上传 → URL 引用(公开可达,OpenAI 直传 / Anthropic 桌面预拉)。
|
||||
// 未配置或失败回退 base64(dataUrl),不阻断图片输入。
|
||||
const { url } = await uploadFile(file)
|
||||
pendingImages.value.push({ id, url, mediaType: file.type })
|
||||
} catch {
|
||||
@@ -798,7 +798,7 @@ async function handleSend() {
|
||||
// 空文本则只发图片片)
|
||||
...(text ? [{ type: 'text' as const, text }] : []),
|
||||
...snapshotImgs.map(img => {
|
||||
// url 模式(file.1216.top 上传):直传 url,provider 直传 / Anthropic 预拉。
|
||||
// url 模式(已配置上传端点时上传所得):直传 url,provider 直传 / Anthropic 预拉。
|
||||
if (img.url) {
|
||||
return {
|
||||
type: 'image' as const,
|
||||
|
||||
Reference in New Issue
Block a user