-import {build as buildEditorConfig} from "../wysiwyg/config";
-import {Component} from "./component";
+import {buildForEditor as buildEditorConfig} from '../wysiwyg/config';
+import {Component} from './component';
export class WysiwygEditor extends Component {
setup() {
this.elem = this.$el;
- this.pageId = this.$opts.pageId;
- this.textDirection = this.$opts.textDirection;
- this.isDarkMode = document.documentElement.classList.contains('dark-mode');
-
this.tinyMceConfig = buildEditorConfig({
language: this.$opts.language,
containerElement: this.elem,
- darkMode: this.isDarkMode,
- textDirection: this.textDirection,
+ darkMode: document.documentElement.classList.contains('dark-mode'),
+ textDirection: this.$opts.textDirection,
drawioUrl: this.getDrawIoUrl(),
- pageId: Number(this.pageId),
+ pageId: Number(this.$opts.pageId),
translations: {
imageUploadErrorText: this.$opts.imageUploadErrorText,
serverUploadLimitText: this.$opts.serverUploadLimitText,
});
window.$events.emitPublic(this.elem, 'editor-tinymce::pre-init', {config: this.tinyMceConfig});
- window.tinymce.init(this.tinyMceConfig);
+ window.tinymce.init(this.tinyMceConfig).then(editors => {
+ this.editor = editors[0];
+ });
}
getDrawIoUrl() {
return '';
}
-}
\ No newline at end of file
+ /**
+ * Get the content of this editor.
+ * Used by the parent page editor component.
+ * @return {{html: String}}
+ */
+ getContent() {
+ return {
+ html: this.editor.getContent(),
+ };
+ }
+
+}