mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-11-05 03:51:54 +01:00
Builds the full document detail/review surface at /:co/documents/:id, the second slice of the Documents UI (PAP-10524). Reuses MarkdownBody, MarkdownEditor, DocumentAnnotationLayer and DocumentDiffModal; adds the review rail and the net-new SuggestionCard / SelectionToolbar. - DocumentDetail page + route: header (breadcrumb, title, status pill, type, owner chip, action row Edit/Suggest/History/Lock/Copy link/overflow, backlinks chips, rev/meta row), read body with annotation layer, edit body with MarkdownEditor, conflict banner on stale baseRevisionId, read-only / permission-denied / lock (self + other) states, desktop rail + mobile FAB and Sheet. - DocumentReviewRail: two tabs (Comments / Suggestions) with counts, Open/ Resolved/Stale/Orphaned chip filters, document-level overall comment card, collapsible orphan pin group, bottom Done reviewing CTA (gated; dialog is PAP-10570). - SuggestionCard (NEW): insert/delete/replace with CriticMarkup-style diff, discussion + reply, Accept/Reject(reason), Needs-rebase gate on stale baseRevisionId / drifted anchor. - SelectionToolbar (NEW): Comment / Suggest edit (Replace/Delete/Insert before/after) injected into DocumentAnnotationLayer via a new renderSelectionToolbar slot so caret positioning is reused. - documentReviewsApi client: review-index, review-comments, suggestions (create/comment/accept/reject). Suggestion treatment CSS tokens (§5.4). - Tests for SuggestionCard, SelectionToolbar, DocumentReviewRail, and the page (permission-denied, header/body/rail, read-only, lock). Storybook stories for UX sign-off. 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.