Files
PaperClipAI/ui
DottaandPaperclip 02012b84d7 Add document detail / review view UI (PAP-10568)
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>
2026-06-07 02:00:31 +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.