Skip to content

fix(预览): 优化LPW外层响应式宽度与图片Mermaid自适应并重构批注展示 - #5

Merged
xiaolfeng merged 4 commits into
masterfrom
featrue/frontend-updater
Sep 24, 2026
Merged

xiaolfeng merged 4 commits into
masterfrom
featrue/frontend-updater

Conversation

@xiaolfeng

Copy link
Copy Markdown
Owner

变更概述

本 PR 针对控制台前端与 LPW 预览模块进行了深度的架构重构与交互体验加固,主要包含以下核心工作:

  1. LPW 响应式纸张宽度与媒体块自适应:

    • 消除 LPW 纸张容器过往写死的固定宽度限制,纸张容器升级为 flex-1 w-full max-w-5xl,配合外层 @container/lpw 与动态外边距实现全端优雅流式排版。
    • 统一增强 image 与 mermaid 块宽度计算:页面顶层最宽情况下默认居中以 80% 黄金比例呈现,分栏容器(如 split、alternating 或 panel 左右区分)内自适应最大化(100%),同时支持传入具体百分比(如 60%)或固定像素。
    • 同步扩展 resources/lpw/schema/v1.1.json、TypeScript 契约 types.ts 与 Go 端 preview_lpw_spec.go 中 mermaid 块的 width 属性约束。
  2. 文档批注展示体系全面重构:

    • 大屏展开与中屏叠起:在 LG 及以上视口(≥ 1024px)下默认全量平铺展开;在 MD 视口(768px ~ 1023px)下保持紧凑叠起(Cluster)态以节省横向版面,点击后局部展开。
    • 移动端与中屏抽屉设计:在窄屏与中屏下(< 1024px),在右下角提供精美的微明风格悬浮胶囊按钮,点击可平滑呼出右侧抽屉式全览面板(Sheet),支持点击批注快速跳转定位正文对应锚点。
  3. 控制台体验优化与业务台账重构(前置演进提交合入):

    • 消除路由切换过渡动画阻塞与页面卡顿延迟。
    • 重构项目、LLM 双栏工作台与设置中心台账抽屉联动与在位编辑逻辑。

验证与质量保证

  • 单元测试:
    • @lumina/components:55 个测试套件,290 个用例全部通过(覆盖自适应宽度、断点展开/折叠、抽屉呼出等场景)。
    • 全 Monorepo 前端测试:pnpm -r test 跨包全绿。
  • 构建测试:
    • components、web 控制台、web-wiki 三端生产构建与 TypeScript 类型检查均 100% 成功。
  • 后端质量门禁:
    • make check:连续性预检、gofmt、go vet、go test -race 全量通过。

- 新增 Model 与 Provider 专属 Master-Detail 双栏工作台,彻底消灭大表单局促弹窗与遮罩
- 重构项目创建与编辑表单,移除硬编码路径强依赖,升级为 Tag 胶囊列表管理
- 项目抽屉支持查看概览与在位编辑双模式无缝切换,列表编辑按钮直接联动右侧抽屉
- 简化系统设置路由状态,移除冗余弹窗与键盘监听逻辑
- 重构 Pin、问答、预览、即时页面四大业务模块,对齐静烛台账与在位抽屉交互
- 收敛控制台设置中心,SettingsSidebar 统一纳管个人资料/密钥/空间并支持来源原路返回
- 根除 LLM 工作台新建阻断、Preview 跨空间表单残留及项目搜索上限等质量缺陷
- 修复即时页面服务端状态分页、版本切换指针及策略保存上下文丢弃问题
- 移除 ConsoleLayout 中阻塞路由挂载的 AnimatePresence mode="wait"

- 消除外层容器多余的 motion.div 包装与水平位移叠加

- 改由各子页面自身的交错动效接管入场,恢复即时响应体验
@xiaolfeng
xiaolfeng merged commit 2962647 into master Sep 24, 2026
2 checks passed
@xiaolfeng
xiaolfeng deleted the featrue/frontend-updater branch September 24, 2026 05:34
@xiaolfeng
xiaolfeng restored the featrue/frontend-updater branch September 24, 2026 05:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant