|
1 | 1 | import {minimatch} from 'minimatch';
|
2 | 2 | import {createMonaco} from './codeeditor.ts';
|
3 |
| -import {onInputDebounce, queryElems, toggleClass, toggleElem} from '../utils/dom.ts'; |
| 3 | +import {onInputDebounce, queryElems, toggleElem} from '../utils/dom.ts'; |
4 | 4 | import {POST} from '../modules/fetch.ts';
|
5 | 5 | import {initRepoSettingsBranchesDrag} from './repo-settings-branches.ts';
|
6 | 6 | import {fomanticQuery} from '../modules/fomantic/base.ts';
|
@@ -124,14 +124,18 @@ function initRepoSettingsOptions() {
|
124 | 124 | const pageContent = document.querySelector('.page-content.repository.settings.options');
|
125 | 125 | if (!pageContent) return;
|
126 | 126 |
|
127 |
| - // Enable or select internal/external wiki system and issue tracker. |
| 127 | + // toggle related panels for the checkbox/radio inputs, the "selector" may not exist |
| 128 | + const toggleTargetContextPanel = (selector: string, enabled: boolean) => { |
| 129 | + if (!selector) return; |
| 130 | + queryElems(document, selector, (el) => el.classList.toggle('disabled', !enabled)); |
| 131 | + }; |
128 | 132 | queryElems<HTMLInputElement>(pageContent, '.enable-system', (el) => el.addEventListener('change', () => {
|
129 |
| - toggleClass(el.getAttribute('data-target'), 'disabled', !el.checked); |
130 |
| - toggleClass(el.getAttribute('data-context'), 'disabled', el.checked); |
| 133 | + toggleTargetContextPanel(el.getAttribute('data-target'), el.checked); |
| 134 | + toggleTargetContextPanel(el.getAttribute('data-context'), !el.checked); |
131 | 135 | }));
|
132 | 136 | queryElems<HTMLInputElement>(pageContent, '.enable-system-radio', (el) => el.addEventListener('change', () => {
|
133 |
| - toggleClass(el.getAttribute('data-target'), 'disabled', el.value === 'false'); |
134 |
| - toggleClass(el.getAttribute('data-context'), 'disabled', el.value === 'true'); |
| 137 | + toggleTargetContextPanel(el.getAttribute('data-target'), el.value === 'true'); |
| 138 | + toggleTargetContextPanel(el.getAttribute('data-context'), el.value === 'false'); |
135 | 139 | }));
|
136 | 140 |
|
137 | 141 | queryElems<HTMLInputElement>(pageContent, '.js-tracker-issue-style', (el) => el.addEventListener('change', () => {
|
|
0 commit comments