import {CustomListItemNode} from "./custom-list-item";
import {CustomTableCellNode} from "./custom-table-cell";
import {CustomTableRowNode} from "./custom-table-row";
+import {CustomHeadingNode} from "./custom-heading";
+import {CustomQuoteNode} from "./custom-quote";
+import {CustomListNode} from "./custom-list";
/**
* Load the nodes for lexical.
*/
export function getNodesForPageEditor(): (KlassConstructor<typeof LexicalNode> | LexicalNodeReplacement)[] {
return [
- CalloutNode, // Todo - Create custom
- HeadingNode, // Todo - Create custom
- QuoteNode, // Todo - Create custom
- ListNode, // Todo - Create custom
- CustomListItemNode,
+ CalloutNode,
+ CustomHeadingNode,
+ CustomQuoteNode,
+ CustomListNode,
+ CustomListItemNode, // TODO - Alignment?
CustomTableNode,
CustomTableRowNode,
CustomTableCellNode,
- ImageNode,
+ ImageNode, // TODO - Alignment
HorizontalRuleNode,
DetailsNode, SummaryNode,
CodeBlockNode,
DiagramNode,
- MediaNode,
+ MediaNode, // TODO - Alignment
CustomParagraphNode,
LinkNode,
{
return new CustomParagraphNode();
}
},
+ {
+ replace: HeadingNode,
+ with: (node: HeadingNode) => {
+ return new CustomHeadingNode(node.__tag);
+ }
+ },
+ {
+ replace: QuoteNode,
+ with: (node: QuoteNode) => {
+ return new CustomQuoteNode();
+ }
+ },
+ {
+ replace: ListNode,
+ with: (node: ListNode) => {
+ return new CustomListNode(node.getListType(), node.getStart());
+ }
+ },
{
replace: ListItemNode,
with: (node: ListItemNode) => {