diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-09 00:09:17 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-09 00:09:17 +0300 |
commit | 1690313142e39075d231271bfdbc9ad95957106a (patch) | |
tree | 971c63ccab0947c43fc777ea45f19495d855062b /app/assets/javascripts/pages | |
parent | 54943f1e68bd4e1951bf3d6c438acab8d783fc31 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/pages')
-rw-r--r-- | app/assets/javascripts/pages/dashboard/todos/index/todos.js | 40 |
1 files changed, 6 insertions, 34 deletions
diff --git a/app/assets/javascripts/pages/dashboard/todos/index/todos.js b/app/assets/javascripts/pages/dashboard/todos/index/todos.js index 7d49cf9f932..c5d62ae5daf 100644 --- a/app/assets/javascripts/pages/dashboard/todos/index/todos.js +++ b/app/assets/javascripts/pages/dashboard/todos/index/todos.js @@ -6,9 +6,7 @@ import { getProjects } from '~/api/projects_api'; import initDeprecatedJQueryDropdown from '~/deprecated_jquery_dropdown'; import { createAlert } from '~/flash'; import axios from '~/lib/utils/axios_utils'; -import { isMetaClick } from '~/lib/utils/common_utils'; import { addDelimiter } from '~/lib/utils/text_utility'; -import { visitUrl } from '~/lib/utils/url_utility'; import { __ } from '~/locale'; import UsersSelect from '~/users_select'; @@ -34,10 +32,6 @@ export default class Todos { document.querySelectorAll('.js-todos-mark-all, .js-todos-undo-all').forEach((el) => { el.removeEventListener('click', this.updateallStateClickedWrapper); }); - document.querySelectorAll('.todo').forEach((el) => { - el.removeEventListener('click', this.goToTodoUrl); - el.removeEventListener('auxclick', this.goToTodoUrl); - }); } bindEvents() { @@ -50,10 +44,6 @@ export default class Todos { document.querySelectorAll('.js-todos-mark-all, .js-todos-undo-all').forEach((el) => { el.addEventListener('click', this.updateAllStateClickedWrapper); }); - document.querySelectorAll('.todo').forEach((el) => { - el.addEventListener('click', this.goToTodoUrl); - el.addEventListener('auxclick', this.goToTodoUrl); - }); } initFilters() { @@ -106,11 +96,14 @@ export default class Todos { e.stopPropagation(); e.preventDefault(); - const { currentTarget } = e; + let { currentTarget } = e; + if (currentTarget.tagName === 'svg' || currentTarget.tagName === 'use') { + currentTarget = currentTarget.closest('a'); + } currentTarget.setAttribute('disabled', true); currentTarget.classList.add('disabled'); - currentTarget.querySelector('.gl-spinner-container').classList.add('gl-mr-2'); + currentTarget.querySelector('.js-todo-button-icon').classList.add('hidden'); axios[currentTarget.dataset.method](currentTarget.href) .then(({ data }) => { @@ -134,7 +127,7 @@ export default class Todos { target.removeAttribute('disabled'); target.classList.remove('disabled'); - target.querySelector('.gl-spinner-container').classList.remove('gl-mr-2'); + target.querySelector('.js-todo-button-icon').classList.remove('hidden'); if (isInactive === true) { restoreBtn.classList.add('hidden'); @@ -209,25 +202,4 @@ export default class Todos { data.done_count, ); } - - goToTodoUrl(e) { - const todoLink = this.dataset.url; - - if (!todoLink || e.target.closest('a')) { - return; - } - - e.stopPropagation(); - e.preventDefault(); - - const isPrimaryClick = e.button === 0; - - if (isMetaClick(e)) { - const windowTarget = '_blank'; - - window.open(todoLink, windowTarget); - } else if (isPrimaryClick) { - visitUrl(todoLink); - } - } } |