Muse eb27e4ca2d fix(dropdown): 展开层改 Portal + fixed 定位,逃出弹窗 overflow 裁剪
弹窗(.modal 带 overflow-y:auto)里的下拉展开层是 absolute 定位,
会被弹窗滚动盒裁掉下半截(Git 同步设置里实测被遮挡)。展开层改经
Portal 挂到 body、按触发钮 rect 用 fixed 定位:下方空间不足时
向上翻,maxHeight 按可用空间夹取;窗口 resize 时关闭。
useDismiss 泛化为可传多个 ref(触发器与 Portal 菜单两棵子树都算内)。
CSS 相应去掉 .dropdown-menu 的 absolute 定位(几何改由内联给出)。
验证:vitest 124+2(新增翻转几何断言:贴底触发钮翻上展开、
Portal 落点不在组件容器内);无头 Chromium 实测弹窗内下拉菜单
完整落在视口内、8 项全显、已逃出弹窗 DOM。
2026-11-14 20:17:51 +08:00

new-markdown

Windows 桌面 Markdown 所见即所得编辑器(对标 Typora 的编辑体验,不复制其品牌与图标)。 Tauri 2 + React + TypeScript + Milkdown(ProseMirror)。

当前进度

阶段 0–6 已完成(自动化验证全绿),待 Windows 真机验收清单确认。 阶段 5:7 套文档主题、自定义 CSS、导出 HTML、打印/PDF、导入 HTML/Word,报告见 docs/09-stage5-report.md。 阶段 1:Tauri 桌面骨架 + 打开/编辑/保存全链路,报告见 docs/05-stage1-report.md §4 清单。

在 Windows 上运行桌面版:

npm install
npm run tauri dev   # 需 Rust + VS Build Tools + WebView2

浏览器调试 UI:npm run dev 后打开 http://localhost:1420(Web 降级模式,状态栏有标注)。

  • 技术选型报告:docs/01-tech-selection.md
  • 架构设计:docs/02-architecture.md
  • 阶段 0 验证报告(实测数据):docs/03-stage0-verification.md
  • UI/交互原型说明:docs/04-ui-prototype.md

运行阶段 0 原型

cd prototype
npm install
npm run dev     # 浏览器打开原型:编辑器 + 大纲 + 实时序列化输出
npm test        # 双向转换/撤销重做等 6 项自动化验收
npm run build   # 生产构建

开发纪律

分阶段开发,每阶段构建+测试+人工清单齐全后再进下一阶段; 编辑器新增语法支持必须先给往返稳定性测试加用例。

Description
No description provided
Readme 2.1 MiB
2026-11-14 12:39:34 +00:00
Languages
TypeScript 81.9%
Rust 10.3%
CSS 7.7%
HTML 0.1%