mirror of
https://github.com/vxcontrol/pentagi.git
synced 2026-10-29 18:16:01 +00:00
Replace the unified rich editor's markdown engine: drop the community tiptap-markdown (markdown-it parse + prosemirror-markdown serialize) and our 5 prosemirror-internal monkey-patch extensions for the official @tiptap/markdown (marked-based MarkdownManager). The consumer moves to the new API (editor.getMarkdown() / contentType:'markdown' / markdown.parse). editor-markdown.ts adds three small, supported-API customizations: - a private HTML-neutralized marked instance so literal <xml-tags> survive (marked otherwise swallows real-HTML-element names like <input>); - FaithfulMarkdownText overrides MarkdownManager.encodeTextForMarkdown to drop entity-encoding and over-escaping of literal punctuation; - MarkdownTable wraps renderTableToMarkdown to escape cell pipes (#7884). Verified: tsc, 747 vitest (rewritten extension + 39-prompt corpus tests), lint, build; live on the dev stand — knowledge tables render and resize, prompt <tags> stay literal (124 tag + 116 variable highlights, no entity-encoding), console clean. Known accepted bug, pinned by a test (marked parser, 0 corpus impact): a code block nested ordered-list > bullet-sublist > code is dropped on parse. Repro recorded for an upstream report. Folds in the in-progress unified-editor work it depends on: knowledge Plain/Visual toggle, settings-prompt and template editor wiring, the CodeMirror removal, and the editor table/tag/variable styles. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
33 lines
825 B
JSON
33 lines
825 B
JSON
{
|
|
"compilerOptions": {
|
|
/* Base Options: */
|
|
"esModuleInterop": true,
|
|
"skipLibCheck": true,
|
|
"target": "es2022",
|
|
"allowJs": true,
|
|
"resolveJsonModule": true,
|
|
"moduleDetection": "force",
|
|
"isolatedModules": true,
|
|
"verbatimModuleSyntax": true,
|
|
|
|
/* Strictness */
|
|
"strict": true,
|
|
"noUncheckedIndexedAccess": true,
|
|
"noImplicitOverride": true,
|
|
|
|
/* If NOT transpiling with TypeScript: */
|
|
"module": "preserve",
|
|
"noEmit": true,
|
|
|
|
/* If your code runs in the DOM: */
|
|
"lib": ["es2023", "dom", "dom.iterable"],
|
|
"jsx": "react-jsx",
|
|
|
|
"paths": {
|
|
"@/*": ["./src/*"]
|
|
}
|
|
},
|
|
"include": ["src", "types/**/*.d.ts"],
|
|
"exclude": ["src/**/*-corpus.test.ts"]
|
|
}
|