normalize: (editor: Editor, { code, node }: any) => { switch (code) { case 'last_child_type_invalid': { const paragraph = Block.create('paragraph'); return editor.insertNodeByKey(node.key, node.nodes.size, paragraph); } } },
export const makeFragment = (text: string, syntax?: string) => { const lines = text.split('\n').map(line => Block.create({ type: 'code_line', nodes: [Text.create(line)], }) ); const block = Block.create({ data: { syntax, }, type: 'code_block', nodes: lines, }); return Document.create({ nodes: [block], }); };
mark: Mark.create({type: 'test_mark'}), data: Data.create({}) }) .applyOperation({ type: "set_mark", path: 'a', offset: 0, length: 1, properties: {type: 'test_mark'}, newProperties: {type: 'new_test_mark'}, data: Data.create({}) }) .applyOperation({ type: "insert_node", path: 'a', node: Block.create({type: 'block'}), data: Data.create({}) }) .applyOperation({ type: "merge_node", path: 'a', position: 0, properties: {type: 'node'}, data: Data.create({}) }) .applyOperation({ type: "move_node", path: 'a', newPath: 'a', data: Data.create({}) })
const lines = text.split('\n').map(line => Block.create({ type: 'code_line', nodes: [Text.create(line)], })