Skip to content

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

Merged
Kingsman-99 merged 1 commit into
Stellar-split:mainfrom
Helix-xi:feature/issues-605-606-607-608
Aug 29, 2026
Merged

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

Conversation

@Helix-xi

Copy link
Copy Markdown
Contributor

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.

@Kingsman-99
Kingsman-99 merged commit 5504064 into Stellar-split:main Aug 29, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants