X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/2e8d6ce7d9aad7569cd8bfbdd1126c869a78d379..3617ab1540840ca1b12ee6dd40e3eeccbfffc94b:/resources/js/components/page-editor.js diff --git a/resources/js/components/page-editor.js b/resources/js/components/page-editor.js index 9450444ca..2a155f37f 100644 --- a/resources/js/components/page-editor.js +++ b/resources/js/components/page-editor.js @@ -1,4 +1,4 @@ -import {onSelect} from '../services/dom'; +import {onSelect} from '../services/dom.ts'; import {debounce} from '../services/util.ts'; import {Component} from './component'; import {utcTimeStampToLocalTime} from '../services/dates.ts'; @@ -75,7 +75,12 @@ export class PageEditor extends Component { // Changelog controls const updateChangelogDebounced = debounce(this.updateChangelogDisplay.bind(this), 300, false); - this.changelogInput.addEventListener('input', updateChangelogDebounced); + this.changelogInput.addEventListener('input', () => { + const count = this.changelogInput.value.length; + const counterEl = document.getElementById('changelog-count'); + if (counterEl) counterEl.innerText = `${count} / 250`; + updateChangelogDebounced(); + }); // Draft Controls onSelect(this.saveDraftButton, this.saveDraft.bind(this)); @@ -112,7 +117,7 @@ export class PageEditor extends Component { } savePage() { - this.container.closest('form').submit(); + this.container.closest('form').requestSubmit(); } async saveDraft() { @@ -138,7 +143,7 @@ export class PageEditor extends Component { didSave = true; this.autoSave.pendingChange = false; - } catch (err) { + } catch { // Save the editor content in LocalStorage as a last resort, just in case. try { const saveKey = `draft-save-fail-${(new Date()).toISOString()}`;