2
0

🚸 Rewrite the markdown deserializer to improve br… (#1198)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Refactor**
- Updated markdown handling and serialization libraries for improved
performance and accuracy in text formatting.
- **New Features**
- Enhanced rich text and markdown conversion capabilities, providing
users with more reliable and seamless text formatting options.
- **Documentation**
- Added detailed documentation for markdown to rich text conversion and
vice versa, ensuring easier understanding and implementation for
developers.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
Baptiste Arnaud
2024-01-31 08:03:13 +01:00
committed by GitHub
parent 26872e2bac
commit ff9c4726cc
22 changed files with 1017 additions and 478 deletions

View File

@ -0,0 +1,17 @@
import { TElement, Value } from '@udecode/plate-common'
import { MdastNode, RemarkPluginOptions } from './types'
export const remarkTransformElement = <V extends Value>(
node: MdastNode,
lastLineNumber: number,
options: RemarkPluginOptions<V>
): TElement | TElement[] => {
const { elementRules } = options
const { type } = node
const elementRule = (elementRules as any)[type!]
if (!elementRule) return []
return elementRule.transform(node, lastLineNumber, options)
}