chore(widget): tests de la retención tras reordenar (#240)
维护者通常 1 天内回复
评估
这个 Issue 还没有评估数据。
描述
Contexto
Seguimiento de #240 (arreglo de #222). El comportamiento es correcto y está integrado; esta issue solo mejora sus tests. No es un bug.
Problema
-
Funciones sin lógica propia.
holdAfterReorderDrop,releaseOnStripLeaveycanPointerOpen(src/lib/anchor-panel.ts) envuelven un booleano (x => x,_ => false,h => !h), así que sus tests no pueden fallar. Los que comprueban la aridad (canPointerOpen.length,hoverPanel.length,clickPanel.length) y «never changes the panel state» (src/lib/anchor-panel.test.ts) no fijan ningún comportamiento. -
La lógica con bordes reales no tiene test. La comprobación de «dentro de la ventana» al soltar un reordenado está en línea en
src/Widget.tsx:1219:e.clientX >= 0 && e.clientY >= 0 && e.clientX < window.innerWidth && e.clientY < window.innerHeightUn error de
<frente a<=dejaría la retención activa sin que nada la libere, y el hover no volvería a abrir el panel hasta salir de la tira.
Propuesta
- Dejar la retención como un
useRef<boolean>enWidget.tsxy quitar las tres funciones envoltorio y sus tests. - Extraer
pointerInsideViewport(x, y, width, height)como función pura y cubrir los bordes en ambos ejes:0,-1,width - 1ywidth(y lo mismo conheight). - Mantener el test de
ProviderGaugesobre el enrutado demouseenteraonPointerEnter, que sí aporta.
Criterios
- Sin cambio de comportamiento: mismas condiciones de retención y liberación que #240.
npm test,npm run typecheckynpm run builden verde.
Fuera de alcance
Cambiar la regla de #222, el temporizador de 400 ms (REORDER_GUARD_MS) o el cableado de foco y clic.
- 主要语言
- TypeScript
- 星标
- 10
- 派生
- 2
- 平均合并
- 8 小时 30 分钟
- 30 天内合并 PR
- 119
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
egdev6/quorb 的其他 Issue
-
feat(alerts): avisos remotos de consumo y reinicio de límites可能已有人在做 @ludevdot 于 2 天前认领。 未关闭status:approved type:feature
egdev6/quorb#245 · 3 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
chore(wsl): seguimiento de la revisión de #239 (sesiones por entorno)可能已有人在做 @sosan 于 1 天前认领。 未关闭type:chore
难度 4/5 1-2 天 新手友好度 47/100
维护者通常 1 天内回复
-
Antigravity (agy CLI): not working on macOS — wrong log path and process detection可能已有人在做 @EzequielKoulaksezian 于 6 天前认领。 未关闭status:approved type:bug
egdev6/quorb#237 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
feat(linux): elegir el idioma desde el primer contacto con Quorb可能已有人在做 @SrStamm 于 3 天前认领。 未关闭odd status:approved type:feature
难度 4/5 3-5 天 新手友好度 18/100
egdev6/quorb#235 · 7 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
odd type:feature
难度 4/5 3-5 天 新手友好度 25/100
维护者通常 1 天内回复
相似的 Issue
-
难度 1/5 1-3 小时 新手友好度 88/100
danielw-sudo/agentuto#63 ·
维护者通常 1 天内回复
-
idea-scout idea:341
难度 2/5 1-3 小时 新手友好度 76/100
jeanibarz/agent-notebook#341 ·
维护者通常 1 天内回复
-
documentation good first issue roadmap
难度 1/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
type:bug
难度 2/5 1-3 小时 新手友好度 72/100
nightgauge/nightgauge#3077 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
LibreChat-AI/LibreChat#17915 ·
维护者通常 1 天内回复