siyuan/kernel
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
..
api Improve the outline panel (#15814) 2025-10-15 10:01:47 +08:00
av 🎨 https://github.com/siyuan-note/siyuan/issues/16030 2025-10-11 16:46:34 +08:00
bazaar 🧑‍💻 Add field disabledInPublish to the marketplace package metadata to indicate whether it is disabled in the publishing service https://github.com/siyuan-note/siyuan/issues/11730 2025-09-04 10:29:58 +08:00
cache ⬆️ Upgrade kernel deps 2025-04-25 12:21:24 +08:00
cmd 🎨 Update slogan Refactor your thinking https://github.com/siyuan-note/siyuan/issues/8608 2023-06-24 20:39:55 +08:00
conf 🎨 The embed block of a heading supports hiding the heading itself 2025-09-25 16:54:01 +08:00
filesys 🎨 Refresh the data in the interface after moving the document https://github.com/siyuan-note/siyuan/issues/15762 2025-09-10 21:39:14 +08:00
harmony 🎨 Support opening assets through other apps on HarmonyOS NEXT https://github.com/siyuan-note/siyuan/issues/15691 2025-08-27 11:25:20 +08:00
job 🎨 Improve the status bar index creation information prompt https://github.com/siyuan-note/siyuan/issues/15390 2025-07-30 15:46:09 +08:00
mobile 🐛 PDF files with too long file names cannot generate annotated images https://github.com/siyuan-note/siyuan/issues/15739 https://github.com/siyuan-note/siyuan/issues/10666 2025-09-03 17:37:27 +08:00
model Improve the outline panel (#15814) 2025-10-15 10:01:47 +08:00
resource ❤️ 完整开源界面和内核 https://github.com/siyuan-note/siyuan/issues/5013 2022-05-26 15:18:53 +08:00
search 🎨 Improve tag escaping 2025-04-23 22:17:06 +08:00
server 🎨 Add cookie-based auth in publish proxy (#15692) 2025-08-28 16:20:12 +08:00
sql 🎨 Add Default fill specific time switch to database date field https://github.com/siyuan-note/siyuan/issues/12089 2025-09-25 21:08:15 +08:00
task ♻️ Refactor push reload filetree, tag and protyle 2025-04-14 22:03:31 +08:00
testdata 🎨 Support searching PDF asset content https://github.com/siyuan-note/siyuan/pull/8985 2023-08-17 11:58:54 +08:00
treenode 🎨 Improve export of empty documents with subdocuments https://github.com/siyuan-note/siyuan/issues/16040 2025-10-09 22:48:22 +08:00
util 🔖 Release v3.3.5 2025-10-14 11:30:04 +08:00
entrypoint.sh 🎨 Support SIYUAN_WORKSPACE_PATH in Docker (#14286) 2025-03-05 17:24:27 +08:00
go.mod ⬆️ Upgrade lute 2025-10-13 12:04:24 +08:00
go.sum ⬆️ Upgrade lute 2025-10-13 12:04:24 +08:00
main.go Improve system font loading https://github.com/siyuan-note/siyuan/issues/13356 2024-12-05 09:01:51 +08:00
versioninfo.json 🎨 Improve kernel program meta props 2025-10-04 14:15:03 +08:00