From bd1419899d8df6ea23a95dc3374bc9d80ace08cb Mon Sep 17 00:00:00 2001 From: Yarden Shoham Date: Sun, 31 Mar 2024 00:30:00 +0300 Subject: [PATCH] Remove jQuery class from the repository branch settings (#30184) - Switched from jQuery class functions to plain JavaScript `classList` - Tested the repository branch settings functionality and it works as before Signed-off-by: Yarden Shoham (cherry picked from commit 2b3f7d3e966ab60cb147115303d1992e8b50d4df) --- web_src/js/features/repo-settings.js | 31 ++++++++++++++++------------ 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/web_src/js/features/repo-settings.js b/web_src/js/features/repo-settings.js index 0ea44130d0..52c5de2bfa 100644 --- a/web_src/js/features/repo-settings.js +++ b/web_src/js/features/repo-settings.js @@ -77,18 +77,24 @@ export function initRepoSettingGitHook() { } export function initRepoSettingBranches() { - if (!$('.repository.settings.branches').length) return; - $('.toggle-target-enabled').on('change', function () { - const $target = $(this.getAttribute('data-target')); - $target.toggleClass('disabled', !this.checked); - }); - $('.toggle-target-disabled').on('change', function () { - const $target = $(this.getAttribute('data-target')); - if (this.checked) $target.addClass('disabled'); // only disable, do not auto enable - }); - $('#dismiss_stale_approvals').on('change', function () { - const $target = $('#ignore_stale_approvals_box'); - $target.toggleClass('disabled', this.checked); + if (!document.querySelector('.repository.settings.branches')) return; + + for (const el of document.getElementsByClassName('toggle-target-enabled')) { + el.addEventListener('change', function () { + const target = document.querySelector(this.getAttribute('data-target')); + target?.classList.toggle('disabled', !this.checked); + }); + } + + for (const el of document.getElementsByClassName('toggle-target-disabled')) { + el.addEventListener('change', function () { + const target = document.querySelector(this.getAttribute('data-target')); + if (this.checked) target?.classList.add('disabled'); // only disable, do not auto enable + }); + } + + document.getElementById('dismiss_stale_approvals')?.addEventListener('change', function () { + document.getElementById('ignore_stale_approvals_box')?.classList.toggle('disabled', this.checked); }); // show the `Matched` mark for the status checks that match the pattern @@ -106,7 +112,6 @@ export function initRepoSettingBranches() { break; } } - toggleElem(el, matched); } };