fix editable

This commit is contained in:
Philipp Kühn
2020-08-21 21:53:45 +02:00
parent 6a70d80af2
commit 65ed653d22
2 changed files with 13 additions and 3 deletions

View File

@@ -32,8 +32,9 @@ interface EditorOptions {
element: Element,
content: EditorContent,
extensions: (Extension | Node | Mark)[],
injectCSS: Boolean,
injectCSS: boolean,
autoFocus: 'start' | 'end' | number | boolean | null,
editable: boolean,
}
@magicMethods
@@ -54,6 +55,7 @@ export class Editor extends EventEmitter {
injectCSS: true,
extensions: [],
autoFocus: false,
editable: true,
}
public isFocused = false
public isEditable = true
@@ -88,11 +90,19 @@ export class Editor extends EventEmitter {
return (...args: any) => command(...args)
}
public setOptions(options: Partial<EditorOptions> = {}) {
this.options = { ...this.options, ...options }
if (this.view && this.state) {
this.view.updateState(this.state)
}
}
public get state() {
return this.view.state
}
public registerCommands(commands: CommandSpec): void {
public registerCommands(commands: CommandSpec) {
Object
.entries(commands)
.forEach(([name, command]) => this.registerCommand(name, command))

View File

@@ -4,6 +4,6 @@ import Editor from '../..'
export default (editor: Editor) => new Plugin({
key: new PluginKey('editable'),
props: {
editable: () => editor.isEditable,
editable: () => editor.options.editable,
},
})