Add advanced canvas editing and Ubuntu deployment

This commit is contained in:
2026-07-14 20:32:42 +08:00
parent f8a907e7c5
commit bf2b138007
19 changed files with 2026 additions and 255 deletions
+24
View File
@@ -141,6 +141,30 @@ export async function addStickerAsset(
return sticker;
}
/** 服务端直接从 job 产物复制入库,避免浏览器下载/再上传大 SVG */
export async function addStickerAssetFromJob(
jobId: string,
name?: string,
): Promise<StickerAsset> {
const form = new FormData();
form.append('name', name || `词云 ${new Date().toLocaleString('zh-CN')}`);
form.append('type', 'sticker');
const res = await ensureOk(
await fetch(apiUrl(`/api/assets/from-job/${jobId}`), { method: 'POST', body: form }),
'从任务导入贴纸失败',
);
const asset = await res.json() as BackendAsset;
const sticker: StickerAsset = {
id: asset.asset_id,
name: asset.name,
type: asset.mime_type === 'image/svg+xml' ? 'svg' : 'image',
source: asset.file_url,
createdAt: asset.created_at,
};
window.dispatchEvent(new CustomEvent(STICKER_LIBRARY_EVENT));
return sticker;
}
export async function deleteStickerAsset(id: string): Promise<void> {
await apiDeleteAsset(id);
removeTint(id);