mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-23 09:07:46 +02:00
The Phase 3 virtualizer (PAP-2645) used useWindowVirtualizer, but on the real issue page the chat lives inside `<main id="main-content" overflow-auto>`. Window scroll never moves on desktop, so the virtualizer only ever mounted the first 7 rows and the chat area went blank past the first viewport. Detect the actual scroll container at mount via DOM walk and rekey the inner virtualizer to use element-mode observers/scroll-fn when an overflow ancestor exists; fall back to window mode for mobile and the auth-free perf fixture, where the document scrolls. Adds a regression test that mounts IssueChatThread inside an overflow-auto ancestor and asserts jump-to-latest drives that element's scrollTo, not window.scrollTo. Co-Authored-By: Paperclip <noreply@paperclip.ing>
@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.