summaryrefslogtreecommitdiffstats
path: root/web_src/js/features/common-issue.js
diff options
context:
space:
mode:
authorsilverwind <me@silverwind.io>2021-11-22 09:19:01 +0100
committerGitHub <noreply@github.com>2021-11-22 16:19:01 +0800
commita159c3175f5f60a9de00f4d3c73787ffa6c63ddd (patch)
treedb212e3f9d20eb26bba12774ff3d8fa0bac71cbc /web_src/js/features/common-issue.js
parent7743f13bed7dc5958c19603ccadd095db24c6b80 (diff)
downloadgitea-a159c3175f5f60a9de00f4d3c73787ffa6c63ddd.tar.gz
gitea-a159c3175f5f60a9de00f4d3c73787ffa6c63ddd.zip
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 <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Diffstat (limited to 'web_src/js/features/common-issue.js')
-rw-r--r--web_src/js/features/common-issue.js22
1 files changed, 15 insertions, 7 deletions
diff --git a/web_src/js/features/common-issue.js b/web_src/js/features/common-issue.js
index f89690abc0..07086d9e63 100644
--- a/web_src/js/features/common-issue.js
+++ b/web_src/js/features/common-issue.js
@@ -12,17 +12,25 @@ export function initCommonIssue() {
}
});
- $('.issue-action').on('click', function () {
- let {action, elementId, url} = this.dataset;
+ $('.issue-action').on('click', async function () {
+ let action = this.getAttribute('data-action');
+ let elementId = this.getAttribute('data-element-id');
+ const url = this.getAttribute('data-url');
const issueIDs = $('.issue-checkbox').children('input:checked').map((_, el) => {
- return el.dataset.issueId;
+ return el.getAttribute('data-issue-id');
}).get().join(',');
if (elementId === '0' && url.substr(-9) === '/assignee') {
elementId = '';
action = 'clear';
}
- updateIssuesMeta(url, action, issueIDs, elementId).then(() => {
- // NOTICE: This reset of checkbox state targets Firefox caching behaviour, as the checkboxes stay checked after reload
+ updateIssuesMeta(
+ url,
+ action,
+ issueIDs,
+ elementId
+ ).then(() => { // eslint-disable-line github/no-then
+ // NOTICE: This reset of checkbox state targets Firefox caching behaviour, as the
+ // checkboxes stay checked after reload
if (action === 'close' || action === 'open') {
// uncheck all checkboxes
$('.issue-checkbox input[type="checkbox"]').each((_, e) => { e.checked = false });
@@ -31,8 +39,8 @@ export function initCommonIssue() {
});
});
- // NOTICE: This event trigger targets Firefox caching behaviour, as the checkboxes stay checked after reload
- // trigger ckecked event, if checkboxes are checked on load
+ // NOTICE: This event trigger targets Firefox caching behaviour, as the checkboxes stay
+ // checked after reload trigger ckecked event, if checkboxes are checked on load
$('.issue-checkbox input[type="checkbox"]:checked').first().each((_, e) => {
e.checked = false;
$(e).trigger('click');