Files
PaperClipAI/ui
DottaandPaperclip 05951f20ae fix(ui): collapse the sidebar atomically, ignoring the lingering hover (PAP-10676)
Clicking the collapse button switched to rail mode but the pointer was still over
the panel, so the peek logic immediately re-expanded it — the collapse only
"took" once the mouse moved away.

Fix in Layout's peek wiring:
- Track pointer-over-panel even while expanded (mouse enter/leave handlers are now
  always wired, but only open a peek when collapsed), so at the moment of collapse
  we know the pointer is still over the sidebar.
- On the expanded→collapsed transition, cancel any pending/active peek
  (clearPeekTimer + setPeeking(false)) and, when the pointer is still inside, set a
  suppress flag so the lingering hover can't re-open the peek. The flag is re-armed
  on the next genuine pointer-leave, so normal hover-to-peek still works afterwards.
- Focus-driven peek respects the same suppress flag.

Tests: added a Layout test that collapses while hovering and asserts the peek is
cancelled and does not re-open, plus a positive-control test proving a normal
collapsed-rail hover still opens the peek (so the suppression test is meaningful).
70 sidebar+layout tests pass; tsc clean.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-06-09 15:11:47 +00:00
..

@paperclipai/ui

Published static assets for the Paperclip board UI.

What gets published

The npm package contains the production build under dist/. It does not ship the UI source tree or workspace-only dependencies.

Storybook

Storybook config, stories, and fixtures live under ui/storybook/.

pnpm --filter @paperclipai/ui storybook
pnpm --filter @paperclipai/ui build-storybook

Typical use

Install the package, then serve or copy the built files from node_modules/@paperclipai/ui/dist.