Skip to content

feat: emoji reactions, live preview, diff view, template preview - #647

Open
Helix-xi wants to merge 1 commit into
Stellar-split:mainfrom
Helix-xi:feature/issues-605-606-607-608
Open

feat: emoji reactions, live preview, diff view, template preview#647
Helix-xi wants to merge 1 commit into
Stellar-split:mainfrom
Helix-xi:feature/issues-605-606-607-608

Conversation

@Helix-xi

Copy link
Copy Markdown

Title:

feat: emoji reactions, live preview, diff view & template preview

Body:

Summary

This PR implements four features from the issue backlog across four components.


#608 — Emoji reaction picker in CommentSection

  • Each comment row now has a + button that opens a compact floating emoji picker (👍 ❤️ ✅ ❓)
  • Selecting an emoji adds a reaction chip with a count below the comment
  • Clicking an existing reaction the user already added removes it (toggle behaviour)
  • Reactions are persisted in localStorage and synced to the server via POST /api/invoices/[id]/comments/[commentId]/reactions

Closes #608


#607 — Live preview pane in CustomizationPanel

  • A InvoicePreviewCard renders alongside the settings form and updates in real time as the user
    changes title, accent colour, or message — no save required
  • Preview mimics the public invoice view: branded header, custom message, funding progress bar,
    and pay button all styled with the chosen accent colour
  • Side-by-side layout on desktop (lg+), stacked on mobile

Closes #607


#606 — Diff view in VersionHistory

  • Every history entry now has a Show diff / Hide diff toggle
  • The DiffPanel renders changed fields in a unified diff style: removed lines in red (),
    added lines in green (+), unchanged fields omitted
  • Covers: title, amount, recipients, due date, and notes (via generic old*/new* key patterns
    from the audit log)

Closes #606


#605 — Template preview before apply in TemplateManager

  • Hovering a template row reveals a Preview button; the dropdown selection also has a
    Preview button
  • Clicking Preview opens a TemplatePreviewModal with a read-only invoice card showing all
    template fields: recipients, amounts, currency, total, and branding
  • Apply Template in the modal confirms the action; Cancel / Escape returns to the
    template list with no changes made

Closes #605


Testing

Existing tests continue to pass. All changes are confined to the four target component files; no
new dependencies were introduced.

- Stellar-split#608 CommentSection: add emoji reaction picker (+) on each comment,
  reaction chips with counts, toggle-off by clicking own reaction,
  persisted to localStorage + synced to reactions API

- Stellar-split#607 CustomizationPanel: side-by-side live preview card that reflects
  logo/colour/message changes in real time without saving; stacks on
  mobile, side-by-side on desktop (lg+)

- Stellar-split#606 VersionHistory: Show diff toggle on each entry, DiffPanel renders
  removed fields in red and added fields in green; covers title, amount,
  recipients, due date, notes

- Stellar-split#605 TemplateManager: TemplatePreviewModal with read-only invoice card
  showing all template fields (recipients, amounts, currency, total);
  Preview button on each row and in the dropdown; Apply Template confirms,
  Cancel returns without changes
@drips-wave

drips-wave Bot commented Aug 28, 2026

Copy link
Copy Markdown

@Helix-xi Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@vercel

vercel Bot commented Aug 28, 2026

Copy link
Copy Markdown

@Helix-xi is attempting to deploy a commit to the kingsman-99's projects Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant