Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
createExtensions() {
const {
marks = {},
nodes = {},
tools = {}
} = this.schema
return [
// schema.marks:
marks.bold && new Bold(),
marks.italic && new Italic(),
marks.underline && new Underline(),
marks.strike && new Strike(),
marks.small && new Small(),
marks.code && new Code(),
marks.link && new LinkWithTitle(),
// schema.nodes:
nodes.blockquote && new Blockquote(),
nodes.codeBlock && new CodeBlock(),
new HardBreak(), // TODO: Should this always on?
nodes.heading && new Heading({ levels: nodes.heading }),
nodes.horizontalRule && new HorizontalRule(),
(nodes.orderedList || nodes.bulletList) && new ListItem(),
nodes.bulletList && new BulletList(),
nodes.orderedList && new OrderedList(),
// TODO:
// nodes.todoList && new TodoItem(),
// nodes.todoList && new TodoList(),
})
extensions.push(new Heading({
levels: levels
}))
break
}
case 'bold': {
extensions.push(new Bold())
break
}
case 'italic': {
extensions.push(new Italic())
break
}
case 'strike': {
extensions.push(new Strike())
break
}
case 'underline': {
extensions.push(new Underline())
break
}
case 'link': {
extensions.push(new Link())
break
}
case 'blockquote': {
extensions.push(new Blockquote())
break
}
case 'bullet': {
extensions.push(new BulletList())