-import * as Dates from '../services/dates';
-import {onSelect} from '../services/dom';
-import {debounce} from '../services/util';
+import {onSelect} from '../services/dom.ts';
+import {debounce} from '../services/util.ts';
import {Component} from './component';
+import {utcTimeStampToLocalTime} from '../services/dates.ts';
export class PageEditor extends Component {
async saveDraft() {
const data = {name: this.titleElem.value.trim()};
- const editorContent = this.getEditorComponent().getContent();
+ const editorContent = await this.getEditorComponent().getContent();
Object.assign(data, editorContent);
let didSave = false;
this.deleteDraftWrap.toggleAttribute('hidden', false);
}
- this.draftNotifyChange(`${resp.data.message} ${Dates.utcTimeStampToLocalTime(resp.data.timestamp)}`);
+ this.draftNotifyChange(`${resp.data.message} ${utcTimeStampToLocalTime(resp.data.timestamp)}`);
this.autoSave.last = Date.now();
if (resp.data.warning && !this.shownWarningsCache.has(resp.data.warning)) {
window.$events.emit('warning', resp.data.warning);
}
/**
- * @return MarkdownEditor|WysiwygEditor
+ * @return {MarkdownEditor|WysiwygEditor|WysiwygEditorTinymce}
*/
getEditorComponent() {
- return window.$components.first('markdown-editor') || window.$components.first('wysiwyg-editor');
+ return window.$components.first('markdown-editor')
+ || window.$components.first('wysiwyg-editor')
+ || window.$components.first('wysiwyg-editor-tinymce');
}
}