summaryrefslogtreecommitdiff
path: root/source/features/extend-diff-expander.tsx
blob: 090bbcac8b56a0b18a8cf15e7858b7ce1e136c55 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import './extend-diff-expander.css';
import select from 'select-dom';
import delegate, {DelegateEvent} from 'delegate-it';
import * as pageDetect from 'github-url-detection';

import features from '.';

function expandDiff(event: DelegateEvent): void {
	// Skip if the user clicked directly on the icon
	if (!(event.target as Element).closest('.js-expand')) {
		select('.js-expand', event.delegateTarget)!.click();
	}
}

function init(signal: AbortSignal): void {
	delegate(document, '.diff-view .js-expandable-line', 'click', expandDiff, {signal});
}

void features.add(import.meta.url, {
	include: [
		pageDetect.hasFiles,
	],
	deduplicate: false,
	init,
});