]> BookStack Code Mirror - bookstack/blobdiff - resources/js/components/page-editor.js
Added method for using enity ownership in relation queries
[bookstack] / resources / js / components / page-editor.js
index 41e070b9dd18635f57c0495ce0d29087ec9e77a4..950a5a3b3308ee928039e82a96eac859f20beb53 100644 (file)
@@ -1,5 +1,6 @@
 import * as Dates from "../services/dates";
 import {onSelect} from "../services/dom";
+import {debounce} from "../services/util";
 import {Component} from "./component";
 
 export class PageEditor extends Component {
@@ -66,7 +67,8 @@ export class PageEditor extends Component {
         });
 
         // Changelog controls
-        this.changelogInput.addEventListener('change', this.updateChangelogDisplay.bind(this));
+        const updateChangelogDebounced = debounce(this.updateChangelogDisplay.bind(this), 300, false);
+        this.changelogInput.addEventListener('input', updateChangelogDebounced);
 
         // Draft Controls
         onSelect(this.saveDraftButton, this.saveDraft.bind(this));
@@ -196,7 +198,8 @@ export class PageEditor extends Component {
         event.preventDefault();
 
         const link = event.target.closest('a').href;
-        const dialog = this.switchDialogContainer.components['confirm-dialog'];
+        /** @var {ConfirmDialog} **/
+        const dialog = window.$components.firstOnElement(this.switchDialogContainer, 'confirm-dialog');
         const [saved, confirmed] = await Promise.all([this.saveDraft(), dialog.show()]);
 
         if (saved && confirmed) {
@@ -204,4 +207,4 @@ export class PageEditor extends Component {
         }
     }
 
-}
\ No newline at end of file
+}