Files
Obsidian/obsidian-halo/src/icons.ts
T
Serendipity 7d332d3b8c feat(halo): 添加图片自动上传功能
- 新增图片处理工具模块 `src/utils/image.ts`,包含图片引用提取、绝对路径解析和路径替换功能
- 新增图片上传服务 `src/service/image-uploader.ts`,支持调用 Halo 媒体 API 上传图片并实现缓存机制
- 在设置界面添加图片上传开关和上传路径配置项
- 更新发布流程,在提交到 Halo 前自动检测并上传本地图片,替换为远程 URL
- 添加英文、简体中文和繁体中文的国际化文案
- 更新插件版本至 1.1.1 并完善相关配置文件
2026-04-26 16:11:11 +08:00

9 lines
5.2 KiB
TypeScript

import { addIcon } from "obsidian";
const svg = `<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="m160.987 57.643h683.713a100 100 0 0 1 100 100v684.71a100 100 0 0 1 -100 100h-683.713a100 100 0 0 1 -100-100v-684.71a100 100 0 0 1 100-100z" fill="none" stroke="#7f7f7f" stroke-width="60"/><image height="587" width="448" x="279" xlink:href="data:img/png;base64,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" y="207"/></svg>
`;
export function addHaloIcon() {
addIcon("halo-logo", svg);
}