tiptap/packages/core/src/Extension.ts

51 lines
743 B
TypeScript
Raw Normal View History

2019-12-17 06:20:05 +08:00
import { Editor } from './Editor'
2020-03-06 03:30:58 +08:00
export default abstract class Extension {
2019-12-17 06:20:05 +08:00
constructor(options = {}) {
this.options = {
...this.defaultOptions,
...options,
}
}
2020-03-06 05:40:02 +08:00
editor!: Editor
options: { [key: string]: any } = {}
defaultOptions: { [key: string]: any } = {}
public abstract name: string
2020-04-11 04:07:27 +08:00
public extensionType = 'extension'
2019-12-17 06:20:05 +08:00
2020-03-08 06:37:58 +08:00
public created() {}
2019-12-17 06:20:05 +08:00
2020-03-08 06:37:58 +08:00
public bindEditor(editor: Editor): void {
2019-12-17 06:20:05 +08:00
this.editor = editor
}
2020-03-29 06:58:48 +08:00
update(): any {
2019-12-17 06:20:05 +08:00
return () => {}
}
2020-03-29 06:58:48 +08:00
plugins(): any {
2019-12-17 06:20:05 +08:00
return []
}
inputRules(): any {
return []
}
pasteRules(): any {
return []
}
2020-04-01 04:17:54 +08:00
keys(): { [key: string]: any } {
2019-12-17 06:20:05 +08:00
return {}
2020-04-02 20:34:07 +08:00
}
commands(): { [key: string]: any } {
return {}
2020-04-01 04:17:54 +08:00
}
2019-12-17 06:20:05 +08:00
}