clean: Refactor function to toggle file contents
This commit is contained in:
parent
316803df77
commit
8ee76bf44b
1 changed files with 13 additions and 14 deletions
|
|
@ -113,24 +113,23 @@ export class Diff2HtmlUI {
|
||||||
|
|
||||||
fileContentToggle(): void {
|
fileContentToggle(): void {
|
||||||
this.targetElement.querySelectorAll('.d2h-file-collapse').forEach(fileContentToggleBtn => {
|
this.targetElement.querySelectorAll('.d2h-file-collapse').forEach(fileContentToggleBtn => {
|
||||||
const toggle: (e: Event) => void = e => {
|
const toggleFileContents: (selector: string) => void = selector => {
|
||||||
if (fileContentToggleBtn === e.target) return;
|
const fileContents: HTMLElement | null | undefined = fileContentToggleBtn
|
||||||
|
|
||||||
const fileContentLineByLine: HTMLElement | null | undefined = fileContentToggleBtn
|
|
||||||
.closest('.d2h-file-wrapper')
|
.closest('.d2h-file-wrapper')
|
||||||
?.querySelector('.d2h-file-diff');
|
?.querySelector(selector);
|
||||||
const fileContentSideBySide: HTMLElement | null | undefined = fileContentToggleBtn
|
|
||||||
.closest('.d2h-file-wrapper')
|
|
||||||
?.querySelector('.d2h-files-diff');
|
|
||||||
|
|
||||||
if (fileContentLineByLine !== null && fileContentLineByLine !== undefined)
|
if (fileContents !== null && fileContents !== undefined)
|
||||||
fileContentLineByLine.style.display = fileContentLineByLine.style.display === 'none' ? '' : 'none';
|
fileContents.style.display = fileContents.style.display === 'none' ? '' : 'none';
|
||||||
|
|
||||||
if (fileContentSideBySide !== null && fileContentSideBySide !== undefined)
|
|
||||||
fileContentSideBySide.style.display = fileContentSideBySide.style.display === 'none' ? '' : 'none';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
fileContentToggleBtn.addEventListener('click', e => toggle(e));
|
const toggleHandler: (e: Event) => void = e => {
|
||||||
|
if (fileContentToggleBtn === e.target) return;
|
||||||
|
|
||||||
|
toggleFileContents('.d2h-file-diff');
|
||||||
|
toggleFileContents('.d2h-files-diff');
|
||||||
|
};
|
||||||
|
|
||||||
|
fileContentToggleBtn.addEventListener('click', e => toggleHandler(e));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue