summaryrefslogtreecommitdiff
path: root/source/features/prevent-pr-merge-panel-opening.tsx
blob: f7d6473f04da458c3304337f39f697402ef8d42f (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
import {$} from 'select-dom';
import * as pageDetect from 'github-url-detection';

import features from '../feature-manager.js';

async function sessionResumeHandler(): Promise<void> {
	await Promise.resolve(); // The `session:resume` event fires a bit too early
	const cancelMergeButton = $('.merge-branch-form .js-details-target');
	if (cancelMergeButton) {
		cancelMergeButton.click();
		document.removeEventListener('session:resume', sessionResumeHandler);
	}
}

function init(signal: AbortSignal): void {
	document.addEventListener('session:resume', sessionResumeHandler, {signal});
}

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