multica/apps/web/components/common
Naiyuan Qing 27e58d91af refactor(editor): unify editor into features/editor with single markdown pipeline
Replace three divergent data paths (Marked HTML loading, regex post-processing
saving, separate paste parsing) with one symmetric path through @tiptap/markdown.

Key changes:
- Create features/editor/ module with ContentEditor (unified edit+readonly)
  and TitleEditor, replacing components/common/ editor files
- Load content via contentType: 'markdown' instead of markdownToHtml() hack
- Save content via editor.getMarkdown() directly, no post-processing
- Merge RichTextEditor + ReadonlyEditor into single ContentEditor with
  editable prop
- Extract extensions into separate modules (mention, file-upload,
  markdown-paste, submit-shortcut, code-block-view)
- Extract shared preprocessMentionShortcodes to components/markdown/mentions.ts
- Add copyMarkdown utility for clipboard operations
- Upgrade all @tiptap packages from 3.20.5 to 3.22.1 (lexer isolation fix,
  HTML entity roundtrip fix, table alignment support)
- Delete markdownToHtml.ts, readonly-editor.tsx, and 10 old component files

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 10:28:29 +08:00
..
actor-avatar.tsx refactor(web): unify all avatar rendering with ActorAvatar 2026-04-01 16:58:43 +08:00
emoji-picker.tsx feat(reactions): add emoji reactions for comments and issue descriptions 2026-03-30 22:37:59 +08:00
file-upload-button.tsx fix(editor): unify image upload flow for paste and button 2026-04-02 18:02:28 +08:00
mention-hover-card.tsx feat(mentions): support @all to mention all workspace members 2026-04-01 20:58:33 +08:00
quick-emoji-picker.tsx feat(ui): editor UX improvements — lowlight, upload, emoji, comment editing 2026-03-31 18:37:53 +08:00
reaction-bar.tsx feat(ui): editor UX improvements — lowlight, upload, emoji, comment editing 2026-03-31 18:37:53 +08:00