add extension keymaps

This commit is contained in:
Philipp Kühn
2020-03-31 22:17:54 +02:00
parent 94349015ec
commit 208ba890ef
7 changed files with 45 additions and 5 deletions

View File

@@ -6,9 +6,11 @@ import Node from './Node'
export default class ExtensionManager {
editor: Editor
extensions: (Extension | Node)[]
constructor(extensions: (Extension | Node)[], editor: Editor) {
this.editor = editor
this.extensions = extensions
this.extensions.forEach(extension => {
extension.bindEditor(editor)
@@ -46,4 +48,12 @@ export default class ExtensionManager {
.toArray()
}
get keymaps() {
return collect(this.extensions)
.map(extension => extension.keys())
.filter(keys => !!Object.keys(keys).length)
.map(keys => keymap(keys))
.toArray()
}
}