Commit graph

4020 commits

Author SHA1 Message Date
Jeffrey Chen
6419f5c7fb Ensure the API correctly returns an empty array, add deduplication logic, and remove redundant sorting steps when updating fields 2025-11-09 21:57:45 +08:00
Jeffrey Chen
f6217c0b50 Remove RemoveRecentDoc function and its calls from multiple files to streamline document handling 2025-11-09 21:57:45 +08:00
Jeffrey Chen
ddbcacfe81 GetDoc is solely responsible for retrieving document content and does not handle business logic 2025-11-09 21:57:45 +08:00
Jeffrey Chen
92a9214302 Update RecentDoc struct to make timestamp fields optional 2025-11-09 21:57:45 +08:00
Jeffrey Chen
fe87cf521a ♻️ Refactor recent documents handling 2025-11-09 21:57:45 +08:00
Daniel
80e9bee8bd
🎨 https://github.com/siyuan-note/siyuan/issues/16296
Signed-off-by: Daniel <845765@qq.com>
2025-11-09 10:54:11 +08:00
Daniel
0bea01ad3b
🎨 Add Include time switch to database creation time field and update time field https://github.com/siyuan-note/siyuan/issues/12091
Signed-off-by: Daniel <845765@qq.com>
2025-11-07 21:25:03 +08:00
Daniel
17c18d1c51
🎨 https://ld246.com/article/1762396950091
Signed-off-by: Daniel <845765@qq.com>
2025-11-06 20:51:31 +08:00
Jeffrey Chen
d14501178d
🎨 Backlink and backmention sort mode persistence (#16291)
fix https://github.com/siyuan-note/siyuan/issues/7764
2025-11-06 09:33:20 +08:00
Daniel
404068b91b
Database kanban view https://github.com/siyuan-note/siyuan/issues/8873
Signed-off-by: Daniel <845765@qq.com>
2025-11-05 11:22:42 +08:00
Daniel
8ada34f357
Database kanban view https://github.com/siyuan-note/siyuan/issues/8873
Signed-off-by: Daniel <845765@qq.com>
2025-11-05 10:27:45 +08:00
Daniel
bdff7a74c1
Database kanban view https://github.com/siyuan-note/siyuan/issues/8873
Signed-off-by: Daniel <845765@qq.com>
2025-11-04 21:46:20 +08:00
NateSmyth
3525c2b5d9
🎨 Fix kanban attrView followup (#16277)
* fix: more robust fix for kanban empty groups error
- followup for handling of edge cases that cause "Cannot read properties of undefined (reading 'forEach')" error in renderKanban
- always apply preferred group key logic whenever kanban has an empty group key

* 🎨 Clean code

---------

Co-authored-by: D <845765@qq.com>
2025-11-04 12:31:59 +08:00
Daniel
d4c46ebaa2
Database kanban view https://github.com/siyuan-note/siyuan/issues/8873
Signed-off-by: Daniel <845765@qq.com>
2025-11-04 11:07:42 +08:00
NateSmyth
c72f2b0167
🐛 setAttributesViewGroup timing error (#16275)
* fix: "Cannot read properties of undefined (reading 'forEach')" when creating kanban view
- fixed error when `setAttributeViewGroup()` tries to access  `attrView.Views` before kanban view is added

* fix: "Failed to execute 'json' on 'Response': Unexpected end of JSON input" when converting to kanban view
- fixed error where `ChangeAttrViewLayout()` generates groups before new layout type is set, causing data structure mismatch
2025-11-04 10:01:31 +08:00
Daniel
f5a1309481
🎨 https://github.com/siyuan-note/siyuan/pull/16268
Signed-off-by: Daniel <845765@qq.com>
2025-11-03 11:14:58 +08:00
Jeffrey Chen
15674d67f7
🐛 Fix path retrieval in CreateWithMarkdown function (#16268)
fix https://github.com/siyuan-note/siyuan/issues/16026
2025-11-03 11:02:38 +08:00
Daniel
654020ff7d
🎨 Supports converting relative path hyperlinks into document block references after importing Markdown https://github.com/siyuan-note/siyuan/issues/13817
Signed-off-by: Daniel <845765@qq.com>
2025-11-01 16:57:43 +08:00
Daniel
c2157ca060
🎨 Supports converting relative path hyperlinks into document block references after importing Markdown https://github.com/siyuan-note/siyuan/issues/13817
Signed-off-by: Daniel <845765@qq.com>
2025-10-31 19:14:15 +08:00
Daniel
b75c824607
🎨 Supports converting relative path hyperlinks into document block references after importing Markdown https://github.com/siyuan-note/siyuan/issues/13817
Signed-off-by: Daniel <845765@qq.com>
2025-10-31 17:42:36 +08:00
Jeffrey Chen
d76c63a456
🐛 Reset recent-doc.json on unmarshal failure (#16251) 2025-10-31 10:12:56 +08:00
Daniel
1c952be716
🎨 https://github.com/siyuan-note/siyuan/issues/16233 https://github.com/siyuan-note/siyuan/issues/16121
Signed-off-by: Daniel <845765@qq.com>
2025-10-29 16:10:40 +08:00
Daniel
5e85d895b3
🎨 https://github.com/siyuan-note/siyuan/issues/16233 https://github.com/siyuan-note/siyuan/issues/16121
Signed-off-by: Daniel <845765@qq.com>
2025-10-29 16:01:35 +08:00
Daniel
e5f3fc5e51
🎨 https://github.com/siyuan-note/siyuan/issues/16233 https://github.com/siyuan-note/siyuan/issues/16121
Signed-off-by: Daniel <845765@qq.com>
2025-10-29 16:01:35 +08:00
Jeffrey Chen
4c2684d11d
🧑‍💻 Add internal kernel API /api/block/getBlockDOMWithEmbed and /api/block/getBlockDOMsWithEmbed (#16237)
* 🎨 Add internal kernel API `/api/block/getBlockDOMWithEmbed` and `/api/block/getBlockDOMsWithEmbed`

fix https://github.com/siyuan-note/siyuan/issues/16021

* 🎨 Add internal kernel API `/api/block/getBlockDOMWithEmbed` and `/api/block/getBlockDOMsWithEmbed`

fix https://github.com/siyuan-note/siyuan/issues/16021
2025-10-29 15:27:19 +08:00
Daniel
15fc11e600
🎨 https://github.com/siyuan-note/siyuan/issues/16233 https://github.com/siyuan-note/siyuan/issues/16121
Signed-off-by: Daniel <845765@qq.com>
2025-10-29 10:43:17 +08:00
Daniel
fc4cadfd58
🎨 https://github.com/siyuan-note/siyuan/issues/16206
Signed-off-by: Daniel <845765@qq.com>
2025-10-28 20:44:19 +08:00
Daniel
2567526672
🎨 Improve detection of duplicate insertion of assets https://github.com/siyuan-note/siyuan/issues/16220
Signed-off-by: Daniel <845765@qq.com>
2025-10-28 11:01:53 +08:00
Jeffrey Chen
90a447f914
🎨 Improve exporting document HTML (#16219)
* 🎨 The browser-side supports exporting document HTML

fix https://github.com/siyuan-note/siyuan/issues/16213

* 修复导出 HTML 时引入资源没有使用相对路径,修复文档导出 HTML/PDF 时缺失图标

fix https://github.com/siyuan-note/siyuan/issues/16217

fix https://github.com/siyuan-note/siyuan/issues/16216 01

* 修复文档导出 HTML/PDF 时冗余图标

fix https://github.com/siyuan-note/siyuan/issues/16216 02
2025-10-28 09:28:56 +08:00
Jeffrey Chen
45381d2575
🎨 Improve embedding block exports (#16205)
fix https://github.com/siyuan-note/siyuan/issues/16200
2025-10-26 18:45:14 +08:00
Daniel
957a928959
🎨 https://github.com/siyuan-note/siyuan/issues/16156
Signed-off-by: Daniel <845765@qq.com>
2025-10-25 17:24:57 +08:00
Daniel
a8f56e55e3
🎨 Clean code
Signed-off-by: Daniel <845765@qq.com>
2025-10-25 17:24:56 +08:00
Daniel
994bdc06a2
🎨 Improve Recent documents https://github.com/siyuan-note/siyuan/pull/15824
Signed-off-by: Daniel <845765@qq.com>
2025-10-24 11:41:36 +08:00
Daniel
3aaec151a4
🎨 Clean code
Signed-off-by: Daniel <845765@qq.com>
2025-10-24 11:29:49 +08:00
Achuan-2
d9e0c56a47
Improve Recent documents (#15824)
*  Improve Recent documents
基于文档最近浏览时间进行排序

*  支持显示最近关闭文档

*  支持显示最近关闭文档

*  支持显示最近关闭文档

*  支持显示最近关闭文档

*  支持显示最近关闭文档

*  支持显示最近关闭文档

* 支持Ctrl+Shift+T打开最近关闭的文档

* 🎨 clean code

* 🔥 移除表格插入行/列的默认快捷键

*  最近文档支持显示最近修改文档

* 🎨

*  最近文档支持查看最近打开

* 🎨

* 

* Update win-build.bat
2025-10-24 11:12:14 +08:00
Daniel
2815a744d5
🎨 The plugin switch status is not synchronized https://github.com/siyuan-note/siyuan/issues/16155
Signed-off-by: Daniel <845765@qq.com>
2025-10-23 21:51:50 +08:00
Daniel
bb8b307c2e
🐛 The plugin switch status is not synchronized https://github.com/siyuan-note/siyuan/issues/16155
Signed-off-by: Daniel <845765@qq.com>
2025-10-23 17:10:50 +08:00
Daniel
e315fd377e
🐛 The plugin switch status is not synchronized https://github.com/siyuan-note/siyuan/issues/16155
Signed-off-by: Daniel <845765@qq.com>
2025-10-23 17:09:43 +08:00
Daniel
ddfc1cbd66
🎨 Improve FSRS weight initialization https://github.com/siyuan-note/siyuan/issues/16181
Signed-off-by: Daniel <845765@qq.com>
2025-10-22 22:08:38 +08:00
Daniel
767aae6b71
🎨 Improve fold heading editing https://github.com/siyuan-note/siyuan/issues/16113 03
Signed-off-by: Daniel <845765@qq.com>
2025-10-22 18:36:45 +08:00
Daniel
8eb0d04393
🐛 The plugin switch status is not synchronized https://github.com/siyuan-note/siyuan/issues/16155
Signed-off-by: Daniel <845765@qq.com>
2025-10-22 16:25:23 +08:00
Daniel
b91f2cb3ad
🎨 Improve IFrame handling for exporting HTML/PDF/Image https://github.com/siyuan-note/siyuan/issues/16158 https://github.com/siyuan-note/siyuan/issues/4035
Signed-off-by: Daniel <845765@qq.com>
2025-10-21 17:03:24 +08:00
Daniel
0ffa864c8f
🎨 https://github.com/siyuan-note/siyuan/issues/16149
Signed-off-by: Daniel <845765@qq.com>
2025-10-19 09:46:55 +08:00
Daniel
785344e43c
🎨 https://github.com/siyuan-note/siyuan/issues/16111
Signed-off-by: Daniel <845765@qq.com>
2025-10-16 11:16:09 +08:00
Daniel
1451dbdeeb
🎨 https://github.com/siyuan-note/siyuan/issues/16092
Signed-off-by: Daniel <845765@qq.com>
2025-10-15 10:50:49 +08:00
Daniel
9d9c230577
🎨 https://github.com/siyuan-note/siyuan/issues/16092
Signed-off-by: Daniel <845765@qq.com>
2025-10-15 10:36:30 +08:00
Achuan-2
7545c2517f
Improve the outline panel (#15814)
*  实现大纲持久化
- 添加折叠状态变化的实时保存功能
- 在文档更新时恢复折叠状态
- 保存拖拽前的折叠状态并在拖拽后恢复
- 更新本地存储结构以支持折叠状态

* 🎨 clean code

*  在`data/storage`文件夹下创建`outline/${docID}.json`文件,存储标题outline展开信息

*  alt click折叠/展开统计标题

* 添加层级控制功能
- 新增层级控制滑条,允许用户展开指定层级

* 🌐 添加多语言支持的展开层级功能

*  f添加层级重置显示功能
- 新增 resetLevelDisplay 方法以重置层级显示状态
- 更新层级控制的初始化逻辑,默认不显示层级
- 在文档切换时重置层级显示状态

* 优化层级控制功能
- 添加用户主动层级控制标记
- 修改层级显示重置逻辑,仅在非用户操作时重置
- 更新层级控制滑条的点击事件处理

* ♻️ 重构大纲存储逻辑
- 合并大纲存储为单一文件 outline.json

* ♻️ outline.json 单行存储

* ♻️ outline.json参考recent-doc.json,只存储前1000个文档信息,每次新增信息会把数据放在最前面

* ♻️单行存储json

* ♻️ 增加outline.json存储限制至2000个

*  新增`保持当前标题展开`按钮,`保持全部展开`改为`全部展开`按钮

*  保持当前标题展开优化
- 超过两级折叠,也能都展开
- 如果父节点折叠,展开时自动折叠兄弟节点,只展开当前节点路径,如果父节点是展开状态,则不影响兄弟节点折叠状态

* 🔥 移除层级文本

*  右键点击toggle时展开所有子标题

*  右键click点击折叠图标,会折叠/展开所有子标题

*  大纲支持筛选功能

*  feat(大纲): 优化筛选功能以显示所有子标题
- 添加 showAllDescendants 函数以显示所有子标题
- 修改 processUL 函数以在父标题命中时显示所有子标题
- 确保未命中的子标题隐藏

*  优化大纲筛选

- 如果标题命中筛选,这个标题的所有父标题展开,以显示出这个标题位置
- 如果父标题命中筛选,子项都没有命中筛选,则折叠全部子项(依然可以展开显示)
- 如果父标题命中筛选,子项也有命中筛选,则展开命中的子项,其他无关子项隐藏

* 💄 展开层级改为按钮,原先的圆点样式碍眼

* 💄 展开层级改为按钮,原先的圆点样式碍眼

* 💄 style(菜单): 优化展开层级菜单的样式和位置
- 添加图标以增强可视化
- 调整菜单弹出位置以改善用户体验

* ♻️ refactor(大纲): 优化标题级别获取逻辑
- 调整展开到指定层级的逻辑,使用标题级别进行判断

* 🎨

*  feat(大纲): 添加右键菜单功能
- 实现右键点击标题时显示上下文菜单
- 增加标题升级、降级、插入、删除等操作
- 基于标题级别展开/折叠同级标题

*  feat(大纲): 添加子标题功能
- 在右键菜单中添加“添加子标题”选项
- 实现子标题的添加逻辑,支持最大级别为H6
- 使用当前标题作为父标题,插入新子标题

*  feat(大纲): "添加子标题"确保父标题展开状态

*  feat(大纲): 使用expandIds方式保存父标题展开状态
- 确保父标题保持展开状态
- 保存展开状态到持久化存储
- 移除冗余的状态保存逻辑

*  feat(大纲): 调整右键菜单顺序,将“全部折叠”功能移至“全部展开”之后

* 🌐 i18n optimization
2025-10-15 10:01:47 +08:00
Daniel
fae3323182
🎨 https://github.com/siyuan-note/siyuan/issues/16089
Signed-off-by: Daniel <845765@qq.com>
2025-10-14 17:07:56 +08:00
Daniel
aad5b61a23
🎨 Improve fold heading editing https://github.com/siyuan-note/siyuan/issues/15989
Signed-off-by: Daniel <845765@qq.com>
2025-10-13 18:12:17 +08:00
Daniel
6d8949e0c1
🎨 Improve fold heading editing https://github.com/siyuan-note/siyuan/issues/15989
Signed-off-by: Daniel <845765@qq.com>
2025-10-13 17:38:50 +08:00