multica/apps/web/features/issues/components
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
..
pickers feat(agent): replace hard delete with archive/restore (#346) 2026-04-02 17:33:52 +08:00
agent-live-card.tsx feat(web): add skeleton loading, error toasts, and confirmation dialogs 2026-04-02 16:46:56 +08:00
batch-action-toolbar.tsx feat(web): add skeleton loading, error toasts, and confirmation dialogs 2026-04-02 16:46:56 +08:00
board-card.tsx feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
board-column.tsx feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
board-view.tsx feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
comment-card.tsx refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
comment-input.tsx refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
index.ts refactor(web): unify assignee dropdowns with ActorAvatar and shared AssigneePicker 2026-04-01 15:37:33 +08:00
issue-detail.tsx refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
issue-mention-card.tsx feat(issues): render issue mentions as rich cards with status icon 2026-03-31 16:19:32 +08:00
issues-header.tsx fix(web): unify header button text color across Issues and My Issues 2026-04-01 19:05:33 +08:00
issues-page.tsx feat(web): add skeleton loading, error toasts, and confirmation dialogs 2026-04-02 16:46:56 +08:00
list-row.tsx refactor(issues): extract hooks from issue-detail, eliminate dual source of truth 2026-03-31 13:09:17 +08:00
list-view.tsx feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
priority-icon.tsx feat(ui): restyle issue status and priority with colored badges 2026-03-31 03:26:43 +08:00
reply-input.tsx refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
status-icon.tsx feat(ui): restyle issue status and priority with colored badges 2026-03-31 03:26:43 +08:00