feat(halo): 添加图片自动上传功能
- 新增图片处理工具模块 `src/utils/image.ts`,包含图片引用提取、绝对路径解析和路径替换功能 - 新增图片上传服务 `src/service/image-uploader.ts`,支持调用 Halo 媒体 API 上传图片并实现缓存机制 - 在设置界面添加图片上传开关和上传路径配置项 - 更新发布流程,在提交到 Halo 前自动检测并上传本地图片,替换为远程 URL - 添加英文、简体中文和繁体中文的国际化文案 - 更新插件版本至 1.1.1 并完善相关配置文件
This commit is contained in:
Vendored
+271
@@ -0,0 +1,271 @@
|
||||
{
|
||||
"main": {
|
||||
"id": "5324373015726ba8",
|
||||
"type": "split",
|
||||
"children": [
|
||||
{
|
||||
"id": "4509724f8bf84da7",
|
||||
"type": "tabs",
|
||||
"children": [
|
||||
{
|
||||
"id": "e7a7b303c61786dc",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "博客/Git团队协作指南(精简版).md",
|
||||
"mode": "source",
|
||||
"source": false
|
||||
},
|
||||
"icon": "lucide-file",
|
||||
"title": "Git团队协作指南(精简版)"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"direction": "vertical"
|
||||
},
|
||||
"left": {
|
||||
"id": "2040fa35d3c780cc",
|
||||
"type": "split",
|
||||
"children": [
|
||||
{
|
||||
"id": "44f0f6c3e50b6b6b",
|
||||
"type": "tabs",
|
||||
"children": [
|
||||
{
|
||||
"id": "b87fe94622087e57",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "file-explorer",
|
||||
"state": {
|
||||
"sortOrder": "alphabetical",
|
||||
"autoReveal": false
|
||||
},
|
||||
"icon": "lucide-folder-closed",
|
||||
"title": "文件列表"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "fd8c91a5051afb92",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "search",
|
||||
"state": {
|
||||
"query": "",
|
||||
"matchingCase": false,
|
||||
"explainSearch": false,
|
||||
"collapseAll": false,
|
||||
"extraContext": false,
|
||||
"sortOrder": "alphabetical"
|
||||
},
|
||||
"icon": "lucide-search",
|
||||
"title": "搜索"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "281cb4609de43ca5",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "bookmarks",
|
||||
"state": {},
|
||||
"icon": "lucide-bookmark",
|
||||
"title": "书签"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "584070af0c010375",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "recent-files",
|
||||
"state": {},
|
||||
"icon": "clock",
|
||||
"title": "Recent Files"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"direction": "horizontal",
|
||||
"width": 285.5
|
||||
},
|
||||
"right": {
|
||||
"id": "1a950cafdb3ea126",
|
||||
"type": "split",
|
||||
"children": [
|
||||
{
|
||||
"id": "54723c9a41e32b09",
|
||||
"type": "tabs",
|
||||
"children": [
|
||||
{
|
||||
"id": "e5ecfd878b991e60",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "backlink",
|
||||
"state": {
|
||||
"collapseAll": false,
|
||||
"extraContext": false,
|
||||
"sortOrder": "alphabetical",
|
||||
"showSearch": false,
|
||||
"searchQuery": "",
|
||||
"backlinkCollapsed": false,
|
||||
"unlinkedCollapsed": true
|
||||
},
|
||||
"icon": "links-coming-in",
|
||||
"title": "反向链接"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "3e52d289a53d24e5",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "outgoing-link",
|
||||
"state": {
|
||||
"linksCollapsed": false,
|
||||
"unlinkedCollapsed": true
|
||||
},
|
||||
"icon": "links-going-out",
|
||||
"title": "出链"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "b8e0351a55f515d4",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "tag",
|
||||
"state": {
|
||||
"sortOrder": "frequency",
|
||||
"useHierarchy": true,
|
||||
"showSearch": false,
|
||||
"searchQuery": ""
|
||||
},
|
||||
"icon": "lucide-tags",
|
||||
"title": "标签"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "1e67aceb8faf7653",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "copilot-chat-view",
|
||||
"state": {},
|
||||
"icon": "message-square",
|
||||
"title": "Copilot"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "a89fbe0ab5883f4c",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "outline",
|
||||
"state": {
|
||||
"followCursor": true,
|
||||
"showSearch": true,
|
||||
"searchQuery": ""
|
||||
},
|
||||
"icon": "lucide-list",
|
||||
"title": "大纲"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "969b17fcb8d1f364",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "calendar",
|
||||
"state": {},
|
||||
"icon": "calendar-with-checkmark",
|
||||
"title": "Calendar"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2a4c1d3c641d5d1d",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "git-view",
|
||||
"state": {},
|
||||
"icon": "git-pull-request",
|
||||
"title": "Source Control"
|
||||
}
|
||||
}
|
||||
],
|
||||
"currentTab": 3
|
||||
}
|
||||
],
|
||||
"direction": "horizontal",
|
||||
"width": 426.5
|
||||
},
|
||||
"left-ribbon": {
|
||||
"hiddenItems": {
|
||||
"bases:新建数据库": false,
|
||||
"switcher:打开快速切换": false,
|
||||
"graph:查看关系图谱": false,
|
||||
"canvas:新建白板": false,
|
||||
"daily-notes:打开/创建今天的日记": false,
|
||||
"templates:插入模板": false,
|
||||
"command-palette:打开命令面板": false,
|
||||
"table-editor-obsidian:Advanced Tables Toolbar": false,
|
||||
"copilot:Open Copilot Chat": false,
|
||||
"obsidian-excalidraw-plugin:新建绘图文件": false,
|
||||
"obsidian-git:Open Git source control": false,
|
||||
"homepage:Open homepage": false,
|
||||
"obsidian-importer:Open Importer": false,
|
||||
"obsidian-kanban:创建新看板": false,
|
||||
"mermaid-tools:Open Mermaid Toolbar": false,
|
||||
"omnisearch:Omnisearch": false,
|
||||
"remotely-save:Remotely Save": false,
|
||||
"templater-obsidian:Templater": false,
|
||||
"halo:发布当前文档到 Halo": false
|
||||
}
|
||||
},
|
||||
"active": "e7a7b303c61786dc",
|
||||
"lastOpenFiles": [
|
||||
"博客/CLI在AI时代的浴火重生.md",
|
||||
"博客/Git团队协作指南(精简版).md",
|
||||
"obsidian-halo/src/service/image-uploader.ts",
|
||||
"obsidian-halo/src/utils/image.ts",
|
||||
"博客/check-credentials.ps1",
|
||||
"博客/get-halo-token.js",
|
||||
"博客/halo-upload.py",
|
||||
"obsidian-halo/node_modules/@halo-dev",
|
||||
"obsidian-halo/node_modules/@rslib",
|
||||
"obsidian-halo/node_modules/@biomejs",
|
||||
"obsidian-halo/node_modules/@types",
|
||||
"obsidian-halo/node_modules",
|
||||
"obsidian-halo-zip-test/images/pat-zh.png",
|
||||
"obsidian-halo-zip-test/images/settings-zh.png",
|
||||
"obsidian-halo-zip-test/images/settings-en.png",
|
||||
"obsidian-halo-zip-test/images/pat-en.png",
|
||||
"obsidian-halo-zip-test/images/commands-zh.png",
|
||||
"obsidian-halo-zip-test/images/commands-en.png",
|
||||
"obsidian-halo/images/settings-zh.png",
|
||||
"obsidian-halo/images/settings-en.png",
|
||||
"obsidian-halo/images/pat-en.png",
|
||||
"obsidian-halo/images/pat-zh.png",
|
||||
"copilot/copilot-conversations/分析@20260425_212055.md",
|
||||
"copilot/copilot-custom-prompts/halo.md",
|
||||
"Excalidraw/Drawing 2026-04-25 21.16.49.excalidraw.md",
|
||||
"博客/DeepSeek-V4全面解析.md",
|
||||
"博客/深入解析 Claude Code:Vibe Coding 时代的 AI 编程利器.md",
|
||||
"2026-04-03.md",
|
||||
"博客/articles/article-03-ml-learning-path.md",
|
||||
"博客/articles/article-02-python-efficiency.md",
|
||||
"博客/articles/article-01-ai-beginner-guide.md",
|
||||
"博客/视觉语言模型技术综述.md",
|
||||
"博客/大数据技术栈.md",
|
||||
"find-skills-0.1.0/SKILL.md",
|
||||
"小组会议/26.04.04/小组会议.md",
|
||||
"小组会议/26.03.21 - 副本/小组会议.md",
|
||||
"小组会议/26.03.21/小组会议.md",
|
||||
"小组会议/26.02.28/小组会议.md",
|
||||
"小组会议/25.10.26/小组成员基本信息/小组成员信息/王宇晗.md",
|
||||
"小组会议/25.10.26/小组成员基本信息/小组成员信息/彭依萍.md",
|
||||
"小组会议/25.10.26/小组成员基本信息/小组成员信息/赵帅尧.md",
|
||||
"小组会议/25.10.26/小组成员基本信息/职位安排.md",
|
||||
"小组会议/25.10.26/小组成员基本信息/小组成员信息/李俊杰.md",
|
||||
"小组会议/26.02.06/小组会议.md",
|
||||
"小组会议/26.02.05/小组会议.md",
|
||||
"小组会议/26.01.28/Gitee团队协作开发完整实操流程.md",
|
||||
"未命名.canvas"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user