chore(backlog): 记录 g214 完成

This commit is contained in:
HIsheR
2026-10-26 19:54:56 +08:00
parent a607a40d19
commit 756a7e899d
2 changed files with 10 additions and 0 deletions
+9
View File
@@ -2312,6 +2312,15 @@
"status": "done", "status": "done",
"notes": "timePicker.ts 113 行:pad 提为模块级纯函数(避免 const TDZ),commit 只在值变化时派发 onChange;列内导航 navigate 复用于时/分两列(↑↓ 环形、Home/End 直达);reveal 用 offsetTop 算 scrollTop 让激活格落到列中部,不走 scrollIntoView 以免带动页面;复用 overlay 的 bindOutside / pushOverlay 与 position 的 flip;ui.css 新增 .ua-timepicker-* 段全部消费令牌(control-h-md / radius-md / shadow-2 / duration-fast / z-dropdown / tint-accent),带 prefers-reduced-motion 兜底,audit:visual 十一类仍为 0;manifest exports 72 条 + docs.components 70 项(props 与 types 双向过 verify),demo 增 sec-timepicker(受控 15 分钟步长 + 禁用态 + 当前值回显),README 清单与分组补名,sync-counts 三处计数 69→70,docs 重生成", "notes": "timePicker.ts 113 行:pad 提为模块级纯函数(避免 const TDZ),commit 只在值变化时派发 onChange;列内导航 navigate 复用于时/分两列(↑↓ 环形、Home/End 直达);reveal 用 offsetTop 算 scrollTop 让激活格落到列中部,不走 scrollIntoView 以免带动页面;复用 overlay 的 bindOutside / pushOverlay 与 position 的 flip;ui.css 新增 .ua-timepicker-* 段全部消费令牌(control-h-md / radius-md / shadow-2 / duration-fast / z-dropdown / tint-accent),带 prefers-reduced-motion 兜底,audit:visual 十一类仍为 0;manifest exports 72 条 + docs.components 70 项(props 与 types 双向过 verify),demo 增 sec-timepicker(受控 15 分钟步长 + 禁用态 + 当前值回显),README 清单与分组补名,sync-counts 三处计数 69→70,docs 重生成",
"domain": "new" "domain": "new"
},
{
"id": "g214",
"title": "浮层入场动效收敛到单一 keyframes",
"motivation": "七个弹层(级联 / 自动补全 / 日期 / 颜色 / 多选 / @提及 / 树选择)各复制了一份「淡入 + 上移 4px」的 keyframes,名字各异、缓动一半写成裸 ease;更糟的是弹层翻到触发器上方时动画仍自上而下,方向与位置相反,能明显看出「从错的那边滑进来」。",
"acceptance": "删除 7 份重复 keyframes,统一为 ua-pop-drop(自上而下 4px)与 ua-pop-rise(自下而上,供翻转态);引用处时长与缓动全部走 --ua-duration-fast / --ua-ease-out;.is-flip 的五个弹层补 animation-name 覆盖;ui.css 内不再出现 *.ua-*-in 自造入场动画;npm run audit:visual 各类计数不增;manifest intro 补一条「新弹层怎么写入场」的约定并修正组件数;npm run check 全绿。",
"status": "done",
"notes": "ui.css 删除 ua-cascader-in / ua-ac-in / ua-dp-in / ua-cp-in / ua-ms-in / ua-mentions-in / ua-treeselect-in 七份 keyframes(它们内容完全相同:淡入 + translateY(-4px)),新增 @keyframes ua-pop-drop(-4px 淡入)与 ua-pop-rise(+4px,供翻转态),7 处引用统一为 animation: ua-pop-drop var(--ua-duration-fast) var(--ua-ease-out) both(原先 5 处裸 ease、2 处 --ua-ease 且缺 both);末尾补 5 条 .is-flip 的 animation-name 覆盖(cascader / autocomplete / datepicker / colorpicker / multiselect,特异性 0,3,0 稳压 0,2,0);reduced-motion 各块原样保留;manifest intro 修正「28 个 DOM 组件」陈旧计数并补「新弹层怎么写入场、为什么不要自造 keyframes」;audit:visual 十一类维持 0",
"domain": "visual"
} }
] ]
} }
+1
View File
@@ -258,3 +258,4 @@
{"ts":"2026-10-26T19:49:12+08:00","id":"g211","result":"done","commit":"fd2e951","summary":"verify 新增 checkTokenParity:tokens.json color 键折算成 --ua-color-* 后与 tokens.css 双向查漏,并逐项比对亮/暗值;负向自检(改值、删键)均能报错点名变量"} {"ts":"2026-10-26T19:49:12+08:00","id":"g211","result":"done","commit":"fd2e951","summary":"verify 新增 checkTokenParity:tokens.json color 键折算成 --ua-color-* 后与 tokens.css 双向查漏,并逐项比对亮/暗值;负向自检(改值、删键)均能报错点名变量"}
{"ts":"2026-10-26T19:50:43+08:00","id":"g212","result":"done","commit":"6ccc341","summary":"tabs 激活页签自动回拉:溢出时只滚 .ua-tabs-head、就近对齐留 8px 边、已可见不动手、减弱动效直接跳位;demo 增八个页签窄容器演示"} {"ts":"2026-10-26T19:50:43+08:00","id":"g212","result":"done","commit":"6ccc341","summary":"tabs 激活页签自动回拉:溢出时只滚 .ua-tabs-head、就近对齐留 8px 边、已可见不动手、减弱动效直接跳位;demo 增八个页签窄容器演示"}
{"ts":"2026-10-26T19:53:33+08:00","id":"g213","result":"done","commit":"3505449","summary":"新增 timePicker(70 个组件):时 / 分两列弹层,HH:mm 双向绑定、minuteStep 可配、激活格居中滚动、列内 ↑↓/Home/End 导航,走 Esc 栈与 flip 翻转"} {"ts":"2026-10-26T19:53:33+08:00","id":"g213","result":"done","commit":"3505449","summary":"新增 timePicker(70 个组件):时 / 分两列弹层,HH:mm 双向绑定、minuteStep 可配、激活格居中滚动、列内 ↑↓/Home/End 导航,走 Esc 栈与 flip 翻转"}
{"ts":"2026-10-26T19:54:55+08:00","id":"g214","result":"done","commit":"a607a40","summary":"七个弹层的 7 份重复入场 keyframes 收敛为 ua-pop-drop / ua-pop-rise 两个,时长与缓动全走令牌,五个 .is-flip 弹层补方向覆盖(翻转后不再朝反方向滑入)"}