diff --git a/backlog/tasks/back-208 - Add-paste-as-markdown-support-in-Web-UI.md b/backlog/tasks/back-208 - Add-paste-as-markdown-support-in-Web-UI.md index 3c4ce38aa..3f0c5a700 100644 --- a/backlog/tasks/back-208 - Add-paste-as-markdown-support-in-Web-UI.md +++ b/backlog/tasks/back-208 - Add-paste-as-markdown-support-in-Web-UI.md @@ -1,8 +1,9 @@ --- id: BACK-208 title: Add paste-as-markdown support in Web UI -status: To Do -assignee: [] +status: Done +assignee: + - '@kimi' created_date: '2025-07-26' labels: - web-ui @@ -14,17 +15,152 @@ priority: medium ## Description -Implement automatic conversion of rich text content to markdown when pasting into task and document editors, allowing users to seamlessly paste content from Word, Google Docs, web pages, and other sources while maintaining proper markdown formatting +Implement automatic conversion of rich text content to markdown when pasting into task and document editors, allowing users to seamlessly paste content from Word, Google Docs, web pages, and other sources while maintaining proper markdown formatting. + +**Phase 1 (Done):** Text, tables, lists, bold/italic/underline, links. +**Phase 2 (Done):** Images — extract and save to `backlog/assets`, generate `![alt](/assets/...)` links. ## Acceptance Criteria -- [ ] Rich text content pasted into task edit fields is automatically converted to markdown -- [ ] Rich text content pasted into document edit pages is automatically converted to markdown -- [ ] Code blocks maintain proper formatting and syntax highlighting indicators -- [ ] Lists (ordered and unordered) are correctly converted to markdown syntax -- [ ] Links and formatting (bold, italic) are preserved in markdown format -- [ ] Tables are converted to markdown table syntax -- [ ] Smart paste detection only converts when rich text is detected (plain text pastes normally) -- [ ] Conversion works across major browsers (Chrome, Firefox, Safari, Edge) -- [ ] Users can still paste plain text without conversion when needed -- [ ] All existing paste functionality remains intact for non-rich text content +- [x] #1 Rich text content pasted into task edit fields is automatically converted to markdown +- [x] #2 Rich text content pasted into document edit pages is automatically converted to markdown +- [x] #3 Code blocks maintain proper formatting and syntax highlighting indicators +- [x] #4 Lists (ordered and unordered) are correctly converted to markdown syntax +- [x] #5 Links and formatting (bold, italic) are preserved in markdown format +- [x] #6 Tables are converted to markdown table syntax +- [x] #7 Smart paste detection only converts when rich text is detected (plain text pastes normally) +- [x] #8 Conversion works across major browsers (Chrome, Firefox, Safari, Edge) +- [x] #9 Users can still paste plain text without conversion when needed +- [x] #10 All existing paste functionality remains intact for non-rich text content + +## Implementation Notes + + + +### Phase 1 — Text, Tables, Lists, Formatting + +**Architecture** +- `PasteAwareMDEditor` — wrapper around `@uiw/react-md-editor` that intercepts `onPaste` on the underlying `