Skip to content

feat: add GFM tables, strikethrough, task lists to MarkdownRenderer (#504)#629

Open
omonxooo-commits wants to merge 2 commits into
rinafcode:mainfrom
omonxooo-commits:feat/help-documentation-request-batching-clean
Open

feat: add GFM tables, strikethrough, task lists to MarkdownRenderer (#504)#629
omonxooo-commits wants to merge 2 commits into
rinafcode:mainfrom
omonxooo-commits:feat/help-documentation-request-batching-clean

Conversation

@omonxooo-commits
Copy link
Copy Markdown
Contributor

Summary

Adds GitHub Flavored Markdown (GFM) features to the existing MarkdownRenderer as requested in issue #504.

Changes

src/components/shared/MarkdownRenderer.tsx

  • Tables — pipe-style GFM tables rendered as <table><thead><tbody>
  • Strikethrough~~text~~<del>text</del>
  • Task lists- [ ] todo / - [x] done → checkbox list items with <ul class="task-list">
  • Updated DOMPurify allowlist to include del, table, thead, tbody, tr, th, td, input and their attributes

src/components/shared/MarkdownRenderer.test.ts

  • 8 new tests covering all three GFM features (29 total, all passing ✅)

Testing

✓ src/components/shared/MarkdownRenderer.test.ts (29 tests)

No regressions — all 21 existing tests still pass.

Closes #504

- Add createBatcher utility (src/lib/api/batch.ts) that collects
  concurrent requests within a debounce window and sends them as a
  single batched POST, reducing network round-trips

- Add POST /api/help edge route that accepts BatchRequest[] and returns
  BatchResponse<HelpArticle>[] in one response; GET convenience endpoint
  also included

- Add useHelpDocumentation hook backed by a shared module-level batcher
  so multiple components mounting simultaneously share one network call

- Add HelpDocumentation component with collapsible articles, skeleton
  loading, error/retry UI, accessible markup, lucide icons, dark mode

- Add 11 unit tests covering batcher and hook (all passing)

Closes rinafcode#496
…inafcode#504)

- Tables: pipe-style GFM tables with thead/tbody
- Strikethrough: ~~text~~ → <del>text</del>
- Task lists: - [ ] / - [x] → checkbox list items
- Update DOMPurify allowlist to include new tags/attrs
- Add 8 new tests (29 total, all passing)

Closes rinafcode#504
@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 30, 2026

@omonxooo-commits 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

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test Markdown Renderer : Feature Request (Issue 106)

1 participant