From a159c3175f5f60a9de00f4d3c73787ffa6c63ddd Mon Sep 17 00:00:00 2001 From: silverwind Date: Mon, 22 Nov 2021 09:19:01 +0100 Subject: Add new JS linter rules (#17699) * Add new JS linter rules Adds a few useful rules from eslint-plugin-github. Notable changes: - Forbid dataset usage, its camel-casing behaviour makes it hard to grep for attributes. - Forbid .then() and .catch(), we should generally prefer await for new code. For rare cases where they are useful, a eslint-disable-line directive can be set. - Add docs js to linting * also enable github/array-foreach * small tweak Co-authored-by: Andrew Thornton Co-authored-by: techknowlogick Co-authored-by: wxiaoguang --- web_src/js/markup/tasklist.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'web_src/js/markup') diff --git a/web_src/js/markup/tasklist.js b/web_src/js/markup/tasklist.js index f8ca5b0406..149027d428 100644 --- a/web_src/js/markup/tasklist.js +++ b/web_src/js/markup/tasklist.js @@ -14,14 +14,14 @@ export function initMarkupTasklist() { const checkboxes = el.querySelectorAll(`.task-list-item input[type=checkbox]`); for (const checkbox of checkboxes) { - if (checkbox.dataset.editable) { + if (checkbox.hasAttribute('data-editable')) { return; } - checkbox.dataset.editable = 'true'; + checkbox.setAttribute('data-editable', 'true'); checkbox.addEventListener('input', async () => { const checkboxCharacter = checkbox.checked ? 'x' : ' '; - const position = parseInt(checkbox.dataset.sourcePosition) + 1; + const position = parseInt(checkbox.getAttribute('data-source-position')) + 1; const rawContent = container.querySelector('.raw-content'); const oldContent = rawContent.textContent; @@ -43,7 +43,8 @@ export function initMarkupTasklist() { try { const editContentZone = container.querySelector('.edit-content-zone'); - const {updateUrl, context} = editContentZone.dataset; + const updateUrl = editContentZone.getAttribute('data-update-url'); + const context = editContentZone.getAttribute('data-context'); await $.post(updateUrl, { ignore_attachments: true, -- cgit v1.2.3