multica/apps/web
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
..
app refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
components refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
features refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
hooks fix(upload): harden upload flow — sanitize filenames, refresh CF cookies, deduplicate handlers 2026-03-31 15:52:40 +08:00
lib refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
public feat(web): add about, changelog pages and fix landing header for light backgrounds 2026-04-01 05:16:24 +08:00
shared feat(agent): replace hard delete with archive/restore (#346) 2026-04-02 17:33:52 +08:00
test feat(agent): replace hard delete with archive/restore (#346) 2026-04-02 17:33:52 +08:00
components.json chore(ui): switch shadcn menuColor from inverted-translucent to default 2026-03-31 11:01:54 +08:00
next-env.d.ts chore(web): update next-env.d.ts routes path 2026-04-01 05:51:28 +08:00
next.config.ts feat(web): SEO optimization and auth flow improvements for landing pages 2026-04-01 16:54:11 +08:00
package.json refactor(editor): unify editor into features/editor with single markdown pipeline 2026-04-03 10:28:29 +08:00
postcss.config.mjs refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
proxy.ts feat(web): redirect logged-in users from / to /issues via server-side proxy 2026-04-01 18:20:57 +08:00
tsconfig.json refactor: remove unused monorepo tooling 2026-03-26 17:57:11 +08:00
vitest.config.ts feat: resizable sidebar, issue detail rewrite, package consolidation 2026-03-26 16:47:04 +08:00